IDE: Chances in IdeOptionsDlg, preparing for more changes

git-svn-id: trunk@38583 -
This commit is contained in:
juha 2012-09-08 16:28:13 +00:00
parent 400dc6d8e4
commit 8b83271efa
6 changed files with 208 additions and 100 deletions

View File

@ -1,94 +1,96 @@
inherited CompilerPathOptionsFrame: TCompilerPathOptionsFrame object CompilerPathOptionsFrame: TCompilerPathOptionsFrame
Left = 0
Height = 432 Height = 432
Top = 0
Width = 509 Width = 509
ClientHeight = 432 ClientHeight = 432
ClientWidth = 509 ClientWidth = 509
TabOrder = 0 TabOrder = 0
DesignLeft = 346 DesignLeft = 346
DesignTop = 328 DesignTop = 106
object OtherUnitsLabel: TLabel[0] object OtherUnitsLabel: TLabel
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = Owner AnchorSideTop.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 18 Height = 15
Top = 0 Top = 0
Width = 106 Width = 92
Caption = 'OtherUnitsLabel' Caption = 'OtherUnitsLabel'
ParentColor = False ParentColor = False
end end
object IncludeFilesLabel: TLabel[1] object IncludeFilesLabel: TLabel
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = OtherUnitsEdit AnchorSideTop.Control = OtherUnitsEdit
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 18 Height = 15
Top = 51 Top = 44
Width = 113 Width = 95
BorderSpacing.Top = 6 BorderSpacing.Top = 6
Caption = 'IncludeFilesLabel' Caption = 'IncludeFilesLabel'
ParentColor = False ParentColor = False
end end
object OtherSourcesLabel: TLabel[2] object OtherSourcesLabel: TLabel
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = ProjTargetApplyConventionsCheckBox AnchorSideTop.Control = ProjTargetApplyConventionsCheckBox
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 18 Height = 15
Top = 277 Top = 241
Width = 123 Width = 106
Caption = 'OtherSourcesLabel' Caption = 'OtherSourcesLabel'
ParentColor = False ParentColor = False
end end
object LibrariesLabel: TLabel[3] object LibrariesLabel: TLabel
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = IncludeFilesEdit AnchorSideTop.Control = IncludeFilesEdit
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 18 Height = 15
Top = 102 Top = 88
Width = 92 Width = 78
BorderSpacing.Top = 6 BorderSpacing.Top = 6
Caption = 'LibrariesLabel' Caption = 'LibrariesLabel'
ParentColor = False ParentColor = False
end end
object UnitOutputDirLabel: TLabel[4] object UnitOutputDirLabel: TLabel
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = LibrariesEdit AnchorSideTop.Control = LibrariesEdit
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 18 Height = 15
Top = 153 Top = 132
Width = 126 Width = 110
BorderSpacing.Top = 6 BorderSpacing.Top = 6
Caption = 'UnitOutputDirLabel' Caption = 'UnitOutputDirLabel'
ParentColor = False ParentColor = False
end end
object DebugPathLabel: TLabel[5] object DebugPathLabel: TLabel
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = OtherSourcesEdit AnchorSideTop.Control = OtherSourcesEdit
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 18 Height = 15
Top = 328 Top = 285
Width = 106 Width = 92
BorderSpacing.Top = 6 BorderSpacing.Top = 6
Caption = 'DebugPathLabel' Caption = 'DebugPathLabel'
ParentColor = False ParentColor = False
end end
object LCLWidgetTypeLabel: TLabel[6] object LCLWidgetTypeLabel: TLabel
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = DebugPathEdit AnchorSideTop.Control = DebugPathEdit
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
Left = 0 Left = 0
Height = 18 Height = 15
Top = 379 Top = 329
Width = 134 Width = 115
Caption = 'LCLWidgetTypeLabel' Caption = 'LCLWidgetTypeLabel'
Font.Color = clBlue Font.Color = clBlue
ParentColor = False ParentColor = False
@ -97,131 +99,131 @@ inherited CompilerPathOptionsFrame: TCompilerPathOptionsFrame
OnMouseEnter = LCLWidgetTypeLabelMouseEnter OnMouseEnter = LCLWidgetTypeLabelMouseEnter
OnMouseLeave = LCLWidgetTypeLabelMouseLeave OnMouseLeave = LCLWidgetTypeLabelMouseLeave
end end
object OtherUnitsEdit: TEdit[7] object OtherUnitsEdit: TEdit
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = OtherUnitsLabel AnchorSideTop.Control = OtherUnitsLabel
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 27 Height = 23
Top = 18 Top = 15
Width = 509 Width = 509
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Bottom = 6 BorderSpacing.Bottom = 6
TabOrder = 0 TabOrder = 0
Text = 'OtherUnitsEdit' Text = 'OtherUnitsEdit'
end end
object IncludeFilesEdit: TEdit[8] object IncludeFilesEdit: TEdit
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = IncludeFilesLabel AnchorSideTop.Control = IncludeFilesLabel
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 27 Height = 23
Top = 69 Top = 59
Width = 509 Width = 509
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Bottom = 6 BorderSpacing.Bottom = 6
TabOrder = 1 TabOrder = 1
Text = 'IncludeFilesEdit' Text = 'IncludeFilesEdit'
end end
object OtherSourcesEdit: TEdit[9] object OtherSourcesEdit: TEdit
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = OtherSourcesLabel AnchorSideTop.Control = OtherSourcesLabel
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 27 Height = 23
Top = 295 Top = 256
Width = 509 Width = 509
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Bottom = 6 BorderSpacing.Bottom = 6
TabOrder = 6 TabOrder = 6
Text = 'OtherSourcesEdit' Text = 'OtherSourcesEdit'
end end
object LibrariesEdit: TEdit[10] object LibrariesEdit: TEdit
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = LibrariesLabel AnchorSideTop.Control = LibrariesLabel
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 27 Height = 23
Top = 120 Top = 103
Width = 509 Width = 509
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Bottom = 6 BorderSpacing.Bottom = 6
TabOrder = 2 TabOrder = 2
Text = 'LibrariesEdit' Text = 'LibrariesEdit'
end end
object UnitOutputDirEdit: TEdit[11] object UnitOutputDirEdit: TEdit
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = UnitOutputDirLabel AnchorSideTop.Control = UnitOutputDirLabel
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 27 Height = 23
Top = 171 Top = 147
Width = 509 Width = 509
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Bottom = 6 BorderSpacing.Bottom = 6
TabOrder = 3 TabOrder = 3
Text = 'UnitOutputDirEdit' Text = 'UnitOutputDirEdit'
end end
object DebugPathEdit: TEdit[12] object DebugPathEdit: TEdit
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = DebugPathLabel AnchorSideTop.Control = DebugPathLabel
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 27 Height = 23
Top = 346 Top = 300
Width = 509 Width = 509
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Bottom = 6 BorderSpacing.Bottom = 6
TabOrder = 7 TabOrder = 7
Text = 'DebugPathEdit' Text = 'DebugPathEdit'
end end
object ProjTargetFileLabel: TLabel[13] object ProjTargetFileLabel: TLabel
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = UnitOutputDirEdit AnchorSideTop.Control = UnitOutputDirEdit
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
Left = 0 Left = 0
Height = 18 Height = 15
Top = 204 Top = 176
Width = 124 Width = 108
Caption = 'ProjTargetFileLabel' Caption = 'ProjTargetFileLabel'
ParentColor = False ParentColor = False
end end
object ProjTargetFileEdit: TEdit[14] object ProjTargetFileEdit: TEdit
AnchorSideLeft.Control = Owner AnchorSideLeft.Control = Owner
AnchorSideTop.Control = ProjTargetFileLabel AnchorSideTop.Control = ProjTargetFileLabel
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 27 Height = 23
Top = 222 Top = 191
Width = 509 Width = 509
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
OnChange = ProjTargetFileEditChange OnChange = ProjTargetFileEditChange
TabOrder = 4 TabOrder = 4
Text = 'ProjTargetFileEdit' Text = 'ProjTargetFileEdit'
end end
object ProjTargetApplyConventionsCheckBox: TCheckBox[15] object ProjTargetApplyConventionsCheckBox: TCheckBox
AnchorSideLeft.Control = ProjTargetFileEdit AnchorSideLeft.Control = ProjTargetFileEdit
AnchorSideTop.Control = ProjTargetFileEdit AnchorSideTop.Control = ProjTargetFileEdit
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 22 Height = 21
Top = 249 Top = 214
Width = 272 Width = 237
BorderSpacing.Bottom = 6 BorderSpacing.Bottom = 6
Caption = 'ProjTargetApplyConventionsCheckBox' Caption = 'ProjTargetApplyConventionsCheckBox'
TabOrder = 5 TabOrder = 5

View File

@ -736,7 +736,7 @@ begin
btnLoadSave.LoadGlyphFromLazarusResource('laz_save'); btnLoadSave.LoadGlyphFromLazarusResource('laz_save');
chkUseAsDefault := TCheckBox(ADialog.AddControl(TCheckBox)); chkUseAsDefault := TCheckBox(ADialog.AddControl(TCheckBox));
chkUseAsDefault.Caption := dlgCOUseAsDefault; chkUseAsDefault.Caption := dlgCOSetAsDefault;
chkUseAsDefault.ShowHint := True; chkUseAsDefault.ShowHint := True;
chkUseAsDefault.Hint := lisWhenEnabledTheCurrentOptionsAreSavedToTheTemplateW; chkUseAsDefault.Hint := lisWhenEnabledTheCurrentOptionsAreSavedToTheTemplateW;
end; end;

View File

@ -1,15 +1,15 @@
inherited IDEOptionsDialog: TIDEOptionsDialog inherited IDEOptionsDialog: TIDEOptionsDialog
Left = 318 Left = 121
Height = 500 Height = 404
Top = 182 Top = 96
Width = 700 Width = 675
ActiveControl = FilterEdit ActiveControl = FilterEdit
BorderIcons = [biSystemMenu] BorderIcons = [biSystemMenu]
Caption = 'IDEOptionsDialog' Caption = 'IDEOptionsDialog'
ClientHeight = 500 ClientHeight = 404
ClientWidth = 700 ClientWidth = 675
Constraints.MinHeight = 500 Constraints.MinHeight = 350
Constraints.MinWidth = 700 Constraints.MinWidth = 500
OnShow = FormShow OnShow = FormShow
Position = poScreenCenter Position = poScreenCenter
object ButtonPanel: TButtonPanel[0] object ButtonPanel: TButtonPanel[0]
@ -19,8 +19,8 @@ inherited IDEOptionsDialog: TIDEOptionsDialog
AnchorSideBottom.Control = Owner AnchorSideBottom.Control = Owner
Left = 6 Left = 6
Height = 34 Height = 34
Top = 460 Top = 364
Width = 688 Width = 663
BorderSpacing.Left = 6 BorderSpacing.Left = 6
BorderSpacing.Right = 6 BorderSpacing.Right = 6
BorderSpacing.Bottom = 6 BorderSpacing.Bottom = 6
@ -38,38 +38,36 @@ inherited IDEOptionsDialog: TIDEOptionsDialog
ShowButtons = [pbOK, pbCancel, pbHelp] ShowButtons = [pbOK, pbCancel, pbHelp]
end end
object CatTVSplitter: TSplitter[1] object CatTVSplitter: TSplitter[1]
Left = 234 Left = 255
Height = 460 Height = 364
Top = 0 Top = 0
Width = 5 Width = 4
end end
object Panel1: TPanel[2] object CategoryPanel: TPanel[2]
Left = 0 Left = 0
Height = 460 Height = 364
Top = 0 Top = 0
Width = 234 Width = 255
Align = alLeft Align = alLeft
BevelOuter = bvNone BevelOuter = bvNone
ClientHeight = 460 ClientHeight = 364
ClientWidth = 234 ClientWidth = 255
Constraints.MinWidth = 150 Constraints.MinWidth = 150
TabOrder = 2 TabOrder = 2
object CategoryTree: TTreeView object CategoryTree: TTreeView
AnchorSideLeft.Control = FilterEdit AnchorSideLeft.Control = FilterEdit
AnchorSideTop.Control = FilterEdit AnchorSideTop.Control = FilterEdit
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Panel1 AnchorSideRight.Control = CategoryPanel
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = Panel1 AnchorSideBottom.Control = SettingsPanel
AnchorSideBottom.Side = asrBottom
Left = 6 Left = 6
Height = 417 Height = 308
Top = 37 Top = 36
Width = 222 Width = 249
Anchors = [akTop, akLeft, akRight, akBottom] Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Top = 6 BorderSpacing.Top = 5
BorderSpacing.Right = 6 DefaultItemHeight = 18
BorderSpacing.Bottom = 6
ReadOnly = True ReadOnly = True
TabOrder = 0 TabOrder = 0
OnChange = CategoryTreeChange OnChange = CategoryTreeChange
@ -79,23 +77,114 @@ inherited IDEOptionsDialog: TIDEOptionsDialog
Options = [tvoAutoItemHeight, tvoHideSelection, tvoKeepCollapsedNodes, tvoReadOnly, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoThemedDraw] Options = [tvoAutoItemHeight, tvoHideSelection, tvoKeepCollapsedNodes, tvoReadOnly, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoThemedDraw]
end end
object FilterEdit: TTreeFilterEdit object FilterEdit: TTreeFilterEdit
AnchorSideLeft.Control = Panel1 AnchorSideLeft.Control = CategoryPanel
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 6 Left = 6
Height = 23 Height = 23
Top = 8 Top = 8
Width = 179 Width = 200
OnFilterItem = FilterEditFilterItem OnFilterItem = FilterEditFilterItem
UseFormActivate = True UseFormActivate = True
ButtonWidth = 23 ButtonWidth = 23
NumGlyphs = 0 NumGlyphs = 1
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Left = 6 BorderSpacing.Left = 6
Font.Color = clBtnShadow
MaxLength = 0 MaxLength = 0
ParentFont = False ParentFont = False
TabOrder = 1 TabOrder = 1
FilteredTreeview = CategoryTree FilteredTreeview = CategoryTree
end end
object SettingsPanel: TPanel
Left = 0
Height = 20
Top = 344
Width = 255
Align = alBottom
AutoSize = True
Constraints.MinHeight = 20
TabOrder = 2
end
end
object BuildModeSelectPanel: TPanel[3]
AnchorSideLeft.Control = CatTVSplitter
AnchorSideLeft.Side = asrBottom
AnchorSideRight.Control = EditorsPanel
AnchorSideRight.Side = asrBottom
Left = 259
Height = 40
Top = 0
Width = 413
Anchors = [akTop, akLeft, akRight]
ClientHeight = 40
ClientWidth = 413
TabOrder = 3
Visible = False
object BuildModeLabel: TLabel
Left = 12
Height = 15
Top = 13
Width = 63
Caption = 'Build Mode'
ParentColor = False
end
object BuildModeComboBox: TComboBox
AnchorSideLeft.Control = BuildModeLabel
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BuildModeLabel
AnchorSideTop.Side = asrCenter
Left = 82
Height = 23
Top = 9
Width = 154
BorderSpacing.Left = 7
ItemHeight = 0
Items.Strings = (
'<All build modes>'
'Juha''s test mode'
'Another test mode'
)
TabOrder = 0
end
object BuildModeManageButton: TButton
AnchorSideLeft.Control = BuildModeComboBox
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BuildModeComboBox
AnchorSideTop.Side = asrCenter
Left = 243
Height = 25
Top = 8
Width = 27
BorderSpacing.Left = 7
Caption = '...'
OnClick = BuildModeManageButtonClick
TabOrder = 1
end
object Label1: TLabel
Left = 286
Height = 15
Top = 13
Width = 118
Caption = 'Under construction ...'
Color = clFuchsia
ParentColor = False
Transparent = False
end
end
object EditorsPanel: TScrollBox[4]
AnchorSideLeft.Control = CatTVSplitter
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BuildModeSelectPanel
AnchorSideTop.Side = asrBottom
AnchorSideBottom.Control = ButtonPanel
Left = 259
Height = 324
Top = 40
Width = 413
HorzScrollBar.Page = 407
HorzScrollBar.Tracking = True
VertScrollBar.Page = 318
VertScrollBar.Tracking = True
Anchors = [akTop, akLeft, akRight, akBottom]
TabOrder = 4
end end
end end

View File

@ -34,7 +34,7 @@ uses
Buttons, ButtonPanel, ExtCtrls, Buttons, ButtonPanel, ExtCtrls,
IDEWindowIntf, IDEOptionsIntf, IDECommands, IDEHelpIntf, IDEWindowIntf, IDEOptionsIntf, IDECommands, IDEHelpIntf,
EnvironmentOpts, LazarusIDEStrConsts, EnvironmentOpts, LazarusIDEStrConsts,
EditorOptions, TreeFilterEdit, EditBtn; EditorOptions, TreeFilterEdit, EditBtn, StdCtrls;
type type
TIDEOptsDlgAction = ( TIDEOptsDlgAction = (
@ -48,11 +48,19 @@ type
{ TIDEOptionsDialog } { TIDEOptionsDialog }
TIDEOptionsDialog = class(TAbstractOptionsEditorDialog) TIDEOptionsDialog = class(TAbstractOptionsEditorDialog)
BuildModeComboBox: TComboBox;
BuildModeManageButton: TButton;
BuildModeLabel: TLabel;
ButtonPanel: TButtonPanel; ButtonPanel: TButtonPanel;
CategoryTree: TTreeView; CategoryTree: TTreeView;
CatTVSplitter: TSplitter; CatTVSplitter: TSplitter;
Panel1: TPanel; CategoryPanel: TPanel;
EditorsPanel: TScrollBox;
FilterEdit: TTreeFilterEdit; FilterEdit: TTreeFilterEdit;
BuildModeSelectPanel: TPanel;
Label1: TLabel;
SettingsPanel: TPanel;
procedure BuildModeManageButtonClick(Sender: TObject);
procedure CategoryTreeChange(Sender: TObject; Node: TTreeNode); procedure CategoryTreeChange(Sender: TObject; Node: TTreeNode);
procedure CategoryTreeCollapsed(Sender: TObject; Node: TTreeNode); procedure CategoryTreeCollapsed(Sender: TObject; Node: TTreeNode);
procedure CategoryTreeExpanded(Sender: TObject; Node: TTreeNode); procedure CategoryTreeExpanded(Sender: TObject; Node: TTreeNode);
@ -117,6 +125,7 @@ begin
PrevEditor := nil; PrevEditor := nil;
FEditorsCreated := False; FEditorsCreated := False;
FEditorToOpen := nil; FEditorToOpen := nil;
SettingsPanel.Constraints.MinHeight:=0;
IDEDialogLayoutList.ApplyLayout(Self, Width, Height); IDEDialogLayoutList.ApplyLayout(Self, Width, Height);
Caption := dlgIDEOptions; Caption := dlgIDEOptions;
@ -175,16 +184,21 @@ begin
NewLastSelected := AEditor.Rec; NewLastSelected := AEditor.Rec;
if (AEditor <> PrevEditor) then begin if (AEditor <> PrevEditor) then begin
if Assigned(PrevEditor) then if Assigned(PrevEditor) then
PrevEditor.Visible := False; //PrevEditor.Parent := nil; PrevEditor.Visible := False;
if Assigned(AEditor) then begin if Assigned(AEditor) then begin
AEditor.Align := alClient; AEditor.Align := alClient;
AEditor.BorderSpacing.Around := 6; //AEditor.Parent := Self; AEditor.BorderSpacing.Around := 6;
AEditor.Visible := True; AEditor.Visible := True;
end; end;
PrevEditor := AEditor; PrevEditor := AEditor;
end; end;
end; end;
procedure TIDEOptionsDialog.BuildModeManageButtonClick(Sender: TObject);
begin
;
end;
procedure TIDEOptionsDialog.CategoryTreeCollapsed(Sender: TObject; Node: TTreeNode); procedure TIDEOptionsDialog.CategoryTreeCollapsed(Sender: TObject; Node: TTreeNode);
begin begin
if node.Deleting then exit; if node.Deleting then exit;
@ -262,8 +276,9 @@ var
begin begin
if Node.Data <> nil then if Node.Data <> nil then
with TAbstractIDEOptionsEditor(Node.Data) do with TAbstractIDEOptionsEditor(Node.Data) do
if ((ClassTypeForCompare = nil) and (SupportedOptionsClass = nil)) or if ((ClassTypeForCompare = nil) and (SupportedOptionsClass = nil))
((SupportedOptionsClass <> nil) and ClassTypeForCompare.InheritsFrom(SupportedOptionsClass)) then or ((SupportedOptionsClass <> nil)
and ClassTypeForCompare.InheritsFrom(SupportedOptionsClass)) then
begin begin
case anAction of case anAction of
iodaRead: ReadSettings(AOptions); iodaRead: ReadSettings(AOptions);
@ -456,7 +471,7 @@ begin
Instance.Setup(Self); Instance.Setup(Self);
Instance.Tag := Rec^.Items[j]^.Index; Instance.Tag := Rec^.Items[j]^.Index;
Instance.Visible := False; Instance.Visible := False;
Instance.Parent := Self; Instance.Parent := EditorsPanel;
instance.Rec := Rec^.Items[j]; instance.Rec := Rec^.Items[j];
if Rec^.Items[j]^.Parent = NoParent then if Rec^.Items[j]^.Parent = NoParent then
@ -580,8 +595,8 @@ end;
function TIDEOptionsDialog.AddControl(AControlClass: TControlClass): TControl; function TIDEOptionsDialog.AddControl(AControlClass: TControlClass): TControl;
begin begin
Result := AControlClass.Create(Self); Result := AControlClass.Create(Self);
Result.Parent := Self; Result.Parent := SettingsPanel;
Result.Align:=alBottom; Result.Align := alBottom;
Result.BorderSpacing.Around := 6; Result.BorderSpacing.Around := 6;
end; end;

View File

@ -376,6 +376,7 @@
<Filename Value="frames/buildmodeseditor.pas"/> <Filename Value="frames/buildmodeseditor.pas"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<ComponentName Value="BuildModesEditorFrame"/> <ComponentName Value="BuildModesEditorFrame"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Frame"/> <ResourceBaseClass Value="Frame"/>
<UnitName Value="BuildModesEditor"/> <UnitName Value="BuildModesEditor"/>
</Unit45> </Unit45>

View File

@ -1867,7 +1867,7 @@ resourcestring
// compiler options // compiler options
dlgCompilerOptions = 'Compiler Options'; dlgCompilerOptions = 'Compiler Options';
dlgCOUseAsDefault = 'Use these compiler options as default for new projects'; dlgCOSetAsDefault = 'Set compiler options as default';
lisWhenEnabledTheCurrentOptionsAreSavedToTheTemplateW = 'When enabled the ' lisWhenEnabledTheCurrentOptionsAreSavedToTheTemplateW = 'When enabled the '
+'current options are saved to the template, which is used when creating ' +'current options are saved to the template, which is used when creating '
+'new projects'; +'new projects';
@ -5273,6 +5273,7 @@ resourcestring
dlgBuildModes = 'Build Modes'; dlgBuildModes = 'Build Modes';
dlgIdeMacroValues = 'IDE Macro Values'; dlgIdeMacroValues = 'IDE Macro Values';
lisBuildModes = 'Build modes'; lisBuildModes = 'Build modes';
lisManageBuildModes = 'Manage build modes';
lisInSession = 'In session'; lisInSession = 'In session';
lisThereMustBeAtLeastOneBuildMode = 'There must be at least one build mode.'; lisThereMustBeAtLeastOneBuildMode = 'There must be at least one build mode.';
lisTheFirstBuildModeIsTheDefaultModeAndMustBeStoredIn = 'The first build ' lisTheFirstBuildModeIsTheDefaultModeAndMustBeStoredIn = 'The first build '