- correct hints of CheckListBox editor
- improve look and feel of CheckGroup editor

git-svn-id: trunk@15327 -
This commit is contained in:
paul 2008-06-06 02:36:55 +00:00
parent 57660dab8c
commit 31b6def3f0
6 changed files with 404 additions and 307 deletions

View File

@ -1,27 +1,28 @@
object CheckGroupEditorDlg: TCheckGroupEditorDlg
Left = 238
Left = 394
Height = 300
Top = 170
Top = 195
Width = 608
HorzScrollBar.Page = 607
VertScrollBar.Page = 299
ActiveControl = BtnAdd
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'CheckGroupEditorDlg'
ClientHeight = 300
ClientWidth = 608
OnCreate = FormCreate
LCLVersion = '0.9.25'
object ColumnsLabel: TLabel
Left = 369
Height = 20
Height = 14
Top = 80
Width = 91
Width = 66
Caption = 'ColumnsLabel'
ParentColor = False
end
object FCheck: TCheckGroup
Height = 217
Top = 35
Height = 236
Top = 26
Width = 360
Align = alLeft
AutoFill = True
@ -38,112 +39,16 @@ object CheckGroupEditorDlg: TCheckGroupEditorDlg
PopupMenu = FPopupMenu
TabOrder = 0
end
object FPanelButtons: TPanel
Height = 35
Width = 608
Align = alTop
AutoSize = True
BevelInner = bvLowered
ClientHeight = 35
ClientWidth = 608
TabOrder = 1
object LabelDisable: TLabel
AnchorSideLeft.Control = BtnModify
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = BtnModify
AnchorSideTop.Side = asrCenter
Left = 355
Height = 20
Top = 10
Width = 82
BorderSpacing.Left = 6
Caption = 'LabelDisable'
Font.Color = clHotLight
ParentColor = False
end
object BtnAdd: TButton
AnchorSideLeft.Control = FPanelButtons
AnchorSideTop.Control = FPanelButtons
Left = 6
Height = 29
Top = 6
Width = 59
AutoSize = True
BorderSpacing.Left = 6
BorderSpacing.Top = 6
Caption = 'BtnAdd'
OnClick = AddItem
TabOrder = 0
end
object BtnDelete: TButton
AnchorSideLeft.Control = BtnAdd
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = FPanelButtons
Left = 65
Height = 29
Top = 6
Width = 76
AutoSize = True
BorderSpacing.Top = 6
Caption = 'BtnDelete'
OnClick = DeleteItem
TabOrder = 1
end
object BtnUp: TButton
AnchorSideLeft.Control = BtnDelete
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = FPanelButtons
Left = 147
Height = 29
Top = 6
Width = 52
AutoSize = True
BorderSpacing.Left = 6
BorderSpacing.Top = 6
Caption = 'BtnUp'
OnClick = MoveUpItem
TabOrder = 2
end
object BtnDown: TButton
AnchorSideLeft.Control = BtnUp
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = FPanelButtons
Left = 199
Height = 29
Top = 6
Width = 69
AutoSize = True
BorderSpacing.Top = 6
Caption = 'BtnDown'
OnClick = MoveDownItem
TabOrder = 3
end
object BtnModify: TButton
AnchorSideLeft.Control = BtnDown
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = FPanelButtons
Left = 274
Height = 29
Top = 6
Width = 75
AutoSize = True
BorderSpacing.Left = 6
BorderSpacing.Top = 6
Caption = 'BtnModify'
OnClick = ModifyItem
TabOrder = 4
end
end
object FPanelOKCancel: TPanel
Height = 48
Top = 252
Height = 38
Top = 262
Width = 608
Align = alBottom
AutoSize = True
BevelInner = bvLowered
ClientHeight = 48
ClientHeight = 38
ClientWidth = 608
TabOrder = 2
TabOrder = 1
object BtnHelp: TBitBtn
AnchorSideTop.Control = FPanelOKCancel
AnchorSideRight.Control = FPanelOKCancel
@ -151,7 +56,7 @@ object CheckGroupEditorDlg: TCheckGroupEditorDlg
AnchorSideBottom.Control = FPanelOKCancel
AnchorSideBottom.Side = asrBottom
Left = 512
Height = 36
Height = 26
Top = 6
Width = 90
Anchors = [akTop, akRight, akBottom]
@ -169,7 +74,7 @@ object CheckGroupEditorDlg: TCheckGroupEditorDlg
AnchorSideBottom.Control = FPanelOKCancel
AnchorSideBottom.Side = asrBottom
Left = 416
Height = 36
Height = 26
Top = 6
Width = 90
Anchors = [akTop, akRight, akBottom]
@ -187,7 +92,7 @@ object CheckGroupEditorDlg: TCheckGroupEditorDlg
AnchorSideBottom.Control = FPanelOKCancel
AnchorSideBottom.Side = asrBottom
Left = 320
Height = 36
Height = 26
Top = 6
Width = 90
Anchors = [akTop, akRight, akBottom]
@ -206,7 +111,7 @@ object CheckGroupEditorDlg: TCheckGroupEditorDlg
AnchorSideBottom.Control = FPanelOKCancel
AnchorSideBottom.Side = asrBottom
Left = 224
Height = 36
Height = 26
Top = 6
Width = 90
Anchors = [akTop, akRight, akBottom]
@ -225,7 +130,7 @@ object CheckGroupEditorDlg: TCheckGroupEditorDlg
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
Left = 368
Height = 22
Height = 19
Top = 48
Width = 234
Anchors = [akTop, akLeft, akRight]
@ -233,7 +138,7 @@ object CheckGroupEditorDlg: TCheckGroupEditorDlg
Caption = 'DuplicateCheckBox'
Checked = True
State = cbChecked
TabOrder = 3
TabOrder = 2
end
object ColumnsEdit: TEdit
Left = 368
@ -244,7 +149,7 @@ object CheckGroupEditorDlg: TCheckGroupEditorDlg
OnChange = ColumnsEditChange
OnKeyDown = nil
ReadOnly = True
TabOrder = 4
TabOrder = 3
Text = '1'
end
object ColumnsUpDown: TUpDown
@ -255,6 +160,79 @@ object CheckGroupEditorDlg: TCheckGroupEditorDlg
Associate = ColumnsEdit
Min = 1
Position = 1
TabOrder = 4
end
object ToolBar: TToolBar
Height = 26
Width = 608
Caption = 'ToolBar'
Flat = True
TabOrder = 5
object tbAdd: TToolButton
Left = 1
Top = 2
Caption = 'tbAdd'
ParentShowHint = False
ShowHint = True
OnClick = AddItem
end
object tbDelete: TToolButton
Left = 24
Top = 2
Caption = 'tbDelete'
ParentShowHint = False
ShowHint = True
OnClick = DeleteItem
end
object ToolButton3: TToolButton
Left = 47
Top = 2
Width = 3
Caption = 'ToolButton3'
Style = tbsDivider
end
object tbUp: TToolButton
Left = 50
Top = 2
Caption = 'tbUp'
ParentShowHint = False
ShowHint = True
OnClick = MoveUpItem
end
object tbDown: TToolButton
Left = 73
Top = 2
Caption = 'tbDown'
ParentShowHint = False
ShowHint = True
OnClick = MoveDownItem
end
object ToolButton6: TToolButton
Left = 96
Top = 2
Width = 3
Caption = 'ToolButton6'
Style = tbsDivider
end
object tbEdit: TToolButton
Left = 99
Top = 2
Caption = 'tbEdit'
ParentShowHint = False
ShowHint = True
OnClick = ModifyItem
end
object LabelDisable: TLabel
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Side = asrBottom
Left = 122
Height = 22
Top = 2
Width = 60
Caption = 'LabelDisable'
Font.Color = clHotLight
ParentColor = False
end
end
object FPopupMenu: TPopupMenu
OnPopup = CreateItems

View File

@ -1,87 +1,149 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TCheckGroupEditorDlg','FORMDATA',[
'TPF0'#20'TCheckGroupEditorDlg'#19'CheckGroupEditorDlg'#4'Left'#3#238#0#6'Hei'
+'ght'#3','#1#3'Top'#3#170#0#5'Width'#3'`'#2#18'HorzScrollBar.Page'#3'_'#2#18
+'VertScrollBar.Page'#3'+'#1#13'ActiveControl'#7#6'BtnAdd'#11'BorderIcons'#11
+#12'biSystemMenu'#0#11'BorderStyle'#7#8'bsDialog'#7'Caption'#6#19'CheckGroup'
+'EditorDlg'#12'ClientHeight'#3','#1#11'ClientWidth'#3'`'#2#0#6'TLabel'#12'Co'
+'lumnsLabel'#4'Left'#3'q'#1#6'Height'#2#20#3'Top'#2'P'#5'Width'#2'['#7'Capti'
+'on'#6#12'ColumnsLabel'#11'ParentColor'#8#0#0#11'TCheckGroup'#6'FCheck'#6'He'
+'ight'#3#217#0#3'Top'#2'#'#5'Width'#3'h'#1#5'Align'#7#6'alLeft'#8'AutoFill'#9
+#7'Caption'#6#6'FCheck'#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildSizing.'
+'TopBottomSpacing'#2#6#29'ChildSizing.EnlargeHorizontal'#7#24'crsHomogenousC'
+'hildResize'#27'ChildSizing.EnlargeVertical'#7#24'crsHomogenousChildResize'
+#28'ChildSizing.ShrinkHorizontal'#7#14'crsScaleChilds'#26'ChildSizing.Shrink'
+'Vertical'#7#14'crsScaleChilds'#18'ChildSizing.Layout'#7#29'cclLeftToRightTh'
+'enTopToBottom'#27'ChildSizing.ControlsPerLine'#2#1#11'OnItemClick'#7#9'Item'
+'Click'#9'PopupMenu'#7#10'FPopupMenu'#8'TabOrder'#2#0#0#0#6'TPanel'#13'FPane'
+'lButtons'#6'Height'#2'#'#5'Width'#3'`'#2#5'Align'#7#5'alTop'#8'AutoSize'#9
+#10'BevelInner'#7#9'bvLowered'#12'ClientHeight'#2'#'#11'ClientWidth'#3'`'#2#8
+'TabOrder'#2#1#0#6'TLabel'#12'LabelDisable'#22'AnchorSideLeft.Control'#7#9'B'
+'tnModify'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'#7
+#9'BtnModify'#18'AnchorSideTop.Side'#7#9'asrCenter'#4'Left'#3'c'#1#6'Height'
+#2#20#3'Top'#2#10#5'Width'#2'R'#18'BorderSpacing.Left'#2#6#7'Caption'#6#12'L'
+'abelDisable'#10'Font.Color'#7#10'clHotLight'#11'ParentColor'#8#0#0#7'TButto'
+'n'#6'BtnAdd'#22'AnchorSideLeft.Control'#7#13'FPanelButtons'#21'AnchorSideTo'
+'p.Control'#7#13'FPanelButtons'#4'Left'#2#6#6'Height'#2#29#3'Top'#2#6#5'Widt'
+'h'#2';'#8'AutoSize'#9#18'BorderSpacing.Left'#2#6#17'BorderSpacing.Top'#2#6#7
+'Caption'#6#6'BtnAdd'#7'OnClick'#7#7'AddItem'#8'TabOrder'#2#0#0#0#7'TButton'
+#9'BtnDelete'#22'AnchorSideLeft.Control'#7#6'BtnAdd'#19'AnchorSideLeft.Side'
+#7#9'asrBottom'#21'AnchorSideTop.Control'#7#13'FPanelButtons'#4'Left'#2'A'#6
+'Height'#2#29#3'Top'#2#6#5'Width'#2'L'#8'AutoSize'#9#17'BorderSpacing.Top'#2
+#6#7'Caption'#6#9'BtnDelete'#7'OnClick'#7#10'DeleteItem'#8'TabOrder'#2#1#0#0
+#7'TButton'#5'BtnUp'#22'AnchorSideLeft.Control'#7#9'BtnDelete'#19'AnchorSide'
+'Left.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'#7#13'FPanelButtons'#4'L'
+'eft'#3#147#0#6'Height'#2#29#3'Top'#2#6#5'Width'#2'4'#8'AutoSize'#9#18'Borde'
+'rSpacing.Left'#2#6#17'BorderSpacing.Top'#2#6#7'Caption'#6#5'BtnUp'#7'OnClic'
+'k'#7#10'MoveUpItem'#8'TabOrder'#2#2#0#0#7'TButton'#7'BtnDown'#22'AnchorSide'
+'Left.Control'#7#5'BtnUp'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSi'
+'deTop.Control'#7#13'FPanelButtons'#4'Left'#3#199#0#6'Height'#2#29#3'Top'#2#6
+#5'Width'#2'E'#8'AutoSize'#9#17'BorderSpacing.Top'#2#6#7'Caption'#6#7'BtnDow'
+'n'#7'OnClick'#7#12'MoveDownItem'#8'TabOrder'#2#3#0#0#7'TButton'#9'BtnModify'
+#22'AnchorSideLeft.Control'#7#7'BtnDown'#19'AnchorSideLeft.Side'#7#9'asrBott'
+'om'#21'AnchorSideTop.Control'#7#13'FPanelButtons'#4'Left'#3#18#1#6'Height'#2
+#29#3'Top'#2#6#5'Width'#2'K'#8'AutoSize'#9#18'BorderSpacing.Left'#2#6#17'Bor'
+'derSpacing.Top'#2#6#7'Caption'#6#9'BtnModify'#7'OnClick'#7#10'ModifyItem'#8
+'TabOrder'#2#4#0#0#0#6'TPanel'#14'FPanelOKCancel'#6'Height'#2'0'#3'Top'#3#252
+#0#5'Width'#3'`'#2#5'Align'#7#8'alBottom'#8'AutoSize'#9#10'BevelInner'#7#9'b'
+'vLowered'#12'ClientHeight'#2'0'#11'ClientWidth'#3'`'#2#8'TabOrder'#2#2#0#7
+'TBitBtn'#7'BtnHelp'#21'AnchorSideTop.Control'#7#14'FPanelOKCancel'#23'Ancho'
+'rSideRight.Control'#7#14'FPanelOKCancel'#20'AnchorSideRight.Side'#7#9'asrBo'
+'ttom'#24'AnchorSideBottom.Control'#7#14'FPanelOKCancel'#21'AnchorSideBottom'
+'.Side'#7#9'asrBottom'#4'Left'#3#0#2#6'Height'#2'$'#3'Top'#2#6#5'Width'#2'Z'
+#7'Anchors'#11#5'akTop'#7'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpac'
+'ing.Around'#2#6#7'Caption'#6#5'&Help'#20'Constraints.MinWidth'#2'Z'#4'Kind'
+#7#6'bkHelp'#9'NumGlyphs'#2#0#8'TabOrder'#2#0#0#0#7'TBitBtn'#8'BtnApply'#21
+'AnchorSideTop.Control'#7#14'FPanelOKCancel'#23'AnchorSideRight.Control'#7#7
+'BtnHelp'#24'AnchorSideBottom.Control'#7#14'FPanelOKCancel'#21'AnchorSideBot'
+'tom.Side'#7#9'asrBottom'#4'Left'#3#160#1#6'Height'#2'$'#3'Top'#2#6#5'Width'
+#2'Z'#7'Anchors'#11#5'akTop'#7'akRight'#8'akBottom'#0#8'AutoSize'#9#20'Borde'
+'rSpacing.Around'#2#6#7'Caption'#6#6'&Apply'#20'Constraints.MinWidth'#2'Z'#9
+'NumGlyphs'#2#0#7'OnClick'#7#10'ApplyCheck'#8'TabOrder'#2#1#0#0#7'TBitBtn'#9
+'BtnCancel'#21'AnchorSideTop.Control'#7#14'FPanelOKCancel'#23'AnchorSideRigh'
+'t.Control'#7#8'BtnApply'#24'AnchorSideBottom.Control'#7#14'FPanelOKCancel'
+#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3'@'#1#6'Height'#2'$'#3'To'
+'p'#2#6#5'Width'#2'Z'#7'Anchors'#11#5'akTop'#7'akRight'#8'akBottom'#0#8'Auto'
+'Size'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#6'Cancel'#20'Constraints.'
,'MinWidth'#2'Z'#4'Kind'#7#8'bkCancel'#11'ModalResult'#2#2#9'NumGlyphs'#2#0#8
+'TabOrder'#2#2#0#0#7'TBitBtn'#5'BtnOK'#21'AnchorSideTop.Control'#7#14'FPanel'
+'OKCancel'#23'AnchorSideRight.Control'#7#9'BtnCancel'#24'AnchorSideBottom.Co'
+'ntrol'#7#14'FPanelOKCancel'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'
+#3#224#0#6'Height'#2'$'#3'Top'#2#6#5'Width'#2'Z'#7'Anchors'#11#5'akTop'#7'ak'
+'Right'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6
+#3'&OK'#20'Constraints.MinWidth'#2'Z'#7'Default'#9#4'Kind'#7#4'bkOK'#11'Moda'
+'lResult'#2#1#9'NumGlyphs'#2#0#8'TabOrder'#2#3#0#0#0#9'TCheckBox'#17'Duplica'
+'teCheckBox'#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.Side'
+#7#9'asrBottom'#4'Left'#3'p'#1#6'Height'#2#22#3'Top'#2'0'#5'Width'#3#234#0#7
+'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#19'BorderSpacing.Right'#2#6#7'C'
+'aption'#6#17'DuplicateCheckBox'#7'Checked'#9#5'State'#7#9'cbChecked'#8'TabO'
+'rder'#2#3#0#0#5'TEdit'#11'ColumnsEdit'#4'Left'#3'p'#1#6'Height'#2#23#3'Top'
+#2'a'#5'Width'#2'"'#5'Color'#7#9'clBtnFace'#8'OnChange'#7#17'ColumnsEditChan'
+'ge'#9'OnKeyDown'#13#8'ReadOnly'#9#8'TabOrder'#2#4#4'Text'#6#1'1'#0#0#7'TUpD'
+'own'#13'ColumnsUpDown'#4'Left'#3#146#1#6'Height'#2#23#3'Top'#2'a'#5'Width'#2
+#17#9'Associate'#7#11'ColumnsEdit'#3'Min'#2#1#8'Position'#2#1#0#0#10'TPopupM'
+'enu'#10'FPopupMenu'#7'OnPopup'#7#11'CreateItems'#4'left'#3#224#1#3'top'#3
+#145#0#0#0#0
'TPF0'#20'TCheckGroupEditorDlg'#19'CheckGroupEditorDlg'#4'Left'#3#138#1#6'Hei'
+'ght'#3','#1#3'Top'#3#195#0#5'Width'#3'`'#2#18'HorzScrollBar.Page'#3'_'#2#18
+'VertScrollBar.Page'#3'+'#1#11'BorderIcons'#11#12'biSystemMenu'#0#11'BorderS'
+'tyle'#7#8'bsDialog'#7'Caption'#6#19'CheckGroupEditorDlg'#12'ClientHeight'#3
+','#1#11'ClientWidth'#3'`'#2#8'OnCreate'#7#10'FormCreate'#10'LCLVersion'#6#6
+'0.9.25'#0#6'TLabel'#12'ColumnsLabel'#4'Left'#3'q'#1#6'Height'#2#14#3'Top'#2
+'P'#5'Width'#2'B'#7'Caption'#6#12'ColumnsLabel'#11'ParentColor'#8#0#0#11'TCh'
+'eckGroup'#6'FCheck'#6'Height'#3#236#0#3'Top'#2#26#5'Width'#3'h'#1#5'Align'#7
+#6'alLeft'#8'AutoFill'#9#7'Caption'#6#6'FCheck'#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#1
+#11'OnItemClick'#7#9'ItemClick'#9'PopupMenu'#7#10'FPopupMenu'#8'TabOrder'#2#0
+#0#0#6'TPanel'#14'FPanelOKCancel'#6'Height'#2'&'#3'Top'#3#6#1#5'Width'#3'`'#2
+#5'Align'#7#8'alBottom'#8'AutoSize'#9#10'BevelInner'#7#9'bvLowered'#12'Clien'
+'tHeight'#2'&'#11'ClientWidth'#3'`'#2#8'TabOrder'#2#1#0#7'TBitBtn'#7'BtnHelp'
+#21'AnchorSideTop.Control'#7#14'FPanelOKCancel'#23'AnchorSideRight.Control'#7
+#14'FPanelOKCancel'#20'AnchorSideRight.Side'#7#9'asrBottom'#24'AnchorSideBot'
+'tom.Control'#7#14'FPanelOKCancel'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4
+'Left'#3#0#2#6'Height'#2#26#3'Top'#2#6#5'Width'#2'Z'#7'Anchors'#11#5'akTop'#7
+'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Caption'
+#6#5'&Help'#20'Constraints.MinWidth'#2'Z'#4'Kind'#7#6'bkHelp'#9'NumGlyphs'#2
+#0#8'TabOrder'#2#0#0#0#7'TBitBtn'#8'BtnApply'#21'AnchorSideTop.Control'#7#14
+'FPanelOKCancel'#23'AnchorSideRight.Control'#7#7'BtnHelp'#24'AnchorSideBotto'
+'m.Control'#7#14'FPanelOKCancel'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4
+'Left'#3#160#1#6'Height'#2#26#3'Top'#2#6#5'Width'#2'Z'#7'Anchors'#11#5'akTop'
+#7'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Capti'
+'on'#6#6'&Apply'#20'Constraints.MinWidth'#2'Z'#9'NumGlyphs'#2#0#7'OnClick'#7
+#10'ApplyCheck'#8'TabOrder'#2#1#0#0#7'TBitBtn'#9'BtnCancel'#21'AnchorSideTop'
+'.Control'#7#14'FPanelOKCancel'#23'AnchorSideRight.Control'#7#8'BtnApply'#24
+'AnchorSideBottom.Control'#7#14'FPanelOKCancel'#21'AnchorSideBottom.Side'#7#9
+'asrBottom'#4'Left'#3'@'#1#6'Height'#2#26#3'Top'#2#6#5'Width'#2'Z'#7'Anchors'
+#11#5'akTop'#7'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpacing.Around'
+#2#6#7'Caption'#6#6'Cancel'#20'Constraints.MinWidth'#2'Z'#4'Kind'#7#8'bkCanc'
+'el'#11'ModalResult'#2#2#9'NumGlyphs'#2#0#8'TabOrder'#2#2#0#0#7'TBitBtn'#5'B'
+'tnOK'#21'AnchorSideTop.Control'#7#14'FPanelOKCancel'#23'AnchorSideRight.Con'
+'trol'#7#9'BtnCancel'#24'AnchorSideBottom.Control'#7#14'FPanelOKCancel'#21'A'
+'nchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3#224#0#6'Height'#2#26#3'Top'#2
+#6#5'Width'#2'Z'#7'Anchors'#11#5'akTop'#7'akRight'#8'akBottom'#0#8'AutoSize'
+#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#3'&OK'#20'Constraints.MinWidth'
+#2'Z'#7'Default'#9#4'Kind'#7#4'bkOK'#11'ModalResult'#2#1#9'NumGlyphs'#2#0#8
+'TabOrder'#2#3#0#0#0#9'TCheckBox'#17'DuplicateCheckBox'#23'AnchorSideRight.C'
+'ontrol'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#3'p'#1#6
+'Height'#2#19#3'Top'#2'0'#5'Width'#3#234#0#7'Anchors'#11#5'akTop'#6'akLeft'#7
+'akRight'#0#19'BorderSpacing.Right'#2#6#7'Caption'#6#17'DuplicateCheckBox'#7
+'Checked'#9#5'State'#7#9'cbChecked'#8'TabOrder'#2#2#0#0#5'TEdit'#11'ColumnsE'
+'dit'#4'Left'#3'p'#1#6'Height'#2#23#3'Top'#2'a'#5'Width'#2'"'#5'Color'#7#9'c'
+'lBtnFace'#8'OnChange'#7#17'ColumnsEditChange'#9'OnKeyDown'#13#8'ReadOnly'#9
+#8'TabOrder'#2#3#4'Text'#6#1'1'#0#0#7'TUpDown'#13'ColumnsUpDown'#4'Left'#3
+#146#1#6'Height'#2#23#3'Top'#2'a'#5'Width'#2#17#9'Associate'#7#11'ColumnsEdi'
+'t'#3'Min'#2#1#8'Position'#2#1#8'TabOrder'#2#4#0#0#8'TToolBar'#7'ToolBar'#6
+'Height'#2#26#5'Width'#3'`'#2#7'Caption'#6#7'ToolBar'#4'Flat'#9#8'TabOrder'#2
+#5#0#11'TToolButton'#5'tbAdd'#4'Left'#2#1#3'Top'#2#2#7'Caption'#6#5'tbAdd'#14
+'ParentShowHint'#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'#14'ParentShowH'
+'int'#8#8'ShowHint'#9#7'OnClick'#7#10'DeleteItem'#0#0#11'TToolButton'#11'Too'
+'lButton3'#4'Left'#2'/'#3'Top'#2#2#5'Width'#2#3#7'Caption'#6#11'ToolButton3'
+#5'Style'#7#10'tbsDivider'#0#0#11'TToolButton'#4'tbUp'#4'Left'#2'2'#3'Top'#2
+#2#7'Caption'#6#4'tbUp'#14'ParentShowHint'#8#8'ShowHint'#9#7'OnClick'#7#10'M'
+'oveUpItem'#0#0#11'TToolButton'#6'tbDown'#4'Left'#2'I'#3'Top'#2#2#7'Caption'
+#6#6'tbDown'#14'ParentShowHint'#8#8'ShowHint'#9#7'OnClick'#7#12'MoveDownItem'
+#0#0#11'TToolButton'#11'ToolButton6'#4'Left'#2'`'#3'Top'#2#2#5'Width'#2#3#7
,'Caption'#6#11'ToolButton6'#5'Style'#7#10'tbsDivider'#0#0#11'TToolButton'#6
+'tbEdit'#4'Left'#2'c'#3'Top'#2#2#7'Caption'#6#6'tbEdit'#14'ParentShowHint'#8
+#8'ShowHint'#9#7'OnClick'#7#10'ModifyItem'#0#0#6'TLabel'#12'LabelDisable'#19
+'AnchorSideLeft.Side'#7#9'asrBottom'#18'AnchorSideTop.Side'#7#9'asrBottom'#4
+'Left'#2'z'#6'Height'#2#22#3'Top'#2#2#5'Width'#2'<'#7'Caption'#6#12'LabelDis'
+'able'#10'Font.Color'#7#10'clHotLight'#11'ParentColor'#8#0#0#0#10'TPopupMenu'
+#10'FPopupMenu'#7'OnPopup'#7#11'CreateItems'#4'left'#3#224#1#3'top'#3#145#0#0
+#0#0#20'TCheckGroupEditorDlg'#19'CheckGroupEditorDlg'#4'Left'#3#138#1#6'Heig'
+'ht'#3','#1#3'Top'#3#195#0#5'Width'#3'`'#2#18'HorzScrollBar.Page'#3'_'#2#18
+'VertScrollBar.Page'#3'+'#1#11'BorderIcons'#11#12'biSystemMenu'#0#11'BorderS'
+'tyle'#7#8'bsDialog'#7'Caption'#6#19'CheckGroupEditorDlg'#12'ClientHeight'#3
+','#1#11'ClientWidth'#3'`'#2#8'OnCreate'#7#10'FormCreate'#10'LCLVersion'#6#6
+'0.9.25'#0#6'TLabel'#12'ColumnsLabel'#4'Left'#3'q'#1#6'Height'#2#14#3'Top'#2
+'P'#5'Width'#2'B'#7'Caption'#6#12'ColumnsLabel'#11'ParentColor'#8#0#0#11'TCh'
+'eckGroup'#6'FCheck'#6'Height'#3#236#0#3'Top'#2#26#5'Width'#3'h'#1#5'Align'#7
+#6'alLeft'#8'AutoFill'#9#7'Caption'#6#6'FCheck'#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#1
+#11'OnItemClick'#7#9'ItemClick'#9'PopupMenu'#7#10'FPopupMenu'#8'TabOrder'#2#0
+#0#0#6'TPanel'#14'FPanelOKCancel'#6'Height'#2'&'#3'Top'#3#6#1#5'Width'#3'`'#2
+#5'Align'#7#8'alBottom'#8'AutoSize'#9#10'BevelInner'#7#9'bvLowered'#12'Clien'
+'tHeight'#2'&'#11'ClientWidth'#3'`'#2#8'TabOrder'#2#1#0#7'TBitBtn'#7'BtnHelp'
+#21'AnchorSideTop.Control'#7#14'FPanelOKCancel'#23'AnchorSideRight.Control'#7
+#14'FPanelOKCancel'#20'AnchorSideRight.Side'#7#9'asrBottom'#24'AnchorSideBot'
+'tom.Control'#7#14'FPanelOKCancel'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4
+'Left'#3#0#2#6'Height'#2#26#3'Top'#2#6#5'Width'#2'Z'#7'Anchors'#11#5'akTop'#7
+'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Caption'
+#6#5'&Help'#20'Constraints.MinWidth'#2'Z'#4'Kind'#7#6'bkHelp'#9'NumGlyphs'#2
+#0#8'TabOrder'#2#0#0#0#7'TBitBtn'#8'BtnApply'#21'AnchorSideTop.Control'#7#14
+'FPanelOKCancel'#23'AnchorSideRight.Control'#7#7'BtnHelp'#24'AnchorSideBotto'
+'m.Control'#7#14'FPanelOKCancel'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4
+'Left'#3#160#1#6'Height'#2#26#3'Top'#2#6#5'Width'#2'Z'#7'Anchors'#11#5'akTop'
+#7'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Capti'
+'on'#6#6'&Apply'#20'Constraints.MinWidth'#2'Z'#9'NumGlyphs'#2#0#7'OnClick'#7
+#10'ApplyCheck'#8'TabOrder'#2#1#0#0#7'TBitBtn'#9'BtnCancel'#21'AnchorSideTop'
+'.Control'#7#14'FPanelOKCancel'#23'AnchorSideRight.Control'#7#8'BtnApply'#24
+'AnchorSideBottom.Control'#7#14'FPanelOKCancel'#21'AnchorSideBottom.Side'#7#9
+'asrBottom'#4'Left'#3'@'#1#6'Height'#2#26#3'Top'#2#6#5'Width'#2'Z'#7'Anchors'
+#11#5'akTop'#7'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpacing.Around'
+#2#6#7'Caption'#6#6'Cancel'#20'Constraints.MinWidth'#2'Z'#4'Kind'#7#8'bkCanc'
+'el'#11'ModalResult'#2#2#9'NumGlyphs'#2#0#8'TabOrder'#2#2#0#0#7'TBitBtn'#5'B'
+'tnOK'#21'AnchorSideTop.Control'#7#14'FPanelOKCancel'#23'AnchorSideRight.Con'
+'trol'#7#9'BtnCancel'#24'AnchorSideBottom.Control'#7#14'FPanelOKCancel'#21'A'
+'nchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3#224#0#6'Height'#2#26#3'Top'#2
+#6#5'Width'#2'Z'#7'Anchors'#11#5'akTop'#7'akRight'#8'akBottom'#0#8'AutoSize'
+#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#3'&OK'#20'Constraints.MinWidth'
+#2'Z'#7'Default'#9#4'Kind'#7#4'bkOK'#11'ModalResult'#2#1#9'NumGlyphs'#2#0#8
+'TabOrder'#2#3#0#0#0#9'TCheckBox'#17'DuplicateCheckBox'#23'AnchorSideRight.C'
+'ontrol'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#3'p'#1#6
+'Height'#2#19#3'Top'#2'0'#5'Width'#3#234#0#7'Anchors'#11#5'akTop'#6'akLeft'#7
+'akRight'#0#19'BorderSpacing.Right'#2#6#7'Caption'#6#17'DuplicateCheckBox'#7
+'Checked'#9#5'State'#7#9'cbChecked'#8'TabOrder'#2#2#0#0#5'TEdit'#11'ColumnsE'
+'dit'#4'Left'#3'p'#1#6'Height'#2#23#3'Top'#2'a'#5'Width'#2'"'#5'Color'#7#9'c'
+'lBtnFace'#8'OnChange'#7#17'ColumnsEditChange'#9'OnKeyDown'#13#8'ReadOnly'#9
+#8'TabOrder'#2#3#4'Text'#6#1'1'#0#0#7'TUpDown'#13'ColumnsUpDown'#4'Left'#3
+#146#1#6'Height'#2#23#3'Top'#2'a'#5'Width'#2#17#9'Associate'#7#11'ColumnsEdi'
+'t'#3'Min'#2#1#8'Position'#2#1#8'TabOrder'#2#4#0#0#8'TToolBar'#7'ToolBar'#6
+'Height'#2#26#5'Width'#3'`'#2#7'Caption'#6#7'ToolBar'#4'Flat'#9#8'TabOrder'#2
+#5#0#11'TToolButton'#5'tbAdd'#4'Left'#2#1#3'Top'#2#2#7'Caption'#6#5'tbAdd'#14
+'ParentShowHint'#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'#14'ParentShowH'
,'int'#8#8'ShowHint'#9#7'OnClick'#7#10'DeleteItem'#0#0#11'TToolButton'#11'Too'
+'lButton3'#4'Left'#2'/'#3'Top'#2#2#5'Width'#2#3#7'Caption'#6#11'ToolButton3'
+#5'Style'#7#10'tbsDivider'#0#0#11'TToolButton'#4'tbUp'#4'Left'#2'2'#3'Top'#2
+#2#7'Caption'#6#4'tbUp'#14'ParentShowHint'#8#8'ShowHint'#9#7'OnClick'#7#10'M'
+'oveUpItem'#0#0#11'TToolButton'#6'tbDown'#4'Left'#2'I'#3'Top'#2#2#7'Caption'
+#6#6'tbDown'#14'ParentShowHint'#8#8'ShowHint'#9#7'OnClick'#7#12'MoveDownItem'
+#0#0#11'TToolButton'#11'ToolButton6'#4'Left'#2'`'#3'Top'#2#2#5'Width'#2#3#7
+'Caption'#6#11'ToolButton6'#5'Style'#7#10'tbsDivider'#0#0#11'TToolButton'#6
+'tbEdit'#4'Left'#2'c'#3'Top'#2#2#7'Caption'#6#6'tbEdit'#14'ParentShowHint'#8
+#8'ShowHint'#9#7'OnClick'#7#10'ModifyItem'#0#0#6'TLabel'#12'LabelDisable'#19
+'AnchorSideLeft.Side'#7#9'asrBottom'#18'AnchorSideTop.Side'#7#9'asrBottom'#4
+'Left'#2'z'#6'Height'#2#22#3'Top'#2#2#5'Width'#2'<'#7'Caption'#6#12'LabelDis'
+'able'#10'Font.Color'#7#10'clHotLight'#11'ParentColor'#8#0#0#0#10'TPopupMenu'
+#10'FPopupMenu'#7'OnPopup'#7#11'CreateItems'#4'left'#3#224#1#3'top'#3#145#0#0
+#0#0
]);

View File

@ -19,36 +19,39 @@ interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ExtCtrls,
StdCtrls, Buttons, Menus, ComCtrls,
ObjInspStrConsts;
ObjInspStrConsts, IDEImagesIntf;
type
{ TCheckGroupEditorDlg }
TCheckGroupEditorDlg = class(TForm)
BtnAdd: TButton;
BtnApply: TBitBtn;
BtnCancel: TBitBtn;
BtnDelete: TButton;
BtnDown: TButton;
BtnHelp: TBitBtn;
BtnModify: TButton;
BtnOK: TBitBtn;
BtnUp: TButton;
DuplicateCheckBox: TCheckBox;
ColumnsEdit: TEdit;
FCheck: TCheckGroup;
aCheck: TCheckGroup;
FPanelButtons: TPanel;
FPanelOKCancel: TPanel;
ColumnsLabel: TLabel;
LabelDisable: TLabel;
FPopupMenu: TPopupMenu;
ColumnsUpDown: TUpDown;
LabelDisable: TLabel;
ToolBar: TToolBar;
tbAdd: TToolButton;
tbDelete: TToolButton;
ToolButton3: TToolButton;
tbUp: TToolButton;
tbDown: TToolButton;
ToolButton6: TToolButton;
tbEdit: TToolButton;
procedure AddItem(Sender:TObject);
procedure ColumnsEditChange(Sender: TObject);
procedure CreateItems(Sender: TObject);
procedure DeleteItem(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ItemClick(Sender: TObject; Index: integer);
procedure ModifyItem(Sender: TObject);
procedure MoveDownItem(Sender: TObject);
@ -56,9 +59,12 @@ type
procedure EnableDisable(Sender:TObject);
procedure ApplyCheck(Sender: TObject);
private
FItemIndex: Integer;
FModified: Boolean;
procedure Change;
procedure SetItemIndex(const AValue: Integer);
public
ItemIndex:integer;
property ItemIndex: Integer read FItemIndex write SetItemIndex;
property Modified: Boolean read FModified write FModified;
end;
@ -66,110 +72,153 @@ procedure AssignCheckGroup(dstCheck, srcCheck: TCheckGroup);
implementation
const
NormalColor = clBtnFace;
SelectedColor = clHighlight;
procedure AssignCheckGroup(dstCheck, srcCheck: TCheckGroup);
var i: integer;
var
i: integer;
begin
dstCheck.Items.Assign(srcCheck.Items);
dstCheck.Caption:=srcCheck.Caption;
dstCheck.Columns:=srcCheck.Columns;
for i:=0 to srcCheck.Items.Count-1 do begin
dstCheck.Checked[i]:=srcCheck.Checked[i];
dstCheck.CheckEnabled[i]:=srcCheck.CheckEnabled[i]
dstCheck.Caption := srcCheck.Caption;
dstCheck.Columns := srcCheck.Columns;
for i := 0 to srcCheck.Items.Count - 1 do
begin
dstCheck.Checked[i] := srcCheck.Checked[i];
dstCheck.CheckEnabled[i] := srcCheck.CheckEnabled[i]
end;
end;
{ TCheckGroupEditorDlg }
procedure TCheckGroupEditorDlg.AddItem(Sender:TObject);
var strItem:string;
canAdd: boolean;
var
strItem: string;
canAdd: boolean;
begin
if not InputQuery(clbCheckGroupEditor, clbAdd, strItem) then exit;
canAdd:=true;
if DuplicateCheckBox.Checked then begin
canAdd:=(FCheck.Items.IndexOf(strItem)=-1);
if not InputQuery(cgCheckGroupEditor, clbAdd, strItem) then
Exit;
canAdd := True;
if DuplicateCheckBox.Checked then
begin
canAdd := (FCheck.Items.IndexOf(strItem)= -1);
if not canAdd then
canAdd:=MessageDlg(clbCheckGroupEditor,Format(clbCheckDuplicateMsg,[strItem]),mtConfirmation,mbYesNo,0)=mrYes;
canAdd := MessageDlg(cgCheckGroupEditor, Format(cgCheckDuplicateMsg,[strItem]), mtConfirmation, mbYesNo, 0) = mrYes;
end;
if canAdd then
begin
FCheck.Items.Add(strItem);
Change;
end;
end;
procedure TCheckGroupEditorDlg.ColumnsEditChange(Sender: TObject);
begin
FCheck.Columns:=ColumnsUpDown.Position;
FCheck.Columns := ColumnsUpDown.Position;
end;
procedure TCheckGroupEditorDlg.DeleteItem(Sender:TObject);
begin
if (FCheck.Items.Count=0)or(ItemIndex=-1) then exit;
if MessageDlg(clbCheckGroupEditor,Format(clbDelete,[ItemIndex, FCheck.Items[ItemIndex]]),
mtConfirmation, mbYesNo, 0)=mrYes then begin
if (FCheck.Items.Count = 0) or (ItemIndex = -1) then
Exit;
if MessageDlg(cgCheckGroupEditor,
Format(clbDeleteQuest, [ItemIndex, FCheck.Items[ItemIndex]]),
mtConfirmation, mbYesNo, 0) = mrYes then
begin
FCheck.Items.Delete(ItemIndex);
if ItemIndex>FCheck.Items.Count-1 then
ItemIndex:=FCheck.Items.Count-1;
if ItemIndex<>-1 then
FCheck.Controls[ItemIndex].Color:=clYellow;
if ItemIndex > FCheck.Items.Count - 1 then
ItemIndex := FCheck.Items.Count - 1;
if ItemIndex <> -1 then
FCheck.Controls[ItemIndex].Color := SelectedColor;
end;
end;
procedure TCheckGroupEditorDlg.MoveUpItem(Sender:TObject);
var itemtmp:string;
checkedtmp:boolean;
procedure TCheckGroupEditorDlg.FormCreate(Sender: TObject);
begin
if (FCheck.Items.Count<=1)or(ItemIndex<1) then exit;
//swap the caption and the checked states
itemtmp:=FCheck.Items[ItemIndex-1];
checkedtmp:=FCheck.Checked[ItemIndex-1];
FCheck.Items[ItemIndex-1]:=FCheck.Items[ItemIndex];
FCheck.Checked[ItemIndex-1]:=FCheck.Checked[ItemIndex];
FCheck.Items[ItemIndex]:=itemtmp;
FCheck.Checked[ItemIndex]:=checkedtmp;
//swap the states enabled
checkedtmp:=FCheck.CheckEnabled[ItemIndex-1];
FCheck.CheckEnabled[ItemIndex-1]:=FCheck.CheckEnabled[ItemIndex];
FCheck.CheckEnabled[ItemIndex]:=checkedtmp;
ToolBar.Images := IDEImages.Images_16;
tbAdd.ImageIndex := IDEImages.LoadImage(16, 'add');
tbDelete.ImageIndex := IDEImages.LoadImage(16, 'delete');
tbUp.ImageIndex := IDEImages.LoadImage(16, 'arrow_up');
tbDown.ImageIndex := IDEImages.LoadImage(16, 'arrow_down');
tbEdit.ImageIndex := IDEImages.LoadImage(16, 'edit');
FCheck.Controls[ItemIndex].Color:=clBtnFace;
ItemIndex:=ItemIndex-1;
FCheck.Controls[ItemIndex].Color:=clYellow;
Caption := cgCheckGroupEditor;
FItemIndex := -1;
ColumnsLabel.Caption := cgColumns;
DuplicateCheckBox.Caption := cgCheckDuplicate;
LabelDisable.Caption := cgDisable;
tbAdd.Hint := clbAdd;
tbDelete.Hint := clbDeleteHint;
tbUp.Hint := clbUp;
tbDown.Hint := clbDown;
tbEdit.Hint := clbModify;
Change;
end;
procedure TCheckGroupEditorDlg.MoveUpItem(Sender:TObject);
var
itemtmp: string;
checkedtmp: boolean;
begin
if (FCheck.Items.Count <= 1) or (ItemIndex < 1) then
Exit;
//swap the caption and the checked states
itemtmp := FCheck.Items[ItemIndex - 1];
checkedtmp := FCheck.Checked[ItemIndex - 1];
FCheck.Items[ItemIndex - 1] := FCheck.Items[ItemIndex];
FCheck.Checked[ItemIndex - 1] := FCheck.Checked[ItemIndex];
FCheck.Items[ItemIndex] := itemtmp;
FCheck.Checked[ItemIndex] := checkedtmp;
//swap the states enabled
checkedtmp := FCheck.CheckEnabled[ItemIndex - 1];
FCheck.CheckEnabled[ItemIndex - 1] := FCheck.CheckEnabled[ItemIndex];
FCheck.CheckEnabled[ItemIndex] := checkedtmp;
FCheck.Controls[ItemIndex].Color := NormalColor;
ItemIndex := ItemIndex - 1;
FCheck.Controls[ItemIndex].Color := SelectedColor;
end;
procedure TCheckGroupEditorDlg.MoveDownItem(Sender:TObject);
var itemtmp:string;
checkedtmp:boolean;
var
itemtmp: string;
checkedtmp: boolean;
begin
if (FCheck.Items.Count<=1)or(ItemIndex=FCheck.Items.Count-1)or(ItemIndex=-1) then exit;
if (FCheck.Items.Count <= 1) or (ItemIndex = FCheck.Items.Count-1) or (ItemIndex=-1) then
Exit;
//swap the caption and the checked states
itemtmp:=FCheck.Items[ItemIndex+1];
checkedtmp:=FCheck.Checked[ItemIndex+1];
FCheck.Items[ItemIndex+1]:=FCheck.Items[ItemIndex];
FCheck.Checked[ItemIndex+1]:=FCheck.Checked[ItemIndex];
FCheck.Items[ItemIndex]:=itemtmp;
FCheck.Checked[ItemIndex]:=checkedtmp;
itemtmp := FCheck.Items[ItemIndex + 1];
checkedtmp := FCheck.Checked[ItemIndex + 1];
FCheck.Items[ItemIndex + 1] := FCheck.Items[ItemIndex];
FCheck.Checked[ItemIndex + 1] := FCheck.Checked[ItemIndex];
FCheck.Items[ItemIndex] := itemtmp;
FCheck.Checked[ItemIndex] := checkedtmp;
//swap the states enabled
checkedtmp:=FCheck.CheckEnabled[ItemIndex+1];
FCheck.CheckEnabled[ItemIndex+1]:=FCheck.CheckEnabled[ItemIndex];
FCheck.CheckEnabled[ItemIndex]:=checkedtmp;
checkedtmp := FCheck.CheckEnabled[ItemIndex + 1];
FCheck.CheckEnabled[ItemIndex + 1] := FCheck.CheckEnabled[ItemIndex];
FCheck.CheckEnabled[ItemIndex] := checkedtmp;
FCheck.Controls[ItemIndex].Color:=clBtnFace;
ItemIndex:=ItemIndex+1;
FCheck.Controls[ItemIndex].Color:=clYellow;
FCheck.Controls[ItemIndex].Color := NormalColor;
ItemIndex := ItemIndex + 1;
FCheck.Controls[ItemIndex].Color := SelectedColor;
end;
procedure TCheckGroupEditorDlg.ModifyItem(Sender:TObject);
begin
if (FCheck.Items.Count=0)or(ItemIndex=-1) then exit;
FCheck.Items[ItemIndex]:=InputBox(clbCheckGroupEditor,clbModify,FCheck.Items[ItemIndex]);
if (FCheck.Items.Count = 0) or (ItemIndex = -1) then
Exit;
FCheck.Items[ItemIndex] := InputBox(cgCheckGroupEditor, clbModify, FCheck.Items[ItemIndex]);
end;
procedure TCheckGroupEditorDlg.ItemClick(Sender: TObject; Index: integer);
begin
if ItemIndex<>-1 then
FCheck.Controls[ItemIndex].Color:=clBtnFace;
ItemIndex:=Index;
if ItemIndex<>-1 then
FCheck.Controls[ItemIndex].Color:=clYellow;
if ItemIndex <> -1 then
FCheck.Controls[ItemIndex].Color := NormalColor;
ItemIndex := Index;
if ItemIndex <> -1 then
FCheck.Controls[ItemIndex].Color := SelectedColor;
end;
procedure TCheckGroupEditorDlg.EnableDisable(Sender:TObject);
@ -182,25 +231,44 @@ begin
end;
procedure TCheckGroupEditorDlg.CreateItems(Sender:TObject);
var i:integer;
var
i: integer;
begin
FPopupMenu.Items.Clear;
for i:=0 to FCheck.Items.Count-1 do begin
for i := 0 to FCheck.Items.Count-1 do
begin
FPopupMenu.Items.Add(TMenuItem.Create(self));
FPopupMenu.Items[i].Caption:=FCheck.Items[i];
FPopupMenu.Items[i].Checked:=FCheck.CheckEnabled[i];
FPopupMenu.Items[i].OnClick:=@EnableDisable;
end;;
FPopupMenu.Items[i].Caption := FCheck.Items[i];
FPopupMenu.Items[i].Checked := FCheck.CheckEnabled[i];
FPopupMenu.Items[i].OnClick := @EnableDisable;
end;
end;
procedure TCheckGroupEditorDlg.ApplyCheck(Sender:TObject);
begin
if Assigned(FCheck) then begin
if Assigned(FCheck) then
begin
AssignCheckGroup(aCheck, FCheck);
FModified := True;
end;
end;
procedure TCheckGroupEditorDlg.Change;
begin
tbDelete.Enabled := ItemIndex <> -1;
tbEdit.Enabled := ItemIndex <> -1;
tbUp.Enabled := (ItemIndex <> -1) and (ItemIndex > 0);
tbDown.Enabled := (ItemIndex <> -1) and (ItemIndex < FCheck.Items.Count - 1);
end;
procedure TCheckGroupEditorDlg.SetItemIndex(const AValue: Integer);
begin
if FItemIndex <> AValue then
begin
FItemIndex := AValue;
Change;
end;
end;
initialization
{$I checkgroupeditordlg.lrs}

View File

@ -92,7 +92,7 @@ end;
procedure TCheckListBoxEditorDlg.DeleteItem(Sender:TObject);
begin
if FCheck.ItemIndex = -1 then exit;
if MessageDlg(clbCheckListBoxEditor,Format(clbDelete,[FCheck.ItemIndex,FCheck.Items[FCheck.ItemIndex]]),
if MessageDlg(clbCheckListBoxEditor,Format(clbDeleteQuest,[FCheck.ItemIndex,FCheck.Items[FCheck.ItemIndex]]),
mtConfirmation, mbYesNo, 0) = mrYes then
FCheck.Items.Delete(FCheck.ItemIndex);
end;
@ -116,8 +116,8 @@ begin
BtnCancel.Caption := oisCancel;
BtnHelp.Caption := cActionListEditorHelpCategory;
tbAdd.Hint := oiscAdd;
tbDelete.Hint := oiscDelete;
tbAdd.Hint := clbAdd;
tbDelete.Hint := clbDeleteHint;
tbUp.Hint := clbUp;
tbDown.Hint := clbDown;
tbEdit.Hint := clbModify;

View File

@ -891,33 +891,21 @@ end;
{ TCheckGroupEditorDlg }
procedure TCheckGroupComponentEditor.DoShowEditor;
var Dlg : TCheckGroupEditorDlg;
var
Dlg: TCheckGroupEditorDlg;
begin
Dlg:=TCheckGroupEditorDlg.Create(nil);
with Dlg do begin
Caption:=clbCheckGroupEditor;
ItemIndex:=-1;
BtnAdd.Caption:=oiscAdd;
BtnDelete.Caption:=oiscDelete;
BtnUp.Caption:=clbUp;
BtnDown.Caption:=clbDown;
BtnModify.ShowHint:=true;
BtnModify.Hint:=clbModify;
BtnModify.Caption:='...';
ColumnsLabel.Caption:=clbColumns;
DuplicateCheckBox.Caption:=clbCheckDuplicate;
LabelDisable.Caption:=clbDisable
end;
Dlg := TCheckGroupEditorDlg.Create(nil);
try
if GetComponent is TCheckGroup then begin
Dlg.aCheck:=TCheckGroup(GetComponent);
if GetComponent is TCheckGroup then
begin
Dlg.aCheck := TCheckGroup(GetComponent);
if not HasHook then exit;
AssignCheckGroup(Dlg.FCheck, Dlg.aCheck);
Dlg.ColumnsUpDown.Position:=Dlg.aCheck.Columns;
Dlg.ColumnsUpDown.Position := Dlg.aCheck.Columns;
//ShowEditor
if Dlg.ShowModal=mrOK then begin
if Dlg.ShowModal = mrOK then
begin
AssignCheckGroup(Dlg.aCheck, Dlg.FCheck);
Modified;
end;
@ -936,7 +924,7 @@ end;
function TCheckGroupComponentEditor.GetVerb(Index: Integer): string;
begin
Result:=clbCheckGroupEditor+'...';
Result:=cgCheckGroupEditor+'...';
end;
function TCheckGroupComponentEditor.GetVerbCount: Integer;

View File

@ -170,18 +170,19 @@ resourcestring
//checklistbox editor
clbCheckListBoxEditor = 'CheckListBox Editor';
clbUp = '&Up';
clbDown = 'Do&wn';
clbUp = 'Up';
clbDown = 'Down';
clbModify = 'Modify the Item';
clbAdd = 'Add new Item';
clbDelete = 'Delete the Item %d "%s"?';
clbDeleteHint = 'Delete the Item';
clbDeleteQuest = 'Delete the Item %d "%s"?';
//checkgroup editor
clbCheckGroupEditor = 'CheckGroup Editor';
clbDisable = 'Popup to disable/enable items';
clbColumns = 'n. columns';
clbCheckDuplicate = 'On Add, Check for Duplicate in Items';
clbCheckDuplicateMsg = 'The "%s" Item is already listed. Add it anyway?';
cgCheckGroupEditor = 'CheckGroup Editor';
cgDisable = 'Popup to disable/enable items';
cgColumns = 'Columns:';
cgCheckDuplicate = 'On Add, Check for Duplicate in Items';
cgCheckDuplicateMsg = 'The "%s" Item is already listed. Add it anyway?';
// Collection Editor