ideintf, ide: add TAbstractOptionsEditorDialog.AddControl method

git-svn-id: trunk@23352 -
This commit is contained in:
paul 2010-01-03 10:41:37 +00:00
parent 3653d72aa7
commit f78e4a4946
2 changed files with 21 additions and 3 deletions

View File

@ -68,6 +68,7 @@ type
function ShowModal: Integer; override;
function AddButton: TBitBtn; override;
function AddControl(AControlClass: TControlClass): TControl; override;
procedure OpenEditor(AEditor: TAbstractIDEOptionsEditorClass); override;
function FindEditor(AEditor: TAbstractIDEOptionsEditorClass): TAbstractIDEOptionsEditor; override;
procedure ReadSettings(AOptions: TAbstractIDEOptions);
@ -133,7 +134,7 @@ begin
AEditor.AnchorSideRight.Side := asrBottom;
AEditor.AnchorSideRight.Control := Self;
AEditor.AnchorSideBottom.Side := asrTop;
AEditor.AnchorSideBottom.Control := ButtonPanel;
AEditor.AnchorSideBottom.Control := CategoryTree.AnchorSide[akBottom].Control;
AEditor.BorderSpacing.Around := 6;
//AEditor.Parent := Self;
AEditor.Visible := True;
@ -455,6 +456,22 @@ begin
Result.Parent := ButtonPanel;
end;
function TIDEOptionsDialog.AddControl(AControlClass: TControlClass): TControl;
var
Control: TControl;
begin
Result := AControlClass.Create(Self);
Result.Parent := Self;
Result.Anchors := [akLeft, akBottom];
Result.BorderSpacing.Around := 6;
Control := CategoryTree;
while Control.AnchorSide[akBottom].Control <> ButtonPanel do
Control := Control.AnchorSide[akBottom].Control;
Result.AnchorSide[akBottom].Control := ButtonPanel;
Result.AnchorSide[akLeft].Control := Self;
Control.AnchorSide[akBottom].Control := Result;
end;
procedure TIDEOptionsDialog.OpenEditor(AEditor: TAbstractIDEOptionsEditorClass);
begin
FEditorToOpen := AEditor;

View File

@ -25,7 +25,7 @@ unit IDEOptionsIntf;
interface
uses
Classes, SysUtils, Buttons, Forms;
Classes, SysUtils, Controls, Buttons, Forms;
const
NoParent = -1;
@ -138,8 +138,9 @@ type
TAbstractOptionsEditorDialog = class(TForm)
public
function AddButton: TBitBtn; virtual; abstract;
procedure OpenEditor(AEditor: TAbstractIDEOptionsEditorClass); virtual; abstract;
function AddControl(AControlClass: TControlClass): TControl; virtual; abstract;
function FindEditor(AEditor: TAbstractIDEOptionsEditorClass): TAbstractIDEOptionsEditor; virtual; abstract;
procedure OpenEditor(AEditor: TAbstractIDEOptionsEditorClass); virtual; abstract;
end;
function GetFreeIDEOptionsGroupIndex(AStartIndex: Integer): Integer;