IDE: codetools word beautifier: clean up

git-svn-id: trunk@34634 -
This commit is contained in:
mattias 2012-01-06 22:50:07 +00:00
parent 18106c64f2
commit e62d7530b7
3 changed files with 29 additions and 30 deletions

View File

@ -92,13 +92,13 @@ const
DefaultUsesInsertPolicy = uipBehindRelated;
type
TWordException = class
TWordPolicyException = class
Word: string;
end;
{ TWordExceptions }
{ TWordPolicyExceptions }
TWordExceptions = class
TWordPolicyExceptions = class
private
FWords: TAVLTree;
public
@ -133,7 +133,7 @@ type
TabWidth: integer;
KeyWordPolicy: TWordPolicy;
IdentifierPolicy: TWordPolicy;
WordExceptions: TWordExceptions;
WordExceptions: TWordPolicyExceptions;
DoNotSplitLineInFront: TAtomTypes;
DoNotSplitLineAfter: TAtomTypes;
DoInsertSpaceInFront: TAtomTypes;
@ -160,7 +160,7 @@ type
NestedComments: boolean;
procedure SetupWordExceptions(ws: TStrings);
procedure SetupWordPolicyExceptions(ws: TStrings);
function BeautifyProc(const AProcCode: string; IndentSize: integer;
AddBeginEnd: boolean): string;
function BeautifyStatement(const AStatement: string; IndentSize: integer
@ -448,23 +448,23 @@ end;
function CompareWordExceptions(p1, p2: Pointer): Integer;
var w1, w2: string;
begin
w1 := TWordException(p1).Word;
w2 := TWordException(p2).Word;
w1 := TWordPolicyException(p1).Word;
w2 := TWordPolicyException(p2).Word;
Result := CompareIdentifiers(PChar(w1), PChar(w2));
end;
function CompareKeyWordExceptions(Item1, Item2: Pointer): Integer;
begin
Result := CompareIdentifiers(PChar(Item1), PChar(TWordException(Item2).Word));
Result := CompareIdentifiers(PChar(Item1), PChar(TWordPolicyException(Item2).Word));
end;
{ TWordExceptions }
{ TWordPolicyExceptions }
constructor TWordExceptions.Create(AWords: TStrings);
constructor TWordPolicyExceptions.Create(AWords: TStrings);
var
i, j: Integer;
s1, s2: string;
we: TWordException;
we: TWordPolicyException;
begin
FWords := TAVLTree.Create(@CompareWordExceptions);
for i := 0 to AWords.Count - 1 do
@ -481,7 +481,7 @@ begin
Delete(s1, 1, Pos(' ', s1));
if s2 <> '' then
begin
we := TWordException.Create;
we := TWordPolicyException.Create;
we.Word := s2;
FWords.Add(we);
end;
@ -489,19 +489,19 @@ begin
end;
end;
destructor TWordExceptions.Destroy;
destructor TWordPolicyExceptions.Destroy;
begin
FWords.FreeAndClear;
FWords.Free;
inherited Destroy;
end;
function TWordExceptions.CheckExceptions(var AWord: string): Boolean;
function TWordPolicyExceptions.CheckExceptions(var AWord: string): Boolean;
var n: TAVLTreeNode;
begin
n := FWords.FindKey(PChar(AWord), @CompareKeyWordExceptions);
Result := Assigned(n);
if Result then AWord := TWordException(n.Data).Word;
if Result then AWord := TWordPolicyException(n.Data).Word;
end;
{ TSourceChangeCacheEntry }
@ -1593,10 +1593,10 @@ begin
Result:=false;
end;
procedure TBeautifyCodeOptions.SetupWordExceptions(ws: TStrings);
procedure TBeautifyCodeOptions.SetupWordPolicyExceptions(ws: TStrings);
begin
if Assigned(WordExceptions) then WordExceptions.Free;
WordExceptions := TWordExceptions.Create(ws);
WordExceptions := TWordPolicyExceptions.Create(ws);
end;
function TBeautifyCodeOptions.BeautifyProc(const AProcCode: string;

View File

@ -80,7 +80,7 @@ type
FMethodInsertPolicy: TMethodInsertPolicy;
FKeyWordPolicy : TWordPolicy;
FIdentifierPolicy: TWordPolicy;
FWordExceptions: TStringList;
FWordPolicyExceptions: TStringList;
FDoNotSplitLineInFront: TAtomTypes;
FDoNotSplitLineAfter: TAtomTypes;
FDoInsertSpaceInFront: TAtomTypes;
@ -167,8 +167,8 @@ type
read FKeyWordPolicy write FKeyWordPolicy;
property IdentifierPolicy: TWordPolicy
read FIdentifierPolicy write FIdentifierPolicy;
property WordExceptions: TStringList
read FWordExceptions write FWordExceptions;
property WordPolicyExceptions: TStringList
read FWordPolicyExceptions write FWordPolicyExceptions;
property DoNotSplitLineInFront: TAtomTypes
read FDoNotSplitLineInFront write FDoNotSplitLineInFront;
property DoNotSplitLineAfter: TAtomTypes
@ -307,14 +307,14 @@ constructor TCodeToolsOptions.Create;
begin
inherited Create;
FFilename:='';
FWordExceptions := TStringList.Create;
FWordPolicyExceptions := TStringList.Create;
Clear;
end;
destructor TCodeToolsOptions.Destroy;
begin
ClearGlobalDefineTemplates;
FWordExceptions.Free;
FWordPolicyExceptions.Free;
inherited Destroy;
end;
@ -417,8 +417,8 @@ begin
FIdentifierPolicy:=WordPolicyNameToPolicy(XMLConfig.GetValue(
'CodeToolsOptions/IdentifierPolicy/Value',
WordPolicyNames[wpNone]));
WordExceptions.Text:=LineBreaksToSystemLineBreaks(XMLConfig.GetValue(
'CodeToolsOptions/WordExceptions/Value', ''));
WordPolicyExceptions.Text:=LineBreaksToSystemLineBreaks(XMLConfig.GetValue(
'CodeToolsOptions/WordPolicyExceptions/Value', ''));
FDoNotSplitLineInFront:=ReadAtomTypesFromXML(XMLConfig,
'CodeToolsOptions/DoNotSplitLineInFront/',DefaultDoNotSplitLineInFront);
FDoNotSplitLineAfter:=ReadAtomTypesFromXML(XMLConfig,
@ -545,9 +545,8 @@ begin
XMLConfig.SetDeleteValue('CodeToolsOptions/IdentifierPolicy/Value',
WordPolicyNames[FIdentifierPolicy],
WordPolicyNames[wpNone]);
XMLConfig.SetDeleteValue('CodeToolsOptions/WordExceptions/Value',
LineBreaksToSystemLineBreaks(WordExceptions.Text),
'');
XMLConfig.SetDeleteValue('CodeToolsOptions/WordPolicyExceptions/Value',
Trim(LineBreaksToSystemLineBreaks(WordPolicyExceptions.Text)),'');
WriteAtomTypesToXML(XMLConfig,'CodeToolsOptions/DoNotSplitLineInFront/',
FDoNotSplitLineInFront,DefaultDoNotSplitLineInFront);
WriteAtomTypesToXML(XMLConfig,'CodeToolsOptions/DoNotSplitLineAfter/',
@ -876,7 +875,7 @@ begin
BeautifyCodeOptions.MethodInsertPolicy:=MethodInsertPolicy;
BeautifyCodeOptions.KeyWordPolicy:=KeyWordPolicy;
BeautifyCodeOptions.IdentifierPolicy:=IdentifierPolicy;
BeautifyCodeOptions.SetupWordExceptions(WordExceptions);
BeautifyCodeOptions.SetupWordPolicyExceptions(WordPolicyExceptions);
BeautifyCodeOptions.DoNotSplitLineInFront:=DoNotSplitLineInFront;
BeautifyCodeOptions.DoNotSplitLineAfter:=DoNotSplitLineAfter;
BeautifyCodeOptions.DoInsertSpaceInFront:=DoInsertSpaceInFront;

View File

@ -115,7 +115,7 @@ begin
// wpNone
IdentifierPolicyRadioGroup.ItemIndex:=0;
end;
WordExceptionsMemo.Lines.Assign(WordExceptions);
WordExceptionsMemo.Lines.Assign(WordPolicyExceptions);
end;
end;
@ -136,7 +136,7 @@ begin
2: IdentifierPolicy:=wpUpperCase;
3: IdentifierPolicy:=wpLowerCaseFirstLetterUp;
end;
WordExceptions.Assign(WordExceptionsMemo.Lines);
WordPolicyExceptions.Assign(WordExceptionsMemo.Lines);
end;
end;