Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2012.01.08;
Скачать: [xml.tar.bz2];

Вниз

Форматирование кода программы в среде разработки   Найти похожие ветки 

 
я   (2011-09-28 08:43) [0]

Привык к такой фиче, когда выделяешь кусок кода, нажимаешь кнопку и он сам форматируется (т.е. выстраивается лесенкой), т.е. весь код приводится в удобоваримый вид. Например есть неформатированный код:


if Intensity < 255 then
begin
if i= 0 then
begin
Xdiff := x;
Ydiff := y;
end;
searchArray[i].x:= x-Xdiff;
searchArray[i].y:= y-Ydiff;
inc(i);
end;


Выделяем этот кусок, нажимаем кнопку и получаем что то вроде этого

if Intensity < 255 then
begin
      if i= 0 then
      begin
           Xdiff := x;
           Ydiff := y;
      end;
      searchArray[i].x:= x-Xdiff;
      searchArray[i].y:= y-Ydiff;
      inc(i);
end;


В данный момент я это делаю для каждой строки вручную и не могу поверить, что такой функции нет, но и найти ее не могу. Установил RAD Studio XE, но все равно такого не увидел. Может все такие есть? Форматирование "вручную" причиняет мне адские страдания, особенно после того как я всегда это делал автоматом, но в других языках...


 
OW ©   (2011-09-28 09:10) [1]

http://www.gunsmoker.ru/2011/01/blog-post.html


 
OW ©   (2011-09-28 09:33) [2]

сам сейчас попробовал джедаев (JCF)
interface

uses
 Graphics,
   uPoint,
 SysUtils, Dialogs;

type
 TGGraph = class
 private
 FCanva: TCanvas;
   FPoints: array of TGPoint;
 private
   procedure ReallyCreate(AC: TCanvas);
   procedure ReallyAdd(AP: TGPoint);
   procedure ReallyMove(AP: TGPoint; dx, dy: Integer);
 public
   constructor Create(AC: TCanvas);
   procedure Add(AP: TGPoint); overload;
   procedure Add(AX, AY: Integer; AR:Integer = DefaultR); overload;
   procedure Add(AName: string; AX, AY: Integer; AR:Integer = DefaultR); overload;
   procedure Move(NumP, dx, dy: Integer);

   function GetPointByXY(ax, ay: Integer): TGPoint;
   function GetPointByNum(Num: Integer): TGPoint;
 public
   
 end;

implementation

procedure TGGraph.Add(AP: TGPoint);
begin
 if AP = nil then
 raise Exception.Create("Add nil-value point. TGGraph.Add(AP)");
 if AP.Canva <> FCanva then
 begin
if AP.Canva <> nil then
 AP.Hide;
 AP.Canva := FCanva;
 end;
 ReallyAdd(AP);



vs

uses
 Graphics,
 uPoint,
 SysUtils,
 Dialogs;

type
 TGGraph = class
 private
   FCanva:  TCanvas;
   FPoints: array of TGPoint;
 private
   procedure ReallyCreate(AC: TCanvas);
   procedure ReallyAdd(AP: TGPoint);
   procedure ReallyMove(AP: TGPoint; dx, dy: Integer);
 public
   constructor Create(AC: TCanvas);
   procedure Add(AP: TGPoint); overload;
   procedure Add(AX, AY: Integer; AR: Integer = DefaultR); overload;
   procedure Add(AName: string; AX, AY: Integer; AR: Integer = DefaultR); overload;
   procedure Move(NumP, dx, dy: Integer);

   function GetPointByXY(ax, ay: Integer): TGPoint;
   function GetPointByNum(Num: Integer): TGPoint;
 public

 end;

implementation

procedure TGGraph.Add(AP: TGPoint);
begin
 if AP = nil then
   raise Exception.Create("Add nil-value point. TGGraph.Add(AP)");
 if AP.Canva <> FCanva then
 begin
   if AP.Canva <> nil then
     AP.Hide;
   AP.Canva := FCanva;
 end;
 ReallyAdd(AP);


 
sniknik ©   (2011-09-28 09:40) [3]

> Форматирование "вручную" причиняет мне адские страдания
свой код нужно сразу так писать, чужой... ручное форматирование только поможет понять логику/найти ошибки.
и не зачем так страдать...


 
Игорь Шевченко ©   (2011-09-28 09:46) [4]


> Установил RAD Studio XE, но все равно такого не увидел.


Ctrl+D ?


 
MonoLife ©   (2011-09-28 10:53) [5]

D7
ctrl+I - блок вправо
ctrl+U - блок влево


 
Palladin ©   (2011-09-28 13:46) [6]


> Ctrl+D

не умеет анонимных процедур


 
OW ©   (2011-09-28 15:39) [7]

+ CnPack
сильно помогает писать сразу нормально



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2012.01.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.003 c
1-1275582894
alpp
2010-06-03 20:34
2012.01.08
слияние 2-х файлов word в один


6-1249301566
BreakPoint
2009-08-03 16:12
2012.01.08
Какой процесс слушает сокет?


2-1310979425
D_2010
2011-07-18 12:57
2012.01.08
Как обработать приход нескольких одинаковых TMessage как одно?


2-1316964668
Avpsol
2011-09-25 19:31
2012.01.08
Проблема с построением цикла


15-1316509651
Dennis I. Komarov
2011-09-20 13:07
2012.01.08
SATA - SATA-II





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский