checklistbox editor:

- show toolbutton hints
- handle enabled state of toolbuttons

git-svn-id: trunk@13362 -
This commit is contained in:
paul 2007-12-18 01:58:35 +00:00
parent 766eb9acd2
commit 9cff00c297
3 changed files with 70 additions and 36 deletions

View File

@ -20,6 +20,7 @@ object CheckListBoxEditorDlg: TCheckListBoxEditorDlg
Top = 24
Width = 445
Align = alClient
OnClick = FCheckClick
TabOrder = 0
end
object FPanelOKCancel: TPanel
@ -107,12 +108,17 @@ object CheckListBoxEditorDlg: TCheckListBoxEditorDlg
Left = 1
Top = 2
Caption = 'tbAdd'
ParentShowHint = False
ShowHint = True
OnClick = AddItem
end
object tbDelete: TToolButton
Left = 24
Top = 2
Caption = 'tbDelete'
Enabled = False
ParentShowHint = False
ShowHint = True
OnClick = DeleteItem
end
object ToolButton3: TToolButton
@ -126,12 +132,18 @@ object CheckListBoxEditorDlg: TCheckListBoxEditorDlg
Left = 56
Top = 2
Caption = 'tbUp'
Enabled = False
ParentShowHint = False
ShowHint = True
OnClick = MoveUpItem
end
object tbDown: TToolButton
Left = 79
Top = 2
Caption = 'tbDown'
Enabled = False
ParentShowHint = False
ShowHint = True
OnClick = MoveDownItem
end
object ToolButton6: TToolButton
@ -145,6 +157,9 @@ object CheckListBoxEditorDlg: TCheckListBoxEditorDlg
Left = 112
Top = 2
Caption = 'tbEdit'
Enabled = False
ParentShowHint = False
ShowHint = True
OnClick = ModifyItem
end
end

View File

@ -8,40 +8,44 @@ LazarusResources.Add('TCheckListBoxEditorDlg','FORMDATA',[
+'kListBoxEditorDlg'#12'ClientHeight'#3'&'#1#11'ClientWidth'#3#189#1#21'Const'
+'raints.MinHeight'#2'd'#20'Constraints.MinWidth'#3#200#0#8'OnCreate'#7#10'Fo'
+'rmCreate'#8'Position'#7#14'poScreenCenter'#0#13'TCheckListBox'#6'FCheck'#6
+'Height'#3#234#0#3'Top'#2#24#5'Width'#3#189#1#5'Align'#7#8'alClient'#8'TabOr'
+'der'#2#0#0#0#6'TPanel'#14'FPanelOKCancel'#6'Height'#2'$'#3'Top'#3#2#1#5'Wid'
+'th'#3#189#1#5'Align'#7#8'alBottom'#10'BevelInner'#7#9'bvLowered'#12'ClientH'
+'eight'#2'$'#11'ClientWidth'#3#189#1#8'TabOrder'#2#1#0#7'TBitBtn'#7'BtnHelp'
+#23'AnchorSideRight.Control'#7#14'FPanelOKCancel'#20'AnchorSideRight.Side'#7
+#9'asrBottom'#24'AnchorSideBottom.Control'#7#14'FPanelOKCancel'#21'AnchorSid'
+'eBottom.Side'#7#9'asrBottom'#4'Left'#3'l'#1#6'Height'#2#25#3'Top'#2#5#5'Wid'
+'th'#2'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#20'BorderSpacing.Around'#2#6
+#7'Caption'#6#5'&Help'#4'Kind'#7#6'bkHelp'#9'NumGlyphs'#2#0#8'TabOrder'#2#0#0
+#0#7'TBitBtn'#8'BtnApply'#23'AnchorSideRight.Control'#7#7'BtnHelp'#24'Anchor'
+'SideBottom.Control'#7#14'FPanelOKCancel'#21'AnchorSideBottom.Side'#7#9'asrB'
+'ottom'#4'Left'#3#27#1#6'Height'#2#25#3'Top'#2#5#5'Width'#2'K'#7'Anchors'#11
+#7'akRight'#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#6'&Apply'
+#9'NumGlyphs'#2#0#7'OnClick'#7#10'ApplyCheck'#8'TabOrder'#2#1#0#0#7'TBitBtn'
+#9'BtnCancel'#23'AnchorSideRight.Control'#7#8'BtnApply'#24'AnchorSideBottom.'
+'Control'#7#14'FPanelOKCancel'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Le'
+'ft'#3#202#0#6'Height'#2#25#3'Top'#2#5#5'Width'#2'K'#7'Anchors'#11#7'akRight'
+#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#6'Cancel'#4'Kind'#7
+#8'bkCancel'#11'ModalResult'#2#2#9'NumGlyphs'#2#0#8'TabOrder'#2#2#0#0#7'TBit'
+'Btn'#5'BtnOK'#23'AnchorSideRight.Control'#7#9'BtnCancel'#24'AnchorSideBotto'
+'m.Control'#7#14'FPanelOKCancel'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4
+'Left'#2'y'#6'Height'#2#25#3'Top'#2#5#5'Width'#2'K'#7'Anchors'#11#7'akRight'
+#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#3'&OK'#7'Default'#9
+#4'Kind'#7#4'bkOK'#11'ModalResult'#2#1#9'NumGlyphs'#2#0#8'TabOrder'#2#3#0#0#0
+#8'TToolBar'#7'ToolBar'#6'Height'#2#24#5'Width'#3#189#1#8'AutoSize'#9#7'Capt'
+'ion'#6#7'ToolBar'#4'Flat'#9#8'TabOrder'#2#2#0#11'TToolButton'#5'tbAdd'#4'Le'
+'ft'#2#1#3'Top'#2#2#7'Caption'#6#5'tbAdd'#7'OnClick'#7#7'AddItem'#0#0#11'TTo'
+'olButton'#8'tbDelete'#4'Left'#2#24#3'Top'#2#2#7'Caption'#6#8'tbDelete'#7'On'
+'Click'#7#10'DeleteItem'#0#0#11'TToolButton'#11'ToolButton3'#4'Left'#2'/'#3
+'Top'#2#2#5'Width'#2#9#7'Caption'#6#11'ToolButton3'#5'Style'#7#10'tbsDivider'
+#0#0#11'TToolButton'#4'tbUp'#4'Left'#2'8'#3'Top'#2#2#7'Caption'#6#4'tbUp'#7
+'OnClick'#7#10'MoveUpItem'#0#0#11'TToolButton'#6'tbDown'#4'Left'#2'O'#3'Top'
+#2#2#7'Caption'#6#6'tbDown'#7'OnClick'#7#12'MoveDownItem'#0#0#11'TToolButton'
+#11'ToolButton6'#4'Left'#2'f'#3'Top'#2#2#5'Width'#2#10#7'Caption'#6#11'ToolB'
+'utton6'#5'Style'#7#10'tbsDivider'#0#0#11'TToolButton'#6'tbEdit'#4'Left'#2'p'
+#3'Top'#2#2#7'Caption'#6#6'tbEdit'#7'OnClick'#7#10'ModifyItem'#0#0#0#0
+'Height'#3#234#0#3'Top'#2#24#5'Width'#3#189#1#5'Align'#7#8'alClient'#7'OnCli'
+'ck'#7#11'FCheckClick'#8'TabOrder'#2#0#0#0#6'TPanel'#14'FPanelOKCancel'#6'He'
+'ight'#2'$'#3'Top'#3#2#1#5'Width'#3#189#1#5'Align'#7#8'alBottom'#10'BevelInn'
+'er'#7#9'bvLowered'#12'ClientHeight'#2'$'#11'ClientWidth'#3#189#1#8'TabOrder'
+#2#1#0#7'TBitBtn'#7'BtnHelp'#23'AnchorSideRight.Control'#7#14'FPanelOKCancel'
+#20'AnchorSideRight.Side'#7#9'asrBottom'#24'AnchorSideBottom.Control'#7#14'F'
+'PanelOKCancel'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3'l'#1#6'He'
+'ight'#2#25#3'Top'#2#5#5'Width'#2'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0
+#20'BorderSpacing.Around'#2#6#7'Caption'#6#5'&Help'#4'Kind'#7#6'bkHelp'#9'Nu'
+'mGlyphs'#2#0#8'TabOrder'#2#0#0#0#7'TBitBtn'#8'BtnApply'#23'AnchorSideRight.'
+'Control'#7#7'BtnHelp'#24'AnchorSideBottom.Control'#7#14'FPanelOKCancel'#21
+'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3#27#1#6'Height'#2#25#3'Top'#2
+#5#5'Width'#2'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#20'BorderSpacing.Aro'
+'und'#2#6#7'Caption'#6#6'&Apply'#9'NumGlyphs'#2#0#7'OnClick'#7#10'ApplyCheck'
+#8'TabOrder'#2#1#0#0#7'TBitBtn'#9'BtnCancel'#23'AnchorSideRight.Control'#7#8
+'BtnApply'#24'AnchorSideBottom.Control'#7#14'FPanelOKCancel'#21'AnchorSideBo'
+'ttom.Side'#7#9'asrBottom'#4'Left'#3#202#0#6'Height'#2#25#3'Top'#2#5#5'Width'
+#2'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7
+'Caption'#6#6'Cancel'#4'Kind'#7#8'bkCancel'#11'ModalResult'#2#2#9'NumGlyphs'
+#2#0#8'TabOrder'#2#2#0#0#7'TBitBtn'#5'BtnOK'#23'AnchorSideRight.Control'#7#9
+'BtnCancel'#24'AnchorSideBottom.Control'#7#14'FPanelOKCancel'#21'AnchorSideB'
+'ottom.Side'#7#9'asrBottom'#4'Left'#2'y'#6'Height'#2#25#3'Top'#2#5#5'Width'#2
+'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7'Ca'
+'ption'#6#3'&OK'#7'Default'#9#4'Kind'#7#4'bkOK'#11'ModalResult'#2#1#9'NumGly'
+'phs'#2#0#8'TabOrder'#2#3#0#0#0#8'TToolBar'#7'ToolBar'#6'Height'#2#24#5'Widt'
+'h'#3#189#1#8'AutoSize'#9#7'Caption'#6#7'ToolBar'#4'Flat'#9#8'TabOrder'#2#2#0
+#11'TToolButton'#5'tbAdd'#4'Left'#2#1#3'Top'#2#2#7'Caption'#6#5'tbAdd'#14'Pa'
+'rentShowHint'#8#8'ShowHint'#9#7'OnClick'#7#7'AddItem'#0#0#11'TToolButton'#8
+'tbDelete'#4'Left'#2#24#3'Top'#2#2#7'Caption'#6#8'tbDelete'#7'Enabled'#8#14
+'ParentShowHint'#8#8'ShowHint'#9#7'OnClick'#7#10'DeleteItem'#0#0#11'TToolBut'
+'ton'#11'ToolButton3'#4'Left'#2'/'#3'Top'#2#2#5'Width'#2#9#7'Caption'#6#11'T'
+'oolButton3'#5'Style'#7#10'tbsDivider'#0#0#11'TToolButton'#4'tbUp'#4'Left'#2
+'8'#3'Top'#2#2#7'Caption'#6#4'tbUp'#7'Enabled'#8#14'ParentShowHint'#8#8'Show'
+'Hint'#9#7'OnClick'#7#10'MoveUpItem'#0#0#11'TToolButton'#6'tbDown'#4'Left'#2
+'O'#3'Top'#2#2#7'Caption'#6#6'tbDown'#7'Enabled'#8#14'ParentShowHint'#8#8'Sh'
+'owHint'#9#7'OnClick'#7#12'MoveDownItem'#0#0#11'TToolButton'#11'ToolButton6'
+#4'Left'#2'f'#3'Top'#2#2#5'Width'#2#10#7'Caption'#6#11'ToolButton6'#5'Style'
+#7#10'tbsDivider'#0#0#11'TToolButton'#6'tbEdit'#4'Left'#2'p'#3'Top'#2#2#7'Ca'
+'ption'#6#6'tbEdit'#7'Enabled'#8#14'ParentShowHint'#8#8'ShowHint'#9#7'OnClic'
+'k'#7#10'ModifyItem'#0#0#0#0
]);

View File

@ -42,6 +42,7 @@ type
tbEdit: TToolButton;
procedure AddItem(Sender: TObject);
procedure DeleteItem(Sender: TObject);
procedure FCheckClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ModifyItem(Sender: TObject);
procedure MoveDownItem(Sender: TObject);
@ -50,6 +51,7 @@ type
private
{ private declarations }
FModified: Boolean;
procedure Change;
public
{ public declarations }
property Modified: Boolean read FModified write FModified;
@ -94,6 +96,11 @@ begin
FCheck.Items.Delete(FCheck.ItemIndex);
end;
procedure TCheckListBoxEditorDlg.FCheckClick(Sender: TObject);
begin
Change;
end;
procedure TCheckListBoxEditorDlg.FormCreate(Sender: TObject);
begin
ToolBar.Images := IDEImages.Images_16;
@ -161,6 +168,14 @@ begin
end;
end;
procedure TCheckListBoxEditorDlg.Change;
begin
tbDelete.Enabled := FCheck.ItemIndex <> -1;
tbEdit.Enabled := FCheck.ItemIndex <> -1;
tbUp.Enabled := (FCheck.ItemIndex <> -1) and (FCheck.ItemIndex > 0);
tbDown.Enabled := (FCheck.ItemIndex <> -1) and (FCheck.ItemIndex < FCheck.Count - 1);
end;
initialization
{$I checklistboxeditordlg.lrs}