mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-17 14:49:28 +02:00
implemented saving project session file
git-svn-id: trunk@8667 -
This commit is contained in:
parent
dda6ac61bc
commit
bc8633f602
@ -1,18 +1,15 @@
|
||||
{ Copyright (C) 2003 Michael Van Canneyt
|
||||
|
||||
This library is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU Library General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public License
|
||||
along with this library; if not, write to the Free Software Foundation,
|
||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*****************************************************************************
|
||||
* *
|
||||
* See the file COPYING.modifiedLGPL, included in this distribution, *
|
||||
* for details about the copyright. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
|
||||
* *
|
||||
*****************************************************************************
|
||||
}
|
||||
unit cgiModules;
|
||||
|
||||
@ -48,6 +45,7 @@ Type
|
||||
TCGIDataModuleClass = Class of TCGIDatamodule;
|
||||
|
||||
TModuledCGIApplication = Class(TCGIApplication)
|
||||
private
|
||||
FMainModule : TCGIDatamodule;
|
||||
public
|
||||
Procedure CreateForm(AClass: TCGIDataModuleClass;
|
||||
@ -73,6 +71,7 @@ ResourceString
|
||||
function InitResourceComponent(Instance: TComponent;
|
||||
RootAncestor: TClass): Boolean;
|
||||
begin
|
||||
writeln('AAA');
|
||||
Result:=InitLazResourceComponent(Instance,RootAncestor);
|
||||
end;
|
||||
|
||||
@ -81,6 +80,7 @@ end;
|
||||
procedure TModuledCGIApplication.CreateForm(AClass: TCGIDataModuleClass;
|
||||
Var Reference: TCGIDataModule);
|
||||
begin
|
||||
writeln('TModuledCGIApplication.CreateForm ',AClass.CLassName);
|
||||
Reference:=AClass.CreateNew(Self,0);
|
||||
If FMainModule=Nil then
|
||||
FMainModule:=Reference;
|
||||
|
@ -136,8 +136,10 @@ begin
|
||||
Result:= mrOK;
|
||||
end;
|
||||
|
||||
function TCGIApplicationDescriptor.CreateStartFiles(AProject: TLazProject): TModalResult;
|
||||
function TCGIApplicationDescriptor.CreateStartFiles(
|
||||
AProject: TLazProject): TModalResult;
|
||||
begin
|
||||
if AProject=nil then ;
|
||||
LazarusIDE.DoNewEditorFile(FileDescriptorCGIModule,'','',
|
||||
[nfIsPartOfProject,nfOpenInEditor,nfCreateDefaultSrc]);
|
||||
Result:= mrOK;
|
||||
|
@ -117,6 +117,11 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
function GetProjectSessionsConfigPath: String;
|
||||
begin
|
||||
Result:=AppendPathDelim(GetPrimaryConfigPath)+'projectsessions';
|
||||
end;
|
||||
|
||||
{---------------------------------------------------------------------------
|
||||
function CreateCompilerTestPascalFilename: string;
|
||||
---------------------------------------------------------------------------}
|
||||
|
@ -1115,6 +1115,7 @@ resourcestring
|
||||
+'maintained by lazarus.';
|
||||
dlgPOFroms = 'Forms';
|
||||
dlgPOMisc = 'Miscellaneous';
|
||||
dlgPOSaveSession = 'Session';
|
||||
dlgApplicationSettings = 'Application Settings';
|
||||
dlgPOTitle = 'Title:';
|
||||
dlgPOOutputSettings = 'Output Settings';
|
||||
@ -2944,6 +2945,12 @@ resourcestring
|
||||
lisCTSelectCodeMacro = 'Select Code Macro';
|
||||
lisPDProgress = 'Progress';
|
||||
lisPDAbort = 'Abort';
|
||||
lisPOSaveInLpiFil = 'Save in .lpi file';
|
||||
lisPOSaveInLpsFileInProjectDirectory = 'Save in .lps file in project '
|
||||
+'directory';
|
||||
lisPOSaveInIDEConfigDirectory = 'Save in IDE config directory';
|
||||
lisPODoNotSaveAnySessionInfo = 'Do not save any session info';
|
||||
lisPOSaveSessionInformationIn = 'Save session information in';
|
||||
|
||||
implementation
|
||||
end.
|
||||
|
@ -82,7 +82,8 @@ const
|
||||
procedure SetPrimaryConfigPath(const NewValue: String);
|
||||
procedure SetSecondaryConfigPath(const NewValue: String);
|
||||
procedure CopySecondaryConfigFile(const AFilename: String);
|
||||
|
||||
function GetProjectSessionsConfigPath: String;
|
||||
|
||||
function GetDefaultTestBuildDirectory: string;
|
||||
|
||||
function FindDefaultExecutablePath(const Executable: string): string;
|
||||
|
14
ide/main.pp
14
ide/main.pp
@ -901,7 +901,7 @@ const
|
||||
p: String;
|
||||
begin
|
||||
p:=ParamStr(ParamIndex);
|
||||
Result:=AnsiCompareText(LeftStr(p,length(Option)),Option)=0;
|
||||
Result:=CompareText(LeftStr(p,length(Option)),Option)=0;
|
||||
if Result then
|
||||
AValue:=copy(p,length(Option)+1,length(p))
|
||||
else
|
||||
@ -917,10 +917,10 @@ begin
|
||||
StartedByStartLazarus:=false;
|
||||
SkipAutoLoadingLastProject:=false;
|
||||
if (ParamCount>0)
|
||||
and ((AnsiCompareText(ParamStr(1),'--help')=0)
|
||||
or (AnsiCompareText(ParamStr(1),'-help')=0)
|
||||
or (AnsiCompareText(ParamStr(1),'-?')=0)
|
||||
or (AnsiCompareText(ParamStr(1),'-h')=0)) then
|
||||
and ((CompareText(ParamStr(1),'--help')=0)
|
||||
or (CompareText(ParamStr(1),'-help')=0)
|
||||
or (CompareText(ParamStr(1),'-?')=0)
|
||||
or (CompareText(ParamStr(1),'-h')=0)) then
|
||||
begin
|
||||
TranslateResourceStrings(ProgramDirectory,'');
|
||||
writeln(lislazarusOptionsProjectFilename);
|
||||
@ -996,7 +996,7 @@ begin
|
||||
SetLazarusDefaultFilename;
|
||||
Load(false);
|
||||
if Application.HasOption('language') then begin
|
||||
debugln('TMainIDE.LoadGlobalOptions overriding language from command line: ',
|
||||
debugln('TMainIDE.LoadGlobalOptions overriding language with command line: ',
|
||||
Application.GetOptionValue('language'));
|
||||
EnvironmentOptions.LanguageID:=Application.GetOptionValue('language');
|
||||
end;
|
||||
@ -1033,6 +1033,8 @@ begin
|
||||
SetLazarusDefaultFilename;
|
||||
Load;
|
||||
end;
|
||||
|
||||
CreateDir(GetProjectSessionsConfigPath);
|
||||
end;
|
||||
|
||||
constructor TMainIDE.Create(TheOwner: TComponent);
|
||||
|
@ -1,33 +1,33 @@
|
||||
object MakeResStrDialog: TMakeResStrDialog
|
||||
Left = 439
|
||||
Height = 541
|
||||
Height = 536
|
||||
Top = 319
|
||||
Width = 579
|
||||
HorzScrollBar.Page = 578
|
||||
VertScrollBar.Page = 540
|
||||
Width = 578
|
||||
HorzScrollBar.Page = 577
|
||||
VertScrollBar.Page = 535
|
||||
ActiveControl = StringConstSynEdit
|
||||
Caption = 'MakeResStrDialog'
|
||||
ClientHeight = 541
|
||||
ClientWidth = 579
|
||||
PixelsPerInch = 112
|
||||
ClientHeight = 536
|
||||
ClientWidth = 578
|
||||
PixelsPerInch = 95
|
||||
Position = poScreenCenter
|
||||
object StringConstGroupBox: TGroupBox
|
||||
Left = 6
|
||||
Height = 141
|
||||
Top = 165
|
||||
Width = 567
|
||||
Width = 566
|
||||
Align = alTop
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'StringConstGroupBox'
|
||||
ClientHeight = 124
|
||||
ClientWidth = 563
|
||||
ClientWidth = 562
|
||||
TabOrder = 0
|
||||
object StringConstSynEdit: TSynEdit
|
||||
Name = 'StringConstSynEdit'
|
||||
Left = 6
|
||||
Height = 112
|
||||
Top = 6
|
||||
Width = 551
|
||||
Width = 550
|
||||
Align = alClient
|
||||
BorderSpacing.Around = 6
|
||||
Font.CharSet = ANSI_CHARSET
|
||||
@ -38,7 +38,9 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
ParentColor = False
|
||||
TabOrder = 0
|
||||
BookMarkOptions.Xoffset = -18
|
||||
BookMarkOptions.OnChange = nil
|
||||
Gutter.Visible = False
|
||||
Gutter.OnChange = nil
|
||||
Gutter.CodeFoldingWidth = 14
|
||||
Highlighter = SynPasSyn
|
||||
Keystrokes = <
|
||||
@ -365,19 +367,20 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
Lines.Strings = (
|
||||
'StringConstSynEdit'
|
||||
)
|
||||
SelectedColor.OnChange = nil
|
||||
end
|
||||
end
|
||||
object ConversionGroupBox: TGroupBox
|
||||
Left = 6
|
||||
Height = 153
|
||||
Top = 6
|
||||
Width = 567
|
||||
Width = 566
|
||||
Align = alTop
|
||||
BorderSpacing.Around = 6
|
||||
BorderSpacing.InnerBorder = 6
|
||||
Caption = 'ConversionGroupBox'
|
||||
ClientHeight = 136
|
||||
ClientWidth = 563
|
||||
ClientWidth = 562
|
||||
TabOrder = 1
|
||||
object IdentPrefixLabel: TLabel
|
||||
Left = 12
|
||||
@ -392,7 +395,7 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
end
|
||||
object IdentLengthLabel: TLabel
|
||||
AnchorSideRight.Control = IdentLengthComboBox
|
||||
Left = 354
|
||||
Left = 353
|
||||
Height = 13
|
||||
Top = 8
|
||||
Width = 97
|
||||
@ -479,7 +482,7 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
Text = 'IdentPrefixComboBox'
|
||||
end
|
||||
object IdentLengthComboBox: TComboBox
|
||||
Left = 457
|
||||
Left = 456
|
||||
Height = 21
|
||||
Top = 5
|
||||
Width = 100
|
||||
@ -511,7 +514,7 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
Left = 190
|
||||
Height = 23
|
||||
Top = 33
|
||||
Width = 367
|
||||
Width = 366
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
@ -530,7 +533,7 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
Left = 128
|
||||
Height = 21
|
||||
Top = 62
|
||||
Width = 429
|
||||
Width = 428
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoCompleteText = [cbactEndOfLineComplete, cbactSearchAscending]
|
||||
BorderSpacing.Left = 6
|
||||
@ -550,7 +553,7 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
Left = 174
|
||||
Height = 21
|
||||
Top = 89
|
||||
Width = 383
|
||||
Width = 382
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoCompleteText = [cbactEndOfLineComplete, cbactSearchAscending]
|
||||
BorderSpacing.Left = 6
|
||||
@ -563,23 +566,23 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
end
|
||||
object SrcPreviewGroupBox: TGroupBox
|
||||
Left = 6
|
||||
Height = 182
|
||||
Height = 177
|
||||
Top = 312
|
||||
Width = 567
|
||||
Width = 566
|
||||
Align = alTop
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'SrcPreviewGroupBox'
|
||||
ClientHeight = 165
|
||||
ClientWidth = 563
|
||||
ClientHeight = 160
|
||||
ClientWidth = 562
|
||||
TabOrder = 2
|
||||
OnResize = IdentPrefixLabelResize
|
||||
object SrcPreviewSynEdit: TSynEdit
|
||||
Name = 'SrcPreviewSynEdit'
|
||||
Left = 6
|
||||
Height = 153
|
||||
Height = 148
|
||||
Top = 6
|
||||
Width = 551
|
||||
Width = 550
|
||||
Align = alClient
|
||||
BorderSpacing.Around = 6
|
||||
Font.CharSet = ANSI_CHARSET
|
||||
@ -590,7 +593,9 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
ParentColor = False
|
||||
TabOrder = 0
|
||||
BookMarkOptions.Xoffset = -18
|
||||
BookMarkOptions.OnChange = nil
|
||||
Gutter.Visible = False
|
||||
Gutter.OnChange = nil
|
||||
Gutter.CodeFoldingWidth = 14
|
||||
Highlighter = SynPasSyn
|
||||
Keystrokes = <
|
||||
@ -917,12 +922,13 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
Lines.Strings = (
|
||||
'SrcPreviewSynEdit'
|
||||
)
|
||||
SelectedColor.OnChange = nil
|
||||
end
|
||||
end
|
||||
object OKButton: TBitBtn
|
||||
Left = 522
|
||||
Left = 521
|
||||
Height = 28
|
||||
Top = 507
|
||||
Top = 502
|
||||
Width = 51
|
||||
Anchors = [akRight, akBottom]
|
||||
AutoSize = True
|
||||
@ -937,9 +943,9 @@ object MakeResStrDialog: TMakeResStrDialog
|
||||
end
|
||||
object CancelButton: TBitBtn
|
||||
AnchorSideRight.Control = OKButton
|
||||
Left = 443
|
||||
Left = 442
|
||||
Height = 28
|
||||
Top = 507
|
||||
Top = 502
|
||||
Width = 73
|
||||
Anchors = [akRight, akBottom]
|
||||
AutoSize = True
|
||||
|
@ -2,71 +2,72 @@
|
||||
|
||||
LazarusResources.Add('TMakeResStrDialog','FORMDATA',[
|
||||
'TPF0'#17'TMakeResStrDialog'#16'MakeResStrDialog'#4'Left'#3#183#1#6'Height'#3
|
||||
+#29#2#3'Top'#3'?'#1#5'Width'#3'C'#2#18'HorzScrollBar.Page'#3'B'#2#18'VertScr'
|
||||
+'ollBar.Page'#3#28#2#13'ActiveControl'#7#18'StringConstSynEdit'#7'Caption'#6
|
||||
+#16'MakeResStrDialog'#12'ClientHeight'#3#29#2#11'ClientWidth'#3'C'#2#13'Pixe'
|
||||
+'lsPerInch'#2'p'#8'Position'#7#14'poScreenCenter'#0#9'TGroupBox'#19'StringCo'
|
||||
+'nstGroupBox'#4'Left'#2#6#6'Height'#3#141#0#3'Top'#3#165#0#5'Width'#3'7'#2#5
|
||||
+#24#2#3'Top'#3'?'#1#5'Width'#3'B'#2#18'HorzScrollBar.Page'#3'A'#2#18'VertScr'
|
||||
+'ollBar.Page'#3#23#2#13'ActiveControl'#7#18'StringConstSynEdit'#7'Caption'#6
|
||||
+#16'MakeResStrDialog'#12'ClientHeight'#3#24#2#11'ClientWidth'#3'B'#2#13'Pixe'
|
||||
+'lsPerInch'#2'_'#8'Position'#7#14'poScreenCenter'#0#9'TGroupBox'#19'StringCo'
|
||||
+'nstGroupBox'#4'Left'#2#6#6'Height'#3#141#0#3'Top'#3#165#0#5'Width'#3'6'#2#5
|
||||
+'Align'#7#5'alTop'#20'BorderSpacing.Around'#2#6#7'Caption'#6#19'StringConstG'
|
||||
+'roupBox'#12'ClientHeight'#2'|'#11'ClientWidth'#3'3'#2#8'TabOrder'#2#0#0#8'T'
|
||||
+'roupBox'#12'ClientHeight'#2'|'#11'ClientWidth'#3'2'#2#8'TabOrder'#2#0#0#8'T'
|
||||
+'SynEdit'#18'StringConstSynEdit'#4'Name'#6#18'StringConstSynEdit'#4'Left'#2#6
|
||||
+#6'Height'#2'p'#3'Top'#2#6#5'Width'#3''''#2#5'Align'#7#8'alClient'#20'Border'
|
||||
+'Spacing.Around'#2#6#12'Font.CharSet'#7#12'ANSI_CHARSET'#10'Font.Color'#7#7
|
||||
+'clBlack'#11'Font.Height'#2#243#9'Font.Name'#6#7'Courier'#10'Font.Pitch'#7#7
|
||||
+#6'Height'#2'p'#3'Top'#2#6#5'Width'#3'&'#2#5'Align'#7#8'alClient'#20'BorderS'
|
||||
+'pacing.Around'#2#6#12'Font.CharSet'#7#12'ANSI_CHARSET'#10'Font.Color'#7#7'c'
|
||||
+'lBlack'#11'Font.Height'#2#243#9'Font.Name'#6#7'Courier'#10'Font.Pitch'#7#7
|
||||
+'fpFixed'#11'ParentColor'#8#8'TabOrder'#2#0#23'BookMarkOptions.Xoffset'#2#238
|
||||
+#14'Gutter.Visible'#8#23'Gutter.CodeFoldingWidth'#2#14#11'Highlighter'#7#9'S'
|
||||
+'ynPasSyn'#10'Keystrokes'#14#1#7'Command'#2#3#8'ShortCut'#2'&'#0#1#7'Command'
|
||||
+#2'g'#8'ShortCut'#3'& '#0#1#7'Command'#3#211#0#8'ShortCut'#3'&@'#0#1#7'Comma'
|
||||
+'nd'#2#4#8'ShortCut'#2'('#0#1#7'Command'#2'h'#8'ShortCut'#3'( '#0#1#7'Comman'
|
||||
+'d'#3#212#0#8'ShortCut'#3'(@'#0#1#7'Command'#2#1#8'ShortCut'#2'%'#0#1#7'Comm'
|
||||
+'and'#2'e'#8'ShortCut'#3'% '#0#1#7'Command'#2#5#8'ShortCut'#3'%@'#0#1#7'Comm'
|
||||
+'and'#2'i'#8'ShortCut'#3'%`'#0#1#7'Command'#2#2#8'ShortCut'#2''''#0#1#7'Comm'
|
||||
+'and'#2'f'#8'ShortCut'#3''' '#0#1#7'Command'#2#6#8'ShortCut'#3'''@'#0#1#7'Co'
|
||||
+'mmand'#2'j'#8'ShortCut'#3'''`'#0#1#7'Command'#2#10#8'ShortCut'#2'"'#0#1#7'C'
|
||||
+'ommand'#2'n'#8'ShortCut'#3'" '#0#1#7'Command'#2#14#8'ShortCut'#3'"@'#0#1#7
|
||||
+'Command'#2'r'#8'ShortCut'#3'"`'#0#1#7'Command'#2#9#8'ShortCut'#2'!'#0#1#7'C'
|
||||
+'ommand'#2'm'#8'ShortCut'#3'! '#0#1#7'Command'#2#13#8'ShortCut'#3'!@'#0#1#7
|
||||
+'Command'#2'q'#8'ShortCut'#3'!`'#0#1#7'Command'#2#7#8'ShortCut'#2'$'#0#1#7'C'
|
||||
+'ommand'#2'k'#8'ShortCut'#3'$ '#0#1#7'Command'#2#15#8'ShortCut'#3'$@'#0#1#7
|
||||
+'Command'#2's'#8'ShortCut'#3'$`'#0#1#7'Command'#2#8#8'ShortCut'#2'#'#0#1#7'C'
|
||||
+'ommand'#2'l'#8'ShortCut'#3'# '#0#1#7'Command'#2#16#8'ShortCut'#3'#@'#0#1#7
|
||||
+'Command'#2't'#8'ShortCut'#3'#`'#0#1#7'Command'#3#223#0#8'ShortCut'#2'-'#0#1
|
||||
+#7'Command'#3#201#0#8'ShortCut'#3'-@'#0#1#7'Command'#3'\'#2#8'ShortCut'#3'- '
|
||||
+#0#1#7'Command'#3#246#1#8'ShortCut'#2'.'#0#1#7'Command'#3'['#2#8'ShortCut'#3
|
||||
+'. '#0#1#7'Command'#3#245#1#8'ShortCut'#2#8#0#1#7'Command'#3#245#1#8'ShortCu'
|
||||
+'t'#3#8' '#0#1#7'Command'#3#248#1#8'ShortCut'#3#8'@'#0#1#7'Command'#3'Y'#2#8
|
||||
+'ShortCut'#4#8#128#0#0#0#1#7'Command'#3'Z'#2#8'ShortCut'#4#8#160#0#0#0#1#7'C'
|
||||
+'ommand'#3#253#1#8'ShortCut'#2#13#0#1#7'Command'#3#199#0#8'ShortCut'#3'A@'#0
|
||||
+#1#7'Command'#3#201#0#8'ShortCut'#3'C@'#0#1#7'Command'#3'b'#2#8'ShortCut'#3
|
||||
+'I`'#0#1#7'Command'#3#253#1#8'ShortCut'#3'M@'#0#1#7'Command'#3#254#1#8'Short'
|
||||
+'Cut'#3'N@'#0#1#7'Command'#3#247#1#8'ShortCut'#3'T@'#0#1#7'Command'#3'c'#2#8
|
||||
+'ShortCut'#3'U`'#0#1#7'Command'#3'\'#2#8'ShortCut'#3'V@'#0#1#7'Command'#3'['
|
||||
+#2#8'ShortCut'#3'X@'#0#1#7'Command'#3#251#1#8'ShortCut'#3'Y@'#0#1#7'Command'
|
||||
+#3#250#1#8'ShortCut'#3'Y`'#0#1#7'Command'#3'Y'#2#8'ShortCut'#3'Z@'#0#1#7'Com'
|
||||
+'mand'#3'Z'#2#8'ShortCut'#3'Z`'#0#1#7'Command'#3'-'#1#8'ShortCut'#3'0@'#0#1#7
|
||||
+'Command'#3'.'#1#8'ShortCut'#3'1@'#0#1#7'Command'#3'/'#1#8'ShortCut'#3'2@'#0
|
||||
+#1#7'Command'#3'0'#1#8'ShortCut'#3'3@'#0#1#7'Command'#3'1'#1#8'ShortCut'#3'4'
|
||||
+'@'#0#1#7'Command'#3'2'#1#8'ShortCut'#3'5@'#0#1#7'Command'#3'3'#1#8'ShortCut'
|
||||
+#3'6@'#0#1#7'Command'#3'4'#1#8'ShortCut'#3'7@'#0#1#7'Command'#3'5'#1#8'Short'
|
||||
+'Cut'#3'8@'#0#1#7'Command'#3'6'#1#8'ShortCut'#3'9@'#0#1#7'Command'#3'_'#1#8
|
||||
+'ShortCut'#3'0`'#0#1#7'Command'#3'`'#1#8'ShortCut'#3'1`'#0#1#7'Command'#3'a'
|
||||
+#1#8'ShortCut'#3'2`'#0#1#7'Command'#3'b'#1#8'ShortCut'#3'3`'#0#1#7'Command'#3
|
||||
+'c'#1#8'ShortCut'#3'4`'#0#1#7'Command'#3'd'#1#8'ShortCut'#3'5`'#0#1#7'Comman'
|
||||
+'d'#3'e'#1#8'ShortCut'#3'6`'#0#1#7'Command'#3'f'#1#8'ShortCut'#3'7`'#0#1#7'C'
|
||||
+'ommand'#3'g'#1#8'ShortCut'#3'8`'#0#1#7'Command'#3'h'#1#8'ShortCut'#3'9`'#0#1
|
||||
+#7'Command'#3#231#0#8'ShortCut'#3'N`'#0#1#7'Command'#3#232#0#8'ShortCut'#3'C'
|
||||
+'`'#0#1#7'Command'#3#233#0#8'ShortCut'#3'L`'#0#1#7'Command'#3'd'#2#8'ShortCu'
|
||||
+'t'#2#9#0#1#7'Command'#3'e'#2#8'ShortCut'#3#9' '#0#1#7'Command'#3#250#0#8'Sh'
|
||||
+'ortCut'#3'B`'#0#0#13'Lines.Strings'#1#6#18'StringConstSynEdit'#0#0#0#0#9'TG'
|
||||
+'roupBox'#18'ConversionGroupBox'#4'Left'#2#6#6'Height'#3#153#0#3'Top'#2#6#5
|
||||
+'Width'#3'7'#2#5'Align'#7#5'alTop'#20'BorderSpacing.Around'#2#6#25'BorderSpa'
|
||||
+'cing.InnerBorder'#2#6#7'Caption'#6#18'ConversionGroupBox'#12'ClientHeight'#3
|
||||
+#136#0#11'ClientWidth'#3'3'#2#8'TabOrder'#2#1#0#6'TLabel'#16'IdentPrefixLabe'
|
||||
+'l'#4'Left'#2#12#6'Height'#2#13#3'Top'#2#8#5'Width'#2'Z'#9'Alignment'#7#14't'
|
||||
+'aRightJustify'#7'Caption'#6#16'IdentPrefixLabel'#5'Color'#7#6'clNone'#11'Pa'
|
||||
+'rentColor'#8#8'OnResize'#7#22'IdentPrefixLabelResize'#0#0#6'TLabel'#16'Iden'
|
||||
,'tLengthLabel'#23'AnchorSideRight.Control'#7#19'IdentLengthComboBox'#4'Left'
|
||||
+#3'b'#1#6'Height'#2#13#3'Top'#2#8#5'Width'#2'a'#9'Alignment'#7#14'taRightJus'
|
||||
+#24'BookMarkOptions.OnChange'#13#14'Gutter.Visible'#8#15'Gutter.OnChange'#13
|
||||
+#23'Gutter.CodeFoldingWidth'#2#14#11'Highlighter'#7#9'SynPasSyn'#10'Keystrok'
|
||||
+'es'#14#1#7'Command'#2#3#8'ShortCut'#2'&'#0#1#7'Command'#2'g'#8'ShortCut'#3
|
||||
+'& '#0#1#7'Command'#3#211#0#8'ShortCut'#3'&@'#0#1#7'Command'#2#4#8'ShortCut'
|
||||
+#2'('#0#1#7'Command'#2'h'#8'ShortCut'#3'( '#0#1#7'Command'#3#212#0#8'ShortCu'
|
||||
+'t'#3'(@'#0#1#7'Command'#2#1#8'ShortCut'#2'%'#0#1#7'Command'#2'e'#8'ShortCut'
|
||||
+#3'% '#0#1#7'Command'#2#5#8'ShortCut'#3'%@'#0#1#7'Command'#2'i'#8'ShortCut'#3
|
||||
+'%`'#0#1#7'Command'#2#2#8'ShortCut'#2''''#0#1#7'Command'#2'f'#8'ShortCut'#3
|
||||
+''' '#0#1#7'Command'#2#6#8'ShortCut'#3'''@'#0#1#7'Command'#2'j'#8'ShortCut'#3
|
||||
+'''`'#0#1#7'Command'#2#10#8'ShortCut'#2'"'#0#1#7'Command'#2'n'#8'ShortCut'#3
|
||||
+'" '#0#1#7'Command'#2#14#8'ShortCut'#3'"@'#0#1#7'Command'#2'r'#8'ShortCut'#3
|
||||
+'"`'#0#1#7'Command'#2#9#8'ShortCut'#2'!'#0#1#7'Command'#2'm'#8'ShortCut'#3'!'
|
||||
+' '#0#1#7'Command'#2#13#8'ShortCut'#3'!@'#0#1#7'Command'#2'q'#8'ShortCut'#3
|
||||
+'!`'#0#1#7'Command'#2#7#8'ShortCut'#2'$'#0#1#7'Command'#2'k'#8'ShortCut'#3'$'
|
||||
+' '#0#1#7'Command'#2#15#8'ShortCut'#3'$@'#0#1#7'Command'#2's'#8'ShortCut'#3
|
||||
+'$`'#0#1#7'Command'#2#8#8'ShortCut'#2'#'#0#1#7'Command'#2'l'#8'ShortCut'#3'#'
|
||||
+' '#0#1#7'Command'#2#16#8'ShortCut'#3'#@'#0#1#7'Command'#2't'#8'ShortCut'#3
|
||||
+'#`'#0#1#7'Command'#3#223#0#8'ShortCut'#2'-'#0#1#7'Command'#3#201#0#8'ShortC'
|
||||
+'ut'#3'-@'#0#1#7'Command'#3'\'#2#8'ShortCut'#3'- '#0#1#7'Command'#3#246#1#8
|
||||
+'ShortCut'#2'.'#0#1#7'Command'#3'['#2#8'ShortCut'#3'. '#0#1#7'Command'#3#245
|
||||
+#1#8'ShortCut'#2#8#0#1#7'Command'#3#245#1#8'ShortCut'#3#8' '#0#1#7'Command'#3
|
||||
+#248#1#8'ShortCut'#3#8'@'#0#1#7'Command'#3'Y'#2#8'ShortCut'#4#8#128#0#0#0#1#7
|
||||
+'Command'#3'Z'#2#8'ShortCut'#4#8#160#0#0#0#1#7'Command'#3#253#1#8'ShortCut'#2
|
||||
+#13#0#1#7'Command'#3#199#0#8'ShortCut'#3'A@'#0#1#7'Command'#3#201#0#8'ShortC'
|
||||
+'ut'#3'C@'#0#1#7'Command'#3'b'#2#8'ShortCut'#3'I`'#0#1#7'Command'#3#253#1#8
|
||||
+'ShortCut'#3'M@'#0#1#7'Command'#3#254#1#8'ShortCut'#3'N@'#0#1#7'Command'#3
|
||||
+#247#1#8'ShortCut'#3'T@'#0#1#7'Command'#3'c'#2#8'ShortCut'#3'U`'#0#1#7'Comma'
|
||||
+'nd'#3'\'#2#8'ShortCut'#3'V@'#0#1#7'Command'#3'['#2#8'ShortCut'#3'X@'#0#1#7
|
||||
+'Command'#3#251#1#8'ShortCut'#3'Y@'#0#1#7'Command'#3#250#1#8'ShortCut'#3'Y`'
|
||||
+#0#1#7'Command'#3'Y'#2#8'ShortCut'#3'Z@'#0#1#7'Command'#3'Z'#2#8'ShortCut'#3
|
||||
+'Z`'#0#1#7'Command'#3'-'#1#8'ShortCut'#3'0@'#0#1#7'Command'#3'.'#1#8'ShortCu'
|
||||
+'t'#3'1@'#0#1#7'Command'#3'/'#1#8'ShortCut'#3'2@'#0#1#7'Command'#3'0'#1#8'Sh'
|
||||
+'ortCut'#3'3@'#0#1#7'Command'#3'1'#1#8'ShortCut'#3'4@'#0#1#7'Command'#3'2'#1
|
||||
+#8'ShortCut'#3'5@'#0#1#7'Command'#3'3'#1#8'ShortCut'#3'6@'#0#1#7'Command'#3
|
||||
+'4'#1#8'ShortCut'#3'7@'#0#1#7'Command'#3'5'#1#8'ShortCut'#3'8@'#0#1#7'Comman'
|
||||
+'d'#3'6'#1#8'ShortCut'#3'9@'#0#1#7'Command'#3'_'#1#8'ShortCut'#3'0`'#0#1#7'C'
|
||||
+'ommand'#3'`'#1#8'ShortCut'#3'1`'#0#1#7'Command'#3'a'#1#8'ShortCut'#3'2`'#0#1
|
||||
+#7'Command'#3'b'#1#8'ShortCut'#3'3`'#0#1#7'Command'#3'c'#1#8'ShortCut'#3'4`'
|
||||
+#0#1#7'Command'#3'd'#1#8'ShortCut'#3'5`'#0#1#7'Command'#3'e'#1#8'ShortCut'#3
|
||||
+'6`'#0#1#7'Command'#3'f'#1#8'ShortCut'#3'7`'#0#1#7'Command'#3'g'#1#8'ShortCu'
|
||||
+'t'#3'8`'#0#1#7'Command'#3'h'#1#8'ShortCut'#3'9`'#0#1#7'Command'#3#231#0#8'S'
|
||||
+'hortCut'#3'N`'#0#1#7'Command'#3#232#0#8'ShortCut'#3'C`'#0#1#7'Command'#3#233
|
||||
+#0#8'ShortCut'#3'L`'#0#1#7'Command'#3'd'#2#8'ShortCut'#2#9#0#1#7'Command'#3
|
||||
+'e'#2#8'ShortCut'#3#9' '#0#1#7'Command'#3#250#0#8'ShortCut'#3'B`'#0#0#13'Lin'
|
||||
+'es.Strings'#1#6#18'StringConstSynEdit'#0#22'SelectedColor.OnChange'#13#0#0#0
|
||||
+#9'TGroupBox'#18'ConversionGroupBox'#4'Left'#2#6#6'Height'#3#153#0#3'Top'#2#6
|
||||
+#5'Width'#3'6'#2#5'Align'#7#5'alTop'#20'BorderSpacing.Around'#2#6#25'BorderS'
|
||||
+'pacing.InnerBorder'#2#6#7'Caption'#6#18'ConversionGroupBox'#12'ClientHeight'
|
||||
+#3#136#0#11'ClientWidth'#3'2'#2#8'TabOrder'#2#1#0#6'TLabel'#16'IdentPrefixLa'
|
||||
+'bel'#4'Left'#2#12#6'Height'#2#13#3'Top'#2#8#5'Width'#2'Z'#9'Alignment'#7#14
|
||||
+'taRightJustify'#7'Caption'#6#16'IdentPrefixLabel'#5'Color'#7#6'clNone'#11'P'
|
||||
,'arentColor'#8#8'OnResize'#7#22'IdentPrefixLabelResize'#0#0#6'TLabel'#16'Ide'
|
||||
+'ntLengthLabel'#23'AnchorSideRight.Control'#7#19'IdentLengthComboBox'#4'Left'
|
||||
+#3'a'#1#6'Height'#2#13#3'Top'#2#8#5'Width'#2'a'#9'Alignment'#7#14'taRightJus'
|
||||
+'tify'#7'Anchors'#11#5'akTop'#7'akRight'#0#19'BorderSpacing.Right'#2#6#7'Cap'
|
||||
+'tion'#6#16'IdentLengthLabel'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#6'T'
|
||||
+'Label'#18'ResStrSectionLabel'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'
|
||||
@ -96,7 +97,7 @@ LazarusResources.Add('TMakeResStrDialog','FORMDATA',[
|
||||
+'EndOfLineComplete'#20'cbactSearchAscending'#0#20'BorderSpacing.Around'#2#6#9
|
||||
+'MaxLength'#2#0#8'OnChange'#7#25'IdentPrefixComboBoxChange'#8'TabOrder'#2#3#4
|
||||
+'Text'#6#19'IdentPrefixComboBox'#0#0#9'TComboBox'#19'IdentLengthComboBox'#4
|
||||
+'Left'#3#201#1#6'Height'#2#21#3'Top'#2#5#5'Width'#2'd'#7'Anchors'#11#5'akTop'
|
||||
+'Left'#3#200#1#6'Height'#2#21#3'Top'#2#5#5'Width'#2'd'#7'Anchors'#11#5'akTop'
|
||||
+#7'akRight'#0#16'AutoCompleteText'#11#22'cbactEndOfLineComplete'#20'cbactSea'
|
||||
+'rchAscending'#0#9'MaxLength'#2#0#8'OnChange'#7#25'IdentLengthComboBoxChange'
|
||||
+#8'TabOrder'#2#4#4'Text'#6#19'IdentLengthComboBox'#0#0#9'TCheckBox'#24'Custo'
|
||||
@ -108,14 +109,14 @@ LazarusResources.Add('TMakeResStrDialog','FORMDATA',[
|
||||
+#7#9'asrBottom'#21'AnchorSideTop.Control'#7#19'IdentPrefixComboBox'#18'Ancho'
|
||||
+'rSideTop.Side'#7#9'asrBottom'#23'AnchorSideRight.Control'#7#19'IdentLengthC'
|
||||
+'omboBox'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#3#190#0#6'Height'#2
|
||||
+#23#3'Top'#2'!'#5'Width'#3'o'#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0
|
||||
+#23#3'Top'#2'!'#5'Width'#3'n'#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0
|
||||
+#18'BorderSpacing.Left'#2#6#17'BorderSpacing.Top'#2#6#7'Enabled'#8#8'OnChang'
|
||||
+'e'#7#20'IdentifierEditChange'#8'TabOrder'#2#6#4'Text'#6#14'IdentifierEdit'#0
|
||||
+#0#9'TComboBox'#21'ResStrSectionComboBox'#22'AnchorSideLeft.Control'#7#18'Re'
|
||||
+'sStrSectionLabel'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.C'
|
||||
+'ontrol'#7#14'IdentifierEdit'#18'AnchorSideTop.Side'#7#9'asrBottom'#23'Ancho'
|
||||
+'rSideRight.Control'#7#14'IdentifierEdit'#20'AnchorSideRight.Side'#7#9'asrBo'
|
||||
+'ttom'#4'Left'#3#128#0#6'Height'#2#21#3'Top'#2'>'#5'Width'#3#173#1#7'Anchors'
|
||||
+'ttom'#4'Left'#3#128#0#6'Height'#2#21#3'Top'#2'>'#5'Width'#3#172#1#7'Anchors'
|
||||
+#11#5'akTop'#6'akLeft'#7'akRight'#0#16'AutoCompleteText'#11#22'cbactEndOfLin'
|
||||
+'eComplete'#20'cbactSearchAscending'#0#18'BorderSpacing.Left'#2#6#17'BorderS'
|
||||
+'pacing.Top'#2#6#9'MaxLength'#2#0#8'OnChange'#7#27'ResStrSectionComboBoxChan'
|
||||
@ -124,73 +125,74 @@ LazarusResources.Add('TMakeResStrDialog','FORMDATA',[
|
||||
+'eValueLabel'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Contro'
|
||||
+'l'#7#21'ResStrSectionComboBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#23'Anc'
|
||||
+'horSideRight.Control'#7#21'ResStrSectionComboBox'#20'AnchorSideRight.Side'#7
|
||||
+#9'asrBottom'#4'Left'#3#174#0#6'Height'#2#21#3'Top'#2'Y'#5'Width'#3''#1#7'A'
|
||||
+#9'asrBottom'#4'Left'#3#174#0#6'Height'#2#21#3'Top'#2'Y'#5'Width'#3'~'#1#7'A'
|
||||
+'nchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#16'AutoCompleteText'#11#22'cbact'
|
||||
+'EndOfLineComplete'#20'cbactSearchAscending'#0#18'BorderSpacing.Left'#2#6#17
|
||||
+'BorderSpacing.Top'#2#6#9'MaxLength'#2#0#8'OnChange'#7'"ResStrWithSameValues'
|
||||
+'ComboboxChange'#8'TabOrder'#2#8#4'Text'#6#28'ResStrWithSameValuesCombobox'#0
|
||||
,#0#0#9'TGroupBox'#18'SrcPreviewGroupBox'#4'Left'#2#6#6'Height'#3#182#0#3'Top'
|
||||
+#3'8'#1#5'Width'#3'7'#2#5'Align'#7#5'alTop'#7'Anchors'#11#5'akTop'#6'akLeft'
|
||||
,'ComboboxChange'#8'TabOrder'#2#8#4'Text'#6#28'ResStrWithSameValuesCombobox'#0
|
||||
+#0#0#9'TGroupBox'#18'SrcPreviewGroupBox'#4'Left'#2#6#6'Height'#3#177#0#3'Top'
|
||||
+#3'8'#1#5'Width'#3'6'#2#5'Align'#7#5'alTop'#7'Anchors'#11#5'akTop'#6'akLeft'
|
||||
+#7'akRight'#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#18'SrcPr'
|
||||
+'eviewGroupBox'#12'ClientHeight'#3#165#0#11'ClientWidth'#3'3'#2#8'TabOrder'#2
|
||||
+'eviewGroupBox'#12'ClientHeight'#3#160#0#11'ClientWidth'#3'2'#2#8'TabOrder'#2
|
||||
+#2#8'OnResize'#7#22'IdentPrefixLabelResize'#0#8'TSynEdit'#17'SrcPreviewSynEd'
|
||||
+'it'#4'Name'#6#17'SrcPreviewSynEdit'#4'Left'#2#6#6'Height'#3#153#0#3'Top'#2#6
|
||||
+#5'Width'#3''''#2#5'Align'#7#8'alClient'#20'BorderSpacing.Around'#2#6#12'Fon'
|
||||
+'t.CharSet'#7#12'ANSI_CHARSET'#10'Font.Color'#7#7'clBlack'#11'Font.Height'#2
|
||||
+'it'#4'Name'#6#17'SrcPreviewSynEdit'#4'Left'#2#6#6'Height'#3#148#0#3'Top'#2#6
|
||||
+#5'Width'#3'&'#2#5'Align'#7#8'alClient'#20'BorderSpacing.Around'#2#6#12'Font'
|
||||
+'.CharSet'#7#12'ANSI_CHARSET'#10'Font.Color'#7#7'clBlack'#11'Font.Height'#2
|
||||
+#243#9'Font.Name'#6#7'Courier'#10'Font.Pitch'#7#7'fpFixed'#11'ParentColor'#8
|
||||
+#8'TabOrder'#2#0#23'BookMarkOptions.Xoffset'#2#238#14'Gutter.Visible'#8#23'G'
|
||||
+'utter.CodeFoldingWidth'#2#14#11'Highlighter'#7#9'SynPasSyn'#10'Keystrokes'
|
||||
+#14#1#7'Command'#2#3#8'ShortCut'#2'&'#0#1#7'Command'#2'g'#8'ShortCut'#3'& '#0
|
||||
+#1#7'Command'#3#211#0#8'ShortCut'#3'&@'#0#1#7'Command'#2#4#8'ShortCut'#2'('#0
|
||||
+#1#7'Command'#2'h'#8'ShortCut'#3'( '#0#1#7'Command'#3#212#0#8'ShortCut'#3'(@'
|
||||
+#0#1#7'Command'#2#1#8'ShortCut'#2'%'#0#1#7'Command'#2'e'#8'ShortCut'#3'% '#0
|
||||
+#1#7'Command'#2#5#8'ShortCut'#3'%@'#0#1#7'Command'#2'i'#8'ShortCut'#3'%`'#0#1
|
||||
+#7'Command'#2#2#8'ShortCut'#2''''#0#1#7'Command'#2'f'#8'ShortCut'#3''' '#0#1
|
||||
+#7'Command'#2#6#8'ShortCut'#3'''@'#0#1#7'Command'#2'j'#8'ShortCut'#3'''`'#0#1
|
||||
+#7'Command'#2#10#8'ShortCut'#2'"'#0#1#7'Command'#2'n'#8'ShortCut'#3'" '#0#1#7
|
||||
+'Command'#2#14#8'ShortCut'#3'"@'#0#1#7'Command'#2'r'#8'ShortCut'#3'"`'#0#1#7
|
||||
+'Command'#2#9#8'ShortCut'#2'!'#0#1#7'Command'#2'm'#8'ShortCut'#3'! '#0#1#7'C'
|
||||
+'ommand'#2#13#8'ShortCut'#3'!@'#0#1#7'Command'#2'q'#8'ShortCut'#3'!`'#0#1#7
|
||||
+'Command'#2#7#8'ShortCut'#2'$'#0#1#7'Command'#2'k'#8'ShortCut'#3'$ '#0#1#7'C'
|
||||
+'ommand'#2#15#8'ShortCut'#3'$@'#0#1#7'Command'#2's'#8'ShortCut'#3'$`'#0#1#7
|
||||
+'Command'#2#8#8'ShortCut'#2'#'#0#1#7'Command'#2'l'#8'ShortCut'#3'# '#0#1#7'C'
|
||||
+'ommand'#2#16#8'ShortCut'#3'#@'#0#1#7'Command'#2't'#8'ShortCut'#3'#`'#0#1#7
|
||||
+'Command'#3#223#0#8'ShortCut'#2'-'#0#1#7'Command'#3#201#0#8'ShortCut'#3'-@'#0
|
||||
+#1#7'Command'#3'\'#2#8'ShortCut'#3'- '#0#1#7'Command'#3#246#1#8'ShortCut'#2
|
||||
+'.'#0#1#7'Command'#3'['#2#8'ShortCut'#3'. '#0#1#7'Command'#3#245#1#8'ShortCu'
|
||||
+'t'#2#8#0#1#7'Command'#3#245#1#8'ShortCut'#3#8' '#0#1#7'Command'#3#248#1#8'S'
|
||||
+'hortCut'#3#8'@'#0#1#7'Command'#3'Y'#2#8'ShortCut'#4#8#128#0#0#0#1#7'Command'
|
||||
+#3'Z'#2#8'ShortCut'#4#8#160#0#0#0#1#7'Command'#3#253#1#8'ShortCut'#2#13#0#1#7
|
||||
+'Command'#3#199#0#8'ShortCut'#3'A@'#0#1#7'Command'#3#201#0#8'ShortCut'#3'C@'
|
||||
+#0#1#7'Command'#3'b'#2#8'ShortCut'#3'I`'#0#1#7'Command'#3#253#1#8'ShortCut'#3
|
||||
+'M@'#0#1#7'Command'#3#254#1#8'ShortCut'#3'N@'#0#1#7'Command'#3#247#1#8'Short'
|
||||
+'Cut'#3'T@'#0#1#7'Command'#3'c'#2#8'ShortCut'#3'U`'#0#1#7'Command'#3'\'#2#8
|
||||
+'ShortCut'#3'V@'#0#1#7'Command'#3'['#2#8'ShortCut'#3'X@'#0#1#7'Command'#3#251
|
||||
+#1#8'ShortCut'#3'Y@'#0#1#7'Command'#3#250#1#8'ShortCut'#3'Y`'#0#1#7'Command'
|
||||
+#3'Y'#2#8'ShortCut'#3'Z@'#0#1#7'Command'#3'Z'#2#8'ShortCut'#3'Z`'#0#1#7'Comm'
|
||||
+'and'#3'-'#1#8'ShortCut'#3'0@'#0#1#7'Command'#3'.'#1#8'ShortCut'#3'1@'#0#1#7
|
||||
+'Command'#3'/'#1#8'ShortCut'#3'2@'#0#1#7'Command'#3'0'#1#8'ShortCut'#3'3@'#0
|
||||
+#1#7'Command'#3'1'#1#8'ShortCut'#3'4@'#0#1#7'Command'#3'2'#1#8'ShortCut'#3'5'
|
||||
+'@'#0#1#7'Command'#3'3'#1#8'ShortCut'#3'6@'#0#1#7'Command'#3'4'#1#8'ShortCut'
|
||||
+#3'7@'#0#1#7'Command'#3'5'#1#8'ShortCut'#3'8@'#0#1#7'Command'#3'6'#1#8'Short'
|
||||
+'Cut'#3'9@'#0#1#7'Command'#3'_'#1#8'ShortCut'#3'0`'#0#1#7'Command'#3'`'#1#8
|
||||
+'ShortCut'#3'1`'#0#1#7'Command'#3'a'#1#8'ShortCut'#3'2`'#0#1#7'Command'#3'b'
|
||||
+#1#8'ShortCut'#3'3`'#0#1#7'Command'#3'c'#1#8'ShortCut'#3'4`'#0#1#7'Command'#3
|
||||
+'d'#1#8'ShortCut'#3'5`'#0#1#7'Command'#3'e'#1#8'ShortCut'#3'6`'#0#1#7'Comman'
|
||||
+'d'#3'f'#1#8'ShortCut'#3'7`'#0#1#7'Command'#3'g'#1#8'ShortCut'#3'8`'#0#1#7'C'
|
||||
+'ommand'#3'h'#1#8'ShortCut'#3'9`'#0#1#7'Command'#3#231#0#8'ShortCut'#3'N`'#0
|
||||
+#1#7'Command'#3#232#0#8'ShortCut'#3'C`'#0#1#7'Command'#3#233#0#8'ShortCut'#3
|
||||
+'L`'#0#1#7'Command'#3'd'#2#8'ShortCut'#2#9#0#1#7'Command'#3'e'#2#8'ShortCut'
|
||||
+#3#9' '#0#1#7'Command'#3#250#0#8'ShortCut'#3'B`'#0#0#13'Lines.Strings'#1#6#17
|
||||
+'SrcPreviewSynEdit'#0#0#0#0#7'TBitBtn'#8'OKButton'#4'Left'#3#10#2#6'Height'#2
|
||||
+#28#3'Top'#3#251#1#5'Width'#2'3'#7'Anchors'#11#7'akRight'#8'akBottom'#0#8'Au'
|
||||
+'toSize'#9#25'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#3'&OK'#7'Default'#9
|
||||
+#4'Kind'#7#4'bkOK'#11'ModalResult'#2#1#9'NumGlyphs'#2#0#7'OnClick'#7#13'OkBu'
|
||||
+'ttonClick'#8'TabOrder'#2#3#0#0#7'TBitBtn'#12'CancelButton'#23'AnchorSideRig'
|
||||
+'ht.Control'#7#8'OKButton'#4'Left'#3#187#1#6'Height'#2#28#3'Top'#3#251#1#5'W'
|
||||
+'idth'#2'I'#7'Anchors'#11#7'akRight'#8'akBottom'#0#8'AutoSize'#9#19'BorderSp'
|
||||
+'acing.Right'#2#6#25'BorderSpacing.InnerBorder'#2#2#6'Cancel'#9#7'Caption'#6
|
||||
+#6'Cancel'#4'Kind'#7#8'bkCancel'#11'ModalResult'#2#2#9'NumGlyphs'#2#0#7'OnCl'
|
||||
+'ick'#7#17'CancelButtonClick'#8'TabOrder'#2#4#0#0#10'TSynPasSyn'#9'SynPasSyn'
|
||||
+#7'Enabled'#8#4'left'#3';'#1#3'top'#2#10#0#0#0
|
||||
+#8'TabOrder'#2#0#23'BookMarkOptions.Xoffset'#2#238#24'BookMarkOptions.OnChan'
|
||||
+'ge'#13#14'Gutter.Visible'#8#15'Gutter.OnChange'#13#23'Gutter.CodeFoldingWid'
|
||||
+'th'#2#14#11'Highlighter'#7#9'SynPasSyn'#10'Keystrokes'#14#1#7'Command'#2#3#8
|
||||
+'ShortCut'#2'&'#0#1#7'Command'#2'g'#8'ShortCut'#3'& '#0#1#7'Command'#3#211#0
|
||||
+#8'ShortCut'#3'&@'#0#1#7'Command'#2#4#8'ShortCut'#2'('#0#1#7'Command'#2'h'#8
|
||||
+'ShortCut'#3'( '#0#1#7'Command'#3#212#0#8'ShortCut'#3'(@'#0#1#7'Command'#2#1
|
||||
+#8'ShortCut'#2'%'#0#1#7'Command'#2'e'#8'ShortCut'#3'% '#0#1#7'Command'#2#5#8
|
||||
+'ShortCut'#3'%@'#0#1#7'Command'#2'i'#8'ShortCut'#3'%`'#0#1#7'Command'#2#2#8
|
||||
+'ShortCut'#2''''#0#1#7'Command'#2'f'#8'ShortCut'#3''' '#0#1#7'Command'#2#6#8
|
||||
+'ShortCut'#3'''@'#0#1#7'Command'#2'j'#8'ShortCut'#3'''`'#0#1#7'Command'#2#10
|
||||
+#8'ShortCut'#2'"'#0#1#7'Command'#2'n'#8'ShortCut'#3'" '#0#1#7'Command'#2#14#8
|
||||
+'ShortCut'#3'"@'#0#1#7'Command'#2'r'#8'ShortCut'#3'"`'#0#1#7'Command'#2#9#8
|
||||
+'ShortCut'#2'!'#0#1#7'Command'#2'm'#8'ShortCut'#3'! '#0#1#7'Command'#2#13#8
|
||||
+'ShortCut'#3'!@'#0#1#7'Command'#2'q'#8'ShortCut'#3'!`'#0#1#7'Command'#2#7#8
|
||||
+'ShortCut'#2'$'#0#1#7'Command'#2'k'#8'ShortCut'#3'$ '#0#1#7'Command'#2#15#8
|
||||
+'ShortCut'#3'$@'#0#1#7'Command'#2's'#8'ShortCut'#3'$`'#0#1#7'Command'#2#8#8
|
||||
+'ShortCut'#2'#'#0#1#7'Command'#2'l'#8'ShortCut'#3'# '#0#1#7'Command'#2#16#8
|
||||
+'ShortCut'#3'#@'#0#1#7'Command'#2't'#8'ShortCut'#3'#`'#0#1#7'Command'#3#223#0
|
||||
+#8'ShortCut'#2'-'#0#1#7'Command'#3#201#0#8'ShortCut'#3'-@'#0#1#7'Command'#3
|
||||
+'\'#2#8'ShortCut'#3'- '#0#1#7'Command'#3#246#1#8'ShortCut'#2'.'#0#1#7'Comman'
|
||||
+'d'#3'['#2#8'ShortCut'#3'. '#0#1#7'Command'#3#245#1#8'ShortCut'#2#8#0#1#7'Co'
|
||||
+'mmand'#3#245#1#8'ShortCut'#3#8' '#0#1#7'Command'#3#248#1#8'ShortCut'#3#8'@'
|
||||
+#0#1#7'Command'#3'Y'#2#8'ShortCut'#4#8#128#0#0#0#1#7'Command'#3'Z'#2#8'Short'
|
||||
+'Cut'#4#8#160#0#0#0#1#7'Command'#3#253#1#8'ShortCut'#2#13#0#1#7'Command'#3
|
||||
+#199#0#8'ShortCut'#3'A@'#0#1#7'Command'#3#201#0#8'ShortCut'#3'C@'#0#1#7'Comm'
|
||||
+'and'#3'b'#2#8'ShortCut'#3'I`'#0#1#7'Command'#3#253#1#8'ShortCut'#3'M@'#0#1#7
|
||||
+'Command'#3#254#1#8'ShortCut'#3'N@'#0#1#7'Command'#3#247#1#8'ShortCut'#3'T@'
|
||||
+#0#1#7'Command'#3'c'#2#8'ShortCut'#3'U`'#0#1#7'Command'#3'\'#2#8'ShortCut'#3
|
||||
+'V@'#0#1#7'Command'#3'['#2#8'ShortCut'#3'X@'#0#1#7'Command'#3#251#1#8'ShortC'
|
||||
+'ut'#3'Y@'#0#1#7'Command'#3#250#1#8'ShortCut'#3'Y`'#0#1#7'Command'#3'Y'#2#8
|
||||
+'ShortCut'#3'Z@'#0#1#7'Command'#3'Z'#2#8'ShortCut'#3'Z`'#0#1#7'Command'#3'-'
|
||||
+#1#8'ShortCut'#3'0@'#0#1#7'Command'#3'.'#1#8'ShortCut'#3'1@'#0#1#7'Command'#3
|
||||
+'/'#1#8'ShortCut'#3'2@'#0#1#7'Command'#3'0'#1#8'ShortCut'#3'3@'#0#1#7'Comman'
|
||||
+'d'#3'1'#1#8'ShortCut'#3'4@'#0#1#7'Command'#3'2'#1#8'ShortCut'#3'5@'#0#1#7'C'
|
||||
+'ommand'#3'3'#1#8'ShortCut'#3'6@'#0#1#7'Command'#3'4'#1#8'ShortCut'#3'7@'#0#1
|
||||
+#7'Command'#3'5'#1#8'ShortCut'#3'8@'#0#1#7'Command'#3'6'#1#8'ShortCut'#3'9@'
|
||||
+#0#1#7'Command'#3'_'#1#8'ShortCut'#3'0`'#0#1#7'Command'#3'`'#1#8'ShortCut'#3
|
||||
+'1`'#0#1#7'Command'#3'a'#1#8'ShortCut'#3'2`'#0#1#7'Command'#3'b'#1#8'ShortCu'
|
||||
+'t'#3'3`'#0#1#7'Command'#3'c'#1#8'ShortCut'#3'4`'#0#1#7'Command'#3'd'#1#8'Sh'
|
||||
+'ortCut'#3'5`'#0#1#7'Command'#3'e'#1#8'ShortCut'#3'6`'#0#1#7'Command'#3'f'#1
|
||||
+#8'ShortCut'#3'7`'#0#1#7'Command'#3'g'#1#8'ShortCut'#3'8`'#0#1#7'Command'#3
|
||||
+'h'#1#8'ShortCut'#3'9`'#0#1#7'Command'#3#231#0#8'ShortCut'#3'N`'#0#1#7'Comma'
|
||||
+'nd'#3#232#0#8'ShortCut'#3'C`'#0#1#7'Command'#3#233#0#8'ShortCut'#3'L`'#0#1#7
|
||||
+'Command'#3'd'#2#8'ShortCut'#2#9#0#1#7'Command'#3'e'#2#8'ShortCut'#3#9' '#0#1
|
||||
+#7'Command'#3#250#0#8'ShortCut'#3'B`'#0#0#13'Lines.Strings'#1#6#17'SrcPrevie'
|
||||
+'wSynEdit'#0#22'SelectedColor.OnChange'#13#0#0#0#7'TBitBtn'#8'OKButton'#4'Le'
|
||||
+'ft'#3#9#2#6'Height'#2#28#3'Top'#3#246#1#5'Width'#2'3'#7'Anchors'#11#7'akRig'
|
||||
+'ht'#8'akBottom'#0#8'AutoSize'#9#25'BorderSpacing.InnerBorder'#2#2#7'Caption'
|
||||
+#6#3'&OK'#7'Default'#9#4'Kind'#7#4'bkOK'#11'ModalResult'#2#1#9'NumGlyphs'#2#0
|
||||
+#7'OnClick'#7#13'OkButtonClick'#8'TabOrder'#2#3#0#0#7'TBitBtn'#12'CancelButt'
|
||||
+'on'#23'AnchorSideRight.Control'#7#8'OKButton'#4'Left'#3#186#1#6'Height'#2#28
|
||||
+#3'Top'#3#246#1#5'Width'#2'I'#7'Anchors'#11#7'akRight'#8'akBottom'#0#8'AutoS'
|
||||
+'ize'#9#19'BorderSpacing.Right'#2#6#25'BorderSpacing.InnerBorder'#2#2#6'Canc'
|
||||
+'el'#9#7'Caption'#6#6'Cancel'#4'Kind'#7#8'bkCancel'#11'ModalResult'#2#2#9'Nu'
|
||||
,'mGlyphs'#2#0#7'OnClick'#7#17'CancelButtonClick'#8'TabOrder'#2#4#0#0#10'TSyn'
|
||||
+'PasSyn'#9'SynPasSyn'#7'Enabled'#8#4'left'#3';'#1#3'top'#2#10#0#0#0
|
||||
]);
|
||||
|
273
ide/project.pp
273
ide/project.pp
@ -494,6 +494,7 @@ type
|
||||
procedure SetTargetFilename(const NewTargetFilename: string);
|
||||
procedure SetMainUnitID(const AValue: Integer);
|
||||
procedure UpdateProjectDirectory;
|
||||
procedure UpdateSessionFilename;
|
||||
procedure UpdateSourceDirectories;
|
||||
procedure ClearSourceDirectories;
|
||||
procedure SourceDirectoriesChanged(Sender: TObject);
|
||||
@ -531,7 +532,7 @@ type
|
||||
function SomethingModified(CheckData, CheckSession: boolean): boolean;
|
||||
procedure MainSourceFilenameChanged;
|
||||
procedure GetUnitsChangedOnDisk(var AnUnitList: TList);
|
||||
function ReadProject(const LPIFilename: string): TModalResult;
|
||||
function ReadProject(const NewProjectInfoFile: string): TModalResult;
|
||||
function WriteProject(ProjectWriteFlags: TProjectWriteFlags;
|
||||
const OverrideProjectInfoFile: string): TModalResult;
|
||||
|
||||
@ -1390,6 +1391,7 @@ begin
|
||||
FJumpHistory.OnLoadSaveFilename:=@OnLoadSaveFilename;
|
||||
fMainUnitID := -1;
|
||||
fProjectInfoFile := '';
|
||||
ProjectSessionFile:='';
|
||||
FSourceDirectories:=TFileReferenceList.Create;
|
||||
FSourceDirectories.OnChanged:=@SourceDirectoriesChanged;
|
||||
|
||||
@ -1426,12 +1428,8 @@ end;
|
||||
------------------------------------------------------------------------------}
|
||||
function TProject.WriteProject(ProjectWriteFlags: TProjectWriteFlags;
|
||||
const OverrideProjectInfoFile: string): TModalResult;
|
||||
var
|
||||
confPath: String;
|
||||
Path: String;
|
||||
xmlconfig: TXMLConfig;
|
||||
|
||||
procedure SaveFlags;
|
||||
procedure SaveFlags(XMLConfig: TXMLConfig; const Path: string);
|
||||
var f: TProjectFlag;
|
||||
begin
|
||||
for f:=Low(TProjectFlag) to High(TProjectFlag) do begin
|
||||
@ -1440,14 +1438,14 @@ var
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure UpdateUsageCounts;
|
||||
procedure UpdateUsageCounts(const ConfigFilename: string);
|
||||
var
|
||||
UnitUsageCount: extended;
|
||||
DiffTime: TDateTime;
|
||||
i: Integer;
|
||||
begin
|
||||
UnitUsageCount:=0;
|
||||
if CompareFileNames(confPath,fLastReadLPIFilename)=0 then begin
|
||||
if CompareFileNames(ConfigFilename,fLastReadLPIFilename)=0 then begin
|
||||
DiffTime:=Now-fLastReadLPIFileDate;
|
||||
if DiffTime>0 then begin
|
||||
UnitUsageCount:= DiffTime*24; // one step every hour
|
||||
@ -1464,10 +1462,13 @@ var
|
||||
end;
|
||||
end;
|
||||
|
||||
function UnitMustBeSaved(i: integer): boolean;
|
||||
function UnitMustBeSaved(i: integer; SaveData, SaveSession: boolean): boolean;
|
||||
begin
|
||||
Result:=false;
|
||||
if not Units[i].IsPartOfProject then begin
|
||||
if Units[i].IsPartOfProject then begin
|
||||
if not SaveData then exit;
|
||||
end else begin
|
||||
if not SaveSession then exit;
|
||||
if (pfSaveOnlyProjectUnits in Flags) then exit;
|
||||
if (pwfSaveOnlyProjectUnits in ProjectWriteFlags) then exit;
|
||||
if (not Units[i].Loaded) then begin
|
||||
@ -1479,12 +1480,13 @@ var
|
||||
Result:=true;
|
||||
end;
|
||||
|
||||
procedure SaveUnits;
|
||||
procedure SaveUnits(XMLConfig: TXMLConfig; const Path: string;
|
||||
SaveData, SaveSession: boolean);
|
||||
var i, SaveUnitCount: integer;
|
||||
begin
|
||||
SaveUnitCount:=0;
|
||||
for i:=0 to UnitCount-1 do begin
|
||||
if UnitMustBeSaved(i) then begin
|
||||
if UnitMustBeSaved(i,SaveData,SaveSession) then begin
|
||||
Units[i].SaveToXMLConfig(
|
||||
xmlconfig,Path+'Units/Unit'+IntToStr(SaveUnitCount)+'/');
|
||||
inc(SaveUnitCount);
|
||||
@ -1493,25 +1495,48 @@ var
|
||||
xmlconfig.SetDeleteValue(Path+'Units/Count',SaveUnitCount,0);
|
||||
end;
|
||||
|
||||
procedure SaveSessionInfo(aConfig: TXMLConfig; const Path: string);
|
||||
begin
|
||||
aConfig.SetDeleteValue(Path+'General/ActiveEditorIndexAtStart/Value',
|
||||
ActiveEditorIndexAtStart,-1);
|
||||
|
||||
if (not (pfSaveOnlyProjectUnits in Flags))
|
||||
and (not (pwfSkipJumpPoints in ProjectWriteFlags)) then begin
|
||||
FJumpHistory.DeleteInvalidPositions;
|
||||
FJumpHistory.SaveToXMLConfig(aConfig,Path);
|
||||
end;
|
||||
end;
|
||||
|
||||
var
|
||||
CfgFilename: String;
|
||||
Path: String;
|
||||
xmlconfig: TXMLConfig;
|
||||
SaveSessionInfoInLPI: Boolean;
|
||||
CurSessionFilename: String;
|
||||
begin
|
||||
Result := mrCancel;
|
||||
|
||||
if OverrideProjectInfoFile<>'' then
|
||||
confPath := OverrideProjectInfoFile
|
||||
CfgFilename := OverrideProjectInfoFile
|
||||
else
|
||||
confPath := ProjectInfoFile;
|
||||
CfgFilename := ProjectInfoFile;
|
||||
if Assigned(fOnFileBackup) then begin
|
||||
Result:=fOnFileBackup(confPath,true);
|
||||
Result:=fOnFileBackup(CfgFilename,true);
|
||||
if Result=mrAbort then exit;
|
||||
end;
|
||||
confPath:=SetDirSeparators(confPath);
|
||||
CfgFilename:=SetDirSeparators(CfgFilename);
|
||||
|
||||
UpdateUsageCounts;
|
||||
UpdateUsageCounts(CfgFilename);
|
||||
|
||||
// first save the .lpi file
|
||||
SaveSessionInfoInLPI:=true;
|
||||
if (pwfDoNotSaveSessionInfo in ProjectWriteFlags) then
|
||||
SaveSessionInfoInLPI:=false;
|
||||
if (SessionStorage<>pssInProjectInfo) then
|
||||
SaveSessionInfoInLPI:=false;
|
||||
repeat
|
||||
try
|
||||
xmlconfig := TXMLConfig.CreateClean(confPath);
|
||||
xmlconfig := TXMLConfig.CreateClean(CfgFilename);
|
||||
except
|
||||
on E: Exception do begin
|
||||
DebugLn('ERROR: ',E.Message);
|
||||
@ -1529,7 +1554,7 @@ begin
|
||||
Path:='ProjectOptions/';
|
||||
xmlconfig.SetValue(Path+'PathDelim/Value',PathDelim);
|
||||
xmlconfig.SetValue(Path+'Version/Value',ProjectInfoFileVersion);
|
||||
SaveFlags;
|
||||
SaveFlags(XMLConfig,Path);
|
||||
xmlconfig.SetDeleteValue(Path+'General/SessionStorage/Value',
|
||||
ProjectSessionStorageNames[SessionStorage],
|
||||
ProjectSessionStorageNames[pssInProjectInfo]);
|
||||
@ -1545,8 +1570,6 @@ begin
|
||||
//lazdoc
|
||||
xmlconfig.SetValue(Path+'LazDoc/Paths', LazDocPathList.Text);
|
||||
|
||||
SaveUnits;
|
||||
|
||||
// Save the compiler options
|
||||
CompilerOptions.SaveToXMLConfig(XMLConfig,'CompilerOptions/');
|
||||
|
||||
@ -1560,14 +1583,12 @@ begin
|
||||
SavePkgDependencyList(XMLConfig,Path+'RequiredPackages/',
|
||||
FFirstRequiredDependency,pdlRequires);
|
||||
|
||||
// save session info
|
||||
xmlconfig.SetDeleteValue(Path+'General/ActiveEditorIndexAtStart/Value',
|
||||
ActiveEditorIndexAtStart,-1);
|
||||
// save units
|
||||
SaveUnits(XMLConfig,Path,true,SaveSessionInfoInLPI);
|
||||
|
||||
if (not (pfSaveOnlyProjectUnits in Flags))
|
||||
and (not (pwfSkipJumpPoints in ProjectWriteFlags)) then begin
|
||||
FJumpHistory.DeleteInvalidPositions;
|
||||
FJumpHistory.SaveToXMLConfig(xmlconfig,Path);
|
||||
// save session info
|
||||
if SaveSessionInfoInLPI then begin
|
||||
SaveSessionInfo(XMLConfig,Path);
|
||||
end;
|
||||
|
||||
if Assigned(OnSaveProjectInfo) then
|
||||
@ -1576,12 +1597,13 @@ begin
|
||||
InvalidateFileStateCache;
|
||||
xmlconfig.Flush;
|
||||
Modified:=false;
|
||||
SessionModified:=false;
|
||||
if SaveSessionInfoInLPI then
|
||||
SessionModified:=false;
|
||||
|
||||
Result:=mrOk;
|
||||
except
|
||||
on E: Exception do begin
|
||||
Result:=MessageDlg('Write error','Unable to write to file "'+confPath+'".',
|
||||
Result:=MessageDlg('Write error','Unable to write to file "'+CfgFilename+'".',
|
||||
mtError,[mbRetry,mbAbort],0);
|
||||
end;
|
||||
end;
|
||||
@ -1591,6 +1613,70 @@ begin
|
||||
end;
|
||||
xmlconfig:=nil;
|
||||
until Result<>mrRetry;
|
||||
if Result<>mrOk then exit;
|
||||
|
||||
if (not (pwfDoNotSaveSessionInfo in ProjectWriteFlags))
|
||||
and (SessionStorage in [pssInProjectDir,pssInIDEConfig]) then begin
|
||||
// save session in separate file .lps
|
||||
|
||||
if OverrideProjectInfoFile<>'' then
|
||||
CurSessionFilename := ChangeFileExt(OverrideProjectInfoFile,'.lps')
|
||||
else
|
||||
CurSessionFilename := ProjectSessionFile;
|
||||
if ExtractFileNameOnly(CurSessionFilename)='' then begin
|
||||
DebugLn('ERROR: TProject.WriteProject ProjectSessionFile invalid: "',CurSessionFilename,'"');
|
||||
Result:=mrCancel;
|
||||
exit;
|
||||
end;
|
||||
if CompareFilenames(CurSessionFilename,CfgFilename)=0 then
|
||||
exit;
|
||||
|
||||
if Assigned(fOnFileBackup) then begin
|
||||
Result:=fOnFileBackup(CurSessionFilename,true);
|
||||
if Result=mrAbort then exit;
|
||||
end;
|
||||
CurSessionFilename:=SetDirSeparators(CurSessionFilename);
|
||||
repeat
|
||||
try
|
||||
xmlconfig := TXMLConfig.CreateClean(CurSessionFilename);
|
||||
except
|
||||
on E: Exception do begin
|
||||
DebugLn('ERROR: ',E.Message);
|
||||
MessageDlg('Write error',
|
||||
'Unable to write the project session file'#13
|
||||
+'"'+ProjectSessionFile+'".'#13
|
||||
+'Error: '+E.Message
|
||||
,mtError,[mbOk],0);
|
||||
Result:=mrCancel;
|
||||
exit;
|
||||
end;
|
||||
end;
|
||||
|
||||
try
|
||||
Path:='ProjectSession/';
|
||||
xmlconfig.SetValue(Path+'PathDelim/Value',PathDelim);
|
||||
xmlconfig.SetValue(Path+'Version/Value',ProjectInfoFileVersion);
|
||||
|
||||
// save all units
|
||||
SaveUnits(XMLConfig,Path,true,true);
|
||||
|
||||
// save session
|
||||
SaveSessionInfo(XMLConfig,Path);
|
||||
|
||||
Result:=mrOk;
|
||||
except
|
||||
on E: Exception do begin
|
||||
Result:=MessageDlg('Write error','Unable to write to file "'+CurSessionFilename+'".',
|
||||
mtError,[mbRetry,mbAbort],0);
|
||||
end;
|
||||
end;
|
||||
try
|
||||
xmlconfig.Free;
|
||||
except
|
||||
end;
|
||||
xmlconfig:=nil;
|
||||
until Result<>mrRetry;
|
||||
end;
|
||||
end;
|
||||
|
||||
function TProject.GetDefaultTitle: string;
|
||||
@ -1616,7 +1702,7 @@ end;
|
||||
{------------------------------------------------------------------------------
|
||||
TProject ReadProject
|
||||
------------------------------------------------------------------------------}
|
||||
function TProject.ReadProject(const LPIFilename: string): TModalResult;
|
||||
function TProject.ReadProject(const NewProjectInfoFile: string): TModalResult;
|
||||
type
|
||||
TOldProjectType = (ptApplication, ptProgram, ptCustomProgram);
|
||||
const
|
||||
@ -1624,17 +1710,9 @@ const
|
||||
'Application', 'Program', 'Custom program'
|
||||
);
|
||||
var
|
||||
NewUnitInfo: TUnitInfo;
|
||||
NewUnitCount,i: integer;
|
||||
FileVersion: Integer;
|
||||
OldSrcPath: String;
|
||||
Path: String;
|
||||
OldProjectType: TOldProjectType;
|
||||
xmlconfig: TXMLConfig;
|
||||
SubPath: String;
|
||||
NewUnitFilename: String;
|
||||
|
||||
procedure LoadCompilerOptions;
|
||||
procedure LoadCompilerOptions(XMLConfig: TXMLConfig; const Path: string);
|
||||
var
|
||||
CompOptsPath: String;
|
||||
begin
|
||||
@ -1649,18 +1727,40 @@ var
|
||||
CompOptsPath:='CompilerOptions/';
|
||||
end;
|
||||
CompilerOptions.LoadFromXMLConfig(xmlconfig,CompOptsPath);
|
||||
if FileVersion<2 then CompilerOptions.SrcPath:=OldSrcPath;
|
||||
if FileVersion<2 then
|
||||
CompilerOptions.SrcPath:=xmlconfig.GetValue(Path+'General/SrcPath/Value','');
|
||||
end;
|
||||
|
||||
procedure LoadFlags;
|
||||
function ReadOldProjectType(XMLConfig: TXMLConfig;
|
||||
const Path: string): TOldProjectType;
|
||||
|
||||
function OldProjectTypeNameToType(const s: string): TOldProjectType;
|
||||
begin
|
||||
for Result:=Low(TOldProjectType) to High(TOldProjectType) do
|
||||
if (CompareText(OldProjectTypeNames[Result],s)=0) then exit;
|
||||
Result:=ptApplication;
|
||||
end;
|
||||
|
||||
begin
|
||||
if FileVersion<=4 then
|
||||
Result := OldProjectTypeNameToType(xmlconfig.GetValue(
|
||||
Path+'General/ProjectType/Value', ''))
|
||||
else
|
||||
Result := ptCustomProgram;
|
||||
end;
|
||||
|
||||
procedure LoadFlags(XMLConfig: TXMLConfig; const Path: string);
|
||||
|
||||
procedure SetFlag(f: TProjectFlag; Value: boolean);
|
||||
begin
|
||||
if Value then Include(FFlags,f) else Exclude(FFlags,f);
|
||||
end;
|
||||
|
||||
var f: TProjectFlag;
|
||||
var
|
||||
f: TProjectFlag;
|
||||
OldProjectType: TOldProjectType;
|
||||
begin
|
||||
OldProjectType:=ReadOldProjectType(XMLConfig,Path);
|
||||
FFlags:=[];
|
||||
for f:=Low(TProjectFlag) to High(TProjectFlag) do begin
|
||||
SetFlag(f,xmlconfig.GetValue(
|
||||
@ -1681,30 +1781,20 @@ var
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure ReadOldProjectType;
|
||||
|
||||
function OldProjectTypeNameToType(const s: string): TOldProjectType;
|
||||
begin
|
||||
for Result:=Low(TOldProjectType) to High(TOldProjectType) do
|
||||
if (AnsiCompareText(OldProjectTypeNames[Result],s)=0) then exit;
|
||||
Result:=ptApplication;
|
||||
end;
|
||||
|
||||
begin
|
||||
if FileVersion<=4 then
|
||||
OldProjectType := OldProjectTypeNameToType(xmlconfig.GetValue(
|
||||
Path+'General/ProjectType/Value', ''))
|
||||
else
|
||||
OldProjectType := ptCustomProgram;
|
||||
end;
|
||||
|
||||
var
|
||||
NewUnitInfo: TUnitInfo;
|
||||
NewUnitCount,i: integer;
|
||||
Path: String;
|
||||
xmlconfig: TXMLConfig;
|
||||
SubPath: String;
|
||||
NewUnitFilename: String;
|
||||
begin
|
||||
Result := mrCancel;
|
||||
BeginUpdate(true);
|
||||
try
|
||||
Clear;
|
||||
|
||||
ProjectInfoFile:=LPIFilename;
|
||||
ProjectInfoFile:=NewProjectInfoFile;
|
||||
try
|
||||
{$IFDEF IDE_MEM_CHECK}CheckHeapWrtMemCnt('TProject.ReadProject A reading lpi');{$ENDIF}
|
||||
xmlconfig := TXMLConfig.Create(ProjectInfoFile);
|
||||
@ -1725,11 +1815,13 @@ begin
|
||||
|
||||
{$IFDEF IDE_MEM_CHECK}CheckHeapWrtMemCnt('TProject.ReadProject C reading values');{$ENDIF}
|
||||
FileVersion:= XMLConfig.GetValue(Path+'Version/Value',0);
|
||||
ReadOldProjectType;
|
||||
LoadFlags;
|
||||
LoadFlags(XMLConfig,Path);
|
||||
|
||||
SessionStorage:=StrToProjectSessionStorage(
|
||||
XMLConfig.GetValue(Path+'General/SessionStorage/Value',
|
||||
ProjectSessionStorageNames[pssInProjectInfo]));
|
||||
UpdateSessionFilename;
|
||||
|
||||
MainUnitID := xmlconfig.GetValue(Path+'General/MainUnit/Value', -1);
|
||||
AutoCreateForms := xmlconfig.GetValue(
|
||||
Path+'General/AutoCreateForms/Value', true);
|
||||
@ -1737,8 +1829,6 @@ begin
|
||||
TargetFileExt := xmlconfig.GetValue(
|
||||
Path+'General/TargetFileExt/Value', GetDefaultExecutableExt);
|
||||
Title := xmlconfig.GetValue(Path+'General/Title/Value', '');
|
||||
if FileVersion<2 then
|
||||
OldSrcPath := xmlconfig.GetValue(Path+'General/SrcPath/Value','');
|
||||
|
||||
{$IFDEF IDE_MEM_CHECK}CheckHeapWrtMemCnt('TProject.ReadProject D reading units');{$ENDIF}
|
||||
NewUnitCount:=xmlconfig.GetValue(Path+'Units/Count',0);
|
||||
@ -1757,12 +1847,12 @@ begin
|
||||
NewUnitInfo.LoadFromXMLConfig(xmlconfig,SubPath);
|
||||
end;
|
||||
|
||||
//lazdoc
|
||||
// Lazdoc
|
||||
LazDocPathList.Text := xmlconfig.GetValue(Path+'LazDoc/Paths', '');
|
||||
|
||||
{$IFDEF IDE_MEM_CHECK}CheckHeapWrtMemCnt('TProject.ReadProject E reading comp sets');{$ENDIF}
|
||||
// Load the compiler options
|
||||
LoadCompilerOptions;
|
||||
LoadCompilerOptions(XMLConfig,Path);
|
||||
|
||||
// load the Publish Options
|
||||
PublishOptions.LoadFromXMLConfig(xmlconfig,
|
||||
@ -1796,6 +1886,41 @@ begin
|
||||
end;
|
||||
xmlconfig:=nil;
|
||||
end;
|
||||
|
||||
if (SessionStorage in [pssInProjectDir,pssInIDEConfig])
|
||||
and (CompareFilenames(ProjectInfoFile,ProjectSessionFile)<>0)
|
||||
and FileExists(ProjectSessionFile) then begin
|
||||
try
|
||||
xmlconfig := TXMLConfig.Create(ProjectSessionFile);
|
||||
|
||||
Path:='ProjectOptions/';
|
||||
fPathDelimChanged:=
|
||||
XMLConfig.GetValue(Path+'PathDelim/Value', PathDelim)<>PathDelim;
|
||||
|
||||
FJumpHistory.LoadFromXMLConfig(xmlconfig,Path+'');
|
||||
|
||||
|
||||
except
|
||||
MessageDlg('Unable to read the project info file'#13'"'+ProjectInfoFile+'".'
|
||||
,mtError,[mbOk],0);
|
||||
Result:=mrCancel;
|
||||
exit;
|
||||
end;
|
||||
|
||||
try
|
||||
Path:='ProjectOptions/';
|
||||
fPathDelimChanged:=
|
||||
XMLConfig.GetValue(Path+'PathDelim/Value', PathDelim)<>PathDelim;
|
||||
finally
|
||||
fPathDelimChanged:=false;
|
||||
try
|
||||
xmlconfig.Free;
|
||||
except
|
||||
end;
|
||||
xmlconfig:=nil;
|
||||
end;
|
||||
|
||||
end;
|
||||
finally
|
||||
EndUpdate;
|
||||
end;
|
||||
@ -1930,6 +2055,7 @@ begin
|
||||
Modified := false;
|
||||
SessionModified := false;
|
||||
fProjectInfoFile := '';
|
||||
ProjectSessionFile:='';
|
||||
FStateFileDate:=0;
|
||||
FStateFlags:=[];
|
||||
ClearSourceDirectories;
|
||||
@ -2502,6 +2628,7 @@ begin
|
||||
Title:=DefaultTitle;
|
||||
end;
|
||||
UpdateProjectDirectory;
|
||||
UpdateSessionFilename;
|
||||
FDefineTemplates.SourceDirectoriesChanged;
|
||||
Modified:=true;
|
||||
EndUpdate;
|
||||
@ -3183,6 +3310,18 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TProject.UpdateSessionFilename;
|
||||
begin
|
||||
case SessionStorage of
|
||||
pssInProjectInfo: ProjectSessionFile:=ProjectInfoFile;
|
||||
pssInProjectDir: ProjectSessionFile:=ChangeFileExt(ProjectInfoFile,'.lps');
|
||||
pssInIDEConfig: ProjectSessionFile:=
|
||||
AppendPathDelim(GetProjectSessionsConfigPath)
|
||||
+ExtractFileNameOnly(ProjectInfoFile)+'.lps';
|
||||
pssNone: ProjectSessionFile:='';
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TProject.UpdateSourceDirectories;
|
||||
var
|
||||
Cnt: Integer;
|
||||
|
@ -49,7 +49,8 @@ type
|
||||
pwfDontSaveClosedUnits,
|
||||
pwfSaveOnlyProjectUnits,
|
||||
pwfSkipDebuggerSettings,
|
||||
pwfSkipJumpPoints
|
||||
pwfSkipJumpPoints,
|
||||
pwfDoNotSaveSessionInfo
|
||||
);
|
||||
TProjectWriteFlags = set of TProjectWriteFlag;
|
||||
|
||||
|
@ -1,44 +1,44 @@
|
||||
object ProjectOptionsDialog: TProjectOptionsDialog
|
||||
Left = 532
|
||||
Height = 375
|
||||
Top = 281
|
||||
Width = 430
|
||||
HorzScrollBar.Page = 429
|
||||
VertScrollBar.Page = 374
|
||||
ActiveControl = TitleEdit
|
||||
Caption = 'ProjectOptionsDialog'
|
||||
ClientHeight = 375
|
||||
ClientWidth = 430
|
||||
OnClose = ProjectOptionsClose
|
||||
OnResize = ProjectOptionsResize
|
||||
PixelsPerInch = 112
|
||||
PixelsPerInch = 95
|
||||
Position = poScreenCenter
|
||||
HorzScrollBar.Page = 429
|
||||
VertScrollBar.Page = 374
|
||||
Left = 532
|
||||
Height = 375
|
||||
Top = 281
|
||||
Width = 430
|
||||
object Notebook: TNotebook
|
||||
Align = alTop
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
PageIndex = 2
|
||||
Height = 338
|
||||
Width = 430
|
||||
object Page1: TPage
|
||||
Caption = 'Page1'
|
||||
Align = alTop
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
PageIndex = 4
|
||||
object ApplicationPage: TPage
|
||||
Caption = 'ApplicationPage'
|
||||
ClientWidth = 426
|
||||
ClientHeight = 308
|
||||
Left = 2
|
||||
Height = 308
|
||||
Top = 28
|
||||
Width = 426
|
||||
object AppSettingsGroupBox: TGroupBox
|
||||
Left = 6
|
||||
Height = 73
|
||||
Top = 6
|
||||
Width = 414
|
||||
Align = alTop
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'AppSettingsGroupBox'
|
||||
ClientHeight = 56
|
||||
ClientWidth = 410
|
||||
TabOrder = 0
|
||||
Left = 6
|
||||
Height = 73
|
||||
Top = 6
|
||||
Width = 414
|
||||
object TitleLabel: TLabel
|
||||
Left = 6
|
||||
Height = 13
|
||||
Top = 6
|
||||
Width = 398
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
@ -46,35 +46,35 @@ object ProjectOptionsDialog: TProjectOptionsDialog
|
||||
Caption = 'TitleLabel'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
Left = 6
|
||||
Height = 13
|
||||
Top = 6
|
||||
Width = 398
|
||||
end
|
||||
object TitleEdit: TEdit
|
||||
Left = 6
|
||||
Height = 23
|
||||
Top = 19
|
||||
Width = 398
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Right = 6
|
||||
TabOrder = 0
|
||||
Text = 'TitleEdit'
|
||||
Left = 6
|
||||
Height = 23
|
||||
Top = 19
|
||||
Width = 398
|
||||
end
|
||||
end
|
||||
object OutputSettingsGroupBox: TGroupBox
|
||||
Left = 6
|
||||
Height = 73
|
||||
Top = 85
|
||||
Width = 414
|
||||
Align = alTop
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'OutputSettingsGroupBox'
|
||||
ClientHeight = 56
|
||||
ClientWidth = 410
|
||||
TabOrder = 1
|
||||
Left = 6
|
||||
Height = 73
|
||||
Top = 85
|
||||
Width = 414
|
||||
object TargetFileLabel: TLabel
|
||||
Left = 6
|
||||
Height = 13
|
||||
Top = 6
|
||||
Width = 398
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
@ -82,321 +82,345 @@ object ProjectOptionsDialog: TProjectOptionsDialog
|
||||
Caption = 'TargetFileLabel'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
Left = 6
|
||||
Height = 13
|
||||
Top = 6
|
||||
Width = 398
|
||||
end
|
||||
object TargetFileEdit: TEdit
|
||||
Left = 6
|
||||
Height = 23
|
||||
Top = 19
|
||||
Width = 398
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Right = 6
|
||||
TabOrder = 0
|
||||
Text = 'TargetFileEdit'
|
||||
Left = 6
|
||||
Height = 23
|
||||
Top = 19
|
||||
Width = 398
|
||||
end
|
||||
end
|
||||
end
|
||||
object Page2: TPage
|
||||
Caption = 'Page2'
|
||||
object FormsPage: TPage
|
||||
Caption = 'FormsPage'
|
||||
ClientWidth = 426
|
||||
ClientHeight = 308
|
||||
Left = 2
|
||||
Height = 308
|
||||
Top = 28
|
||||
Width = 426
|
||||
object FormsAutoCreatedLabel: TLabel
|
||||
Caption = 'FormsAutoCreatedLabel'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
Left = 36
|
||||
Height = 13
|
||||
Top = 10
|
||||
Width = 136
|
||||
end
|
||||
object FormsAvailFormsLabel: TLabel
|
||||
Caption = 'FormsAvailFormsLabel'
|
||||
Caption = 'FormsAutoCreatedLabel'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
end
|
||||
object FormsAvailFormsLabel: TLabel
|
||||
Left = 252
|
||||
Height = 13
|
||||
Top = 10
|
||||
Width = 129
|
||||
Caption = 'FormsAvailFormsLabel'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
end
|
||||
object FormsAutoCreatedListBox: TListBox
|
||||
MultiSelect = True
|
||||
TabOrder = 0
|
||||
TopIndex = -1
|
||||
Left = 36
|
||||
Height = 242
|
||||
Top = 32
|
||||
Width = 168
|
||||
MultiSelect = True
|
||||
TabOrder = 0
|
||||
TopIndex = -1
|
||||
end
|
||||
object FormsAvailFormsListBox: TListBox
|
||||
MultiSelect = True
|
||||
TabOrder = 1
|
||||
TopIndex = -1
|
||||
Left = 244
|
||||
Height = 242
|
||||
Top = 32
|
||||
Width = 168
|
||||
MultiSelect = True
|
||||
TabOrder = 1
|
||||
TopIndex = -1
|
||||
end
|
||||
object FormsMoveAutoCreatedFormUpBtn: TArrow
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 32
|
||||
Width = 24
|
||||
ArrowType = atUp
|
||||
OnClick = FormsMoveAutoCreatedFormUpBtnClick
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 32
|
||||
Width = 24
|
||||
end
|
||||
object FormsMoveAutoCreatedFormsDownBtn: TArrow
|
||||
ArrowType = atDown
|
||||
OnClick = FormsMoveAutoCreatedFormDownBtnClick
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 60
|
||||
Width = 24
|
||||
ArrowType = atDown
|
||||
OnClick = FormsMoveAutoCreatedFormDownBtnClick
|
||||
end
|
||||
object FormsRemoveFromAutoCreatedFormsBtn: TArrow
|
||||
ArrowType = atRight
|
||||
OnClick = FormsRemoveFromAutoCreatedFormsBtnClick
|
||||
Left = 212
|
||||
Height = 24
|
||||
Top = 32
|
||||
Width = 24
|
||||
ArrowType = atRight
|
||||
OnClick = FormsRemoveFromAutoCreatedFormsBtnClick
|
||||
end
|
||||
object FormsAddToAutoCreatedFormsBtn: TArrow
|
||||
OnClick = FormsAddToAutoCreatedFormsBtnClick
|
||||
Left = 212
|
||||
Height = 24
|
||||
Top = 60
|
||||
Width = 24
|
||||
OnClick = FormsAddToAutoCreatedFormsBtnClick
|
||||
end
|
||||
object FormsAutoCreateNewFormsCheckBox: TCheckBox
|
||||
Align = alBottom
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'FormsAutoCreateNewFormsCheckBox'
|
||||
TabOrder = 2
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 278
|
||||
Width = 414
|
||||
Align = alBottom
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'FormsAutoCreateNewFormsCheckBox'
|
||||
TabOrder = 2
|
||||
end
|
||||
end
|
||||
object Page3: TPage
|
||||
Caption = 'Page3'
|
||||
object MiscPage: TPage
|
||||
Caption = 'MiscPage'
|
||||
ClientWidth = 426
|
||||
ClientHeight = 308
|
||||
object MainUnitHasUsesSectionForAllUnitsCheckBox: TCheckBox
|
||||
AnchorSideTop.Control = MainUnitIsPascalSourceCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 36
|
||||
Width = 414
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 2
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'MainUnitHasUsesSectionForAllUnitsCheckBox'
|
||||
TabOrder = 0
|
||||
end
|
||||
object MainUnitHasCreateFormStatementsCheckBox: TCheckBox
|
||||
AnchorSideTop.Control = MainUnitHasUsesSectionForAllUnitsCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 62
|
||||
Width = 414
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 2
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'MainUnitHasCreateFormStatementsCheckBox'
|
||||
TabOrder = 1
|
||||
end
|
||||
object MainUnitIsPascalSourceCheckBox: TCheckBox
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 10
|
||||
Width = 414
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 10
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'MainUnitIsPascalSourceCheckBox'
|
||||
TabOrder = 2
|
||||
end
|
||||
object MainUnitHasTitleStatementCheckBox: TCheckBox
|
||||
AnchorSideTop.Control = MainUnitHasCreateFormStatementsCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 88
|
||||
Width = 414
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 2
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'MainUnitHasTitleStatementCheckBox'
|
||||
TabOrder = 5
|
||||
end
|
||||
object RunnableCheckBox: TCheckBox
|
||||
AnchorSideTop.Control = MainUnitHasTitleStatementCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 122
|
||||
Width = 414
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 10
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'RunnableCheckBox'
|
||||
TabOrder = 3
|
||||
end
|
||||
object AlwaysBuildCheckBox: TCheckBox
|
||||
AnchorSideTop.Control = RunnableCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 148
|
||||
Width = 414
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 2
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'AlwaysBuildCheckBox'
|
||||
TabOrder = 4
|
||||
end
|
||||
end
|
||||
object LazDocPage: TPage
|
||||
Caption = 'LazDocPage'
|
||||
ClientWidth = 426
|
||||
ClientHeight = 308
|
||||
object Label2: TLabel
|
||||
Height = 13
|
||||
Top = 222
|
||||
Width = 426
|
||||
Align = alTop
|
||||
Caption = 'NOTE: only absolute paths are supported now'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
end
|
||||
object LazDocPathsGroupBox: TGroupBox
|
||||
Left = 6
|
||||
Height = 210
|
||||
Top = 6
|
||||
Width = 414
|
||||
Align = alTop
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'LazDocPathsGroupBox'
|
||||
ClientHeight = 210
|
||||
ClientWidth = 414
|
||||
TabOrder = 0
|
||||
object LazDocListBox: TListBox
|
||||
Left = 6
|
||||
Height = 108
|
||||
Top = 6
|
||||
Width = 402
|
||||
Align = alTop
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 0
|
||||
TopIndex = -1
|
||||
end
|
||||
object LazDocAddPathButton: TButton
|
||||
Left = 6
|
||||
Height = 25
|
||||
Top = 122
|
||||
Width = 75
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = 'LazDocAddPathButton'
|
||||
OnClick = LazDocAddPathButtonClick
|
||||
TabOrder = 1
|
||||
end
|
||||
object LazDocDeletePathButton: TButton
|
||||
Left = 90
|
||||
Height = 25
|
||||
Top = 122
|
||||
Width = 75
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = 'LazDocDeletePathButton'
|
||||
OnClick = LazDocDeletePathButtonClick
|
||||
TabOrder = 2
|
||||
end
|
||||
object LazDocPathEdit: TEdit
|
||||
Left = 6
|
||||
Height = 23
|
||||
Top = 154
|
||||
Width = 358
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
TabOrder = 3
|
||||
Text = 'LazDocPathEdit'
|
||||
end
|
||||
object LazDocBrowseButton: TButton
|
||||
Left = 369
|
||||
Height = 23
|
||||
Top = 154
|
||||
Width = 23
|
||||
Anchors = [akTop, akRight]
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '...'
|
||||
OnClick = LazDocBrowseButtonClick
|
||||
TabOrder = 4
|
||||
end
|
||||
end
|
||||
end
|
||||
object SavePage: TPage
|
||||
Caption = 'SavePage'
|
||||
ClientWidth = 426
|
||||
ClientHeight = 308
|
||||
Left = 2
|
||||
Height = 308
|
||||
Top = 28
|
||||
Width = 426
|
||||
object SaveClosedUnitInfoCheckBox: TCheckBox
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 6
|
||||
Width = 414
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'SaveClosedUnitInfoCheckBox'
|
||||
TabOrder = 0
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 6
|
||||
Width = 414
|
||||
end
|
||||
object MainUnitHasUsesSectionForAllUnitsCheckBox: TCheckBox
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'MainUnitHasUsesSectionForAllUnitsCheckBox'
|
||||
TabOrder = 1
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 106
|
||||
Width = 414
|
||||
end
|
||||
object MainUnitHasCreateFormStatementsCheckBox: TCheckBox
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'MainUnitHasCreateFormStatementsCheckBox'
|
||||
TabOrder = 2
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 136
|
||||
Width = 414
|
||||
end
|
||||
object MainUnitIsPascalSourceCheckBox: TCheckBox
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 16
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'MainUnitIsPascalSourceCheckBox'
|
||||
TabOrder = 3
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 76
|
||||
Width = 414
|
||||
end
|
||||
object SaveOnlyProjectUnitInfoCheckBox: TCheckBox
|
||||
AnchorSideTop.Control = SaveClosedUnitInfoCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 32
|
||||
Width = 414
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
BorderSpacing.Top = 2
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'SaveOnlyProjectUnitInfoCheckBox'
|
||||
TabOrder = 4
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 36
|
||||
Width = 414
|
||||
TabOrder = 1
|
||||
end
|
||||
object MainUnitHasTitleStatementCheckBox: TCheckBox
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'MainUnitHasTitleStatementCheckBox'
|
||||
TabOrder = 5
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 166
|
||||
Width = 414
|
||||
end
|
||||
object RunnableCheckBox: TCheckBox
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
BorderSpacing.Right = 6
|
||||
Caption = 'RunnableCheckBox'
|
||||
TabOrder = 6
|
||||
Left = 6
|
||||
Height = 24
|
||||
Top = 196
|
||||
Width = 414
|
||||
end
|
||||
object AlwaysBuildCheckBox: TCheckBox
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
Caption = 'AlwaysBuildCheckBox'
|
||||
TabOrder = 7
|
||||
Left = 6
|
||||
Height = 23
|
||||
Top = 232
|
||||
Width = 414
|
||||
end
|
||||
end
|
||||
object Page4: TPage
|
||||
Caption = 'Page4'
|
||||
ClientWidth = 426
|
||||
ClientHeight = 308
|
||||
Left = 2
|
||||
Height = 308
|
||||
Top = 28
|
||||
Width = 426
|
||||
object Label2: TLabel
|
||||
Align = alTop
|
||||
Caption = 'NOTE: only absolute paths are supported now'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
Height = 13
|
||||
Top = 222
|
||||
Width = 426
|
||||
end
|
||||
object LazDocPathsGroupBox: TGroupBox
|
||||
Align = alTop
|
||||
object SaveSessionLocationRadioGroup: TRadioGroup
|
||||
AnchorSideTop.Control = SaveOnlyProjectUnitInfoCheckBox
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 7
|
||||
Height = 117
|
||||
Top = 67
|
||||
Width = 413
|
||||
AutoFill = True
|
||||
BorderSpacing.Top = 5
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'LazDocPathsGroupBox'
|
||||
ClientHeight = 193
|
||||
ClientWidth = 410
|
||||
TabOrder = 0
|
||||
Left = 6
|
||||
Height = 210
|
||||
Top = 6
|
||||
Width = 414
|
||||
object LazDocListBox: TListBox
|
||||
Align = alTop
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 0
|
||||
TopIndex = -1
|
||||
Left = 6
|
||||
Height = 108
|
||||
Top = 6
|
||||
Width = 398
|
||||
end
|
||||
object LazDocAddPathButton: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = 'LazDocAddPathButton'
|
||||
OnClick = LazDocAddPathButtonClick
|
||||
TabOrder = 1
|
||||
Left = 6
|
||||
Height = 25
|
||||
Top = 122
|
||||
Width = 75
|
||||
end
|
||||
object LazDocDeletePathButton: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = 'LazDocDeletePathButton'
|
||||
OnClick = LazDocDeletePathButtonClick
|
||||
TabOrder = 2
|
||||
Left = 90
|
||||
Height = 25
|
||||
Top = 122
|
||||
Width = 75
|
||||
end
|
||||
object LazDocPathEdit: TEdit
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
TabOrder = 3
|
||||
Text = 'LazDocPathEdit'
|
||||
Left = 6
|
||||
Height = 23
|
||||
Top = 154
|
||||
Width = 354
|
||||
end
|
||||
object LazDocBrowseButton: TButton
|
||||
Anchors = [akTop, akRight]
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '...'
|
||||
OnClick = LazDocBrowseButtonClick
|
||||
TabOrder = 4
|
||||
Left = 365
|
||||
Height = 23
|
||||
Top = 154
|
||||
Width = 23
|
||||
end
|
||||
Caption = 'SaveSessionLocationRadioGroup'
|
||||
ChildSizing.LeftRightSpacing = 6
|
||||
ChildSizing.TopBottomSpacing = 6
|
||||
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
|
||||
ChildSizing.EnlargeVertical = crsHomogenousChildResize
|
||||
ChildSizing.ShrinkHorizontal = crsScaleChilds
|
||||
ChildSizing.ShrinkVertical = crsScaleChilds
|
||||
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
||||
ChildSizing.ControlsPerLine = 1
|
||||
TabOrder = 2
|
||||
end
|
||||
end
|
||||
end
|
||||
object CancelButton: TButton
|
||||
Left = 344
|
||||
Height = 25
|
||||
Top = 344
|
||||
Width = 75
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
TabOrder = 1
|
||||
Left = 344
|
||||
end
|
||||
object OKButton: TButton
|
||||
Left = 256
|
||||
Height = 25
|
||||
Top = 344
|
||||
Width = 75
|
||||
end
|
||||
object OKButton: TButton
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
ModalResult = 1
|
||||
TabOrder = 2
|
||||
Left = 256
|
||||
Height = 25
|
||||
Top = 344
|
||||
Width = 75
|
||||
end
|
||||
object SelectDirectoryDialog: TSelectDirectoryDialog
|
||||
Title = 'Select Directory'
|
||||
FilterIndex = 0
|
||||
Title = 'Select Directory'
|
||||
left = 344
|
||||
top = 8
|
||||
end
|
||||
|
@ -1,116 +1,133 @@
|
||||
{ This is an automatically generated lazarus resource file }
|
||||
|
||||
LazarusResources.Add('TProjectOptionsDialog','FORMDATA',[
|
||||
'TPF0'#21'TProjectOptionsDialog'#20'ProjectOptionsDialog'#13'ActiveControl'#7
|
||||
+#9'TitleEdit'#7'Caption'#6#20'ProjectOptionsDialog'#12'ClientHeight'#3'w'#1
|
||||
+#11'ClientWidth'#3#174#1#7'OnClose'#7#19'ProjectOptionsClose'#8'OnResize'#7
|
||||
+#20'ProjectOptionsResize'#13'PixelsPerInch'#2'p'#8'Position'#7#14'poScreenCe'
|
||||
+'nter'#18'HorzScrollBar.Page'#3#173#1#18'VertScrollBar.Page'#3'v'#1#4'Left'#3
|
||||
+#20#2#6'Height'#3'w'#1#3'Top'#3#25#1#5'Width'#3#174#1#0#9'TNotebook'#8'Noteb'
|
||||
+'ook'#5'Align'#7#5'alTop'#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBo'
|
||||
+'ttom'#0#9'PageIndex'#2#2#6'Height'#3'R'#1#5'Width'#3#174#1#0#5'TPage'#5'Pag'
|
||||
+'e1'#7'Caption'#6#5'Page1'#11'ClientWidth'#3#170#1#12'ClientHeight'#3'4'#1#4
|
||||
+'Left'#2#2#6'Height'#3'4'#1#3'Top'#2#28#5'Width'#3#170#1#0#9'TGroupBox'#19'A'
|
||||
+'ppSettingsGroupBox'#5'Align'#7#5'alTop'#20'BorderSpacing.Around'#2#6#7'Capt'
|
||||
+'ion'#6#19'AppSettingsGroupBox'#12'ClientHeight'#2'8'#11'ClientWidth'#3#154#1
|
||||
+#8'TabOrder'#2#0#4'Left'#2#6#6'Height'#2'I'#3'Top'#2#6#5'Width'#3#158#1#0#6
|
||||
+'TLabel'#10'TitleLabel'#5'Align'#7#5'alTop'#18'BorderSpacing.Left'#2#6#17'Bo'
|
||||
+'rderSpacing.Top'#2#6#19'BorderSpacing.Right'#2#6#7'Caption'#6#10'TitleLabel'
|
||||
+#5'Color'#7#6'clNone'#11'ParentColor'#8#4'Left'#2#6#6'Height'#2#13#3'Top'#2#6
|
||||
+#5'Width'#3#142#1#0#0#5'TEdit'#9'TitleEdit'#5'Align'#7#5'alTop'#18'BorderSpa'
|
||||
+'cing.Left'#2#6#19'BorderSpacing.Right'#2#6#8'TabOrder'#2#0#4'Text'#6#9'Titl'
|
||||
+'eEdit'#4'Left'#2#6#6'Height'#2#23#3'Top'#2#19#5'Width'#3#142#1#0#0#0#9'TGro'
|
||||
+'upBox'#22'OutputSettingsGroupBox'#5'Align'#7#5'alTop'#20'BorderSpacing.Arou'
|
||||
+'nd'#2#6#7'Caption'#6#22'OutputSettingsGroupBox'#12'ClientHeight'#2'8'#11'Cl'
|
||||
+'ientWidth'#3#154#1#8'TabOrder'#2#1#4'Left'#2#6#6'Height'#2'I'#3'Top'#2'U'#5
|
||||
+'Width'#3#158#1#0#6'TLabel'#15'TargetFileLabel'#5'Align'#7#5'alTop'#18'Borde'
|
||||
+'rSpacing.Left'#2#6#17'BorderSpacing.Top'#2#6#19'BorderSpacing.Right'#2#6#7
|
||||
+'Caption'#6#15'TargetFileLabel'#5'Color'#7#6'clNone'#11'ParentColor'#8#4'Lef'
|
||||
+'t'#2#6#6'Height'#2#13#3'Top'#2#6#5'Width'#3#142#1#0#0#5'TEdit'#14'TargetFil'
|
||||
+'eEdit'#5'Align'#7#5'alTop'#18'BorderSpacing.Left'#2#6#19'BorderSpacing.Righ'
|
||||
+'t'#2#6#8'TabOrder'#2#0#4'Text'#6#14'TargetFileEdit'#4'Left'#2#6#6'Height'#2
|
||||
+#23#3'Top'#2#19#5'Width'#3#142#1#0#0#0#0#5'TPage'#5'Page2'#7'Caption'#6#5'Pa'
|
||||
+'ge2'#11'ClientWidth'#3#170#1#12'ClientHeight'#3'4'#1#4'Left'#2#2#6'Height'#3
|
||||
+'4'#1#3'Top'#2#28#5'Width'#3#170#1#0#6'TLabel'#21'FormsAutoCreatedLabel'#7'C'
|
||||
+'aption'#6#21'FormsAutoCreatedLabel'#5'Color'#7#6'clNone'#11'ParentColor'#8#4
|
||||
+'Left'#2'$'#6'Height'#2#13#3'Top'#2#10#5'Width'#3#136#0#0#0#6'TLabel'#20'For'
|
||||
+'msAvailFormsLabel'#7'Caption'#6#20'FormsAvailFormsLabel'#5'Color'#7#6'clNon'
|
||||
+'e'#11'ParentColor'#8#4'Left'#3#252#0#6'Height'#2#13#3'Top'#2#10#5'Width'#3
|
||||
+#129#0#0#0#8'TListBox'#23'FormsAutoCreatedListBox'#11'MultiSelect'#9#8'TabOr'
|
||||
+'der'#2#0#8'TopIndex'#2#255#4'Left'#2'$'#6'Height'#3#242#0#3'Top'#2' '#5'Wid'
|
||||
+'th'#3#168#0#0#0#8'TListBox'#22'FormsAvailFormsListBox'#11'MultiSelect'#9#8
|
||||
+'TabOrder'#2#1#8'TopIndex'#2#255#4'Left'#3#244#0#6'Height'#3#242#0#3'Top'#2
|
||||
+' '#5'Width'#3#168#0#0#0#6'TArrow'#29'FormsMoveAutoCreatedFormUpBtn'#9'Arrow'
|
||||
+'Type'#7#4'atUp'#7'OnClick'#7'"FormsMoveAutoCreatedFormUpBtnClick'#4'Left'#2
|
||||
+#6#6'Height'#2#24#3'Top'#2' '#5'Width'#2#24#0#0#6'TArrow FormsMoveAutoCreate'
|
||||
+'dFormsDownBtn'#9'ArrowType'#7#6'atDown'#7'OnClick'#7'$FormsMoveAutoCreatedF'
|
||||
+'ormDownBtnClick'#4'Left'#2#6#6'Height'#2#24#3'Top'#2'<'#5'Width'#2#24#0#0#6
|
||||
+'TArrow"FormsRemoveFromAutoCreatedFormsBtn'#9'ArrowType'#7#7'atRight'#7'OnCl'
|
||||
+'ick'#7'''FormsRemoveFromAutoCreatedFormsBtnClick'#4'Left'#3#212#0#6'Height'
|
||||
+#2#24#3'Top'#2' '#5'Width'#2#24#0#0#6'TArrow'#29'FormsAddToAutoCreatedFormsB'
|
||||
+'tn'#7'OnClick'#7'"FormsAddToAutoCreatedFormsBtnClick'#4'Left'#3#212#0#6'Hei'
|
||||
+'ght'#2#24#3'Top'#2'<'#5'Width'#2#24#0#0#9'TCheckBox'#31'FormsAutoCreateNewF'
|
||||
+'ormsCheckBox'#5'Align'#7#8'alBottom'#20'BorderSpacing.Around'#2#6#7'Caption'
|
||||
+#6#31'FormsAutoCreateNewFormsCheckBox'#8'TabOrder'#2#2#4'Left'#2#6#6'Height'
|
||||
+#2#24#3'Top'#3#22#1#5'Width'#3#158#1#0#0#0#5'TPage'#5'Page3'#7'Caption'#6#5
|
||||
+'Page3'#11'ClientWidth'#3#170#1#12'ClientHeight'#3'4'#1#4'Left'#2#2#6'Height'
|
||||
+#3'4'#1#3'Top'#2#28#5'Width'#3#170#1#0#9'TCheckBox'#26'SaveClosedUnitInfoChe'
|
||||
+'ckBox'#5'Align'#7#5'alTop'#18'BorderSpacing.Left'#2#6#17'BorderSpacing.Top'
|
||||
+#2#6#19'BorderSpacing.Right'#2#6#7'Caption'#6#26'SaveClosedUnitInfoCheckBox'
|
||||
+#8'TabOrder'#2#0#4'Left'#2#6#6'Height'#2#24#3'Top'#2#6#5'Width'#3#158#1#0#0#9
|
||||
+'TCheckBox)MainUnitHasUsesSectionForAllUnitsCheckBox'#5'Align'#7#5'alTop'#18
|
||||
+'BorderSpacing.Left'#2#6#17'BorderSpacing.Top'#2#6#19'BorderSpacing.Right'#2
|
||||
+#6#7'Caption'#6')MainUnitHasUsesSectionForAllUnitsCheckBox'#8'TabOrder'#2#1#4
|
||||
+'Left'#2#6#6'Height'#2#24#3'Top'#2'j'#5'Width'#3#158#1#0#0#9'TCheckBox''Main'
|
||||
+'UnitHasCreateFormStatementsCheckBox'#5'Align'#7#5'alTop'#18'BorderSpacing.L'
|
||||
+'eft'#2#6#17'BorderSpacing.Top'#2#6#19'BorderSpacing.Right'#2#6#7'Caption'#6
|
||||
+'''MainUnitHasCreateFormStatementsCheckBox'#8'TabOrder'#2#2#4'Left'#2#6#6'He'
|
||||
,'ight'#2#24#3'Top'#3#136#0#5'Width'#3#158#1#0#0#9'TCheckBox'#30'MainUnitIsPa'
|
||||
+'scalSourceCheckBox'#5'Align'#7#5'alTop'#18'BorderSpacing.Left'#2#6#17'Borde'
|
||||
+'rSpacing.Top'#2#16#19'BorderSpacing.Right'#2#6#7'Caption'#6#30'MainUnitIsPa'
|
||||
+'scalSourceCheckBox'#8'TabOrder'#2#3#4'Left'#2#6#6'Height'#2#24#3'Top'#2'L'#5
|
||||
+'Width'#3#158#1#0#0#9'TCheckBox'#31'SaveOnlyProjectUnitInfoCheckBox'#5'Align'
|
||||
'TPF0'#21'TProjectOptionsDialog'#20'ProjectOptionsDialog'#4'Left'#3#20#2#6'He'
|
||||
+'ight'#3'w'#1#3'Top'#3#25#1#5'Width'#3#174#1#18'HorzScrollBar.Page'#3#173#1
|
||||
+#18'VertScrollBar.Page'#3'v'#1#13'ActiveControl'#7#9'TitleEdit'#7'Caption'#6
|
||||
+#20'ProjectOptionsDialog'#12'ClientHeight'#3'w'#1#11'ClientWidth'#3#174#1#7
|
||||
+'OnClose'#7#19'ProjectOptionsClose'#8'OnResize'#7#20'ProjectOptionsResize'#13
|
||||
+'PixelsPerInch'#2'_'#8'Position'#7#14'poScreenCenter'#0#9'TNotebook'#8'Noteb'
|
||||
+'ook'#6'Height'#3'R'#1#5'Width'#3#174#1#5'Align'#7#5'alTop'#7'Anchors'#11#5
|
||||
+'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#9'PageIndex'#2#4#0#5'TPage'#15'Ap'
|
||||
+'plicationPage'#7'Caption'#6#15'ApplicationPage'#11'ClientWidth'#3#170#1#12
|
||||
+'ClientHeight'#3'4'#1#0#9'TGroupBox'#19'AppSettingsGroupBox'#4'Left'#2#6#6'H'
|
||||
+'eight'#2'I'#3'Top'#2#6#5'Width'#3#158#1#5'Align'#7#5'alTop'#20'BorderSpacin'
|
||||
+'g.Around'#2#6#7'Caption'#6#19'AppSettingsGroupBox'#12'ClientHeight'#2'8'#11
|
||||
+'ClientWidth'#3#154#1#8'TabOrder'#2#0#0#6'TLabel'#10'TitleLabel'#4'Left'#2#6
|
||||
+#6'Height'#2#13#3'Top'#2#6#5'Width'#3#142#1#5'Align'#7#5'alTop'#18'BorderSpa'
|
||||
+'cing.Left'#2#6#17'BorderSpacing.Top'#2#6#19'BorderSpacing.Right'#2#6#7'Capt'
|
||||
+'ion'#6#10'TitleLabel'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#5'TEdit'#9
|
||||
+'TitleEdit'#4'Left'#2#6#6'Height'#2#23#3'Top'#2#19#5'Width'#3#142#1#5'Align'
|
||||
+#7#5'alTop'#18'BorderSpacing.Left'#2#6#19'BorderSpacing.Right'#2#6#8'TabOrde'
|
||||
+'r'#2#0#4'Text'#6#9'TitleEdit'#0#0#0#9'TGroupBox'#22'OutputSettingsGroupBox'
|
||||
+#4'Left'#2#6#6'Height'#2'I'#3'Top'#2'U'#5'Width'#3#158#1#5'Align'#7#5'alTop'
|
||||
+#20'BorderSpacing.Around'#2#6#7'Caption'#6#22'OutputSettingsGroupBox'#12'Cli'
|
||||
+'entHeight'#2'8'#11'ClientWidth'#3#154#1#8'TabOrder'#2#1#0#6'TLabel'#15'Targ'
|
||||
+'etFileLabel'#4'Left'#2#6#6'Height'#2#13#3'Top'#2#6#5'Width'#3#142#1#5'Align'
|
||||
+#7#5'alTop'#18'BorderSpacing.Left'#2#6#17'BorderSpacing.Top'#2#6#19'BorderSp'
|
||||
+'acing.Right'#2#6#7'Caption'#6#31'SaveOnlyProjectUnitInfoCheckBox'#8'TabOrde'
|
||||
+'r'#2#4#4'Left'#2#6#6'Height'#2#24#3'Top'#2'$'#5'Width'#3#158#1#0#0#9'TCheck'
|
||||
+'Box!MainUnitHasTitleStatementCheckBox'#5'Align'#7#5'alTop'#18'BorderSpacing'
|
||||
+'.Left'#2#6#17'BorderSpacing.Top'#2#6#19'BorderSpacing.Right'#2#6#7'Caption'
|
||||
+#6'!MainUnitHasTitleStatementCheckBox'#8'TabOrder'#2#5#4'Left'#2#6#6'Height'
|
||||
+#2#24#3'Top'#3#166#0#5'Width'#3#158#1#0#0#9'TCheckBox'#16'RunnableCheckBox'#5
|
||||
+'Align'#7#5'alTop'#18'BorderSpacing.Left'#2#6#17'BorderSpacing.Top'#2#6#19'B'
|
||||
+'orderSpacing.Right'#2#6#7'Caption'#6#16'RunnableCheckBox'#8'TabOrder'#2#6#4
|
||||
+'Left'#2#6#6'Height'#2#24#3'Top'#3#196#0#5'Width'#3#158#1#0#0#9'TCheckBox'#19
|
||||
+'AlwaysBuildCheckBox'#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#7'Captio'
|
||||
+'n'#6#19'AlwaysBuildCheckBox'#8'TabOrder'#2#7#4'Left'#2#6#6'Height'#2#23#3'T'
|
||||
+'op'#3#232#0#5'Width'#3#158#1#0#0#0#5'TPage'#5'Page4'#7'Caption'#6#5'Page4'
|
||||
+#11'ClientWidth'#3#170#1#12'ClientHeight'#3'4'#1#4'Left'#2#2#6'Height'#3'4'#1
|
||||
+#3'Top'#2#28#5'Width'#3#170#1#0#6'TLabel'#6'Label2'#5'Align'#7#5'alTop'#7'Ca'
|
||||
+'ption'#6'+NOTE: only absolute paths are supported now'#5'Color'#7#6'clNone'
|
||||
+#11'ParentColor'#8#6'Height'#2#13#3'Top'#3#222#0#5'Width'#3#170#1#0#0#9'TGro'
|
||||
+'upBox'#19'LazDocPathsGroupBox'#5'Align'#7#5'alTop'#20'BorderSpacing.Around'
|
||||
+#2#6#7'Caption'#6#19'LazDocPathsGroupBox'#12'ClientHeight'#3#193#0#11'Client'
|
||||
+'Width'#3#154#1#8'TabOrder'#2#0#4'Left'#2#6#6'Height'#3#210#0#3'Top'#2#6#5'W'
|
||||
+'idth'#3#158#1#0#8'TListBox'#13'LazDocListBox'#5'Align'#7#5'alTop'#20'Border'
|
||||
+'Spacing.Around'#2#6#8'TabOrder'#2#0#8'TopIndex'#2#255#4'Left'#2#6#6'Height'
|
||||
+#2'l'#3'Top'#2#6#5'Width'#3#142#1#0#0#7'TButton'#19'LazDocAddPathButton'#25
|
||||
+'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#19'LazDocAddPathButton'#7'OnCli'
|
||||
+'ck'#7#24'LazDocAddPathButtonClick'#8'TabOrder'#2#1#4'Left'#2#6#6'Height'#2
|
||||
+#25#3'Top'#2'z'#5'Width'#2'K'#0#0#7'TButton'#22'LazDocDeletePathButton'#25'B'
|
||||
+'orderSpacing.InnerBorder'#2#2#7'Caption'#6#22'LazDocDeletePathButton'#7'OnC'
|
||||
+'lick'#7#27'LazDocDeletePathButtonClick'#8'TabOrder'#2#2#4'Left'#2'Z'#6'Heig'
|
||||
+'ht'#2#25#3'Top'#2'z'#5'Width'#2'K'#0#0#5'TEdit'#14'LazDocPathEdit'#7'Anchor'
|
||||
+'s'#11#5'akTop'#6'akLeft'#7'akRight'#0#8'TabOrder'#2#3#4'Text'#6#14'LazDocPa'
|
||||
+'thEdit'#4'Left'#2#6#6'Height'#2#23#3'Top'#3#154#0#5'Width'#3'b'#1#0#0#7'TBu'
|
||||
+'tton'#18'LazDocBrowseButton'#7'Anchors'#11#5'akTop'#7'akRight'#0#25'BorderS'
|
||||
+'pacing.InnerBorder'#2#2#7'Caption'#6#3'...'#7'OnClick'#7#23'LazDocBrowseBut'
|
||||
+'tonClick'#8'TabOrder'#2#4#4'Left'#3'm'#1#6'Height'#2#23#3'Top'#3#154#0#5'Wi'
|
||||
+'dth'#2#23#0#0#0#0#0#7'TButton'#12'CancelButton'#7'Anchors'#11#7'akRight'#8
|
||||
+'akBottom'#0#25'BorderSpacing.InnerBorder'#2#2#6'Cancel'#9#7'Caption'#6#6'Ca'
|
||||
+'ncel'#11'ModalResult'#2#2#8'TabOrder'#2#1#4'Left'#3'X'#1#6'Height'#2#25#3'T'
|
||||
+'op'#3'X'#1#5'Width'#2'K'#0#0#7'TButton'#8'OKButton'#7'Anchors'#11#7'akRight'
|
||||
+#8'akBottom'#0#25'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#2'OK'#7'Defaul'
|
||||
+'t'#9#11'ModalResult'#2#1#8'TabOrder'#2#2#4'Left'#3#0#1#6'Height'#2#25#3'Top'
|
||||
+#3'X'#1#5'Width'#2'K'#0#0#22'TSelectDirectoryDialog'#21'SelectDirectoryDialo'
|
||||
+'g'#5'Title'#6#16'Select Directory'#11'FilterIndex'#2#0#5'Title'#6#16'Select'
|
||||
+' Directory'#4'left'#3'X'#1#3'top'#2#8#0#0#0
|
||||
+'acing.Right'#2#6#7'Caption'#6#15'TargetFileLabel'#5'Color'#7#6'clNone'#11'P'
|
||||
+'arentColor'#8#0#0#5'TEdit'#14'TargetFileEdit'#4'Left'#2#6#6'Height'#2#23#3
|
||||
+'Top'#2#19#5'Width'#3#142#1#5'Align'#7#5'alTop'#18'BorderSpacing.Left'#2#6#19
|
||||
+'BorderSpacing.Right'#2#6#8'TabOrder'#2#0#4'Text'#6#14'TargetFileEdit'#0#0#0
|
||||
+#0#5'TPage'#9'FormsPage'#7'Caption'#6#9'FormsPage'#11'ClientWidth'#3#170#1#12
|
||||
+'ClientHeight'#3'4'#1#0#6'TLabel'#21'FormsAutoCreatedLabel'#4'Left'#2'$'#6'H'
|
||||
+'eight'#2#13#3'Top'#2#10#5'Width'#3#136#0#7'Caption'#6#21'FormsAutoCreatedLa'
|
||||
+'bel'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#6'TLabel'#20'FormsAvailForm'
|
||||
+'sLabel'#4'Left'#3#252#0#6'Height'#2#13#3'Top'#2#10#5'Width'#3#129#0#7'Capti'
|
||||
+'on'#6#20'FormsAvailFormsLabel'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#8
|
||||
+'TListBox'#23'FormsAutoCreatedListBox'#4'Left'#2'$'#6'Height'#3#242#0#3'Top'
|
||||
+#2' '#5'Width'#3#168#0#11'MultiSelect'#9#8'TabOrder'#2#0#8'TopIndex'#2#255#0
|
||||
+#0#8'TListBox'#22'FormsAvailFormsListBox'#4'Left'#3#244#0#6'Height'#3#242#0#3
|
||||
+'Top'#2' '#5'Width'#3#168#0#11'MultiSelect'#9#8'TabOrder'#2#1#8'TopIndex'#2
|
||||
+#255#0#0#6'TArrow'#29'FormsMoveAutoCreatedFormUpBtn'#4'Left'#2#6#6'Height'#2
|
||||
+#24#3'Top'#2' '#5'Width'#2#24#9'ArrowType'#7#4'atUp'#7'OnClick'#7'"FormsMove'
|
||||
+'AutoCreatedFormUpBtnClick'#0#0#6'TArrow FormsMoveAutoCreatedFormsDownBtn'#4
|
||||
+'Left'#2#6#6'Height'#2#24#3'Top'#2'<'#5'Width'#2#24#9'ArrowType'#7#6'atDown'
|
||||
+#7'OnClick'#7'$FormsMoveAutoCreatedFormDownBtnClick'#0#0#6'TArrow"FormsRemov'
|
||||
+'eFromAutoCreatedFormsBtn'#4'Left'#3#212#0#6'Height'#2#24#3'Top'#2' '#5'Widt'
|
||||
+'h'#2#24#9'ArrowType'#7#7'atRight'#7'OnClick'#7'''FormsRemoveFromAutoCreated'
|
||||
+'FormsBtnClick'#0#0#6'TArrow'#29'FormsAddToAutoCreatedFormsBtn'#4'Left'#3#212
|
||||
+#0#6'Height'#2#24#3'Top'#2'<'#5'Width'#2#24#7'OnClick'#7'"FormsAddToAutoCrea'
|
||||
+'tedFormsBtnClick'#0#0#9'TCheckBox'#31'FormsAutoCreateNewFormsCheckBox'#4'Le'
|
||||
+'ft'#2#6#6'Height'#2#24#3'Top'#3#22#1#5'Width'#3#158#1#5'Align'#7#8'alBottom'
|
||||
+#20'BorderSpacing.Around'#2#6#7'Caption'#6#31'FormsAutoCreateNewFormsCheckBo'
|
||||
+'x'#8'TabOrder'#2#2#0#0#0#5'TPage'#8'MiscPage'#7'Caption'#6#8'MiscPage'#11'C'
|
||||
+'lientWidth'#3#170#1#12'ClientHeight'#3'4'#1#0#9'TCheckBox)MainUnitHasUsesSe'
|
||||
+'ctionForAllUnitsCheckBox'#21'AnchorSideTop.Control'#7#30'MainUnitIsPascalSo'
|
||||
+'urceCheckBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2
|
||||
+#24#3'Top'#2'$'#5'Width'#3#158#1#5'Align'#7#5'alTop'#18'BorderSpacing.Left'#2
|
||||
+#6#17'BorderSpacing.Top'#2#2#19'BorderSpacing.Right'#2#6#7'Caption'#6')MainU'
|
||||
+'nitHasUsesSectionForAllUnitsCheckBox'#8'TabOrder'#2#0#0#0#9'TCheckBox''Main'
|
||||
+'UnitHasCreateFormStatementsCheckBox'#21'AnchorSideTop.Control'#7')MainUnitH'
|
||||
+'asUsesSectionForAllUnitsCheckBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'L'
|
||||
+'eft'#2#6#6'Height'#2#24#3'Top'#2'>'#5'Width'#3#158#1#5'Align'#7#5'alTop'#18
|
||||
+'BorderSpacing.Left'#2#6#17'BorderSpacing.Top'#2#2#19'BorderSpacing.Right'#2
|
||||
+#6#7'Caption'#6'''MainUnitHasCreateFormStatementsCheckBox'#8'TabOrder'#2#1#0
|
||||
+#0#9'TCheckBox'#30'MainUnitIsPascalSourceCheckBox'#4'Left'#2#6#6'Height'#2#24
|
||||
+#3'Top'#2#10#5'Width'#3#158#1#5'Align'#7#5'alTop'#18'BorderSpacing.Left'#2#6
|
||||
,#17'BorderSpacing.Top'#2#10#19'BorderSpacing.Right'#2#6#7'Caption'#6#30'Main'
|
||||
+'UnitIsPascalSourceCheckBox'#8'TabOrder'#2#2#0#0#9'TCheckBox!MainUnitHasTitl'
|
||||
+'eStatementCheckBox'#21'AnchorSideTop.Control'#7'''MainUnitHasCreateFormStat'
|
||||
+'ementsCheckBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'
|
||||
+#2#24#3'Top'#2'X'#5'Width'#3#158#1#5'Align'#7#5'alTop'#18'BorderSpacing.Left'
|
||||
+#2#6#17'BorderSpacing.Top'#2#2#19'BorderSpacing.Right'#2#6#7'Caption'#6'!Mai'
|
||||
+'nUnitHasTitleStatementCheckBox'#8'TabOrder'#2#5#0#0#9'TCheckBox'#16'Runnabl'
|
||||
+'eCheckBox'#21'AnchorSideTop.Control'#7'!MainUnitHasTitleStatementCheckBox'
|
||||
+#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#24#3'Top'#2'z'
|
||||
+#5'Width'#3#158#1#5'Align'#7#5'alTop'#18'BorderSpacing.Left'#2#6#17'BorderSp'
|
||||
+'acing.Top'#2#10#19'BorderSpacing.Right'#2#6#7'Caption'#6#16'RunnableCheckBo'
|
||||
+'x'#8'TabOrder'#2#3#0#0#9'TCheckBox'#19'AlwaysBuildCheckBox'#21'AnchorSideTo'
|
||||
+'p.Control'#7#16'RunnableCheckBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'L'
|
||||
+'eft'#2#6#6'Height'#2#24#3'Top'#3#148#0#5'Width'#3#158#1#7'Anchors'#11#5'akT'
|
||||
+'op'#6'akLeft'#7'akRight'#0#18'BorderSpacing.Left'#2#6#17'BorderSpacing.Top'
|
||||
+#2#2#19'BorderSpacing.Right'#2#6#7'Caption'#6#19'AlwaysBuildCheckBox'#8'TabO'
|
||||
+'rder'#2#4#0#0#0#5'TPage'#10'LazDocPage'#7'Caption'#6#10'LazDocPage'#11'Clie'
|
||||
+'ntWidth'#3#170#1#12'ClientHeight'#3'4'#1#0#6'TLabel'#6'Label2'#6'Height'#2
|
||||
+#13#3'Top'#3#222#0#5'Width'#3#170#1#5'Align'#7#5'alTop'#7'Caption'#6'+NOTE: '
|
||||
+'only absolute paths are supported now'#5'Color'#7#6'clNone'#11'ParentColor'
|
||||
+#8#0#0#9'TGroupBox'#19'LazDocPathsGroupBox'#4'Left'#2#6#6'Height'#3#210#0#3
|
||||
+'Top'#2#6#5'Width'#3#158#1#5'Align'#7#5'alTop'#20'BorderSpacing.Around'#2#6#7
|
||||
+'Caption'#6#19'LazDocPathsGroupBox'#12'ClientHeight'#3#210#0#11'ClientWidth'
|
||||
+#3#158#1#8'TabOrder'#2#0#0#8'TListBox'#13'LazDocListBox'#4'Left'#2#6#6'Heigh'
|
||||
+'t'#2'l'#3'Top'#2#6#5'Width'#3#146#1#5'Align'#7#5'alTop'#20'BorderSpacing.Ar'
|
||||
+'ound'#2#6#8'TabOrder'#2#0#8'TopIndex'#2#255#0#0#7'TButton'#19'LazDocAddPath'
|
||||
+'Button'#4'Left'#2#6#6'Height'#2#25#3'Top'#2'z'#5'Width'#2'K'#25'BorderSpaci'
|
||||
+'ng.InnerBorder'#2#2#7'Caption'#6#19'LazDocAddPathButton'#7'OnClick'#7#24'La'
|
||||
+'zDocAddPathButtonClick'#8'TabOrder'#2#1#0#0#7'TButton'#22'LazDocDeletePathB'
|
||||
+'utton'#4'Left'#2'Z'#6'Height'#2#25#3'Top'#2'z'#5'Width'#2'K'#25'BorderSpaci'
|
||||
+'ng.InnerBorder'#2#2#7'Caption'#6#22'LazDocDeletePathButton'#7'OnClick'#7#27
|
||||
+'LazDocDeletePathButtonClick'#8'TabOrder'#2#2#0#0#5'TEdit'#14'LazDocPathEdit'
|
||||
+#4'Left'#2#6#6'Height'#2#23#3'Top'#3#154#0#5'Width'#3'f'#1#7'Anchors'#11#5'a'
|
||||
+'kTop'#6'akLeft'#7'akRight'#0#8'TabOrder'#2#3#4'Text'#6#14'LazDocPathEdit'#0
|
||||
+#0#7'TButton'#18'LazDocBrowseButton'#4'Left'#3'q'#1#6'Height'#2#23#3'Top'#3
|
||||
+#154#0#5'Width'#2#23#7'Anchors'#11#5'akTop'#7'akRight'#0#25'BorderSpacing.In'
|
||||
+'nerBorder'#2#2#7'Caption'#6#3'...'#7'OnClick'#7#23'LazDocBrowseButtonClick'
|
||||
+#8'TabOrder'#2#4#0#0#0#0#5'TPage'#8'SavePage'#7'Caption'#6#8'SavePage'#11'Cl'
|
||||
+'ientWidth'#3#170#1#12'ClientHeight'#3'4'#1#0#9'TCheckBox'#26'SaveClosedUnit'
|
||||
+'InfoCheckBox'#4'Left'#2#6#6'Height'#2#24#3'Top'#2#6#5'Width'#3#158#1#5'Alig'
|
||||
+'n'#7#5'alTop'#18'BorderSpacing.Left'#2#6#17'BorderSpacing.Top'#2#6#19'Borde'
|
||||
+'rSpacing.Right'#2#6#7'Caption'#6#26'SaveClosedUnitInfoCheckBox'#8'TabOrder'
|
||||
+#2#0#0#0#9'TCheckBox'#31'SaveOnlyProjectUnitInfoCheckBox'#21'AnchorSideTop.C'
|
||||
+'ontrol'#7#26'SaveClosedUnitInfoCheckBox'#18'AnchorSideTop.Side'#7#9'asrBott'
|
||||
+'om'#4'Left'#2#6#6'Height'#2#24#3'Top'#2' '#5'Width'#3#158#1#5'Align'#7#5'al'
|
||||
+'Top'#18'BorderSpacing.Left'#2#6#17'BorderSpacing.Top'#2#2#19'BorderSpacing.'
|
||||
+'Right'#2#6#7'Caption'#6#31'SaveOnlyProjectUnitInfoCheckBox'#8'TabOrder'#2#1
|
||||
+#0#0#11'TRadioGroup'#29'SaveSessionLocationRadioGroup'#21'AnchorSideTop.Cont'
|
||||
+'rol'#7#31'SaveOnlyProjectUnitInfoCheckBox'#18'AnchorSideTop.Side'#7#9'asrBo'
|
||||
+'ttom'#4'Left'#2#7#6'Height'#2'u'#3'Top'#2'C'#5'Width'#3#157#1#8'AutoFill'#9
|
||||
+#17'BorderSpacing.Top'#2#5#20'BorderSpacing.Around'#2#6#7'Caption'#6#29'Save'
|
||||
+'SessionLocationRadioGroup'#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildSiz'
|
||||
+'ing.TopBottomSpacing'#2#6#29'ChildSizing.EnlargeHorizontal'#7#24'crsHomogen'
|
||||
+'ousChildResize'#27'ChildSizing.EnlargeVertical'#7#24'crsHomogenousChildResi'
|
||||
+'ze'#28'ChildSizing.ShrinkHorizontal'#7#14'crsScaleChilds'#26'ChildSizing.Sh'
|
||||
+'rinkVertical'#7#14'crsScaleChilds'#18'ChildSizing.Layout'#7#29'cclLeftToRig'
|
||||
+'htThenTopToBottom'#27'ChildSizing.ControlsPerLine'#2#1#8'TabOrder'#2#2#0#0#0
|
||||
+#0#7'TButton'#12'CancelButton'#4'Left'#3'X'#1#6'Height'#2#25#3'Top'#3'X'#1#5
|
||||
+'Width'#2'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#25'BorderSpacing.InnerBo'
|
||||
+'rder'#2#2#6'Cancel'#9#7'Caption'#6#6'Cancel'#11'ModalResult'#2#2#8'TabOrder'
|
||||
+#2#1#0#0#7'TButton'#8'OKButton'#4'Left'#3#0#1#6'Height'#2#25#3'Top'#3'X'#1#5
|
||||
+'Width'#2'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#25'BorderSpacing.InnerBo'
|
||||
+'rder'#2#2#7'Caption'#6#2'OK'#7'Default'#9#11'ModalResult'#2#1#8'TabOrder'#2
|
||||
+#2#0#0#22'TSelectDirectoryDialog'#21'SelectDirectoryDialog'#5'Title'#6#16'Se'
|
||||
,'lect Directory'#11'FilterIndex'#2#0#4'left'#3'X'#1#3'top'#2#8#0#0#0
|
||||
]);
|
||||
|
@ -36,24 +36,9 @@ unit ProjectOpts;
|
||||
interface
|
||||
|
||||
uses
|
||||
Arrow,
|
||||
Buttons,
|
||||
Classes,
|
||||
CodeToolManager,
|
||||
Controls,
|
||||
Dialogs,
|
||||
ExtCtrls,
|
||||
Forms,
|
||||
Graphics,
|
||||
IDEOptionDefs,
|
||||
IDEWindowIntf,
|
||||
LazarusIDEStrConsts,
|
||||
LCLIntf,
|
||||
LResources,
|
||||
Project,
|
||||
ProjectIntf,
|
||||
StdCtrls,
|
||||
SysUtils;
|
||||
Arrow, Buttons, LCLProc, Classes, CodeToolManager, Controls, Dialogs,
|
||||
ExtCtrls, Forms, Graphics, IDEOptionDefs, IDEWindowIntf, LazarusIDEStrConsts,
|
||||
LCLIntf, LResources, Project, ProjectIntf, StdCtrls, SysUtils;
|
||||
|
||||
type
|
||||
|
||||
@ -62,12 +47,14 @@ type
|
||||
TProjectOptionsDialog = class(TForm)
|
||||
Label2: TLabel;
|
||||
|
||||
// Application
|
||||
Notebook: TNotebook;
|
||||
Page1: TPage;
|
||||
Page2: TPage;
|
||||
Page3: TPage;
|
||||
Page4: TPage;
|
||||
ApplicationPage: TPage;
|
||||
FormsPage: TPage;
|
||||
MiscPage: TPage;
|
||||
LazDocPage: TPage;
|
||||
SavePage: TPage;
|
||||
|
||||
// Application
|
||||
AppSettingsGroupBox: TGroupBox;
|
||||
OutputSettingsGroupBox: TGroupBox;
|
||||
SelectDirectoryDialog: TSelectDirectoryDialog;
|
||||
@ -89,8 +76,6 @@ type
|
||||
FormsMoveAutoCreatedFormsDownBtn: TArrow;
|
||||
|
||||
// Misc
|
||||
SaveClosedUnitInfoCheckBox: TCheckBox;
|
||||
SaveOnlyProjectUnitInfoCheckBox: TCheckBox;
|
||||
MainUnitIsPascalSourceCheckBox: TCheckBox;
|
||||
MainUnitHasUsesSectionForAllUnitsCheckBox: TCheckBox;
|
||||
MainUnitHasCreateFormStatementsCheckBox: TCheckBox;
|
||||
@ -106,6 +91,11 @@ type
|
||||
LazDocPathsGroupBox: TGroupBox;
|
||||
LazDocListBox: TListBox;
|
||||
|
||||
// Session
|
||||
SaveClosedUnitInfoCheckBox: TCheckBox;
|
||||
SaveOnlyProjectUnitInfoCheckBox: TCheckBox;
|
||||
SaveSessionLocationRadioGroup: TRadioGroup;
|
||||
|
||||
// buttons at bottom
|
||||
OKButton: TButton;
|
||||
CancelButton: TButton;
|
||||
@ -127,6 +117,7 @@ type
|
||||
procedure SetupFormsPage(PageIndex: Integer);
|
||||
procedure SetupMiscPage(PageIndex: Integer);
|
||||
procedure SetupLazDocPage(PageIndex: Integer);
|
||||
procedure SetupSavePage(PageIndex: Integer);
|
||||
procedure FillAutoCreateFormsListbox;
|
||||
procedure FillAvailFormsListBox;
|
||||
function IndexOfAutoCreateForm(FormName: String): Integer;
|
||||
@ -144,6 +135,10 @@ type
|
||||
|
||||
function ShowProjectOptionsDialog(AProject: TProject): TModalResult;
|
||||
|
||||
function ProjectSessionStorageToLocalizedName(s: TProjectSessionStorage): string;
|
||||
function LocalizedNameToProjectSessionStorage(
|
||||
const s: string): TProjectSessionStorage;
|
||||
|
||||
var
|
||||
ProjectOptionsDialog: TProjectOptionsDialog;
|
||||
|
||||
@ -161,6 +156,27 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
function ProjectSessionStorageToLocalizedName(s: TProjectSessionStorage
|
||||
): string;
|
||||
begin
|
||||
case s of
|
||||
pssInProjectInfo: Result:=lisPOSaveInLpiFil;
|
||||
pssInProjectDir: Result:=lisPOSaveInLpsFileInProjectDirectory;
|
||||
pssInIDEConfig: Result:=lisPOSaveInIDEConfigDirectory;
|
||||
pssNone: Result:=lisPODoNotSaveAnySessionInfo;
|
||||
else
|
||||
RaiseGDBException('');
|
||||
end;
|
||||
end;
|
||||
|
||||
function LocalizedNameToProjectSessionStorage(const s: string
|
||||
): TProjectSessionStorage;
|
||||
begin
|
||||
for Result:=Low(TProjectSessionStorage) to High(TProjectSessionStorage) do
|
||||
if ProjectSessionStorageToLocalizedName(Result)=s then exit;
|
||||
Result:=pssInProjectInfo;
|
||||
end;
|
||||
|
||||
|
||||
{ TProjectOptionsDialog }
|
||||
|
||||
@ -178,6 +194,7 @@ begin
|
||||
SetupFormsPage(1);
|
||||
SetupMiscPage(2);
|
||||
SetupLazDocPage(3);
|
||||
SetupSavePage(4);
|
||||
|
||||
ProjectOptionsResize(TheOwner);
|
||||
|
||||
@ -207,6 +224,23 @@ begin
|
||||
LazDocPathEdit.Clear;
|
||||
end;
|
||||
|
||||
procedure TProjectOptionsDialog.SetupSavePage(PageIndex: Integer);
|
||||
var
|
||||
s: TProjectSessionStorage;
|
||||
begin
|
||||
NoteBook.Page[PageIndex].Caption := dlgPOSaveSession;
|
||||
|
||||
SaveClosedUnitInfoCheckBox.Caption := dlgSaveEditorInfo;
|
||||
SaveOnlyProjectUnitInfoCheckBox.Caption := dlgSaveEditorInfoProject;
|
||||
{$IFNDEF EnableProjectSessions}
|
||||
SaveSessionLocationRadioGroup.Enabled:=false;
|
||||
{$ENDIF}
|
||||
SaveSessionLocationRadioGroup.Caption:=lisPOSaveSessionInformationIn;
|
||||
for s:=Low(TProjectSessionStorage) to High(TProjectSessionStorage) do
|
||||
SaveSessionLocationRadioGroup.Items.Add(
|
||||
ProjectSessionStorageToLocalizedName(s));
|
||||
end;
|
||||
|
||||
procedure TProjectOptionsDialog.SetupFormsPage(PageIndex: Integer);
|
||||
begin
|
||||
NoteBook.Page[PageIndex].Caption := dlgPOFroms;
|
||||
@ -220,8 +254,6 @@ procedure TProjectOptionsDialog.SetupMiscPage(PageIndex: Integer);
|
||||
begin
|
||||
NoteBook.Page[PageIndex].Caption := dlgPOMisc;
|
||||
|
||||
SaveClosedUnitInfoCheckBox.Caption := dlgSaveEditorInfo;
|
||||
SaveOnlyProjectUnitInfoCheckBox.Caption := dlgSaveEditorInfoProject;
|
||||
MainUnitIsPascalSourceCheckBox.Caption := lisMainUnitIsPascalSource;
|
||||
MainUnitHasUsesSectionForAllUnitsCheckBox.Caption := lisMainUnitHasUsesSectionContainingAllUnitsOfProject;
|
||||
MainUnitHasCreateFormStatementsCheckBox.Caption := lisMainUnitHasApplicationCreateFormStatements;
|
||||
@ -249,6 +281,7 @@ begin
|
||||
SaveClosedUnitInfoCheckBox.Checked := (pfSaveClosedUnits in AProject.Flags);
|
||||
SaveOnlyProjectUnitInfoCheckBox.Checked :=
|
||||
(pfSaveOnlyProjectUnits in AProject.Flags);
|
||||
SaveSessionLocationRadioGroup.ItemIndex:=ord(AProject.SessionStorage);
|
||||
|
||||
MainUnitIsPascalSourceCheckBox.Checked :=
|
||||
(pfMainUnitIsPascalSource in AProject.Flags);
|
||||
@ -304,6 +337,11 @@ begin
|
||||
SetProjectFlag(pfRunnable, RunnableCheckBox.Checked);
|
||||
SetProjectFlag(pfAlwaysBuild, AlwaysBuildCheckBox.Checked);
|
||||
Project.Flags := NewFlags;
|
||||
|
||||
if SaveSessionLocationRadioGroup.ItemIndex>=0 then
|
||||
Project.SessionStorage:=LocalizedNameToProjectSessionStorage(
|
||||
SaveSessionLocationRadioGroup.Items[
|
||||
SaveSessionLocationRadioGroup.ItemIndex]);
|
||||
|
||||
Project.AutoCreateForms := FormsAutoCreateNewFormsCheckBox.Checked;
|
||||
|
||||
@ -554,7 +592,7 @@ begin
|
||||
Height := FormsAutoCreateNewFormsCheckBox.Top - Top - 6;
|
||||
Left := FormsMoveAutoCreatedFormUpBtn.Left +
|
||||
FormsMoveAutoCreatedFormUpBtn.Width + 6;
|
||||
Width := (Page2.Width - Left * 2 - 6) div 2;
|
||||
Width := (FormsPage.Width - Left * 2 - 6) div 2;
|
||||
end;
|
||||
|
||||
with FormsAddToAutoCreatedFormsBtn do
|
||||
|
@ -427,10 +427,10 @@ type
|
||||
TProjectFlags = set of TProjectFlag;
|
||||
|
||||
TProjectSessionStorage = (
|
||||
pssInProjectInfo, // save session info in .lpi file
|
||||
pssInProjectDir, // save session info in .lps file in project directory
|
||||
pssInIDEConfig, // save session info in IDE config directory
|
||||
pssNone // do not save any session info
|
||||
pssInProjectInfo, // save session info in .lpi file
|
||||
pssInProjectDir, // save session info in .lps file in project directory
|
||||
pssInIDEConfig, // save session info in IDE config directory
|
||||
pssNone // do not save any session info
|
||||
);
|
||||
TProjectSessionStorages = set of TProjectSessionStorage;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user