ide: extract options_backup, options_naming, option_fpdoc as frames from environment options dialog

git-svn-id: trunk@17052 -
This commit is contained in:
paul 2008-10-19 06:58:04 +00:00
parent 5b417433d5
commit 85c5b849e2
15 changed files with 1275 additions and 963 deletions

9
.gitattributes vendored
View File

@ -2388,6 +2388,9 @@ ide/fpdocselectinherited.pas svneol=native#text/plain
ide/fpdocselectlink.lfm svneol=native#text/plain
ide/fpdocselectlink.lrs svneol=native#text/plain
ide/fpdocselectlink.pas svneol=native#text/plain
ide/frames/options_backup.lfm svneol=native#text/plain
ide/frames/options_backup.lrs svneol=native#text/pascal
ide/frames/options_backup.pas svneol=native#text/pascal
ide/frames/options_desktop.lfm svneol=native#text/plain
ide/frames/options_desktop.lrs svneol=native#text/pascal
ide/frames/options_desktop.pas svneol=native#text/pascal
@ -2397,6 +2400,12 @@ ide/frames/options_files.pas svneol=native#text/pascal
ide/frames/options_formed.lfm svneol=native#text/plain
ide/frames/options_formed.lrs svneol=native#text/pascal
ide/frames/options_formed.pas svneol=native#text/pascal
ide/frames/options_fpdoc.lfm svneol=native#text/plain
ide/frames/options_fpdoc.lrs svneol=native#text/pascal
ide/frames/options_fpdoc.pas svneol=native#text/pascal
ide/frames/options_naming.lfm svneol=native#text/plain
ide/frames/options_naming.lrs svneol=native#text/pascal
ide/frames/options_naming.pas svneol=native#text/pascal
ide/frames/options_oi.lfm svneol=native#text/plain
ide/frames/options_oi.lrs svneol=native#text/pascal
ide/frames/options_oi.pas svneol=native#text/pascal

View File

@ -485,6 +485,8 @@ const
DefaultLazDocPath = '$(LazarusDir)/docs/xml/lcl';
DefaultMsgViewFocus = {$IFDEF Windows}true{$ELSE}false{$ENDIF};
MaxComboBoxCount: integer = 20;
EnvOptsConfFileName = 'environmentoptions.xml';
BakMaxCounterInfiniteTxt = 'infinite';
implementation
@ -613,10 +615,6 @@ end;
{ TEnvironmentOptions }
const
EnvOptsConfFileName='environmentoptions.xml';
BakMaxCounterInfiniteTxt = 'infinite';
constructor TEnvironmentOptions.Create;
begin
inherited Create;

View File

@ -21,7 +21,6 @@ object EnvironmentOptionsDialog: TEnvironmentOptionsDialog
Align = alTop
Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Bottom = 6
OnChangeBounds = NotebookChangeBounds
PageIndex = 0
TabOrder = 0
object FilesPage: TPage
@ -41,441 +40,12 @@ object EnvironmentOptionsDialog: TEnvironmentOptionsDialog
end
object BackupPage: TPage
Caption = 'BackupPage'
ClientWidth = 534
ClientHeight = 463
object BackupHelpLabel: TLabel
AnchorSideRight.Control = BackupPage
AnchorSideRight.Side = asrBottom
Left = 6
Height = 14
Top = 7
Width = 522
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Right = 6
Caption = 'BackupHelpLabel'
ParentColor = False
end
object BackupProjectGroupBox: TGroupBox
AnchorSideRight.Control = BackupPage
AnchorSideRight.Side = asrBottom
Left = 6
Height = 141
Top = 34
Width = 522
Anchors = [akTop, akLeft, akRight]
AutoSize = True
BorderSpacing.Right = 6
Caption = 'BackupProjectGroupBox'
ClientHeight = 141
ClientWidth = 522
TabOrder = 0
object BakProjAddExtLabel: TLabel
AnchorSideLeft.Control = BakProjAddExtComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakProjAddExtComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupProjectGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 45
Width = 400
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakProjAddExtLabel'
ParentColor = False
end
object BakProjMaxCounterLabel: TLabel
AnchorSideLeft.Control = BakProjMaxCounterComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakProjMaxCounterComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupProjectGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 72
Width = 400
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakProjMaxCounterLabel'
ParentColor = False
end
object BakProjSubDirLabel: TLabel
AnchorSideLeft.Control = BakProjSubDirComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakProjSubDirComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupProjectGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 99
Width = 400
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakProjSubDirLabel'
ParentColor = False
end
object BakProjTypeRadioGroup: TRadioGroup
AnchorSideRight.Control = BackupProjectGroupBox
AnchorSideRight.Side = asrBottom
Left = 6
Height = 30
Top = 6
Width = 506
Anchors = [akTop, akLeft, akRight]
AutoFill = True
AutoSize = True
BorderSpacing.Around = 6
Caption = 'BakProjTypeRadioGroup'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 2
Columns = 2
Constraints.MinHeight = 30
OnClick = BakTypeRadioGroupClick
TabOrder = 0
end
object BakProjAddExtComboBox: TComboBox
AnchorSideTop.Control = BakProjTypeRadioGroup
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 42
Width = 100
AutoSelect = True
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 1
Text = 'BakProjAddExtComboBox'
end
object BakProjMaxCounterComboBox: TComboBox
AnchorSideTop.Control = BakProjAddExtComboBox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 69
Width = 100
AutoSelect = True
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 2
Text = 'BakProjMaxCounterComboBox'
end
object BakProjSubDirComboBox: TComboBox
AnchorSideTop.Control = BakProjMaxCounterComboBox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 96
Width = 100
AutoSelect = True
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 3
Text = 'BakProjSubDirComboBox'
end
end
object BackupOtherGroupBox: TGroupBox
AnchorSideTop.Control = BackupProjectGroupBox
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = BackupPage
AnchorSideRight.Side = asrBottom
Left = 6
Height = 141
Top = 181
Width = 522
Anchors = [akTop, akLeft, akRight]
AutoSize = True
BorderSpacing.Around = 6
Caption = 'BackupOtherGroupBox'
ClientHeight = 141
ClientWidth = 522
TabOrder = 1
object BakOtherAddExtLabel: TLabel
AnchorSideLeft.Control = BakOtherAddExtComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakOtherAddExtComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupOtherGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 45
Width = 400
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakOtherAddExtLabel'
ParentColor = False
end
object BakOtherMaxCounterLabel: TLabel
AnchorSideLeft.Control = BakOtherMaxCounterComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakOtherMaxCounterComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupOtherGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 72
Width = 400
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakOtherMaxCounterLabel'
ParentColor = False
end
object BakOtherSubDirLabel: TLabel
AnchorSideLeft.Control = BakOtherSubDirComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakOtherSubDirComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupOtherGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 99
Width = 400
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakOtherSubDirLabel'
ParentColor = False
end
object BakOtherTypeRadioGroup: TRadioGroup
AnchorSideRight.Control = BackupOtherGroupBox
AnchorSideRight.Side = asrBottom
Left = 6
Height = 30
Top = 6
Width = 506
Anchors = [akTop, akLeft, akRight]
AutoFill = True
AutoSize = True
BorderSpacing.Around = 6
Caption = 'BakOtherTypeRadioGroup'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 2
Columns = 2
Constraints.MinHeight = 30
OnClick = BakTypeRadioGroupClick
TabOrder = 0
end
object BakOtherAddExtComboBox: TComboBox
AnchorSideTop.Control = BakOtherTypeRadioGroup
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 42
Width = 100
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 1
Text = 'BakOtherAddExtComboBox'
end
object BakOtherMaxCounterComboBox: TComboBox
AnchorSideTop.Control = BakOtherAddExtComboBox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 69
Width = 100
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 2
Text = 'BakOtherMaxCounterComboBox'
end
object BakOtherSubDirComboBox: TComboBox
AnchorSideTop.Control = BakOtherMaxCounterComboBox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 96
Width = 100
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 3
Text = 'BakOtherSubDirComboBox'
end
end
end
object NamingPage: TPage
Caption = 'NamingPage'
ClientWidth = 538
ClientHeight = 450
object PascalFileExtRadiogroup: TRadioGroup
AnchorSideRight.Control = NamingPage
AnchorSideRight.Side = asrBottom
Left = 6
Height = 47
Top = 6
Width = 526
Align = alTop
AutoFill = True
BorderSpacing.Around = 6
Caption = 'PascalFileExtRadiogroup'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 2
Columns = 2
TabOrder = 0
end
object CharcaseFileActionRadioGroup: TRadioGroup
AnchorSideRight.Control = NamingPage
AnchorSideRight.Side = asrBottom
Left = 6
Height = 85
Top = 165
Width = 526
Align = alTop
AutoFill = True
BorderSpacing.Around = 6
Caption = 'CharcaseFileActionRadioGroup'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 2
Columns = 2
TabOrder = 1
end
object AmbiguousFileActionRadioGroup: TRadioGroup
AnchorSideRight.Control = NamingPage
AnchorSideRight.Side = asrBottom
Left = 6
Height = 100
Top = 59
Width = 526
Align = alTop
AutoFill = True
BorderSpacing.Around = 6
Caption = 'AmbiguousFileActionRadioGroup'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 2
Columns = 2
TabOrder = 2
end
end
object LazDocPage: TPage
Caption = 'LazDocPage'
ClientWidth = 538
ClientHeight = 450
object LazDocPathsGroupBox: TGroupBox
AnchorSideRight.Control = LazDocPage
AnchorSideRight.Side = asrBottom
Left = 6
Height = 205
Top = 6
Width = 526
Align = alTop
AutoSize = True
BorderSpacing.Around = 6
Caption = 'LazDocPathsGroupBox'
ClientHeight = 205
ClientWidth = 526
TabOrder = 0
object LazDocListBox: TListBox
Left = 6
Height = 108
Top = 6
Width = 510
Align = alTop
BorderSpacing.Around = 6
TabOrder = 0
TopIndex = -1
end
object LazDocAddPathButton: TButton
AnchorSideLeft.Control = LazDocPathsGroupBox
AnchorSideTop.Control = LazDocListBox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 31
Top = 120
Width = 163
AutoSize = True
BorderSpacing.Around = 6
Caption = 'LazDocAddPathButton'
OnClick = LazDocAddPathButtonClick
TabOrder = 1
end
object LazDocDeletePathButton: TButton
AnchorSideLeft.Control = LazDocAddPathButton
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = LazDocAddPathButton
Left = 179
Height = 31
Top = 120
Width = 180
AutoSize = True
BorderSpacing.Left = 10
Caption = 'LazDocDeletePathButton'
OnClick = LazDocDeletePathButtonClick
TabOrder = 2
end
object LazDocBrowseButton: TButton
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = LazDocPathEdit
AnchorSideRight.Control = LazDocPathsGroupBox
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = LazDocPathEdit
AnchorSideBottom.Side = asrBottom
Left = 492
Height = 23
Top = 157
Width = 24
Anchors = [akTop, akRight, akBottom]
BorderSpacing.Right = 6
Caption = '...'
OnClick = LazDocBrowseButtonClick
TabOrder = 3
end
object LazDocPathEdit: TEdit
AnchorSideLeft.Control = LazDocPathsGroupBox
AnchorSideTop.Control = LazDocAddPathButton
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = LazDocBrowseButton
Left = 6
Height = 23
Top = 157
Width = 486
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Left = 6
BorderSpacing.Top = 6
BorderSpacing.Bottom = 6
TabOrder = 4
Text = 'LazDocPathEdit'
end
end
end
end
object ButtonPanel: TButtonPanel
@ -488,9 +58,4 @@ object EnvironmentOptionsDialog: TEnvironmentOptionsDialog
TabOrder = 1
ShowButtons = [pbOK, pbCancel, pbHelp]
end
object SelectDirectoryDialog: TSelectDirectoryDialog
FilterIndex = 0
left = 488
top = 8
end
end

View File

@ -10,181 +10,14 @@ LazarusResources.Add('TEnvironmentOptionsDialog','FORMDATA',[
+'ol'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asrBottom'#24'AnchorSideBottom.'
+'Control'#7#11'ButtonPanel'#6'Height'#3#233#1#5'Width'#3#30#2#5'Align'#7#5'a'
+'lTop'#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#20'BorderSp'
+'acing.Bottom'#2#6#14'OnChangeBounds'#7#20'NotebookChangeBounds'#9'PageIndex'
+#2#0#8'TabOrder'#2#0#0#5'TPage'#9'FilesPage'#7'Caption'#6#9'FilesPage'#0#0#5
+'TPage'#11'DesktopPage'#7'Caption'#6#11'DesktopPage'#0#0#5'TPage'#11'Windows'
+'Page'#7'Caption'#6#11'WindowsPage'#0#0#5'TPage'#14'FormEditorPage'#7'Captio'
+'n'#6#14'FormEditorPage'#0#0#5'TPage'#19'ObjectInspectorPage'#7'Caption'#6#19
+'ObjectInspectorPage'#0#0#5'TPage'#10'BackupPage'#7'Caption'#6#10'BackupPage'
+#11'ClientWidth'#3#22#2#12'ClientHeight'#3#207#1#0#6'TLabel'#15'BackupHelpLa'
+'bel'#23'AnchorSideRight.Control'#7#10'BackupPage'#20'AnchorSideRight.Side'#7
+#9'asrBottom'#4'Left'#2#6#6'Height'#2#14#3'Top'#2#7#5'Width'#3#10#2#7'Anchor'
+'s'#11#5'akTop'#6'akLeft'#7'akRight'#0#19'BorderSpacing.Right'#2#6#7'Caption'
+#6#15'BackupHelpLabel'#11'ParentColor'#8#0#0#9'TGroupBox'#21'BackupProjectGr'
+'oupBox'#23'AnchorSideRight.Control'#7#10'BackupPage'#20'AnchorSideRight.Sid'
+'e'#7#9'asrBottom'#4'Left'#2#6#6'Height'#3#141#0#3'Top'#2'"'#5'Width'#3#10#2
+#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#8'AutoSize'#9#19'BorderSpacin'
+'g.Right'#2#6#7'Caption'#6#21'BackupProjectGroupBox'#12'ClientHeight'#3#141#0
+#11'ClientWidth'#3#10#2#8'TabOrder'#2#0#0#6'TLabel'#18'BakProjAddExtLabel'#22
+'AnchorSideLeft.Control'#7#21'BakProjAddExtComboBox'#19'AnchorSideLeft.Side'
+#7#9'asrBottom'#21'AnchorSideTop.Control'#7#21'BakProjAddExtComboBox'#18'Anc'
+'horSideTop.Side'#7#9'asrCenter'#23'AnchorSideRight.Control'#7#21'BackupProj'
+'ectGroupBox'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#2'p'#6'Height'
+#2#14#3'Top'#2'-'#5'Width'#3#144#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRigh'
+'t'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#18'BakProjAddExtLabel'#11'Pa'
+'rentColor'#8#0#0#6'TLabel'#22'BakProjMaxCounterLabel'#22'AnchorSideLeft.Con'
+'trol'#7#25'BakProjMaxCounterComboBox'#19'AnchorSideLeft.Side'#7#9'asrBottom'
+#21'AnchorSideTop.Control'#7#25'BakProjMaxCounterComboBox'#18'AnchorSideTop.'
+'Side'#7#9'asrCenter'#23'AnchorSideRight.Control'#7#21'BackupProjectGroupBox'
+#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2
+'H'#5'Width'#3#144#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'Border'
+'Spacing.Around'#2#6#7'Caption'#6#22'BakProjMaxCounterLabel'#11'ParentColor'
+#8#0#0#6'TLabel'#18'BakProjSubDirLabel'#22'AnchorSideLeft.Control'#7#21'BakP'
+'rojSubDirComboBox'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.'
+'Control'#7#21'BakProjSubDirComboBox'#18'AnchorSideTop.Side'#7#9'asrCenter'
+#23'AnchorSideRight.Control'#7#21'BackupProjectGroupBox'#20'AnchorSideRight.'
+'Side'#7#9'asrBottom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2'c'#5'Width'#3#144
+#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'#2#6
+#7'Caption'#6#18'BakProjSubDirLabel'#11'ParentColor'#8#0#0#11'TRadioGroup'#21
+'BakProjTypeRadioGroup'#23'AnchorSideRight.Control'#7#21'BackupProjectGroupB'
+'ox'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#30#3'To'
+'p'#2#6#5'Width'#3#250#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#8'Aut'
+'oFill'#9#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#21'BakProj'
+'TypeRadioGroup'#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildSizing.TopBott'
+'omSpacing'#2#6#29'ChildSizing.EnlargeHorizontal'#7#24'crsHomogenousChildRes'
+'ize'#27'ChildSizing.EnlargeVertical'#7#24'crsHomogenousChildResize'#28'Chil'
+'dSizing.ShrinkHorizontal'#7#14'crsScaleChilds'#26'ChildSizing.ShrinkVertica'
+'l'#7#14'crsScaleChilds'#18'ChildSizing.Layout'#7#29'cclLeftToRightThenTopTo'
+'Bottom'#27'ChildSizing.ControlsPerLine'#2#2#7'Columns'#2#2#21'Constraints.M'
+'inHeight'#2#30#7'OnClick'#7#22'BakTypeRadioGroupClick'#8'TabOrder'#2#0#0#0#9
+'TComboBox'#21'BakProjAddExtComboBox'#21'AnchorSideTop.Control'#7#21'BakProj'
+'TypeRadioGroup'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'
+#2#21#3'Top'#2'*'#5'Width'#2'd'#10'AutoSelect'#9#20'BorderSpacing.Around'#2#6
+#10'ItemHeight'#2#13#9'MaxLength'#2#255#8'TabOrder'#2#1#4'Text'#6#21'BakProj'
+'AddExtComboBox'#0#0#9'TComboBox'#25'BakProjMaxCounterComboBox'#21'AnchorSid'
+'eTop.Control'#7#21'BakProjAddExtComboBox'#18'AnchorSideTop.Side'#7#9'asrBot'
+'tom'#4'Left'#2#6#6'Height'#2#21#3'Top'#2'E'#5'Width'#2'd'#10'AutoSelect'#9
+#20'BorderSpacing.Around'#2#6#10'ItemHeight'#2#13#9'MaxLength'#2#255#8'TabOr'
,'der'#2#2#4'Text'#6#25'BakProjMaxCounterComboBox'#0#0#9'TComboBox'#21'BakPro'
+'jSubDirComboBox'#21'AnchorSideTop.Control'#7#25'BakProjMaxCounterComboBox'
+#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#21#3'Top'#2'`'
+#5'Width'#2'd'#10'AutoSelect'#9#20'BorderSpacing.Around'#2#6#10'ItemHeight'#2
+#13#9'MaxLength'#2#255#8'TabOrder'#2#3#4'Text'#6#21'BakProjSubDirComboBox'#0
+#0#0#9'TGroupBox'#19'BackupOtherGroupBox'#21'AnchorSideTop.Control'#7#21'Bac'
+'kupProjectGroupBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#23'AnchorSideRigh'
+'t.Control'#7#10'BackupPage'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'
+#2#6#6'Height'#3#141#0#3'Top'#3#181#0#5'Width'#3#10#2#7'Anchors'#11#5'akTop'
+#6'akLeft'#7'akRight'#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Caption'
+#6#19'BackupOtherGroupBox'#12'ClientHeight'#3#141#0#11'ClientWidth'#3#10#2#8
+'TabOrder'#2#1#0#6'TLabel'#19'BakOtherAddExtLabel'#22'AnchorSideLeft.Control'
+#7#22'BakOtherAddExtComboBox'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'Anch'
+'orSideTop.Control'#7#22'BakOtherAddExtComboBox'#18'AnchorSideTop.Side'#7#9
+'asrCenter'#23'AnchorSideRight.Control'#7#19'BackupOtherGroupBox'#20'AnchorS'
+'ideRight.Side'#7#9'asrBottom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2'-'#5'Wid'
+'th'#3#144#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.'
+'Around'#2#6#7'Caption'#6#19'BakOtherAddExtLabel'#11'ParentColor'#8#0#0#6'TL'
+'abel'#23'BakOtherMaxCounterLabel'#22'AnchorSideLeft.Control'#7#26'BakOtherM'
+'axCounterComboBox'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.'
+'Control'#7#26'BakOtherMaxCounterComboBox'#18'AnchorSideTop.Side'#7#9'asrCen'
+'ter'#23'AnchorSideRight.Control'#7#19'BackupOtherGroupBox'#20'AnchorSideRig'
+'ht.Side'#7#9'asrBottom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2'H'#5'Width'#3
+#144#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'
+#2#6#7'Caption'#6#23'BakOtherMaxCounterLabel'#11'ParentColor'#8#0#0#6'TLabel'
+#19'BakOtherSubDirLabel'#22'AnchorSideLeft.Control'#7#22'BakOtherSubDirCombo'
+'Box'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'#7#22
+'BakOtherSubDirComboBox'#18'AnchorSideTop.Side'#7#9'asrCenter'#23'AnchorSide'
+'Right.Control'#7#19'BackupOtherGroupBox'#20'AnchorSideRight.Side'#7#9'asrBo'
+'ttom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2'c'#5'Width'#3#144#1#7'Anchors'#11
+#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#19
+'BakOtherSubDirLabel'#11'ParentColor'#8#0#0#11'TRadioGroup'#22'BakOtherTypeR'
+'adioGroup'#23'AnchorSideRight.Control'#7#19'BackupOtherGroupBox'#20'AnchorS'
+'ideRight.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#30#3'Top'#2#6#5'Width'
+#3#250#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#8'AutoFill'#9#8'AutoS'
+'ize'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#22'BakOtherTypeRadioGroup'
+#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildSizing.TopBottomSpacing'#2#6#29
+'ChildSizing.EnlargeHorizontal'#7#24'crsHomogenousChildResize'#27'ChildSizin'
+'g.EnlargeVertical'#7#24'crsHomogenousChildResize'#28'ChildSizing.ShrinkHori'
+'zontal'#7#14'crsScaleChilds'#26'ChildSizing.ShrinkVertical'#7#14'crsScaleCh'
+'ilds'#18'ChildSizing.Layout'#7#29'cclLeftToRightThenTopToBottom'#27'ChildSi'
+'zing.ControlsPerLine'#2#2#7'Columns'#2#2#21'Constraints.MinHeight'#2#30#7'O'
+'nClick'#7#22'BakTypeRadioGroupClick'#8'TabOrder'#2#0#0#0#9'TComboBox'#22'Ba'
+'kOtherAddExtComboBox'#21'AnchorSideTop.Control'#7#22'BakOtherTypeRadioGroup'
+#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#21#3'Top'#2'*'
+#5'Width'#2'd'#20'BorderSpacing.Around'#2#6#10'ItemHeight'#2#13#9'MaxLength'
+#2#255#8'TabOrder'#2#1#4'Text'#6#22'BakOtherAddExtComboBox'#0#0#9'TComboBox'
+#26'BakOtherMaxCounterComboBox'#21'AnchorSideTop.Control'#7#22'BakOtherAddEx'
+'tComboBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#21
+#3'Top'#2'E'#5'Width'#2'd'#20'BorderSpacing.Around'#2#6#10'ItemHeight'#2#13#9
+'MaxLength'#2#255#8'TabOrder'#2#2#4'Text'#6#26'BakOtherMaxCounterComboBox'#0
+#0#9'TComboBox'#22'BakOtherSubDirComboBox'#21'AnchorSideTop.Control'#7#26'Ba'
+'kOtherMaxCounterComboBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6
+#6'Height'#2#21#3'Top'#2'`'#5'Width'#2'd'#20'BorderSpacing.Around'#2#6#10'It'
+'emHeight'#2#13#9'MaxLength'#2#255#8'TabOrder'#2#3#4'Text'#6#22'BakOtherSubD'
+'irComboBox'#0#0#0#0#5'TPage'#10'NamingPage'#7'Caption'#6#10'NamingPage'#11
+'ClientWidth'#3#26#2#12'ClientHeight'#3#194#1#0#11'TRadioGroup'#23'PascalFil'
+'eExtRadiogroup'#23'AnchorSideRight.Control'#7#10'NamingPage'#20'AnchorSideR'
+'ight.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2'/'#3'Top'#2#6#5'Width'#3
+#14#2#5'Align'#7#5'alTop'#8'AutoFill'#9#20'BorderSpacing.Around'#2#6#7'Capti'
+'on'#6#23'PascalFileExtRadiogroup'#28'ChildSizing.LeftRightSpacing'#2#6#28'C'
+'hildSizing.TopBottomSpacing'#2#6#29'ChildSizing.EnlargeHorizontal'#7#24'crs'
+'HomogenousChildResize'#27'ChildSizing.EnlargeVertical'#7#24'crsHomogenousCh'
+'ildResize'#28'ChildSizing.ShrinkHorizontal'#7#14'crsScaleChilds'#26'ChildSi'
,'zing.ShrinkVertical'#7#14'crsScaleChilds'#18'ChildSizing.Layout'#7#29'cclLe'
+'ftToRightThenTopToBottom'#27'ChildSizing.ControlsPerLine'#2#2#7'Columns'#2#2
+#8'TabOrder'#2#0#0#0#11'TRadioGroup'#28'CharcaseFileActionRadioGroup'#23'Anc'
+'horSideRight.Control'#7#10'NamingPage'#20'AnchorSideRight.Side'#7#9'asrBott'
+'om'#4'Left'#2#6#6'Height'#2'U'#3'Top'#3#165#0#5'Width'#3#14#2#5'Align'#7#5
+'alTop'#8'AutoFill'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#28'CharcaseF'
+'ileActionRadioGroup'#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildSizing.To'
+'pBottomSpacing'#2#6#29'ChildSizing.EnlargeHorizontal'#7#24'crsHomogenousChi'
+'ldResize'#27'ChildSizing.EnlargeVertical'#7#24'crsHomogenousChildResize'#28
+'ChildSizing.ShrinkHorizontal'#7#14'crsScaleChilds'#26'ChildSizing.ShrinkVer'
+'tical'#7#14'crsScaleChilds'#18'ChildSizing.Layout'#7#29'cclLeftToRightThenT'
+'opToBottom'#27'ChildSizing.ControlsPerLine'#2#2#7'Columns'#2#2#8'TabOrder'#2
+#1#0#0#11'TRadioGroup'#29'AmbiguousFileActionRadioGroup'#23'AnchorSideRight.'
+'Control'#7#10'NamingPage'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#2
+#6#6'Height'#2'd'#3'Top'#2';'#5'Width'#3#14#2#5'Align'#7#5'alTop'#8'AutoFill'
+#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#29'AmbiguousFileActionRadioGrou'
+'p'#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildSizing.TopBottomSpacing'#2#6
+#29'ChildSizing.EnlargeHorizontal'#7#24'crsHomogenousChildResize'#27'ChildSi'
+'zing.EnlargeVertical'#7#24'crsHomogenousChildResize'#28'ChildSizing.ShrinkH'
+'orizontal'#7#14'crsScaleChilds'#26'ChildSizing.ShrinkVertical'#7#14'crsScal'
+'eChilds'#18'ChildSizing.Layout'#7#29'cclLeftToRightThenTopToBottom'#27'Chil'
+'dSizing.ControlsPerLine'#2#2#7'Columns'#2#2#8'TabOrder'#2#2#0#0#0#5'TPage'
+#10'LazDocPage'#7'Caption'#6#10'LazDocPage'#11'ClientWidth'#3#26#2#12'Client'
+'Height'#3#194#1#0#9'TGroupBox'#19'LazDocPathsGroupBox'#23'AnchorSideRight.C'
+'ontrol'#7#10'LazDocPage'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#2#6
+#6'Height'#3#205#0#3'Top'#2#6#5'Width'#3#14#2#5'Align'#7#5'alTop'#8'AutoSize'
+#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#19'LazDocPathsGroupBox'#12'Clie'
+'ntHeight'#3#205#0#11'ClientWidth'#3#14#2#8'TabOrder'#2#0#0#8'TListBox'#13'L'
+'azDocListBox'#4'Left'#2#6#6'Height'#2'l'#3'Top'#2#6#5'Width'#3#254#1#5'Alig'
+'n'#7#5'alTop'#20'BorderSpacing.Around'#2#6#8'TabOrder'#2#0#8'TopIndex'#2#255
+#0#0#7'TButton'#19'LazDocAddPathButton'#22'AnchorSideLeft.Control'#7#19'LazD'
+'ocPathsGroupBox'#21'AnchorSideTop.Control'#7#13'LazDocListBox'#18'AnchorSid'
+'eTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#31#3'Top'#2'x'#5'Width'#3
+#163#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#19'LazDocAddP'
+'athButton'#7'OnClick'#7#24'LazDocAddPathButtonClick'#8'TabOrder'#2#1#0#0#7
+'TButton'#22'LazDocDeletePathButton'#22'AnchorSideLeft.Control'#7#19'LazDocA'
+'ddPathButton'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Contr'
+'ol'#7#19'LazDocAddPathButton'#4'Left'#3#179#0#6'Height'#2#31#3'Top'#2'x'#5
+'Width'#3#180#0#8'AutoSize'#9#18'BorderSpacing.Left'#2#10#7'Caption'#6#22'La'
+'zDocDeletePathButton'#7'OnClick'#7#27'LazDocDeletePathButtonClick'#8'TabOrd'
+'er'#2#2#0#0#7'TButton'#18'LazDocBrowseButton'#19'AnchorSideLeft.Side'#7#9'a'
+'srBottom'#21'AnchorSideTop.Control'#7#14'LazDocPathEdit'#23'AnchorSideRight'
+'.Control'#7#19'LazDocPathsGroupBox'#20'AnchorSideRight.Side'#7#9'asrBottom'
+#24'AnchorSideBottom.Control'#7#14'LazDocPathEdit'#21'AnchorSideBottom.Side'
+#7#9'asrBottom'#4'Left'#3#236#1#6'Height'#2#23#3'Top'#3#157#0#5'Width'#2#24#7
+'Anchors'#11#5'akTop'#7'akRight'#8'akBottom'#0#19'BorderSpacing.Right'#2#6#7
+'Caption'#6#3'...'#7'OnClick'#7#23'LazDocBrowseButtonClick'#8'TabOrder'#2#3#0
+#0#5'TEdit'#14'LazDocPathEdit'#22'AnchorSideLeft.Control'#7#19'LazDocPathsGr'
+'oupBox'#21'AnchorSideTop.Control'#7#19'LazDocAddPathButton'#18'AnchorSideTo'
+'p.Side'#7#9'asrBottom'#23'AnchorSideRight.Control'#7#18'LazDocBrowseButton'
+#4'Left'#2#6#6'Height'#2#23#3'Top'#3#157#0#5'Width'#3#230#1#7'Anchors'#11#5
+'akTop'#6'akLeft'#7'akRight'#0#18'BorderSpacing.Left'#2#6#17'BorderSpacing.T'
+'op'#2#6#20'BorderSpacing.Bottom'#2#6#8'TabOrder'#2#4#4'Text'#6#14'LazDocPat'
+'hEdit'#0#0#0#0#0#12'TButtonPanel'#11'ButtonPanel'#4'Left'#2#6#6'Height'#2'('
+#3'Top'#3#239#1#5'Width'#3#18#2#5'Align'#7#8'alBottom'#8'AutoSize'#9#8'TabOr'
+'der'#2#1#11'ShowButtons'#11#4'pbOK'#8'pbCancel'#6'pbHelp'#0#0#0#22'TSelectD'
+'irectoryDialog'#21'SelectDirectoryDialog'#11'FilterIndex'#2#0#4'left'#3#232
+#1#3'top'#2#8#0#0#0
+'acing.Bottom'#2#6#9'PageIndex'#2#0#8'TabOrder'#2#0#0#5'TPage'#9'FilesPage'#7
+'Caption'#6#9'FilesPage'#0#0#5'TPage'#11'DesktopPage'#7'Caption'#6#11'Deskto'
+'pPage'#0#0#5'TPage'#11'WindowsPage'#7'Caption'#6#11'WindowsPage'#0#0#5'TPag'
+'e'#14'FormEditorPage'#7'Caption'#6#14'FormEditorPage'#0#0#5'TPage'#19'Objec'
+'tInspectorPage'#7'Caption'#6#19'ObjectInspectorPage'#0#0#5'TPage'#10'Backup'
+'Page'#7'Caption'#6#10'BackupPage'#0#0#5'TPage'#10'NamingPage'#7'Caption'#6
+#10'NamingPage'#0#0#5'TPage'#10'LazDocPage'#7'Caption'#6#10'LazDocPage'#0#0#0
+#12'TButtonPanel'#11'ButtonPanel'#4'Left'#2#6#6'Height'#2'('#3'Top'#3#239#1#5
+'Width'#3#18#2#5'Align'#7#8'alBottom'#8'AutoSize'#9#8'TabOrder'#2#1#11'ShowB'
+'uttons'#11#4'pbOK'#8'pbCancel'#6'pbHelp'#0#0#0#0
]);

View File

@ -41,7 +41,8 @@ uses
LazarusIDEStrConsts, TransferMacros, LazConf, ExtToolDialog, IDEProcs,
IDEOptionDefs, InputHistory, EditorOptions, IDETranslations, ButtonPanel,
EnvironmentOpts,
options_files, options_desktop, options_window, options_formed, options_oi;
options_files, options_desktop, options_window, options_formed, options_oi,
options_backup, options_naming, options_fpdoc;
type
{ TEnvironmentOptionsDialog: EnvironmentOptionsDialog for environment options }
@ -72,49 +73,8 @@ type
BackupPage: TPage;
NamingPage: TPage;
LazDocPage: TPage;
SelectDirectoryDialog: TSelectDirectoryDialog;
// lazdoc settings
LazDocBrowseButton: TButton;
LazDocPathEdit: TEdit;
LazDocDeletePathButton: TButton;
LazDocAddPathButton: TButton;
LazDocPathsGroupBox: TGroupBox;
LazDocListBox: TListBox;
// backup
BackupHelpLabel: TLabel;
BackupProjectGroupBox: TGroupBox;
BakProjTypeRadioGroup: TRadioGroup;
BakProjAddExtLabel: TLabel;
BakProjAddExtComboBox: TComboBox;
BakProjMaxCounterLabel: TLabel;
BakProjMaxCounterComboBox: TComboBox;
BakProjSubDirLabel: TLabel;
BakProjSubDirComboBox: TComboBox;
BackupOtherGroupBox: TGroupBox;
BakOtherTypeRadioGroup: TRadioGroup;
BakOtherAddExtLabel: TLabel;
BakOtherAddExtComboBox: TComboBox;
BakOtherMaxCounterLabel: TLabel;
BakOtherMaxCounterComboBox: TComboBox;
BakOtherSubDirLabel: TLabel;
BakOtherSubDirComboBox: TComboBox;
// naming conventions
PascalFileExtRadiogroup: TRadioGroup;
CharCaseFileActionRadioGroup: TRadioGroup;
AmbiguousFileActionRadioGroup: TRadioGroup;
procedure BakTypeRadioGroupClick(Sender: TObject);
procedure HelpButtonClick(Sender: TObject);
procedure LazDocAddPathButtonClick(Sender: TObject);
procedure LazDocBrowseButtonClick(Sender: TObject);
procedure LazDocDeletePathButtonClick(Sender: TObject);
procedure NotebookChangeBounds(Sender: TObject);
procedure OkButtonClick(Sender: TObject);
procedure CancelButtonClick(Sender: TObject);
private
@ -125,6 +85,9 @@ type
WindowOptionsFrame: TWindowOptionsFrame;
FormEditorOptionsFrame: TFormEditorOptionsFrame;
OIOptionsFrame: TOIOptionsFrame;
BackupOptionsFrame: TBackupOptionsFrame;
NamingOptionsFrame: TNamingOptionsFrame;
FpDocOptionsFrame: TFpDocOptionsFrame;
procedure SetupFrame(AFrame: TAbstractOptionsFrame; APage: TPage);
@ -159,20 +122,13 @@ implementation
uses
IDEContextHelpEdit;
{ TEnvironmentOptions }
const
EnvOptsConfFileName='environmentoptions.xml';
BakMaxCounterInfiniteTxt = 'infinite';
{ TEnvironmentOptionsDialog }
constructor TEnvironmentOptionsDialog.Create(TheOwner: TComponent);
begin
inherited Create(TheOwner);
IDEDialogLayoutList.ApplyLayout(Self,Width,Height);
Caption:=lisMenuGeneralOptions;
Caption := lisMenuGeneralOptions;
NoteBook.PageIndex:=0;
@ -204,109 +160,8 @@ end;
procedure TEnvironmentOptionsDialog.SetupBackupPage(Page: integer);
begin
NoteBook.Page[Page].Caption := dlgEnvBckup;
BackupHelpLabel.Caption:=dlgEnvBackupHelpNote;
BackupProjectGroupBox.Caption:=dlgProjFiles;
with BakProjTypeRadioGroup do begin
Caption:=dlgEnvType;
with Items do begin
BeginUpdate;
Add(lisNoBackupFiles);
Add(dlgSmbFront);
Add(dlgSmbBehind);
Add(dlgSmbCounter);
Add(dlgCustomExt);
Add(dlgBckUpSubDir);
EndUpdate;
end;
end;
BakProjAddExtLabel.Caption:=dlgEdCustomExt;
with BakProjAddExtComboBox.Items do begin
BeginUpdate;
Clear;
Add('bak');
Add('old');
EndUpdate;
end;
BakProjMaxCounterLabel.Caption:=dlgMaxCntr;
with BakProjMaxCounterComboBox.Items do begin
BeginUpdate;
Clear;
Add('1');
Add('2');
Add('3');
Add('5');
Add('9');
Add(BakMaxCounterInfiniteTxt);
EndUpdate;
end;
BakProjSubDirLabel.Caption:=dlgEdBSubDir;
BakProjSubDirComboBox.Text:='';
with BakProjSubDirComboBox.Items do begin
BeginUpdate;
Clear;
Add(dlgBakNoSubDirectory);
Add('backup');
EndUpdate;
end;
BackupOtherGroupBox.Caption:=dlgEnvOtherFiles;
with BakOtherTypeRadioGroup do begin
Caption:=dlgEnvType;
with Items do begin
BeginUpdate;
Add(lisNoBackupFiles);
Add(dlgSmbFront);
Add(dlgSmbBehind);
Add(dlgSmbCounter);
Add(dlgCustomExt);
Add(dlgBckUpSubDir);
EndUpdate;
end;
end;
BakOtherAddExtLabel.Caption:=dlgEdCustomExt;
with BakOtherAddExtComboBox.Items do begin
BeginUpdate;
Add('bak');
Add('old');
EndUpdate;
end;
BakOtherMaxCounterLabel.Caption:=dlgMaxCntr;
with BakOtherMaxCounterComboBox.Items do begin
BeginUpdate;
Clear;
Add('1');
Add('2');
Add('3');
Add('5');
Add('9');
Add(BakMaxCounterInfiniteTxt);
EndUpdate;
end;
BakOtherSubDirLabel.Caption:=dlgEdBSubDir;
with BakOtherSubDirComboBox.Items do begin
BeginUpdate;
Clear;
Add(dlgBakNoSubDirectory);
Add('backup');
EndUpdate;
end;
BackupOptionsFrame := TBackupOptionsFrame.Create(Self);
SetupFrame(BackupOptionsFrame, NoteBook.Page[Page]);
end;
procedure TEnvironmentOptionsDialog.SetupFrame(AFrame: TAbstractOptionsFrame; APage: TPage);
@ -360,74 +215,15 @@ begin
end;
procedure TEnvironmentOptionsDialog.SetupNamingPage(Page: integer);
var
pe: TPascalExtType;
begin
NoteBook.Page[Page].Caption := dlgNaming;
with PascalFileExtRadiogroup do begin
Caption:=dlgPasExt;
with Items do begin
BeginUpdate;
for pe:=Low(TPascalExtType) to High(TPascalExtType) do
if pe<>petNone then
Add(PascalExtension[pe]);
EndUpdate;
end;
PascalFileExtRadiogroup.Columns:=PascalFileExtRadiogroup.Items.Count;
end;
with CharcaseFileActionRadioGroup do begin
Caption:=dlgCharCaseFileAct;
with Items do begin
BeginUpdate;
Add(dlgEnvAsk);
Add(dlgAutoRen);
Add(dlgnoAutomaticRenaming);
EndUpdate;
end;
end;
with AmbiguousFileActionRadioGroup do begin
Caption:=dlgAmbigFileAct;
with Items do begin
BeginUpdate;
Add(dlgEnvAsk);
Add(dlgAutoDel);
Add(dlgAutoRen);
Add(dlgAmbigWarn);
Add(dlgIgnoreVerb);
EndUpdate;
end;
end;
NamingOptionsFrame := TNamingOptionsFrame.Create(Self);
SetupFrame(NamingOptionsFrame, NoteBook.Page[Page]);
end;
procedure TEnvironmentOptionsDialog.SetupLazDocPage(Page: integer);
begin
NoteBook.Page[Page].Caption := lisFPDocEditor;
LazDocPathsGroupBox.Caption := lisCodeHelpPathsGroupBox;
LazDocAddPathButton.Caption := lisCodeHelpAddPathButton;
LazDocDeletePathButton.Caption := lisCodeHelpDeletePathButton;
LazDocPathEdit.Clear;
end;
procedure TEnvironmentOptionsDialog.BakTypeRadioGroupClick(Sender: TObject);
var i: integer;
begin
i:=TRadioGroup(Sender).ItemIndex;
if Sender=BakProjTypeRadioGroup then begin
BakProjAddExtComboBox.Enabled:=(i=4);
BakProjAddExtLabel.Enabled:=BakProjAddExtComboBox.Enabled;
BakProjMaxCounterComboBox.Enabled:=(i=3);
BakProjMaxCounterLabel.EnableD:=BakProjMaxCounterComboBox.Enabled;
end else begin
BakOtherAddExtComboBox.Enabled:=(i=4);
BakOtherAddExtLabel.Enabled:=BakOtherAddExtComboBox.Enabled;
BakOtherMaxCounterComboBox.Enabled:=(i=3);
BakOtherMaxCounterLabel.EnableD:=BakOtherMaxCounterComboBox.Enabled;
end;
FpDocOptionsFrame := TFpDocOptionsFrame .Create(Self);
SetupFrame(FpDocOptionsFrame, NoteBook.Page[Page]);
end;
procedure TEnvironmentOptionsDialog.HelpButtonClick(Sender: TObject);
@ -435,45 +231,21 @@ begin
ShowContextHelpForIDE(Self);
end;
procedure TEnvironmentOptionsDialog.LazDocAddPathButtonClick(Sender: TObject);
begin
if LazDocPathEdit.Text <> '' then
LazDocListBox.Items.Add(LazDocPathEdit.Text);
end;
procedure TEnvironmentOptionsDialog.LazDocBrowseButtonClick(Sender: TObject);
begin
if SelectDirectoryDialog.Execute then
LazDocPathEdit.Text := SelectDirectoryDialog.FileName;
end;
procedure TEnvironmentOptionsDialog.LazDocDeletePathButtonClick(Sender: TObject
);
begin
LazDocListBox.Items.Delete(LazDocListBox.ItemIndex);
end;
procedure TEnvironmentOptionsDialog.NotebookChangeBounds(Sender: TObject);
begin
end;
procedure TEnvironmentOptionsDialog.OkButtonClick(Sender: TObject);
begin
if not CheckValues then exit;
if not CheckValues then
Exit;
IDEDialogLayoutList.SaveLayout(Self);
ModalResult:=mrOk;
ModalResult := mrOk;
end;
procedure TEnvironmentOptionsDialog.CancelButtonClick(Sender: TObject);
begin
IDEDialogLayoutList.SaveLayout(Self);
ModalResult:=mrCancel;
ModalResult := mrCancel;
end;
procedure TEnvironmentOptionsDialog.ReadSettings(AnEnvironmentOptions: TEnvironmentOptions);
var
i: integer;
begin
with AnEnvironmentOptions do
begin
@ -492,58 +264,14 @@ begin
// Form editor
FormEditorOptionsFrame.ReadSettings(AnEnvironmentOptions);
// backup
with BackupInfoProjectFiles do begin
case BackupType of
bakNone: BakProjTypeRadioGroup.ItemIndex:=0;
bakSymbolInFront: BakProjTypeRadioGroup.ItemIndex:=1;
bakSymbolBehind: BakProjTypeRadioGroup.ItemIndex:=2;
bakCounter: BakProjTypeRadioGroup.ItemIndex:=3;
bakUserDefinedAddExt: BakProjTypeRadioGroup.ItemIndex:=4;
bakSameName: BakProjTypeRadioGroup.ItemIndex:=5;
end;
SetComboBoxText(BakProjAddExtComboBox,AdditionalExtension);
if MaxCounter<=0 then
SetComboBoxText(BakProjMaxCounterComboBox,BakMaxCounterInfiniteTxt)
else
SetComboBoxText(BakProjMaxCounterComboBox,IntToStr(MaxCounter));
if SubDirectory<>'' then
SetComboBoxText(BakProjSubDirComboBox,SubDirectory)
else
SetComboBoxText(BakProjSubDirComboBox,dlgBakNoSubDirectory);
end;
BakTypeRadioGroupClick(BakProjTypeRadioGroup);
with BackupInfoOtherFiles do begin
case BackupType of
bakNone: BakOtherTypeRadioGroup.ItemIndex:=0;
bakSymbolInFront: BakOtherTypeRadioGroup.ItemIndex:=1;
bakSymbolBehind: BakOtherTypeRadioGroup.ItemIndex:=2;
bakCounter: BakOtherTypeRadioGroup.ItemIndex:=3;
bakUserDefinedAddExt: BakOtherTypeRadioGroup.ItemIndex:=4;
bakSameName: BakOtherTypeRadioGroup.ItemIndex:=5;
end;
SetComboBoxText(BakOtherAddExtComboBox,AdditionalExtension);
if MaxCounter<=0 then
SetComboBoxText(BakOtherMaxCounterComboBox,BakMaxCounterInfiniteTxt)
else
SetComboBoxText(BakOtherMaxCounterComboBox,IntToStr(MaxCounter));
if SubDirectory<>'' then
SetComboBoxText(BakOtherSubDirComboBox,SubDirectory)
else
SetComboBoxText(BakOtherSubDirComboBox,dlgBakNoSubDirectory);
end;
BakTypeRadioGroupClick(BakOtherTypeRadioGroup);
// naming
for i:=0 to PascalFileExtRadiogroup.Items.Count-1 do
if PascalFileExtRadiogroup.Items[i]=PascalExtension[PascalFileExtension]
then PascalFileExtRadiogroup.ItemIndex:=i;
// Backup
BackupOptionsFrame.ReadSettings(AnEnvironmentOptions);
// naming
NamingOptionsFrame.ReadSettings(AnEnvironmentOptions);
CharCaseFileActionRadioGroup.ItemIndex := ord(CharCaseFileAction);
AmbiguousFileActionRadioGroup.ItemIndex := ord(AmbiguousFileAction);
//lazdoc
SplitString(LazDocPaths,';',LazDocListBox.Items);
FpDocOptionsFrame.ReadSettings(AnEnvironmentOptions);
end;
end;
@ -566,57 +294,14 @@ begin
// Form editor
FormEditorOptionsFrame.WriteSettings(AnEnvironmentOptions);
// backup
with BackupInfoProjectFiles do begin
case BakProjTypeRadioGroup.ItemIndex of
0: BackupType:=bakNone;
1: BackupType:=bakSymbolInFront;
2: BackupType:=bakSymbolBehind;
3: BackupType:=bakCounter;
4: BackupType:=bakUserDefinedAddExt;
5: BackupType:=bakSameName;
end;
AdditionalExtension:=BakProjAddExtComboBox.Text;
if BakProjMaxCounterComboBox.Text=BakMaxCounterInfiniteTxt then
MaxCounter:=0
else
MaxCounter:=StrToIntDef(BakProjMaxCounterComboBox.Text,1);
SubDirectory:=BakProjSubDirComboBox.Text;
if SubDirectory=dlgBakNoSubDirectory then
SubDirectory:='';
end;
with BackupInfoOtherFiles do begin
case BakOtherTypeRadioGroup.ItemIndex of
0: BackupType:=bakNone;
1: BackupType:=bakSymbolInFront;
2: BackupType:=bakSymbolBehind;
3: BackupType:=bakCounter;
4: BackupType:=bakUserDefinedAddExt;
5: BackupType:=bakSameName;
end;
AdditionalExtension:=BakOtherAddExtComboBox.Text;
if BakOtherMaxCounterComboBox.Text=BakMaxCounterInfiniteTxt then
MaxCounter:=0
else
MaxCounter:=StrToIntDef(BakOtherMaxCounterComboBox.Text,1);
if BakOtherSubDirComboBox.Text=dlgBakNoSubDirectory then
SubDirectory:=''
else
SubDirectory:=BakOtherSubDirComboBox.Text;
end;
// Backup
BackupOptionsFrame.WriteSettings(AnEnvironmentOptions);
// naming
if PascalFileExtRadiogroup.ItemIndex>=0 then
PascalFileExtension:=PascalExtToType(
PascalFileExtRadiogroup.Items[PascalFileExtRadiogroup.ItemIndex])
else
PascalFileExtension:=petPAS;
NamingOptionsFrame.WriteSettings(AnEnvironmentOptions);
//lazdoc
LazDocPaths:=StringListToText(LazDocListBox.Items,';',true);
CharcaseFileAction := TCharCaseFileAction(CharcaseFileActionRadioGroup.ItemIndex);
AmbiguousFileAction := TAmbiguousFileAction(AmbiguousFileActionRadioGroup.ItemIndex);
FpDocOptionsFrame.WriteSettings(AnEnvironmentOptions);
end;
end;
@ -628,10 +313,7 @@ end;
function TEnvironmentOptionsDialog.CheckValues: boolean;
begin
Result:=false;
if not FilesOptionsFrame.Check then
Exit;
Result:=true;
Result := FilesOptionsFrame.Check;
end;
procedure TEnvironmentOptionsDialog.LoadEnvironmentSettings(Sender: TObject;

View File

@ -0,0 +1,280 @@
inherited BackupOptionsFrame: TBackupOptionsFrame
Height = 324
Width = 562
ClientHeight = 324
ClientWidth = 562
TabOrder = 0
Visible = False
DesignLeft = 22
DesignTop = 29
object BackupHelpLabel: TLabel[0]
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = Owner
AnchorSideRight.Side = asrBottom
Height = 14
Width = 81
Caption = 'BackupHelpLabel'
ParentColor = False
end
object BackupProjectGroupBox: TGroupBox[1]
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = BackupHelpLabel
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
Height = 141
Top = 20
Width = 562
Anchors = [akTop, akLeft, akRight]
AutoSize = True
BorderSpacing.Top = 6
Caption = 'BackupProjectGroupBox'
ClientHeight = 123
ClientWidth = 558
TabOrder = 0
object BakProjAddExtLabel: TLabel
AnchorSideLeft.Control = BakProjAddExtComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakProjAddExtComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupProjectGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 45
Width = 440
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakProjAddExtLabel'
ParentColor = False
end
object BakProjMaxCounterLabel: TLabel
AnchorSideLeft.Control = BakProjMaxCounterComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakProjMaxCounterComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupProjectGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 72
Width = 440
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakProjMaxCounterLabel'
ParentColor = False
end
object BakProjSubDirLabel: TLabel
AnchorSideLeft.Control = BakProjSubDirComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakProjSubDirComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupProjectGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 99
Width = 440
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakProjSubDirLabel'
ParentColor = False
end
object BakProjTypeRadioGroup: TRadioGroup
AnchorSideRight.Control = BackupProjectGroupBox
AnchorSideRight.Side = asrBottom
Left = 6
Height = 30
Top = 6
Width = 546
Anchors = [akTop, akLeft, akRight]
AutoFill = True
AutoSize = True
BorderSpacing.Around = 6
Caption = 'BakProjTypeRadioGroup'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 2
Columns = 2
Constraints.MinHeight = 30
OnClick = BakTypeRadioGroupClick
TabOrder = 0
end
object BakProjAddExtComboBox: TComboBox
AnchorSideTop.Control = BakProjTypeRadioGroup
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 42
Width = 100
AutoSelect = True
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 1
Text = 'BakProjAddExtComboBox'
end
object BakProjMaxCounterComboBox: TComboBox
AnchorSideTop.Control = BakProjAddExtComboBox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 69
Width = 100
AutoSelect = True
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 2
Text = 'BakProjMaxCounterComboBox'
end
object BakProjSubDirComboBox: TComboBox
AnchorSideTop.Control = BakProjMaxCounterComboBox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 96
Width = 100
AutoSelect = True
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 3
Text = 'BakProjSubDirComboBox'
end
end
object BackupOtherGroupBox: TGroupBox[2]
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = BackupProjectGroupBox
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
Height = 141
Top = 167
Width = 562
Anchors = [akTop, akLeft, akRight]
AutoSize = True
BorderSpacing.Top = 6
Caption = 'BackupOtherGroupBox'
ClientHeight = 123
ClientWidth = 558
TabOrder = 1
object BakOtherAddExtLabel: TLabel
AnchorSideLeft.Control = BakOtherAddExtComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakOtherAddExtComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupOtherGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 45
Width = 440
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakOtherAddExtLabel'
ParentColor = False
end
object BakOtherMaxCounterLabel: TLabel
AnchorSideLeft.Control = BakOtherMaxCounterComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakOtherMaxCounterComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupOtherGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 72
Width = 440
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakOtherMaxCounterLabel'
ParentColor = False
end
object BakOtherSubDirLabel: TLabel
AnchorSideLeft.Control = BakOtherSubDirComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BakOtherSubDirComboBox
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BackupOtherGroupBox
AnchorSideRight.Side = asrBottom
Left = 112
Height = 14
Top = 99
Width = 440
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
Caption = 'BakOtherSubDirLabel'
ParentColor = False
end
object BakOtherTypeRadioGroup: TRadioGroup
AnchorSideRight.Control = BackupOtherGroupBox
AnchorSideRight.Side = asrBottom
Left = 6
Height = 30
Top = 6
Width = 546
Anchors = [akTop, akLeft, akRight]
AutoFill = True
AutoSize = True
BorderSpacing.Around = 6
Caption = 'BakOtherTypeRadioGroup'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 2
Columns = 2
Constraints.MinHeight = 30
OnClick = BakTypeRadioGroupClick
TabOrder = 0
end
object BakOtherAddExtComboBox: TComboBox
AnchorSideTop.Control = BakOtherTypeRadioGroup
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 42
Width = 100
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 1
Text = 'BakOtherAddExtComboBox'
end
object BakOtherMaxCounterComboBox: TComboBox
AnchorSideTop.Control = BakOtherAddExtComboBox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 69
Width = 100
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 2
Text = 'BakOtherMaxCounterComboBox'
end
object BakOtherSubDirComboBox: TComboBox
AnchorSideTop.Control = BakOtherMaxCounterComboBox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 21
Top = 96
Width = 100
BorderSpacing.Around = 6
ItemHeight = 13
MaxLength = -1
TabOrder = 3
Text = 'BakOtherSubDirComboBox'
end
end
end

View File

@ -0,0 +1,112 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TBackupOptionsFrame','FORMDATA',[
'TPF0'#241#19'TBackupOptionsFrame'#18'BackupOptionsFrame'#6'Height'#3'D'#1#5
+'Width'#3'2'#2#12'ClientHeight'#3'D'#1#11'ClientWidth'#3'2'#2#8'TabOrder'#2#0
+#7'Visible'#8#10'DesignLeft'#2#22#9'DesignTop'#2#29#0#242#2#0#6'TLabel'#15'B'
+'ackupHelpLabel'#22'AnchorSideLeft.Control'#7#5'Owner'#21'AnchorSideTop.Cont'
+'rol'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asrBottom'#6'Height'#2#14#5'Wi'
+'dth'#2'Q'#7'Caption'#6#15'BackupHelpLabel'#11'ParentColor'#8#0#0#242#2#1#9
+'TGroupBox'#21'BackupProjectGroupBox'#22'AnchorSideLeft.Control'#7#5'Owner'
+#21'AnchorSideTop.Control'#7#15'BackupHelpLabel'#18'AnchorSideTop.Side'#7#9
+'asrBottom'#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.Side'#7
+#9'asrBottom'#6'Height'#3#141#0#3'Top'#2#20#5'Width'#3'2'#2#7'Anchors'#11#5
+'akTop'#6'akLeft'#7'akRight'#0#8'AutoSize'#9#17'BorderSpacing.Top'#2#6#7'Cap'
+'tion'#6#21'BackupProjectGroupBox'#12'ClientHeight'#2'{'#11'ClientWidth'#3'.'
+#2#8'TabOrder'#2#0#0#6'TLabel'#18'BakProjAddExtLabel'#22'AnchorSideLeft.Cont'
+'rol'#7#21'BakProjAddExtComboBox'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21
+'AnchorSideTop.Control'#7#21'BakProjAddExtComboBox'#18'AnchorSideTop.Side'#7
+#9'asrCenter'#23'AnchorSideRight.Control'#7#21'BackupProjectGroupBox'#20'Anc'
+'horSideRight.Side'#7#9'asrBottom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2'-'#5
+'Width'#3#184#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpaci'
+'ng.Around'#2#6#7'Caption'#6#18'BakProjAddExtLabel'#11'ParentColor'#8#0#0#6
+'TLabel'#22'BakProjMaxCounterLabel'#22'AnchorSideLeft.Control'#7#25'BakProjM'
+'axCounterComboBox'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.'
+'Control'#7#25'BakProjMaxCounterComboBox'#18'AnchorSideTop.Side'#7#9'asrCent'
+'er'#23'AnchorSideRight.Control'#7#21'BackupProjectGroupBox'#20'AnchorSideRi'
+'ght.Side'#7#9'asrBottom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2'H'#5'Width'#3
+#184#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'
+#2#6#7'Caption'#6#22'BakProjMaxCounterLabel'#11'ParentColor'#8#0#0#6'TLabel'
+#18'BakProjSubDirLabel'#22'AnchorSideLeft.Control'#7#21'BakProjSubDirComboBo'
+'x'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'#7#21'Ba'
+'kProjSubDirComboBox'#18'AnchorSideTop.Side'#7#9'asrCenter'#23'AnchorSideRig'
+'ht.Control'#7#21'BackupProjectGroupBox'#20'AnchorSideRight.Side'#7#9'asrBot'
+'tom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2'c'#5'Width'#3#184#1#7'Anchors'#11
+#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#18
+'BakProjSubDirLabel'#11'ParentColor'#8#0#0#11'TRadioGroup'#21'BakProjTypeRad'
+'ioGroup'#23'AnchorSideRight.Control'#7#21'BackupProjectGroupBox'#20'AnchorS'
+'ideRight.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#30#3'Top'#2#6#5'Width'
+#3'"'#2#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#8'AutoFill'#9#8'AutoSi'
+'ze'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#21'BakProjTypeRadioGroup'#28
+'ChildSizing.LeftRightSpacing'#2#6#28'ChildSizing.TopBottomSpacing'#2#6#29'C'
+'hildSizing.EnlargeHorizontal'#7#24'crsHomogenousChildResize'#27'ChildSizing'
+'.EnlargeVertical'#7#24'crsHomogenousChildResize'#28'ChildSizing.ShrinkHoriz'
+'ontal'#7#14'crsScaleChilds'#26'ChildSizing.ShrinkVertical'#7#14'crsScaleChi'
+'lds'#18'ChildSizing.Layout'#7#29'cclLeftToRightThenTopToBottom'#27'ChildSiz'
+'ing.ControlsPerLine'#2#2#7'Columns'#2#2#21'Constraints.MinHeight'#2#30#7'On'
+'Click'#7#22'BakTypeRadioGroupClick'#8'TabOrder'#2#0#0#0#9'TComboBox'#21'Bak'
+'ProjAddExtComboBox'#21'AnchorSideTop.Control'#7#21'BakProjTypeRadioGroup'#18
+'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#21#3'Top'#2'*'#5
+'Width'#2'd'#10'AutoSelect'#9#20'BorderSpacing.Around'#2#6#10'ItemHeight'#2
+#13#9'MaxLength'#2#255#8'TabOrder'#2#1#4'Text'#6#21'BakProjAddExtComboBox'#0
+#0#9'TComboBox'#25'BakProjMaxCounterComboBox'#21'AnchorSideTop.Control'#7#21
+'BakProjAddExtComboBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6
+'Height'#2#21#3'Top'#2'E'#5'Width'#2'd'#10'AutoSelect'#9#20'BorderSpacing.Ar'
+'ound'#2#6#10'ItemHeight'#2#13#9'MaxLength'#2#255#8'TabOrder'#2#2#4'Text'#6
+#25'BakProjMaxCounterComboBox'#0#0#9'TComboBox'#21'BakProjSubDirComboBox'#21
+'AnchorSideTop.Control'#7#25'BakProjMaxCounterComboBox'#18'AnchorSideTop.Sid'
+'e'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#21#3'Top'#2'`'#5'Width'#2'd'#10'A'
+'utoSelect'#9#20'BorderSpacing.Around'#2#6#10'ItemHeight'#2#13#9'MaxLength'#2
+#255#8'TabOrder'#2#3#4'Text'#6#21'BakProjSubDirComboBox'#0#0#0#242#2#2#9'TGr'
+'oupBox'#19'BackupOtherGroupBox'#22'AnchorSideLeft.Control'#7#5'Owner'#21'An'
+'chorSideTop.Control'#7#21'BackupProjectGroupBox'#18'AnchorSideTop.Side'#7#9
+'asrBottom'#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.Side'#7
+#9'asrBottom'#6'Height'#3#141#0#3'Top'#3#167#0#5'Width'#3'2'#2#7'Anchors'#11
+#5'akTop'#6'akLeft'#7'akRight'#0#8'AutoSize'#9#17'BorderSpacing.Top'#2#6#7'C'
+'aption'#6#19'BackupOtherGroupBox'#12'ClientHeight'#2'{'#11'ClientWidth'#3'.'
+#2#8'TabOrder'#2#1#0#6'TLabel'#19'BakOtherAddExtLabel'#22'AnchorSideLeft.Con'
,'trol'#7#22'BakOtherAddExtComboBox'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21
+'AnchorSideTop.Control'#7#22'BakOtherAddExtComboBox'#18'AnchorSideTop.Side'#7
+#9'asrCenter'#23'AnchorSideRight.Control'#7#19'BackupOtherGroupBox'#20'Ancho'
+'rSideRight.Side'#7#9'asrBottom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2'-'#5'W'
+'idth'#3#184#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacin'
+'g.Around'#2#6#7'Caption'#6#19'BakOtherAddExtLabel'#11'ParentColor'#8#0#0#6
+'TLabel'#23'BakOtherMaxCounterLabel'#22'AnchorSideLeft.Control'#7#26'BakOthe'
+'rMaxCounterComboBox'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTo'
+'p.Control'#7#26'BakOtherMaxCounterComboBox'#18'AnchorSideTop.Side'#7#9'asrC'
+'enter'#23'AnchorSideRight.Control'#7#19'BackupOtherGroupBox'#20'AnchorSideR'
+'ight.Side'#7#9'asrBottom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2'H'#5'Width'#3
+#184#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'
+#2#6#7'Caption'#6#23'BakOtherMaxCounterLabel'#11'ParentColor'#8#0#0#6'TLabel'
+#19'BakOtherSubDirLabel'#22'AnchorSideLeft.Control'#7#22'BakOtherSubDirCombo'
+'Box'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'#7#22
+'BakOtherSubDirComboBox'#18'AnchorSideTop.Side'#7#9'asrCenter'#23'AnchorSide'
+'Right.Control'#7#19'BackupOtherGroupBox'#20'AnchorSideRight.Side'#7#9'asrBo'
+'ttom'#4'Left'#2'p'#6'Height'#2#14#3'Top'#2'c'#5'Width'#3#184#1#7'Anchors'#11
+#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#19
+'BakOtherSubDirLabel'#11'ParentColor'#8#0#0#11'TRadioGroup'#22'BakOtherTypeR'
+'adioGroup'#23'AnchorSideRight.Control'#7#19'BackupOtherGroupBox'#20'AnchorS'
+'ideRight.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#30#3'Top'#2#6#5'Width'
+#3'"'#2#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#8'AutoFill'#9#8'AutoSi'
+'ze'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#22'BakOtherTypeRadioGroup'
+#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildSizing.TopBottomSpacing'#2#6#29
+'ChildSizing.EnlargeHorizontal'#7#24'crsHomogenousChildResize'#27'ChildSizin'
+'g.EnlargeVertical'#7#24'crsHomogenousChildResize'#28'ChildSizing.ShrinkHori'
+'zontal'#7#14'crsScaleChilds'#26'ChildSizing.ShrinkVertical'#7#14'crsScaleCh'
+'ilds'#18'ChildSizing.Layout'#7#29'cclLeftToRightThenTopToBottom'#27'ChildSi'
+'zing.ControlsPerLine'#2#2#7'Columns'#2#2#21'Constraints.MinHeight'#2#30#7'O'
+'nClick'#7#22'BakTypeRadioGroupClick'#8'TabOrder'#2#0#0#0#9'TComboBox'#22'Ba'
+'kOtherAddExtComboBox'#21'AnchorSideTop.Control'#7#22'BakOtherTypeRadioGroup'
+#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#21#3'Top'#2'*'
+#5'Width'#2'd'#20'BorderSpacing.Around'#2#6#10'ItemHeight'#2#13#9'MaxLength'
+#2#255#8'TabOrder'#2#1#4'Text'#6#22'BakOtherAddExtComboBox'#0#0#9'TComboBox'
+#26'BakOtherMaxCounterComboBox'#21'AnchorSideTop.Control'#7#22'BakOtherAddEx'
+'tComboBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2#21
+#3'Top'#2'E'#5'Width'#2'd'#20'BorderSpacing.Around'#2#6#10'ItemHeight'#2#13#9
+'MaxLength'#2#255#8'TabOrder'#2#2#4'Text'#6#26'BakOtherMaxCounterComboBox'#0
+#0#9'TComboBox'#22'BakOtherSubDirComboBox'#21'AnchorSideTop.Control'#7#26'Ba'
+'kOtherMaxCounterComboBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#2#6
+#6'Height'#2#21#3'Top'#2'`'#5'Width'#2'd'#20'BorderSpacing.Around'#2#6#10'It'
+'emHeight'#2#13#9'MaxLength'#2#255#8'TabOrder'#2#3#4'Text'#6#22'BakOtherSubD'
+'irComboBox'#0#0#0#0
]);

View File

@ -0,0 +1,303 @@
{
***************************************************************************
* *
* This source is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This code 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 *
* General Public License for more details. *
* *
* A copy of the GNU General Public License is available on the World *
* Wide Web at <http://www.gnu.org/copyleft/gpl.html>. You can also *
* obtain it by writing to the Free Software Foundation, *
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
* *
***************************************************************************
}
unit options_backup;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, StdCtrls, ExtCtrls,
EnvironmentOpts, LazarusIDEStrConsts;
type
{ TBackupOptionsFrame }
TBackupOptionsFrame = class(TAbstractOptionsFrame)
BackupHelpLabel: TLabel;
BackupOtherGroupBox: TGroupBox;
BackupProjectGroupBox: TGroupBox;
BakOtherAddExtComboBox: TComboBox;
BakOtherAddExtLabel: TLabel;
BakOtherMaxCounterComboBox: TComboBox;
BakOtherMaxCounterLabel: TLabel;
BakOtherSubDirComboBox: TComboBox;
BakOtherSubDirLabel: TLabel;
BakOtherTypeRadioGroup: TRadioGroup;
BakProjAddExtComboBox: TComboBox;
BakProjAddExtLabel: TLabel;
BakProjMaxCounterComboBox: TComboBox;
BakProjMaxCounterLabel: TLabel;
BakProjSubDirComboBox: TComboBox;
BakProjSubDirLabel: TLabel;
BakProjTypeRadioGroup: TRadioGroup;
procedure BakTypeRadioGroupClick(Sender: TObject);
private
public
function Check: Boolean; override;
function GetTitle: String; override;
procedure Setup; override;
procedure ReadSettings(AOptions: TEnvironmentOptions); override;
procedure WriteSettings(AOptions: TEnvironmentOptions); override;
end;
implementation
{ TBackupOptionsFrame }
procedure TBackupOptionsFrame.BakTypeRadioGroupClick(Sender: TObject);
var
i: integer;
begin
i := TRadioGroup(Sender).ItemIndex;
if Sender=BakProjTypeRadioGroup then
begin
BakProjAddExtComboBox.Enabled:=(i=4);
BakProjAddExtLabel.Enabled:=BakProjAddExtComboBox.Enabled;
BakProjMaxCounterComboBox.Enabled:=(i=3);
BakProjMaxCounterLabel.EnableD:=BakProjMaxCounterComboBox.Enabled;
end else
begin
BakOtherAddExtComboBox.Enabled:=(i=4);
BakOtherAddExtLabel.Enabled:=BakOtherAddExtComboBox.Enabled;
BakOtherMaxCounterComboBox.Enabled:=(i=3);
BakOtherMaxCounterLabel.EnableD:=BakOtherMaxCounterComboBox.Enabled;
end;
end;
function TBackupOptionsFrame.Check: Boolean;
begin
Result := True;
end;
function TBackupOptionsFrame.GetTitle: String;
begin
Result := dlgEnvBckup;
end;
procedure TBackupOptionsFrame.Setup;
begin
BackupHelpLabel.Caption := dlgEnvBackupHelpNote;
BackupProjectGroupBox.Caption := dlgProjFiles;
with BakProjTypeRadioGroup do
begin
Caption := dlgEnvType;
with Items do
begin
BeginUpdate;
Add(lisNoBackupFiles);
Add(dlgSmbFront);
Add(dlgSmbBehind);
Add(dlgSmbCounter);
Add(dlgCustomExt);
Add(dlgBckUpSubDir);
EndUpdate;
end;
end;
BakProjAddExtLabel.Caption := dlgEdCustomExt;
with BakProjAddExtComboBox.Items do
begin
BeginUpdate;
Clear;
Add('bak');
Add('old');
EndUpdate;
end;
BakProjMaxCounterLabel.Caption := dlgMaxCntr;
with BakProjMaxCounterComboBox.Items do
begin
BeginUpdate;
Clear;
Add('1');
Add('2');
Add('3');
Add('5');
Add('9');
Add(BakMaxCounterInfiniteTxt);
EndUpdate;
end;
BakProjSubDirLabel.Caption := dlgEdBSubDir;
BakProjSubDirComboBox.Text:='';
with BakProjSubDirComboBox.Items do
begin
BeginUpdate;
Clear;
Add(dlgBakNoSubDirectory);
Add('backup');
EndUpdate;
end;
BackupOtherGroupBox.Caption := dlgEnvOtherFiles;
with BakOtherTypeRadioGroup do
begin
Caption:=dlgEnvType;
with Items do
begin
BeginUpdate;
Add(lisNoBackupFiles);
Add(dlgSmbFront);
Add(dlgSmbBehind);
Add(dlgSmbCounter);
Add(dlgCustomExt);
Add(dlgBckUpSubDir);
EndUpdate;
end;
end;
BakOtherAddExtLabel.Caption := dlgEdCustomExt;
with BakOtherAddExtComboBox.Items do
begin
BeginUpdate;
Add('bak');
Add('old');
EndUpdate;
end;
BakOtherMaxCounterLabel.Caption := dlgMaxCntr;
with BakOtherMaxCounterComboBox.Items do
begin
BeginUpdate;
Clear;
Add('1');
Add('2');
Add('3');
Add('5');
Add('9');
Add(BakMaxCounterInfiniteTxt);
EndUpdate;
end;
BakOtherSubDirLabel.Caption := dlgEdBSubDir;
with BakOtherSubDirComboBox.Items do
begin
BeginUpdate;
Clear;
Add(dlgBakNoSubDirectory);
Add('backup');
EndUpdate;
end;
end;
procedure TBackupOptionsFrame.ReadSettings(AOptions: TEnvironmentOptions);
begin
with AOptions do
begin
with BackupInfoProjectFiles do
begin
case BackupType of
bakNone: BakProjTypeRadioGroup.ItemIndex:=0;
bakSymbolInFront: BakProjTypeRadioGroup.ItemIndex:=1;
bakSymbolBehind: BakProjTypeRadioGroup.ItemIndex:=2;
bakCounter: BakProjTypeRadioGroup.ItemIndex:=3;
bakUserDefinedAddExt: BakProjTypeRadioGroup.ItemIndex:=4;
bakSameName: BakProjTypeRadioGroup.ItemIndex:=5;
end;
SetComboBoxText(BakProjAddExtComboBox,AdditionalExtension);
if MaxCounter<=0 then
SetComboBoxText(BakProjMaxCounterComboBox,BakMaxCounterInfiniteTxt)
else
SetComboBoxText(BakProjMaxCounterComboBox,IntToStr(MaxCounter));
if SubDirectory<>'' then
SetComboBoxText(BakProjSubDirComboBox,SubDirectory)
else
SetComboBoxText(BakProjSubDirComboBox,dlgBakNoSubDirectory);
end;
BakTypeRadioGroupClick(BakProjTypeRadioGroup);
with BackupInfoOtherFiles do
begin
case BackupType of
bakNone: BakOtherTypeRadioGroup.ItemIndex:=0;
bakSymbolInFront: BakOtherTypeRadioGroup.ItemIndex:=1;
bakSymbolBehind: BakOtherTypeRadioGroup.ItemIndex:=2;
bakCounter: BakOtherTypeRadioGroup.ItemIndex:=3;
bakUserDefinedAddExt: BakOtherTypeRadioGroup.ItemIndex:=4;
bakSameName: BakOtherTypeRadioGroup.ItemIndex:=5;
end;
SetComboBoxText(BakOtherAddExtComboBox,AdditionalExtension);
if MaxCounter<=0 then
SetComboBoxText(BakOtherMaxCounterComboBox,BakMaxCounterInfiniteTxt)
else
SetComboBoxText(BakOtherMaxCounterComboBox,IntToStr(MaxCounter));
if SubDirectory<>'' then
SetComboBoxText(BakOtherSubDirComboBox,SubDirectory)
else
SetComboBoxText(BakOtherSubDirComboBox,dlgBakNoSubDirectory);
end;
BakTypeRadioGroupClick(BakOtherTypeRadioGroup);
end;
end;
procedure TBackupOptionsFrame.WriteSettings(AOptions: TEnvironmentOptions);
begin
with AOptions do
begin
with BackupInfoProjectFiles do
begin
case BakProjTypeRadioGroup.ItemIndex of
0: BackupType:=bakNone;
1: BackupType:=bakSymbolInFront;
2: BackupType:=bakSymbolBehind;
3: BackupType:=bakCounter;
4: BackupType:=bakUserDefinedAddExt;
5: BackupType:=bakSameName;
end;
AdditionalExtension:=BakProjAddExtComboBox.Text;
if BakProjMaxCounterComboBox.Text=BakMaxCounterInfiniteTxt then
MaxCounter:=0
else
MaxCounter:=StrToIntDef(BakProjMaxCounterComboBox.Text,1);
SubDirectory:=BakProjSubDirComboBox.Text;
if SubDirectory=dlgBakNoSubDirectory then
SubDirectory:='';
end;
with BackupInfoOtherFiles do
begin
case BakOtherTypeRadioGroup.ItemIndex of
0: BackupType:=bakNone;
1: BackupType:=bakSymbolInFront;
2: BackupType:=bakSymbolBehind;
3: BackupType:=bakCounter;
4: BackupType:=bakUserDefinedAddExt;
5: BackupType:=bakSameName;
end;
AdditionalExtension:=BakOtherAddExtComboBox.Text;
if BakOtherMaxCounterComboBox.Text=BakMaxCounterInfiniteTxt then
MaxCounter:=0
else
MaxCounter:=StrToIntDef(BakOtherMaxCounterComboBox.Text,1);
if BakOtherSubDirComboBox.Text=dlgBakNoSubDirectory then
SubDirectory:=''
else
SubDirectory:=BakOtherSubDirComboBox.Text;
end;
end;
end;
initialization
{$I options_backup.lrs}
end.

View File

@ -0,0 +1,99 @@
object FpDocOptionsFrame: TFpDocOptionsFrame
Height = 380
Width = 476
ClientHeight = 380
ClientWidth = 476
TabOrder = 0
Visible = False
DesignLeft = 535
DesignTop = 389
object LazDocPathsGroupBox: TGroupBox
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = Owner
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
Height = 196
Width = 476
Align = alTop
AutoSize = True
Caption = 'LazDocPathsGroupBox'
ClientHeight = 178
ClientWidth = 472
TabOrder = 0
object LazDocListBox: TListBox
Left = 6
Height = 108
Top = 6
Width = 460
Align = alTop
BorderSpacing.Around = 6
TabOrder = 0
end
object LazDocAddPathButton: TButton
AnchorSideLeft.Control = LazDocPathsGroupBox
AnchorSideTop.Control = LazDocListBox
AnchorSideTop.Side = asrBottom
Left = 6
Height = 23
Top = 120
Width = 133
AutoSize = True
BorderSpacing.Around = 6
Caption = 'LazDocAddPathButton'
OnClick = LazDocAddPathButtonClick
TabOrder = 1
end
object LazDocDeletePathButton: TButton
AnchorSideLeft.Control = LazDocAddPathButton
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = LazDocAddPathButton
Left = 149
Height = 23
Top = 120
Width = 145
AutoSize = True
BorderSpacing.Left = 10
Caption = 'LazDocDeletePathButton'
OnClick = LazDocDeletePathButtonClick
TabOrder = 2
end
object LazDocBrowseButton: TButton
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = LazDocPathEdit
AnchorSideRight.Control = LazDocPathsGroupBox
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = LazDocPathEdit
AnchorSideBottom.Side = asrBottom
Left = 442
Height = 23
Top = 149
Width = 24
Anchors = [akTop, akRight, akBottom]
BorderSpacing.Right = 6
Caption = '...'
OnClick = LazDocBrowseButtonClick
TabOrder = 3
end
object LazDocPathEdit: TEdit
AnchorSideLeft.Control = LazDocPathsGroupBox
AnchorSideTop.Control = LazDocAddPathButton
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = LazDocBrowseButton
Left = 6
Height = 23
Top = 149
Width = 436
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Left = 6
BorderSpacing.Top = 6
BorderSpacing.Bottom = 6
TabOrder = 4
Text = 'LazDocPathEdit'
end
end
object SelectDirectoryDialog: TSelectDirectoryDialog
FilterIndex = 0
left = 372
top = 8
end
end

View File

@ -0,0 +1,39 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TFpDocOptionsFrame','FORMDATA',[
'TPF0'#18'TFpDocOptionsFrame'#17'FpDocOptionsFrame'#6'Height'#3'|'#1#5'Width'
+#3#220#1#12'ClientHeight'#3'|'#1#11'ClientWidth'#3#220#1#8'TabOrder'#2#0#7'V'
+'isible'#8#10'DesignLeft'#3#23#2#9'DesignTop'#3#133#1#0#9'TGroupBox'#19'LazD'
+'ocPathsGroupBox'#22'AnchorSideLeft.Control'#7#5'Owner'#21'AnchorSideTop.Con'
+'trol'#7#5'Owner'#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.'
+'Side'#7#9'asrBottom'#6'Height'#3#196#0#5'Width'#3#220#1#5'Align'#7#5'alTop'
+#8'AutoSize'#9#7'Caption'#6#19'LazDocPathsGroupBox'#12'ClientHeight'#3#178#0
+#11'ClientWidth'#3#216#1#8'TabOrder'#2#0#0#8'TListBox'#13'LazDocListBox'#4'L'
+'eft'#2#6#6'Height'#2'l'#3'Top'#2#6#5'Width'#3#204#1#5'Align'#7#5'alTop'#20
+'BorderSpacing.Around'#2#6#8'TabOrder'#2#0#0#0#7'TButton'#19'LazDocAddPathBu'
+'tton'#22'AnchorSideLeft.Control'#7#19'LazDocPathsGroupBox'#21'AnchorSideTop'
+'.Control'#7#13'LazDocListBox'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'
+#2#6#6'Height'#2#23#3'Top'#2'x'#5'Width'#3#133#0#8'AutoSize'#9#20'BorderSpac'
+'ing.Around'#2#6#7'Caption'#6#19'LazDocAddPathButton'#7'OnClick'#7#24'LazDoc'
+'AddPathButtonClick'#8'TabOrder'#2#1#0#0#7'TButton'#22'LazDocDeletePathButto'
+'n'#22'AnchorSideLeft.Control'#7#19'LazDocAddPathButton'#19'AnchorSideLeft.S'
+'ide'#7#9'asrBottom'#21'AnchorSideTop.Control'#7#19'LazDocAddPathButton'#4'L'
+'eft'#3#149#0#6'Height'#2#23#3'Top'#2'x'#5'Width'#3#145#0#8'AutoSize'#9#18'B'
+'orderSpacing.Left'#2#10#7'Caption'#6#22'LazDocDeletePathButton'#7'OnClick'#7
+#27'LazDocDeletePathButtonClick'#8'TabOrder'#2#2#0#0#7'TButton'#18'LazDocBro'
+'wseButton'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'
+#7#14'LazDocPathEdit'#23'AnchorSideRight.Control'#7#19'LazDocPathsGroupBox'
+#20'AnchorSideRight.Side'#7#9'asrBottom'#24'AnchorSideBottom.Control'#7#14'L'
+'azDocPathEdit'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3#186#1#6'H'
+'eight'#2#23#3'Top'#3#149#0#5'Width'#2#24#7'Anchors'#11#5'akTop'#7'akRight'#8
+'akBottom'#0#19'BorderSpacing.Right'#2#6#7'Caption'#6#3'...'#7'OnClick'#7#23
+'LazDocBrowseButtonClick'#8'TabOrder'#2#3#0#0#5'TEdit'#14'LazDocPathEdit'#22
+'AnchorSideLeft.Control'#7#19'LazDocPathsGroupBox'#21'AnchorSideTop.Control'
+#7#19'LazDocAddPathButton'#18'AnchorSideTop.Side'#7#9'asrBottom'#23'AnchorSi'
+'deRight.Control'#7#18'LazDocBrowseButton'#4'Left'#2#6#6'Height'#2#23#3'Top'
+#3#149#0#5'Width'#3#180#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#18'B'
+'orderSpacing.Left'#2#6#17'BorderSpacing.Top'#2#6#20'BorderSpacing.Bottom'#2
+#6#8'TabOrder'#2#4#4'Text'#6#14'LazDocPathEdit'#0#0#0#22'TSelectDirectoryDia'
+'log'#21'SelectDirectoryDialog'#11'FilterIndex'#2#0#4'left'#3't'#1#3'top'#2#8
+#0#0#0
]);

View File

@ -0,0 +1,111 @@
{
***************************************************************************
* *
* This source is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This code 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 *
* General Public License for more details. *
* *
* A copy of the GNU General Public License is available on the World *
* Wide Web at <http://www.gnu.org/copyleft/gpl.html>. You can also *
* obtain it by writing to the Free Software Foundation, *
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
* *
***************************************************************************
}
unit options_fpdoc;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, Dialogs, StdCtrls,
EnvironmentOpts, LazarusIDEStrConsts, IDEProcs;
type
{ TFpDocOptionsFrame }
TFpDocOptionsFrame = class(TAbstractOptionsFrame)
LazDocAddPathButton: TButton;
LazDocBrowseButton: TButton;
LazDocDeletePathButton: TButton;
LazDocListBox: TListBox;
LazDocPathEdit: TEdit;
LazDocPathsGroupBox: TGroupBox;
SelectDirectoryDialog: TSelectDirectoryDialog;
procedure LazDocDeletePathButtonClick(Sender: TObject);
procedure LazDocAddPathButtonClick(Sender: TObject);
procedure LazDocBrowseButtonClick(Sender: TObject);
private
public
function Check: Boolean; override;
function GetTitle: String; override;
procedure Setup; override;
procedure ReadSettings(AOptions: TEnvironmentOptions); override;
procedure WriteSettings(AOptions: TEnvironmentOptions); override;
end;
implementation
{ TFpDocOptionsFrame }
function TFpDocOptionsFrame.Check: Boolean;
begin
Result := True;
end;
function TFpDocOptionsFrame.GetTitle: String;
begin
Result := lisFPDocEditor;
end;
procedure TFpDocOptionsFrame.Setup;
begin
LazDocPathsGroupBox.Caption := lisCodeHelpPathsGroupBox;
LazDocAddPathButton.Caption := lisCodeHelpAddPathButton;
LazDocDeletePathButton.Caption := lisCodeHelpDeletePathButton;
LazDocPathEdit.Clear;
end;
procedure TFpDocOptionsFrame.ReadSettings(AOptions: TEnvironmentOptions);
begin
with AOptions do
SplitString(LazDocPaths, ';', LazDocListBox.Items);
end;
procedure TFpDocOptionsFrame.WriteSettings(AOptions: TEnvironmentOptions);
begin
with AOptions do
LazDocPaths := StringListToText(LazDocListBox.Items, ';', true);
end;
procedure TFpDocOptionsFrame.LazDocAddPathButtonClick(Sender: TObject);
begin
if LazDocPathEdit.Text <> '' then
LazDocListBox.Items.Add(LazDocPathEdit.Text);
end;
procedure TFpDocOptionsFrame.LazDocBrowseButtonClick(Sender: TObject);
begin
if SelectDirectoryDialog.Execute then
LazDocPathEdit.Text := SelectDirectoryDialog.FileName;
end;
procedure TFpDocOptionsFrame.LazDocDeletePathButtonClick(Sender: TObject);
begin
LazDocListBox.Items.Delete(LazDocListBox.ItemIndex);
end;
initialization
{$I options_fpdoc.lrs}
end.

View File

@ -0,0 +1,77 @@
object NamingOptionsFrame: TNamingOptionsFrame
Height = 367
Width = 507
ClientHeight = 367
ClientWidth = 507
TabOrder = 0
Visible = False
DesignLeft = 369
DesignTop = 316
object PascalFileExtRadiogroup: TRadioGroup
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = Owner
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
Height = 47
Width = 507
Align = alTop
AutoFill = True
Caption = 'PascalFileExtRadiogroup'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 2
Columns = 2
TabOrder = 0
end
object AmbiguousFileActionRadioGroup: TRadioGroup
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = CharcaseFileActionRadioGroup
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
Height = 100
Top = 53
Width = 507
Align = alTop
AutoFill = True
BorderSpacing.Top = 6
Caption = 'AmbiguousFileActionRadioGroup'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 2
Columns = 2
TabOrder = 1
end
object CharcaseFileActionRadioGroup: TRadioGroup
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = AmbiguousFileActionRadioGroup
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
Height = 85
Top = 159
Width = 507
Align = alTop
AutoFill = True
BorderSpacing.Top = 6
Caption = 'CharcaseFileActionRadioGroup'
ChildSizing.LeftRightSpacing = 6
ChildSizing.TopBottomSpacing = 6
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
ChildSizing.EnlargeVertical = crsHomogenousChildResize
ChildSizing.ShrinkHorizontal = crsScaleChilds
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 2
Columns = 2
TabOrder = 2
end
end

View File

@ -0,0 +1,39 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TNamingOptionsFrame','FORMDATA',[
'TPF0'#19'TNamingOptionsFrame'#18'NamingOptionsFrame'#6'Height'#3'o'#1#5'Widt'
+'h'#3#251#1#12'ClientHeight'#3'o'#1#11'ClientWidth'#3#251#1#8'TabOrder'#2#0#7
+'Visible'#8#10'DesignLeft'#3'q'#1#9'DesignTop'#3'<'#1#0#11'TRadioGroup'#23'P'
+'ascalFileExtRadiogroup'#22'AnchorSideLeft.Control'#7#5'Owner'#21'AnchorSide'
+'Top.Control'#7#5'Owner'#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSid'
+'eRight.Side'#7#9'asrBottom'#6'Height'#2'/'#5'Width'#3#251#1#5'Align'#7#5'al'
+'Top'#8'AutoFill'#9#7'Caption'#6#23'PascalFileExtRadiogroup'#28'ChildSizing.'
+'LeftRightSpacing'#2#6#28'ChildSizing.TopBottomSpacing'#2#6#29'ChildSizing.E'
+'nlargeHorizontal'#7#24'crsHomogenousChildResize'#27'ChildSizing.EnlargeVert'
+'ical'#7#24'crsHomogenousChildResize'#28'ChildSizing.ShrinkHorizontal'#7#14
+'crsScaleChilds'#26'ChildSizing.ShrinkVertical'#7#14'crsScaleChilds'#18'Chil'
+'dSizing.Layout'#7#29'cclLeftToRightThenTopToBottom'#27'ChildSizing.Controls'
+'PerLine'#2#2#7'Columns'#2#2#8'TabOrder'#2#0#0#0#11'TRadioGroup'#29'Ambiguou'
+'sFileActionRadioGroup'#22'AnchorSideLeft.Control'#7#5'Owner'#21'AnchorSideT'
+'op.Control'#7#28'CharcaseFileActionRadioGroup'#23'AnchorSideRight.Control'#7
+#5'Owner'#20'AnchorSideRight.Side'#7#9'asrBottom'#6'Height'#2'd'#3'Top'#2'5'
+#5'Width'#3#251#1#5'Align'#7#5'alTop'#8'AutoFill'#9#17'BorderSpacing.Top'#2#6
+#7'Caption'#6#29'AmbiguousFileActionRadioGroup'#28'ChildSizing.LeftRightSpac'
+'ing'#2#6#28'ChildSizing.TopBottomSpacing'#2#6#29'ChildSizing.EnlargeHorizon'
+'tal'#7#24'crsHomogenousChildResize'#27'ChildSizing.EnlargeVertical'#7#24'cr'
+'sHomogenousChildResize'#28'ChildSizing.ShrinkHorizontal'#7#14'crsScaleChild'
+'s'#26'ChildSizing.ShrinkVertical'#7#14'crsScaleChilds'#18'ChildSizing.Layou'
+'t'#7#29'cclLeftToRightThenTopToBottom'#27'ChildSizing.ControlsPerLine'#2#2#7
+'Columns'#2#2#8'TabOrder'#2#1#0#0#11'TRadioGroup'#28'CharcaseFileActionRadio'
+'Group'#22'AnchorSideLeft.Control'#7#5'Owner'#21'AnchorSideTop.Control'#7#29
+'AmbiguousFileActionRadioGroup'#23'AnchorSideRight.Control'#7#5'Owner'#20'An'
+'chorSideRight.Side'#7#9'asrBottom'#6'Height'#2'U'#3'Top'#3#159#0#5'Width'#3
+#251#1#5'Align'#7#5'alTop'#8'AutoFill'#9#17'BorderSpacing.Top'#2#6#7'Caption'
+#6#28'CharcaseFileActionRadioGroup'#28'ChildSizing.LeftRightSpacing'#2#6#28
+'ChildSizing.TopBottomSpacing'#2#6#29'ChildSizing.EnlargeHorizontal'#7#24'cr'
+'sHomogenousChildResize'#27'ChildSizing.EnlargeVertical'#7#24'crsHomogenousC'
+'hildResize'#28'ChildSizing.ShrinkHorizontal'#7#14'crsScaleChilds'#26'ChildS'
+'izing.ShrinkVertical'#7#14'crsScaleChilds'#18'ChildSizing.Layout'#7#29'cclL'
+'eftToRightThenTopToBottom'#27'ChildSizing.ControlsPerLine'#2#2#7'Columns'#2
+#2#8'TabOrder'#2#2#0#0#0
]);

View File

@ -0,0 +1,141 @@
{
***************************************************************************
* *
* This source is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This code 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 *
* General Public License for more details. *
* *
* A copy of the GNU General Public License is available on the World *
* Wide Web at <http://www.gnu.org/copyleft/gpl.html>. You can also *
* obtain it by writing to the Free Software Foundation, *
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
* *
***************************************************************************
}
unit options_naming;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, ExtCtrls,
EnvironmentOpts, LazarusIDEStrConsts;
type
{ TNamingOptionsFrame }
TNamingOptionsFrame = class(TAbstractOptionsFrame)
AmbiguousFileActionRadioGroup: TRadioGroup;
CharcaseFileActionRadioGroup: TRadioGroup;
PascalFileExtRadiogroup: TRadioGroup;
private
public
function Check: Boolean; override;
function GetTitle: String; override;
procedure Setup; override;
procedure ReadSettings(AOptions: TEnvironmentOptions); override;
procedure WriteSettings(AOptions: TEnvironmentOptions); override;
end;
implementation
{ TNamingOptionsFrame }
function TNamingOptionsFrame.Check: Boolean;
begin
Result := True;
end;
function TNamingOptionsFrame.GetTitle: String;
begin
Result := dlgNaming;
end;
procedure TNamingOptionsFrame.Setup;
var
pe: TPascalExtType;
begin
with PascalFileExtRadiogroup do
begin
Caption:=dlgPasExt;
with Items do
begin
BeginUpdate;
for pe:=Low(TPascalExtType) to High(TPascalExtType) do
if pe<>petNone then
Add(PascalExtension[pe]);
EndUpdate;
end;
PascalFileExtRadiogroup.Columns:=PascalFileExtRadiogroup.Items.Count;
end;
with CharcaseFileActionRadioGroup do
begin
Caption:=dlgCharCaseFileAct;
with Items do
begin
BeginUpdate;
Add(dlgEnvAsk);
Add(dlgAutoRen);
Add(dlgnoAutomaticRenaming);
EndUpdate;
end;
end;
with AmbiguousFileActionRadioGroup do
begin
Caption:=dlgAmbigFileAct;
with Items do
begin
BeginUpdate;
Add(dlgEnvAsk);
Add(dlgAutoDel);
Add(dlgAutoRen);
Add(dlgAmbigWarn);
Add(dlgIgnoreVerb);
EndUpdate;
end;
end;
end;
procedure TNamingOptionsFrame.ReadSettings(AOptions: TEnvironmentOptions);
var
i: integer;
begin
with AOptions do
begin
for i := 0 to PascalFileExtRadiogroup.Items.Count-1 do
if PascalFileExtRadiogroup.Items[i] = PascalExtension[PascalFileExtension] then
PascalFileExtRadiogroup.ItemIndex := i;
CharCaseFileActionRadioGroup.ItemIndex := ord(CharCaseFileAction);
AmbiguousFileActionRadioGroup.ItemIndex := ord(AmbiguousFileAction);
end;
end;
procedure TNamingOptionsFrame.WriteSettings(AOptions: TEnvironmentOptions);
begin
with AOptions do
begin
if PascalFileExtRadiogroup.ItemIndex >= 0 then
PascalFileExtension := PascalExtToType(PascalFileExtRadiogroup.Items[PascalFileExtRadiogroup.ItemIndex])
else
PascalFileExtension := petPAS;
CharcaseFileAction := TCharCaseFileAction(CharcaseFileActionRadioGroup.ItemIndex);
AmbiguousFileAction := TAmbiguousFileAction(AmbiguousFileActionRadioGroup.ItemIndex);
end;
end;
initialization
{$I options_naming.lrs}
end.

View File

@ -41,7 +41,7 @@
<PackageName Value="SynEdit"/>
</Item4>
</RequiredPackages>
<Units Count="7">
<Units Count="10">
<Unit0>
<Filename Value="lazarus.pp"/>
<IsPartOfProject Value="True"/>
@ -93,6 +93,30 @@
<ResourceFilename Value="frames\options_formed.lrs"/>
<UnitName Value="options_formed"/>
</Unit6>
<Unit7>
<Filename Value="frames\options_backup.pas"/>
<ComponentName Value="BackupOptionsFrame"/>
<IsPartOfProject Value="True"/>
<ResourceBaseClass Value="Frame"/>
<ResourceFilename Value="frames\options_backup.lrs"/>
<UnitName Value="options_backup"/>
</Unit7>
<Unit8>
<Filename Value="frames\options_naming.pas"/>
<ComponentName Value="NamingOptionsFrame"/>
<IsPartOfProject Value="True"/>
<ResourceBaseClass Value="Frame"/>
<ResourceFilename Value="frames\options_naming.lrs"/>
<UnitName Value="options_naming"/>
</Unit8>
<Unit9>
<Filename Value="frames\options_fpdoc.pas"/>
<ComponentName Value="FpDocOptionsFrame"/>
<IsPartOfProject Value="True"/>
<ResourceBaseClass Value="Frame"/>
<ResourceFilename Value="frames\options_fpdoc.lrs"/>
<UnitName Value="options_fpdoc"/>
</Unit9>
</Units>
</ProjectOptions>
<CompilerOptions>