convert the CheckGroup Editor and the CheckListBox Editor in lfm from Salvatore

git-svn-id: trunk@8612 -
This commit is contained in:
mattias 2006-01-23 22:17:23 +00:00
parent cc04694b80
commit 6cc2b0fd29
7 changed files with 450 additions and 280 deletions

4
.gitattributes vendored
View File

@ -1170,6 +1170,10 @@ ideintf/actionseditorstd.lfm svneol=native#text/plain
ideintf/actionseditorstd.lrs svneol=native#text/pascal ideintf/actionseditorstd.lrs svneol=native#text/pascal
ideintf/actionseditorstd.pas svneol=native#text/pascal ideintf/actionseditorstd.pas svneol=native#text/pascal
ideintf/allideintf.pas svneol=native#text/pascal ideintf/allideintf.pas svneol=native#text/pascal
ideintf/checkgroupeditordlg.lfm svneol=native#text/plain
ideintf/checkgroupeditordlg.lrs svneol=native#text/plain
ideintf/checklistboxeditordlg.lfm svneol=native#text/plain
ideintf/checklistboxeditordlg.lrs svneol=native#text/plain
ideintf/collectionpropeditform.lfm svneol=native#text/plain ideintf/collectionpropeditform.lfm svneol=native#text/plain
ideintf/collectionpropeditform.lrs svneol=native#text/plain ideintf/collectionpropeditform.lrs svneol=native#text/plain
ideintf/columndlg.pp svneol=native#text/pascal ideintf/columndlg.pp svneol=native#text/pascal

View File

@ -0,0 +1,151 @@
object CheckGroupEditorDlg: TCheckGroupEditorDlg
ActiveControl = FBtnOK
BorderStyle = bsDialog
Caption = 'CheckGroupEditorDlg'
ClientHeight = 300
ClientWidth = 593
PixelsPerInch = 96
Position = poScreenCenter
HorzScrollBar.Page = 592
VertScrollBar.Page = 299
Left = 290
Height = 300
Top = 149
Width = 593
object FPanelOKCancel: TPanel
Align = alBottom
AutoSize = True
ClientHeight = 36
ClientWidth = 593
TabOrder = 0
Height = 36
Top = 264
Width = 593
object FBtnOK: TBitBtn
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = '&OK'
Default = True
Kind = bkOK
ModalResult = 1
NumGlyphs = 0
TabOrder = 0
Left = 1
Height = 34
Top = 1
Width = 68
end
object FBtnCancel: TBitBtn
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'Cancel'
Kind = bkCancel
ModalResult = 2
NumGlyphs = 0
TabOrder = 1
AnchorSideLeft.Control = FBtnOK
AnchorSideLeft.Side = asrBottom
Left = 69
Height = 34
Top = 1
Width = 80
end
end
object FPanelButtons: TPanel
Align = alTop
AutoSize = True
ClientHeight = 31
ClientWidth = 593
TabOrder = 1
Height = 31
Width = 593
object LabelDisable: TLabel
Caption = 'clbDisable'
Color = clBtnFace
Font.Color = clHotLight
ParentColor = False
Transparent = False
Left = 368
Height = 14
Top = 8
Width = 48
end
object FBtnAdd: TButton
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'FBtnAdd'
OnClick = AddItem
TabOrder = 0
Left = 1
Height = 29
Top = 1
Width = 65
end
object FBtnDelete: TButton
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'FBtnDelete'
OnClick = DeleteItem
TabOrder = 1
AnchorSideLeft.Control = FBtnAdd
AnchorSideLeft.Side = asrBottom
Left = 66
Height = 29
Top = 1
Width = 77
end
object FBtnUp: TButton
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'FBtnUp'
OnClick = MoveUpItem
TabOrder = 2
AnchorSideLeft.Control = FBtnDelete
AnchorSideLeft.Side = asrBottom
Left = 143
Height = 29
Top = 1
Width = 60
end
object FBtnDown: TButton
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'FBtnDown'
OnClick = MoveDownItem
TabOrder = 3
AnchorSideLeft.Control = FBtnUp
AnchorSideLeft.Side = asrBottom
Left = 203
Height = 29
Top = 1
Width = 74
end
object FBtnModify: TButton
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'FBtnModify'
OnClick = ModifyItem
TabOrder = 4
AnchorSideLeft.Control = FBtnDown
AnchorSideLeft.Side = asrBottom
Left = 277
Height = 29
Top = 1
Width = 77
end
end
object FCheck: TCheckGroup
Align = alClient
OnItemClick = ItemClick
PopupMenu = FPopupMenu
TabOrder = 2
Height = 233
Top = 31
Width = 593
end
object FPopupMenu: TPopupMenu
OnPopup = CreateItems
left = 113
top = 111
end
end

View File

@ -0,0 +1,45 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TCheckGroupEditorDlg','FORMDATA',[
'TPF0'#20'TCheckGroupEditorDlg'#19'CheckGroupEditorDlg'#13'ActiveControl'#7#6
+'FBtnOK'#11'BorderStyle'#7#8'bsDialog'#7'Caption'#6#19'CheckGroupEditorDlg'
+#12'ClientHeight'#3','#1#11'ClientWidth'#3'Q'#2#13'PixelsPerInch'#2'`'#8'Pos'
+'ition'#7#14'poScreenCenter'#18'HorzScrollBar.Page'#3'P'#2#18'VertScrollBar.'
+'Page'#3'+'#1#4'Left'#3'"'#1#6'Height'#3','#1#3'Top'#3#149#0#5'Width'#3'Q'#2
+#0#6'TPanel'#14'FPanelOKCancel'#5'Align'#7#8'alBottom'#8'AutoSize'#9#12'Clie'
+'ntHeight'#2'$'#11'ClientWidth'#3'Q'#2#8'TabOrder'#2#0#6'Height'#2'$'#3'Top'
+#3#8#1#5'Width'#3'Q'#2#0#7'TBitBtn'#6'FBtnOK'#8'AutoSize'#9#25'BorderSpacing'
+'.InnerBorder'#2#2#7'Caption'#6#3'&OK'#7'Default'#9#4'Kind'#7#4'bkOK'#11'Mod'
+'alResult'#2#1#9'NumGlyphs'#2#0#8'TabOrder'#2#0#4'Left'#2#1#6'Height'#2'"'#3
+'Top'#2#1#5'Width'#2'D'#0#0#7'TBitBtn'#10'FBtnCancel'#8'AutoSize'#9#25'Borde'
+'rSpacing.InnerBorder'#2#2#7'Caption'#6#6'Cancel'#4'Kind'#7#8'bkCancel'#11'M'
+'odalResult'#2#2#9'NumGlyphs'#2#0#8'TabOrder'#2#1#22'AnchorSideLeft.Control'
+#7#6'FBtnOK'#19'AnchorSideLeft.Side'#7#9'asrBottom'#4'Left'#2'E'#6'Height'#2
+'"'#3'Top'#2#1#5'Width'#2'P'#0#0#0#6'TPanel'#13'FPanelButtons'#5'Align'#7#5
+'alTop'#8'AutoSize'#9#12'ClientHeight'#2#31#11'ClientWidth'#3'Q'#2#8'TabOrde'
+'r'#2#1#6'Height'#2#31#5'Width'#3'Q'#2#0#6'TLabel'#12'LabelDisable'#7'Captio'
+'n'#6#10'clbDisable'#5'Color'#7#9'clBtnFace'#10'Font.Color'#7#10'clHotLight'
+#11'ParentColor'#8#11'Transparent'#8#4'Left'#3'p'#1#6'Height'#2#14#3'Top'#2#8
+#5'Width'#2'0'#0#0#7'TButton'#7'FBtnAdd'#8'AutoSize'#9#25'BorderSpacing.Inne'
+'rBorder'#2#2#7'Caption'#6#7'FBtnAdd'#7'OnClick'#7#7'AddItem'#8'TabOrder'#2#0
+#4'Left'#2#1#6'Height'#2#29#3'Top'#2#1#5'Width'#2'A'#0#0#7'TButton'#10'FBtnD'
+'elete'#8'AutoSize'#9#25'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#10'FBtn'
+'Delete'#7'OnClick'#7#10'DeleteItem'#8'TabOrder'#2#1#22'AnchorSideLeft.Contr'
+'ol'#7#7'FBtnAdd'#19'AnchorSideLeft.Side'#7#9'asrBottom'#4'Left'#2'B'#6'Heig'
+'ht'#2#29#3'Top'#2#1#5'Width'#2'M'#0#0#7'TButton'#6'FBtnUp'#8'AutoSize'#9#25
+'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#6'FBtnUp'#7'OnClick'#7#10'MoveU'
+'pItem'#8'TabOrder'#2#2#22'AnchorSideLeft.Control'#7#10'FBtnDelete'#19'Ancho'
+'rSideLeft.Side'#7#9'asrBottom'#4'Left'#3#143#0#6'Height'#2#29#3'Top'#2#1#5
+'Width'#2'<'#0#0#7'TButton'#8'FBtnDown'#8'AutoSize'#9#25'BorderSpacing.Inner'
+'Border'#2#2#7'Caption'#6#8'FBtnDown'#7'OnClick'#7#12'MoveDownItem'#8'TabOrd'
+'er'#2#3#22'AnchorSideLeft.Control'#7#6'FBtnUp'#19'AnchorSideLeft.Side'#7#9
+'asrBottom'#4'Left'#3#203#0#6'Height'#2#29#3'Top'#2#1#5'Width'#2'J'#0#0#7'TB'
+'utton'#10'FBtnModify'#8'AutoSize'#9#25'BorderSpacing.InnerBorder'#2#2#7'Cap'
+'tion'#6#10'FBtnModify'#7'OnClick'#7#10'ModifyItem'#8'TabOrder'#2#4#22'Ancho'
+'rSideLeft.Control'#7#8'FBtnDown'#19'AnchorSideLeft.Side'#7#9'asrBottom'#4'L'
+'eft'#3#21#1#6'Height'#2#29#3'Top'#2#1#5'Width'#2'M'#0#0#0#11'TCheckGroup'#6
+'FCheck'#5'Align'#7#8'alClient'#11'OnItemClick'#7#9'ItemClick'#9'PopupMenu'#7
+#10'FPopupMenu'#8'TabOrder'#2#2#6'Height'#3#233#0#3'Top'#2#31#5'Width'#3'Q'#2
+#0#0#10'TPopupMenu'#10'FPopupMenu'#7'OnPopup'#7#11'CreateItems'#4'left'#2'q'
+#3'top'#2'o'#0#0#0
]);

View File

@ -0,0 +1,134 @@
object CheckListBoxEditorDlg: TCheckListBoxEditorDlg
ActiveControl = FBtnAdd
AutoSize = True
BorderStyle = bsDialog
Caption = 'CheckListBoxEditorDlg'
ClientHeight = 299
ClientWidth = 395
PixelsPerInch = 96
Position = poScreenCenter
HorzScrollBar.Page = 394
VertScrollBar.Page = 298
Left = 290
Height = 299
Top = 149
Width = 395
object FPanelButtons: TPanel
Align = alTop
AutoSize = True
ClientHeight = 31
ClientWidth = 395
TabOrder = 0
Height = 31
Width = 395
object FBtnAdd: TButton
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'FBtnAdd'
OnClick = AddItem
TabOrder = 0
Left = 1
Height = 29
Top = 1
Width = 65
end
object FBtnDelete: TButton
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'FBtnDelete'
OnClick = DeleteItem
TabOrder = 1
AnchorSideLeft.Control = FBtnAdd
AnchorSideLeft.Side = asrBottom
Left = 66
Height = 29
Top = 1
Width = 77
end
object FBtnUp: TButton
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'FBtnUp'
OnClick = MoveUpItem
TabOrder = 2
AnchorSideLeft.Control = FBtnDelete
AnchorSideLeft.Side = asrBottom
Left = 143
Height = 29
Top = 1
Width = 60
end
object FBtnDown: TButton
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'FBtnDown'
OnClick = MoveDownItem
TabOrder = 3
AnchorSideLeft.Control = FBtnUp
AnchorSideLeft.Side = asrBottom
Left = 203
Height = 29
Top = 1
Width = 74
end
object FBtnModify: TButton
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'FBtnModify'
OnClick = ModifyItem
TabOrder = 4
AnchorSideLeft.Control = FBtnDown
AnchorSideLeft.Side = asrBottom
Left = 277
Height = 29
Top = 1
Width = 77
end
end
object FPanelOKCancel: TPanel
Align = alBottom
AutoSize = True
ClientHeight = 36
ClientWidth = 395
TabOrder = 1
Height = 36
Top = 263
Width = 395
object FBtnOK: TBitBtn
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = '&OK'
Default = True
Kind = bkOK
ModalResult = 1
NumGlyphs = 0
TabOrder = 0
Left = 1
Height = 34
Top = 1
Width = 68
end
object FBtnCancel: TBitBtn
AutoSize = True
BorderSpacing.InnerBorder = 2
Caption = 'Cancel'
Kind = bkCancel
ModalResult = 2
NumGlyphs = 0
TabOrder = 1
AnchorSideLeft.Control = FBtnOK
AnchorSideLeft.Side = asrBottom
Left = 69
Height = 34
Top = 1
Width = 80
end
end
object FCheck: TCheckListBox
Align = alClient
TabOrder = 2
Height = 232
Top = 31
Width = 395
end
end

View File

@ -0,0 +1,40 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TCheckListBoxEditorDlg','FORMDATA',[
'TPF0'#22'TCheckListBoxEditorDlg'#21'CheckListBoxEditorDlg'#13'ActiveControl'
+#7#7'FBtnAdd'#8'AutoSize'#9#11'BorderStyle'#7#8'bsDialog'#7'Caption'#6#21'Ch'
+'eckListBoxEditorDlg'#12'ClientHeight'#3'+'#1#11'ClientWidth'#3#139#1#13'Pix'
+'elsPerInch'#2'`'#8'Position'#7#14'poScreenCenter'#18'HorzScrollBar.Page'#3
+#138#1#18'VertScrollBar.Page'#3'*'#1#4'Left'#3'"'#1#6'Height'#3'+'#1#3'Top'#3
+#149#0#5'Width'#3#139#1#0#6'TPanel'#13'FPanelButtons'#5'Align'#7#5'alTop'#8
+'AutoSize'#9#12'ClientHeight'#2#31#11'ClientWidth'#3#139#1#8'TabOrder'#2#0#6
+'Height'#2#31#5'Width'#3#139#1#0#7'TButton'#7'FBtnAdd'#8'AutoSize'#9#25'Bord'
+'erSpacing.InnerBorder'#2#2#7'Caption'#6#7'FBtnAdd'#7'OnClick'#7#7'AddItem'#8
+'TabOrder'#2#0#4'Left'#2#1#6'Height'#2#29#3'Top'#2#1#5'Width'#2'A'#0#0#7'TBu'
+'tton'#10'FBtnDelete'#8'AutoSize'#9#25'BorderSpacing.InnerBorder'#2#2#7'Capt'
+'ion'#6#10'FBtnDelete'#7'OnClick'#7#10'DeleteItem'#8'TabOrder'#2#1#22'Anchor'
+'SideLeft.Control'#7#7'FBtnAdd'#19'AnchorSideLeft.Side'#7#9'asrBottom'#4'Lef'
+'t'#2'B'#6'Height'#2#29#3'Top'#2#1#5'Width'#2'M'#0#0#7'TButton'#6'FBtnUp'#8
+'AutoSize'#9#25'BorderSpacing.InnerBorder'#2#2#7'Caption'#6#6'FBtnUp'#7'OnCl'
+'ick'#7#10'MoveUpItem'#8'TabOrder'#2#2#22'AnchorSideLeft.Control'#7#10'FBtnD'
+'elete'#19'AnchorSideLeft.Side'#7#9'asrBottom'#4'Left'#3#143#0#6'Height'#2#29
+#3'Top'#2#1#5'Width'#2'<'#0#0#7'TButton'#8'FBtnDown'#8'AutoSize'#9#25'Border'
+'Spacing.InnerBorder'#2#2#7'Caption'#6#8'FBtnDown'#7'OnClick'#7#12'MoveDownI'
+'tem'#8'TabOrder'#2#3#22'AnchorSideLeft.Control'#7#6'FBtnUp'#19'AnchorSideLe'
+'ft.Side'#7#9'asrBottom'#4'Left'#3#203#0#6'Height'#2#29#3'Top'#2#1#5'Width'#2
+'J'#0#0#7'TButton'#10'FBtnModify'#8'AutoSize'#9#25'BorderSpacing.InnerBorder'
+#2#2#7'Caption'#6#10'FBtnModify'#7'OnClick'#7#10'ModifyItem'#8'TabOrder'#2#4
+#22'AnchorSideLeft.Control'#7#8'FBtnDown'#19'AnchorSideLeft.Side'#7#9'asrBot'
+'tom'#4'Left'#3#21#1#6'Height'#2#29#3'Top'#2#1#5'Width'#2'M'#0#0#0#6'TPanel'
+#14'FPanelOKCancel'#5'Align'#7#8'alBottom'#8'AutoSize'#9#12'ClientHeight'#2
+'$'#11'ClientWidth'#3#139#1#8'TabOrder'#2#1#6'Height'#2'$'#3'Top'#3#7#1#5'Wi'
+'dth'#3#139#1#0#7'TBitBtn'#6'FBtnOK'#8'AutoSize'#9#25'BorderSpacing.InnerBor'
+'der'#2#2#7'Caption'#6#3'&OK'#7'Default'#9#4'Kind'#7#4'bkOK'#11'ModalResult'
+#2#1#9'NumGlyphs'#2#0#8'TabOrder'#2#0#4'Left'#2#1#6'Height'#2'"'#3'Top'#2#1#5
+'Width'#2'D'#0#0#7'TBitBtn'#10'FBtnCancel'#8'AutoSize'#9#25'BorderSpacing.In'
+'nerBorder'#2#2#7'Caption'#6#6'Cancel'#4'Kind'#7#8'bkCancel'#11'ModalResult'
+#2#2#9'NumGlyphs'#2#0#8'TabOrder'#2#1#22'AnchorSideLeft.Control'#7#6'FBtnOK'
+#19'AnchorSideLeft.Side'#7#9'asrBottom'#4'Left'#2'E'#6'Height'#2'"'#3'Top'#2
+#1#5'Width'#2'P'#0#0#0#13'TCheckListBox'#6'FCheck'#5'Align'#7#8'alClient'#8
+'TabOrder'#2#2#6'Height'#3#232#0#3'Top'#2#31#5'Width'#3#139#1#0#0#0
]);

View File

@ -25,9 +25,9 @@ unit ComponentEditors;
interface interface
uses uses
Classes, SysUtils, TypInfo, LCLProc, Forms, Controls, Menus, ExtCtrls, Classes, SysUtils, LResources, TypInfo, LCLProc, Forms, Controls, Menus,
Graphics, Grids, CheckLst, Buttons, ComCtrls, Dialogs, GraphType, ExtCtrls, StdCtrls, Graphics, Grids, CheckLst, Buttons, ComCtrls, Dialogs,
PropEdits, ObjInspStrConsts; GraphType, PropEdits, ObjInspStrConsts;
type type
{ TComponentEditorDesigner } { TComponentEditorDesigner }
@ -341,7 +341,6 @@ type
implementation implementation
{ RegisterComponentEditor } { RegisterComponentEditor }
type type
PComponentClassRec = ^TComponentClassRec; PComponentClassRec = ^TComponentClassRec;
@ -915,143 +914,30 @@ end;
{ TCheckListBoxEditorDlg } { TCheckListBoxEditorDlg }
Type type
TCheckListBoxEditorDlg=Class(TForm)
private TCheckListBoxEditorDlg = class(TForm)
FCheck: TCheckListBox; FCheck: TCheckListBox;
FBtnAdd,FBtnDelete,FBtnUp,FBtnDown,FBtnModify:TButton; FBtnCancel: TBitBtn;
FBtnOK,FBtnCancel:TBitBtn; FBtnOK: TBitBtn;
FPanelButtons:TPanel; FBtnModify: TButton;
FPanelOKCancel:TPanel; FBtnDown: TButton;
protected FBtnUp: TButton;
procedure AddItem(Sender:TObject); FBtnDelete: TButton;
procedure DeleteItem(Sender:TObject); FBtnAdd: TButton;
procedure MoveUpItem(Sender:TObject); FPanelButtons: TPanel;
procedure MoveDownItem(Sender:TObject); FPanelOKCancel: TPanel;
procedure ModifyItem(Sender:TObject); procedure AddItem(Sender: TObject);
procedure DeleteItem(Sender: TObject);
procedure ModifyItem(Sender: TObject);
procedure MoveDownItem(Sender: TObject);
procedure MoveUpItem(Sender: TObject);
private
{ private declarations }
public public
constructor create(AOwner: TComponent); override; { public declarations }
destructor Destroy; override;
property Check: TCheckListBox read FCheck write FCheck;
end; end;
constructor TCheckListBoxEditorDlg.create(AOwner: TComponent);
begin
inherited create(AOwner);
BorderStyle:=bsDialog;
Position:=poScreenCenter;
Caption:=clbCheckListBoxEditor;
SetBounds(0,0,200,300);
FPanelButtons:=TPanel.Create(Self);
with FPanelButtons do begin
Parent:=Self;
Align:=alTop;
BevelInner:=bvLowered;
BevelOuter:=bvSpace;
AutoSize:=true;
end;
//Button Add
FBtnAdd:=TButton.Create(self);
with FBtnAdd do begin
Caption:=oiscAdd;
Parent:=FPanelButtons;
OnClick:=@AddItem;
AutoSize:=true;
Top:=0;
end;
//Button Delete
FBtnDelete:=TButton.Create(self);
with FBtnDelete do begin
Caption:=oiscDelete;
Parent:=FPanelButtons;
OnClick:=@DeleteItem;
AutoSize:=true;
AnchorToCompanion(akLeft,0,FBtnAdd);
end;
//Button Up
FBtnUp:=TButton.Create(self);
with FBtnUp do begin
Caption:=clbUp;
Parent:=FPanelButtons;
OnClick:=@MoveUpItem;
AutoSize:=true;
AnchorToCompanion(akLeft,0,FBtnDelete);
end;
//Button Down
FBtnDown:=TButton.Create(self);
with FBtnDown do begin
Caption:=clbDown;
Parent:=FPanelButtons;
OnClick:=@MoveDownItem;
AutoSize:=true;
AnchorToCompanion(akLeft,0,FBtnUp);
end;
//Button Modify
FBtnModify:=TButton.Create(self);
with FBtnModify do begin
Caption:='...';
Parent:=FPanelButtons;
ShowHint:=true;
Hint:=clbModify;
OnClick:=@ModifyItem;
AutoSize:=true;
AnchorToCompanion(akLeft,0,FBtnDown);
end;
FCheck:=TCheckListBox.Create(Self);
with FCheck do begin
Parent:=Self;
Align:=alClient;
end;
FPanelOKCancel:=TPanel.Create(Self);
with FPanelOKCancel do begin
Parent:=Self;
Align:=alBottom;
BevelInner:=bvLowered;
BevelOuter:=bvSpace;
AutoSize:=true;
end;
//Btn Ok
FBtnOK:=TBitBtn.Create(self);
with FBtnOK do begin
Parent:=FPanelOKCancel;
Kind:=bkOk;
AutoSize:=true;
end;
//Btn Cancel
FBtnCancel:=TBitBtn.Create(self);
with FBtnCancel do begin
Parent:=FPanelOKCancel;
Kind:=bkCancel;
AutoSize:=true;
AnchorToCompanion(akLeft,0,FBtnOK);
end;
end;
destructor TCheckListBoxEditorDlg.Destroy;
begin
FreeThenNil(FCheck);
FreeThenNil(FBtnAdd);
FreeThenNil(FBtnDelete);
FreeThenNil(FBtnUp);
FreeThenNil(FBtnDown);
FreeThenNil(FBtnModify);
FreeThenNil(FBtnOK);
FreeThenNil(FBtnCancel);
FreeThenNil(FPanelOKCancel);
FreeThenNil(FPanelButtons);
inherited Destroy
end;
procedure TCheckListBoxEditorDlg.AddItem(Sender:TObject); procedure TCheckListBoxEditorDlg.AddItem(Sender:TObject);
var strItem:string; var strItem:string;
begin begin
@ -1104,11 +990,22 @@ end;
{ TCheckListBoxComponentEditor } { TCheckListBoxComponentEditor }
procedure TCheckListBoxComponentEditor.DoShowEditor; procedure TCheckListBoxComponentEditor.DoShowEditor;
var Dlg : TCheckListBoxEditorDlg; var Dlg: TCheckListBoxEditorDlg;
Hook: TPropertyEditorHook; Hook: TPropertyEditorHook;
aCheck: TCheckListBox; aCheck: TCheckListBox;
begin begin
Dlg:=TCheckListBoxEditorDlg.Create(nil); Dlg:=TCheckListBoxEditorDlg.Create(nil);
with Dlg do begin
Caption:=clbCheckListBoxEditor;
FBtnAdd.Caption:=oiscAdd;
FBtnDelete.Caption:=oiscDelete;
FBtnUp.Caption:=clbUp;
FBtnDown.Caption:=clbDown;
FBtnModify.Caption:='...';
FBtnModify.ShowHint:=true;
FBtnModify.Hint:=clbModify;
end;
try try
if GetComponent is TCheckListBox then begin if GetComponent is TCheckListBox then begin
aCheck:=TCheckListBox(GetComponent); aCheck:=TCheckListBox(GetComponent);
@ -1158,154 +1055,36 @@ end;
{ TCheckGroupEditorDlg } { TCheckGroupEditorDlg }
Type type
TCheckGroupEditorDlg=Class(TForm)
private TCheckGroupEditorDlg = class(TForm)
FBtnAdd: TButton;
FBtnCancel: TBitBtn;
FBtnDelete: TButton;
FBtnDown: TButton;
FBtnModify: TButton;
FBtnOK: TBitBtn;
FBtnUp: TButton;
FCheck: TCheckGroup; FCheck: TCheckGroup;
FBtnAdd,FBtnDelete,FBtnUp,FBtnDown,FBtnModify:TButton; FPanelButtons: TPanel;
FBtnOK,FBtnCancel:TBitBtn; FPanelOKCancel: TPanel;
FPanelButtons:TPanel; FPopupMenu: TPopupMenu;
FPanelOKCancel:TPanel; LabelDisable: TLabel;
FPopupMenu:TPopupMenu; procedure AddItem(Sender: TObject);
ItemIndex:integer; procedure CreateItems(Sender: TObject);
protected procedure DeleteItem(Sender: TObject);
procedure AddItem(Sender:TObject);
procedure DeleteItem(Sender:TObject);
procedure MoveUpItem(Sender:TObject);
procedure MoveDownItem(Sender:TObject);
procedure ModifyItem(Sender:TObject);
procedure ItemClick(Sender: TObject; Index: integer); procedure ItemClick(Sender: TObject; Index: integer);
procedure ModifyItem(Sender: TObject);
procedure MoveDownItem(Sender: TObject);
procedure MoveUpItem(Sender: TObject);
procedure EnableDisable(Sender:TObject); procedure EnableDisable(Sender:TObject);
procedure CreateItems(Sender:TObject); private
{ private declarations }
ItemIndex:integer;
public public
constructor create(AOwner: TComponent); override; { public declarations }
destructor Destroy; override;
property Check: TCheckGroup read FCheck write FCheck;
end; end;
constructor TCheckGroupEditorDlg.Create(AOwner: TComponent);
begin
inherited create(AOwner);
BorderStyle:=bsDialog;
Position:=poScreenCenter;
Caption:=clbCheckGroupEditor;
SetBounds(0,0,200,300);
ItemIndex:=-1;
FPanelButtons:=TPanel.Create(Self);
with FPanelButtons do begin
Parent:=Self;
Align:=alTop;
BevelInner:=bvLowered;
BevelOuter:=bvSpace;
Height:=25;
end;
//Button Add
FBtnAdd:=TButton.Create(self);
with FBtnAdd do begin
Parent:=FPanelButtons;
Align:=alLeft;
Width:=43;
Caption:=oiscAdd;
OnClick:=@AddItem;
end;
//Button Delete
FBtnDelete:=TButton.Create(self);
with FBtnDelete do begin
Parent:=FPanelButtons;
Align:=alLeft;
Width:=43;
Caption:=oiscDelete;
OnClick:=@DeleteItem;
end;
//Button Up
FBtnUp:=TButton.Create(self);
with FBtnUp do begin
Parent:=FPanelButtons;
Align:=alLeft;
Width:=43;
Caption:=clbUp;
OnClick:=@MoveUpItem;
end;
//Button Down
FBtnDown:=TButton.Create(self);
with FBtnDown do begin
Parent:=FPanelButtons;
Align:=alLeft;
Width:=43;
Caption:=clbDown;
OnClick:=@MoveDownItem;
end;
//Button Modify
FBtnModify:=TButton.Create(self);
with FBtnModify do begin
Parent:=FPanelButtons;
Align:=alClient;
ShowHint:=true;
Hint:=clbModify;
Caption:='...';
OnClick:=@ModifyItem;
end;
FCheck:=TCheckGroup.Create(Self);
with FCheck do begin
Parent:=Self;
Align:=alClient;
OnItemClick:=@ItemClick;
end;
FPanelOKCancel:=TPanel.Create(Self);
with FPanelOKCancel do begin
Parent:=Self;
Align:=alBottom;
BevelInner:=bvLowered;
BevelOuter:=bvSpace;
Height:=25;
end;
FPopupMenu:=TPopupMenu.Create(Self);
FPopupMenu.OnPopup:=@CreateItems;
FCheck.PopupMenu:=FPopupMenu;
//Bnt Ok
FBtnOK:=TBitBtn.Create(self);
with FBtnOK do begin
Parent:=FPanelOKCancel;
Align:=alLeft;
Kind:=bkOk;
end;
//Bnt Cancel
FBtnCancel:=TBitBtn.Create(self);
with FBtnCancel do begin
Parent:=FPanelOKCancel;
Align:=alRight;
Kind:=bkCancel;
end;
end;
destructor TCheckGroupEditorDlg.Destroy;
begin
FreeThenNil(FCheck);
FreeThenNil(FBtnAdd);
FreeThenNil(FBtnDelete);
FreeThenNil(FBtnUp);
FreeThenNil(FBtnDown);
FreeThenNil(FBtnModify);
FreeThenNil(FBtnOK);
FreeThenNil(FBtnCancel);
FreeThenNil(FPanelOKCancel);
FreeThenNil(FPanelButtons);
FreeThenNil(FPopupMenu);
inherited Destroy
end;
procedure TCheckGroupEditorDlg.AddItem(Sender:TObject); procedure TCheckGroupEditorDlg.AddItem(Sender:TObject);
var strItem:string; var strItem:string;
begin begin
@ -1402,6 +1181,19 @@ var Dlg : TCheckGroupEditorDlg;
aCheck: TCheckGroup; aCheck: TCheckGroup;
begin begin
Dlg:=TCheckGroupEditorDlg.Create(nil); Dlg:=TCheckGroupEditorDlg.Create(nil);
with Dlg do begin
Caption:=clbCheckGroupEditor;
ItemIndex:=-1;
FBtnAdd.Caption:=oiscAdd;
FBtnDelete.Caption:=oiscDelete;
FBtnUp.Caption:=clbUp;
FBtnDown.Caption:=clbDown;
FBtnModify.ShowHint:=true;
FBtnModify.Hint:=clbModify;
FBtnModify.Caption:='...';
LabelDisable.Caption:=clbDisable
end;
try try
if GetComponent is TCheckGroup then begin if GetComponent is TCheckGroup then begin
aCheck:=TCheckGroup(GetComponent); aCheck:=TCheckGroup(GetComponent);
@ -1549,6 +1341,9 @@ begin
end; end;
initialization initialization
{$I checklistboxeditordlg.lrs}
{$I checkgroupeditordlg.lrs}
RegisterComponentEditorProc:=@DefaultRegisterComponentEditorProc; RegisterComponentEditorProc:=@DefaultRegisterComponentEditorProc;
RegisterComponentEditor(TCustomNotebook,TNotebookComponentEditor); RegisterComponentEditor(TCustomNotebook,TNotebookComponentEditor);
RegisterComponentEditor(TCustomPage,TPageComponentEditor); RegisterComponentEditor(TCustomPage,TPageComponentEditor);

View File

@ -131,6 +131,7 @@ resourcestring
//checkgroup editor //checkgroup editor
clbCheckGroupEditor = 'CheckGroup Editor'; clbCheckGroupEditor = 'CheckGroup Editor';
clbDisable = 'Popup to disable/enable items';
// Collection Editor // Collection Editor