fixed memleak, when previewing a bitmap

git-svn-id: trunk@9460 -
This commit is contained in:
vincents 2006-06-21 13:33:53 +00:00
parent c308e58a0b
commit 09df114df2
3 changed files with 211 additions and 227 deletions

View File

@ -1,65 +1,65 @@
object ImageListEditorDlg: TImageListEditorDlg object ImageListEditorDlg: TImageListEditorDlg
ActiveControl = BtnOK
BorderIcons = [biSystemMenu, biHelp]
Caption = 'ImagesList Editor'
ClientHeight = 345
ClientWidth = 520
Constraints.MinHeight = 345
Constraints.MinWidth = 520
OnCreate = FormCreate
PixelsPerInch = 112
Position = poScreenCenter
HorzScrollBar.Page = 519
VertScrollBar.Page = 344
Left = 313 Left = 313
Height = 345 Height = 345
Top = 194 Top = 194
Width = 520 Width = 520
HorzScrollBar.Page = 519
VertScrollBar.Page = 344
ActiveControl = BtnOK
BorderIcons = [biSystemMenu, biHelp]
Caption = 'ImagesList Editor'
Constraints.MinHeight = 345
Constraints.MinWidth = 520
OnCreate = FormCreate
OnDestroy = FormDestroy
Position = poScreenCenter
object GroupBoxR: TGroupBox object GroupBoxR: TGroupBox
Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Around = 6
Caption = 'Selected Image'
ClientHeight = 282
ClientWidth = 214
TabOrder = 5
Left = 296 Left = 296
Height = 299 Height = 299
Top = 6 Top = 6
Width = 218 Width = 218
Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Around = 6
Caption = 'Selected Image'
TabOrder = 5
object LabelTransparent: TLabel object LabelTransparent: TLabel
Left = 110
Height = 13
Top = 175
Width = 104
Anchors = [akLeft, akBottom] Anchors = [akLeft, akBottom]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
Caption = 'Transparent Color:' Caption = 'Transparent Color:'
Color = clNone Color = clNone
ParentColor = False ParentColor = False
Left = 110
Height = 13
Top = 176
Width = 104
end end
object LabelSize: TLabel object LabelSize: TLabel
Color = clNone
ParentColor = False
Left = 6 Left = 6
Height = 28 Height = 28
Top = 6 Top = 6
Width = 76 Width = 76
Color = clNone
ParentColor = False
end end
object Preview: TScrollBox object Preview: TScrollBox
Left = 6
Height = 132
Top = 32
Width = 201
HorzScrollBar.Page = 196
VertScrollBar.Page = 127
Anchors = [akTop, akLeft, akRight, akBottom] Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
Color = clGrayText Color = clGrayText
ParentColor = False ParentColor = False
TabOrder = 0 TabOrder = 0
OnPaint = PreviewPaint OnPaint = PreviewPaint
HorzScrollBar.Page = 196
VertScrollBar.Page = 128
Left = 6
Height = 133
Top = 32
Width = 201
end end
object RadioGroup: TRadioGroup object RadioGroup: TRadioGroup
Left = 6
Height = 105
Top = 170
Width = 96
Anchors = [akLeft, akBottom] Anchors = [akLeft, akBottom]
AutoFill = True AutoFill = True
BorderSpacing.Around = 6 BorderSpacing.Around = 6
@ -82,12 +82,12 @@ object ImageListEditorDlg: TImageListEditorDlg
) )
OnClick = ColorBoxTransparentClick OnClick = ColorBoxTransparentClick
TabOrder = 1 TabOrder = 1
Left = 6
Height = 105
Top = 171
Width = 96
end end
object ColorBoxTransparent: TColorBox object ColorBoxTransparent: TColorBox
Left = 110
Height = 24
Top = 195
Width = 96
Anchors = [akLeft, akBottom] Anchors = [akLeft, akBottom]
Enabled = False Enabled = False
Items.Strings = ( Items.Strings = (
@ -208,78 +208,72 @@ object ImageListEditorDlg: TImageListEditorDlg
TabOrder = 2 TabOrder = 2
Text = 'clFuchsia' Text = 'clFuchsia'
OnChange = ColorBoxTransparentClick OnChange = ColorBoxTransparentClick
Left = 110
Height = 24
Top = 196
Width = 96
end end
end end
object BtnOK: TBitBtn object BtnOK: TBitBtn
Left = 199
Height = 25
Top = 313
Width = 75
Anchors = [akRight, akBottom] Anchors = [akRight, akBottom]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
Caption = '&OK' Caption = '&OK'
Kind = bkOK Kind = bkOK
ModalResult = 1 ModalResult = 1
NumGlyphs = 0 NumGlyphs = 0
TabOrder = 0 TabOrder = 0
Left = 199 end
object BtnCancel: TBitBtn
Left = 279
Height = 25 Height = 25
Top = 313 Top = 313
Width = 75 Width = 75
end
object BtnCancel: TBitBtn
Anchors = [akRight, akBottom] Anchors = [akRight, akBottom]
Cancel = True Cancel = True
Caption = 'Cancel' Caption = 'Cancel'
Kind = bkCancel Kind = bkCancel
ModalResult = 2 ModalResult = 2
NumGlyphs = 0 NumGlyphs = 0
TabOrder = 1 TabOrder = 1
Left = 279
Height = 25
Top = 313
Width = 75
end end
object BtnApply: TBitBtn object BtnApply: TBitBtn
Anchors = [akRight, akBottom]
BorderSpacing.Around = 6
Caption = '&Apply'
NumGlyphs = 0
OnClick = btnApplyClick
TabOrder = 2
Left = 359 Left = 359
Height = 25 Height = 25
Top = 313 Top = 313
Width = 75 Width = 75
end
object BtnHelp: TBitBtn
Anchors = [akRight, akBottom] Anchors = [akRight, akBottom]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
Caption = '&Apply'
Caption = '&Help'
Kind = bkHelp
NumGlyphs = 0 NumGlyphs = 0
TabOrder = 3 OnClick = btnApplyClick
TabOrder = 2
end
object BtnHelp: TBitBtn
Left = 439 Left = 439
Height = 25 Height = 25
Top = 313 Top = 313
Width = 75 Width = 75
Anchors = [akRight, akBottom]
BorderSpacing.Around = 6
Caption = '&Help'
Kind = bkHelp
NumGlyphs = 0
TabOrder = 3
end end
object GroupBoxL: TGroupBox object GroupBoxL: TGroupBox
Anchors = [akTop, akLeft, akBottom]
BorderSpacing.Around = 6
Caption = 'Images'
ClientHeight = 282
ClientWidth = 276
TabOrder = 4
Left = 6 Left = 6
Height = 299 Height = 299
Top = 6 Top = 6
Width = 280 Width = 280
Anchors = [akTop, akLeft, akBottom]
BorderSpacing.Around = 6
Caption = 'Images'
TabOrder = 4
object TreeView: TTreeView object TreeView: TTreeView
Left = 6
Height = 269
Top = 6
Width = 185
Anchors = [akTop, akLeft, akRight, akBottom] Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
DefaultItemHeight = 16 DefaultItemHeight = 16
@ -293,85 +287,81 @@ object ImageListEditorDlg: TImageListEditorDlg
OnDeletion = TreeViewDeletion OnDeletion = TreeViewDeletion
OnSelectionChanged = TreeViewSelectionChanged OnSelectionChanged = TreeViewSelectionChanged
Options = [tvoAutoItemHeight, tvoKeepCollapsedNodes, tvoRowSelect, tvoToolTips] Options = [tvoAutoItemHeight, tvoKeepCollapsedNodes, tvoRowSelect, tvoToolTips]
Left = 6
Height = 270
Top = 6
Width = 185
end end
object BtnAdd: TButton object BtnAdd: TButton
Tag = 1
Left = 196
Height = 25
Top = 6
Width = 75
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
BorderSpacing.InnerBorder = 4
Caption = 'Add...' Caption = 'Add...'
Default = True Default = True
OnClick = BtnAddClick OnClick = BtnAddClick
TabOrder = 1 TabOrder = 1
Left = 196
Height = 25
Top = 6
Width = 75
Tag = 1
end end
object BtnClear: TButton object BtnClear: TButton
Anchors = [akTop, akRight]
BorderSpacing.Around = 6
Caption = 'Clear'
OnClick = BtnClearClick
TabOrder = 2
Left = 196 Left = 196
Height = 25 Height = 25
Top = 68 Top = 68
Width = 75 Width = 75
end
object BtnDelete: TButton
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
BorderSpacing.InnerBorder = 4
Caption = '&Delete' Caption = 'Clear'
OnClick = BtnDeleteClick OnClick = BtnClearClick
TabOrder = 3 TabOrder = 2
end
object BtnDelete: TButton
Left = 196 Left = 196
Height = 25 Height = 25
Top = 37 Top = 37
Width = 75 Width = 75
end
object BtnMoveUp: TButton
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
BorderSpacing.InnerBorder = 4
Caption = 'Move Up' Caption = '&Delete'
OnClick = BtnMoveUpClick OnClick = BtnDeleteClick
TabOrder = 4 TabOrder = 3
end
object BtnMoveUp: TButton
Tag = -1
Left = 196 Left = 196
Height = 25 Height = 25
Top = 99 Top = 99
Width = 75 Width = 75
Tag = -1
end
object BtnMoveDown: TButton
Anchors = [akTop, akRight] Anchors = [akTop, akRight]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
BorderSpacing.InnerBorder = 4
Caption = 'Move Down' Caption = 'Move Up'
OnClick = BtnMoveUpClick OnClick = BtnMoveUpClick
TabOrder = 5 TabOrder = 4
end
object BtnMoveDown: TButton
Tag = 1
Left = 196 Left = 196
Height = 25 Height = 25
Top = 130 Top = 130
Width = 75 Width = 75
Tag = 1 Anchors = [akTop, akRight]
BorderSpacing.Around = 6
BorderSpacing.InnerBorder = 4
Caption = 'Move Down'
OnClick = BtnMoveUpClick
TabOrder = 5
end end
object BtnSave: TButton object BtnSave: TButton
Anchors = [akTop, akRight]
Caption = 'Save...'
OnClick = BtnSaveClick
TabOrder = 6
Left = 196 Left = 196
Height = 25 Height = 25
Top = 161 Top = 161
Width = 75 Width = 75
Anchors = [akTop, akRight]
BorderSpacing.InnerBorder = 4
Caption = 'Save...'
OnClick = BtnSaveClick
TabOrder = 6
end end
end end
object ImageList: TImageList object ImageList: TImageList
@ -379,22 +369,17 @@ object ImageListEditorDlg: TImageListEditorDlg
top = 246 top = 246
end end
object OpenDialog: TOpenPictureDialog object OpenDialog: TOpenPictureDialog
Filter = 'Graphic (*.ico;*.ppm;*.pgm;*.pbm;*.png;*.xpm;*.bmp)|*.ico;*.ppm;*.pgm;*.pbm;*.png;*.xpm;*.bmp|Icon (*.ico)|*.ico|Portable PixMap (*.ppm)|*.ppm|Portable GrayMap (*.pgm)|*.pgm|Portable BitMap (*.pbm)|*.pbm|Portable Network Graphic (*.png)|*.png|Pixmap (*.xpm)|*.xpm|Bitmaps (*.bmp)|*.bmp|All files (*.*)|*.*|'
Options = [ofAllowMultiSelect, ofFileMustExist, ofEnableSizing, ofViewDetail, ofAutoPreview]
Title = 'Open existing file' Title = 'Open existing file'
Filter = 'Graphic (*.ico;*.ppm;*.pgm;*.pbm;*.png;*.xpm;*.bmp)|*.ico;*.ppm;*.pgm;*.pbm;*.png;*.xpm;*.bmp|Icon (*.ico)|*.ico|Portable PixMap (*.ppm)|*.ppm|Portable GrayMap (*.pgm)|*.pgm|Portable BitMap (*.pbm)|*.pbm|Portable Network Graphic (*.png)|*.png|Pixmap (*.xpm)|*.xpm|Bitmaps (*.bmp)|*.bmp|All files (*.*)|*.*|'
FilterIndex = 0 FilterIndex = 0
Title = 'Open existing file' Options = [ofAllowMultiSelect, ofFileMustExist, ofEnableSizing, ofViewDetail, ofAutoPreview]
left = 216 left = 216
top = 209 top = 209
end end
object SaveDialog: TSavePictureDialog object SaveDialog: TSavePictureDialog
Filter = 'Pixmap (*.xpm)|*.xpm'
Options = [ofEnableSizing, ofViewDetail, ofAutoPreview]
Title = 'Save file as' Title = 'Save file as'
Filter = 'Pixmap (*.xpm)|*.xpm' Filter = 'Pixmap (*.xpm)|*.xpm'
FilterIndex = 0 FilterIndex = 0
Title = 'Save file as' Options = [ofEnableSizing, ofViewDetail, ofAutoPreview]
left = 252 left = 252
top = 209 top = 209
end end

View File

@ -1,121 +1,114 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TImageListEditorDlg','FORMDATA',[ LazarusResources.Add('TImageListEditorDlg','FORMDATA',[
'TPF0'#19'TImageListEditorDlg'#18'ImageListEditorDlg'#13'ActiveControl'#7#5'B' 'TPF0'#19'TImageListEditorDlg'#18'ImageListEditorDlg'#4'Left'#3'9'#1#6'Height'
+'tnOK'#11'BorderIcons'#11#12'biSystemMenu'#6'biHelp'#0#7'Caption'#6#17'Image' +#3'Y'#1#3'Top'#3#194#0#5'Width'#3#8#2#18'HorzScrollBar.Page'#3#7#2#18'VertSc'
+'sList Editor'#12'ClientHeight'#3'Y'#1#11'ClientWidth'#3#8#2#21'Constraints.' +'rollBar.Page'#3'X'#1#13'ActiveControl'#7#5'BtnOK'#11'BorderIcons'#11#12'biS'
+'MinHeight'#3'Y'#1#20'Constraints.MinWidth'#3#8#2#8'OnCreate'#7#10'FormCreat' +'ystemMenu'#6'biHelp'#0#7'Caption'#6#17'ImagesList Editor'#21'Constraints.Mi'
+'e'#13'PixelsPerInch'#2'p'#8'Position'#7#14'poScreenCenter'#18'HorzScrollBar' +'nHeight'#3'Y'#1#20'Constraints.MinWidth'#3#8#2#8'OnCreate'#7#10'FormCreate'
+'.Page'#3#7#2#18'VertScrollBar.Page'#3'X'#1#4'Left'#3'9'#1#6'Height'#3'Y'#1#3 +#9'OnDestroy'#7#11'FormDestroy'#8'Position'#7#14'poScreenCenter'#0#9'TGroupB'
+'Top'#3#194#0#5'Width'#3#8#2#0#9'TGroupBox'#9'GroupBoxR'#7'Anchors'#11#5'akT' +'ox'#9'GroupBoxR'#4'Left'#3'('#1#6'Height'#3'+'#1#3'Top'#2#6#5'Width'#3#218#0
+'op'#6'akLeft'#7'akRight'#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7'Capti' +#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#20'BorderSpacing.'
+'on'#6#14'Selected Image'#12'ClientHeight'#3#26#1#11'ClientWidth'#3#214#0#8 +'Around'#2#6#7'Caption'#6#14'Selected Image'#8'TabOrder'#2#5#0#6'TLabel'#16
+'TabOrder'#2#5#4'Left'#3'('#1#6'Height'#3'+'#1#3'Top'#2#6#5'Width'#3#218#0#0 +'LabelTransparent'#4'Left'#2'n'#6'Height'#2#13#3'Top'#3#175#0#5'Width'#2'h'#7
+#6'TLabel'#16'LabelTransparent'#7'Anchors'#11#6'akLeft'#8'akBottom'#0#20'Bor' +'Anchors'#11#6'akLeft'#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7'Caption'
+'derSpacing.Around'#2#6#7'Caption'#6#18'Transparent Color:'#5'Color'#7#6'clN' +#6#18'Transparent Color:'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#6'TLabe'
+'one'#11'ParentColor'#8#4'Left'#2'n'#6'Height'#2#13#3'Top'#3#176#0#5'Width'#2 +'l'#9'LabelSize'#4'Left'#2#6#6'Height'#2#28#3'Top'#2#6#5'Width'#2'L'#5'Color'
+'h'#0#0#6'TLabel'#9'LabelSize'#5'Color'#7#6'clNone'#11'ParentColor'#8#4'Left' +#7#6'clNone'#11'ParentColor'#8#0#0#10'TScrollBox'#7'Preview'#4'Left'#2#6#6'H'
+#2#6#6'Height'#2#28#3'Top'#2#6#5'Width'#2'L'#0#0#10'TScrollBox'#7'Preview'#7 +'eight'#3#132#0#3'Top'#2' '#5'Width'#3#201#0#18'HorzScrollBar.Page'#3#196#0
+'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#20'BorderSpacing.Ar' +#18'VertScrollBar.Page'#2''#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'a'
+'ound'#2#6#5'Color'#7#10'clGrayText'#11'ParentColor'#8#8'TabOrder'#2#0#7'OnP' +'kBottom'#0#20'BorderSpacing.Around'#2#6#5'Color'#7#10'clGrayText'#11'Parent'
+'aint'#7#12'PreviewPaint'#18'HorzScrollBar.Page'#3#196#0#18'VertScrollBar.Pa' +'Color'#8#8'TabOrder'#2#0#7'OnPaint'#7#12'PreviewPaint'#0#0#11'TRadioGroup'
+'ge'#3#128#0#4'Left'#2#6#6'Height'#3#133#0#3'Top'#2' '#5'Width'#3#201#0#0#0 +#10'RadioGroup'#4'Left'#2#6#6'Height'#2'i'#3'Top'#3#170#0#5'Width'#2'`'#7'An'
+#11'TRadioGroup'#10'RadioGroup'#7'Anchors'#11#6'akLeft'#8'akBottom'#0#8'Auto' +'chors'#11#6'akLeft'#8'akBottom'#0#8'AutoFill'#9#20'BorderSpacing.Around'#2#6
+'Fill'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#10'Adjustment'#28'ChildSi' +#7'Caption'#6#10'Adjustment'#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildSi'
+'zing.LeftRightSpacing'#2#6#28'ChildSizing.TopBottomSpacing'#2#6#29'ChildSiz' +'zing.TopBottomSpacing'#2#6#29'ChildSizing.EnlargeHorizontal'#7#24'crsHomoge'
+'ing.EnlargeHorizontal'#7#24'crsHomogenousChildResize'#27'ChildSizing.Enlarg' +'nousChildResize'#27'ChildSizing.EnlargeVertical'#7#24'crsHomogenousSpaceRes'
+'eVertical'#7#24'crsHomogenousSpaceResize'#28'ChildSizing.ShrinkHorizontal'#7 +'ize'#28'ChildSizing.ShrinkHorizontal'#7#14'crsScaleChilds'#26'ChildSizing.S'
+#14'crsScaleChilds'#26'ChildSizing.ShrinkVertical'#7#14'crsScaleChilds'#18'C' +'hrinkVertical'#7#14'crsScaleChilds'#18'ChildSizing.Layout'#7#29'cclLeftToRi'
+'hildSizing.Layout'#7#29'cclLeftToRightThenTopToBottom'#27'ChildSizing.Contr' +'ghtThenTopToBottom'#27'ChildSizing.ControlsPerLine'#2#1#7'Enabled'#8#9'Item'
+'olsPerLine'#2#1#7'Enabled'#8#9'ItemIndex'#2#0#13'Items.Strings'#1#6#4'None' +'Index'#2#0#13'Items.Strings'#1#6#4'None'#6#7'Stretch'#6#4'Crop'#6#6'Center'
+#6#7'Stretch'#6#4'Crop'#6#6'Center'#0#7'OnClick'#7#24'ColorBoxTransparentCli' +#0#7'OnClick'#7#24'ColorBoxTransparentClick'#8'TabOrder'#2#1#0#0#9'TColorBox'
+'ck'#8'TabOrder'#2#1#4'Left'#2#6#6'Height'#2'i'#3'Top'#3#171#0#5'Width'#2'`' +#19'ColorBoxTransparent'#4'Left'#2'n'#6'Height'#2#24#3'Top'#3#195#0#5'Width'
+#0#0#9'TColorBox'#19'ColorBoxTransparent'#7'Anchors'#11#6'akLeft'#8'akBottom' +#2'`'#7'Anchors'#11#6'akLeft'#8'akBottom'#0#7'Enabled'#8#13'Items.Strings'#1
+#0#7'Enabled'#8#13'Items.Strings'#1#6#7'clBlack'#6#8'clMaroon'#6#7'clGreen'#6 +#6#7'clBlack'#6#8'clMaroon'#6#7'clGreen'#6#7'clOlive'#6#6'clNavy'#6#8'clPurp'
+#7'clOlive'#6#6'clNavy'#6#8'clPurple'#6#6'clTeal'#6#6'clGray'#6#8'clSilver'#6 +'le'#6#6'clTeal'#6#6'clGray'#6#8'clSilver'#6#5'clRed'#6#6'clLime'#6#8'clYell'
+#5'clRed'#6#6'clLime'#6#8'clYellow'#6#6'clBlue'#6#9'clFuchsia'#6#6'clAqua'#6 +'ow'#6#6'clBlue'#6#9'clFuchsia'#6#6'clAqua'#6#8'clLtGray'#6#8'clDkGray'#6#7
+#8'clLtGray'#6#8'clDkGray'#6#7'clWhite'#6#7'clCream'#6#6'clNone'#6#9'clDefau' +'clWhite'#6#7'clCream'#6#6'clNone'#6#9'clDefault'#6#11'clScrollBar'#6#12'clB'
+'lt'#6#11'clScrollBar'#6#12'clBackground'#6#15'clActiveCaption'#6#17'clInact' +'ackground'#6#15'clActiveCaption'#6#17'clInactiveCaption'#6#6'clMenu'#6#8'cl'
+'iveCaption'#6#6'clMenu'#6#8'clWindow'#6#13'clWindowFrame'#6#10'clMenuText'#6 +'Window'#6#13'clWindowFrame'#6#10'clMenuText'#6#12'clWindowText'#6#13'clCapt'
+#12'clWindowText'#6#13'clCaptionText'#6#14'clActiveBorder'#6#16'clInactiveBo' +'ionText'#6#14'clActiveBorder'#6#16'clInactiveBorder'#6#14'clAppWorkspace'#6
+'rder'#6#14'clAppWorkspace'#6#11'clHighlight'#6#15'clHighlightText'#6#9'clBt' +#11'clHighlight'#6#15'clHighlightText'#6#9'clBtnFace'#6#11'clBtnShadow'#6#10
+'nFace'#6#11'clBtnShadow'#6#10'clGrayText'#6#9'clBtnText'#6#21'clInactiveCap' +'clGrayText'#6#9'clBtnText'#6#21'clInactiveCaptionText'#6#14'clBtnHighlight'
+'tionText'#6#14'clBtnHighlight'#6#12'cl3DDkShadow'#6#9'cl3DLight'#6#10'clInf' +#6#12'cl3DDkShadow'#6#9'cl3DLight'#6#10'clInfoText'#6#8'clInfoBk'#6#10'clHot'
+'oText'#6#8'clInfoBk'#6#10'clHotLight'#6#23'clGradientActiveCaption'#6#25'cl' +'Light'#6#23'clGradientActiveCaption'#6#25'clGradientInactiveCaption'#6#6'cl'
+'GradientInactiveCaption'#6#6'clForm'#6#11'clEndColors'#6#14'clColorDesktop' +'Form'#6#11'clEndColors'#6#14'clColorDesktop'#6#8'cl3DFace'#6#10'cl3DShadow'
+#6#8'cl3DFace'#6#10'cl3DShadow'#6#11'cl3DHiLight'#6#12'clBtnHiLight'#6#12'cl' +#6#11'cl3DHiLight'#6#12'clBtnHiLight'#6#12'clForeground'#6#8'clButton'#6#7'c'
+'Foreground'#6#8'clButton'#6#7'clLight'#6#10'clMidlight'#6#6'clDark'#6#5'clM' +'lLight'#6#10'clMidlight'#6#6'clDark'#6#5'clMid'#6#6'clText'#6#12'clBrightTe'
+'id'#6#6'clText'#6#12'clBrightText'#6#12'clButtonText'#6#6'clBase'#6#8'clSha' +'xt'#6#12'clButtonText'#6#6'clBase'#6#8'clShadow'#6#17'clHighlightedText'#6
+'dow'#6#17'clHighlightedText'#6#18'clNormalForeground'#6#14'clNormalButton'#6 +#18'clNormalForeground'#6#14'clNormalButton'#6#13'clNormalLight'#6#16'clNorm'
+#13'clNormalLight'#6#16'clNormalMidlight'#6#12'clNormalDark'#6#11'clNormalMi' +'alMidlight'#6#12'clNormalDark'#6#11'clNormalMid'#6#12'clNormalText'#6#18'cl'
+'d'#6#12'clNormalText'#6#18'clNormalBrightText'#6#18'clNormalButtonText'#6#12 +'NormalBrightText'#6#18'clNormalButtonText'#6#12'clNormalBase'#6#18'clNormal'
+'clNormalBase'#6#18'clNormalBackground'#6#14'clNormalShadow'#6#17'clNormalHi' +'Background'#6#14'clNormalShadow'#6#17'clNormalHighlight'#6#23'clNormalHighl'
+'ghlight'#6#23'clNormalHighlightedText'#6#20'clDisabledForeground'#6#16'clDi' +'ightedText'#6#20'clDisabledForeground'#6#16'clDisabledButton'#6#15'clDisabl'
+'sabledButton'#6#15'clDisabledLight'#6#18'clDisabledMidlight'#6#14'clDisable' +'edLight'#6#18'clDisabledMidlight'#6#14'clDisabledDark'#6#13'clDisabledMid'#6
+'dDark'#6#13'clDisabledMid'#6#14'clDisabledText'#6#20'clDisabledBrightText'#6 +#14'clDisabledText'#6#20'clDisabledBrightText'#6#20'clDisabledButtonText'#6
+#20'clDisabledButtonText'#6#14'clDisabledBase'#6#20'clDisabledBackground'#6 +#14'clDisabledBase'#6#20'clDisabledBackground'#6#16'clDisabledShadow'#6#19'c'
+#16'clDisabledShadow'#6#19'clDisabledHighlight'#6#25'clDisabledHighlightedTe' +'lDisabledHighlight'#6#25'clDisabledHighlightedText'#6#18'clActiveForeground'
+'xt'#6#18'clActiveForeground'#6#14'clActiveButton'#6#13'clActiveLight'#6#16 +#6#14'clActiveButton'#6#13'clActiveLight'#6#16'clActiveMidlight'#6#12'clActi'
+'clActiveMidlight'#6#12'clActiveDark'#6#11'clActiveMid'#6#12'clActiveText'#6 +'veDark'#6#11'clActiveMid'#6#12'clActiveText'#6#18'clActiveBrightText'#6#18
+#18'clActiveBrightText'#6#18'clActiveButtonText'#6#12'clActiveBase'#6#18'clA' +'clActiveButtonText'#6#12'clActiveBase'#6#18'clActiveBackground'#6#14'clActi'
+'ctiveBackground'#6#14'clActiveShadow'#6#17'clActiveHighlight'#6#23'clActive' +'veShadow'#6#17'clActiveHighlight'#6#23'clActiveHighlightedText'#0#9'MaxLeng'
+'HighlightedText'#0#9'MaxLength'#2#0#7'Palette'#7#6'cpFull'#11'ParentColor'#8 +'th'#2#0#7'Palette'#7#6'cpFull'#11'ParentColor'#8#8'TabOrder'#2#2#4'Text'#6#9
+#8'TabOrder'#2#2#4'Text'#6#9'clFuchsia'#8'OnChange'#7#24'ColorBoxTransparent' +'clFuchsia'#8'OnChange'#7#24'ColorBoxTransparentClick'#0#0#0#7'TBitBtn'#5'Bt'
+'Click'#4'Left'#2'n'#6'Height'#2#24#3'Top'#3#196#0#5'Width'#2'`'#0#0#0#7'TBi' +'nOK'#4'Left'#3#199#0#6'Height'#2#25#3'Top'#3'9'#1#5'Width'#2'K'#7'Anchors'
+'tBtn'#5'BtnOK'#7'Anchors'#11#7'akRight'#8'akBottom'#0#20'BorderSpacing.Arou' +#11#7'akRight'#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#3'&OK'
+'nd'#2#6#7'Caption'#6#3'&OK'#4'Kind'#7#4'bkOK'#11'ModalResult'#2#1#9'NumGlyp' +#4'Kind'#7#4'bkOK'#11'ModalResult'#2#1#9'NumGlyphs'#2#0#8'TabOrder'#2#0#0#0#7
+'hs'#2#0#8'TabOrder'#2#0#4'Left'#3#199#0#6'Height'#2#25#3'Top'#3'9'#1#5'Widt' +'TBitBtn'#9'BtnCancel'#4'Left'#3#23#1#6'Height'#2#25#3'Top'#3'9'#1#5'Width'#2
,'h'#2'K'#0#0#7'TBitBtn'#9'BtnCancel'#7'Anchors'#11#7'akRight'#8'akBottom'#0#6 ,'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#6'Cancel'#9#7'Caption'#6#6'Cancel'
+'Cancel'#9#7'Caption'#6#6'Cancel'#4'Kind'#7#8'bkCancel'#11'ModalResult'#2#2#9 +#4'Kind'#7#8'bkCancel'#11'ModalResult'#2#2#9'NumGlyphs'#2#0#8'TabOrder'#2#1#0
+'NumGlyphs'#2#0#8'TabOrder'#2#1#4'Left'#3#23#1#6'Height'#2#25#3'Top'#3'9'#1#5 +#0#7'TBitBtn'#8'BtnApply'#4'Left'#3'g'#1#6'Height'#2#25#3'Top'#3'9'#1#5'Widt'
+'Width'#2'K'#0#0#7'TBitBtn'#8'BtnApply'#7'Anchors'#11#7'akRight'#8'akBottom' +'h'#2'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#20'BorderSpacing.Around'#2#6
+#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#6'&Apply'#9'NumGlyphs'#2#0#7'On' +#7'Caption'#6#6'&Apply'#9'NumGlyphs'#2#0#7'OnClick'#7#13'btnApplyClick'#8'Ta'
+'Click'#7#13'btnApplyClick'#8'TabOrder'#2#2#4'Left'#3'g'#1#6'Height'#2#25#3 +'bOrder'#2#2#0#0#7'TBitBtn'#7'BtnHelp'#4'Left'#3#183#1#6'Height'#2#25#3'Top'
+'Top'#3'9'#1#5'Width'#2'K'#0#0#7'TBitBtn'#7'BtnHelp'#7'Anchors'#11#7'akRight' +#3'9'#1#5'Width'#2'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#20'BorderSpacin'
+#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#5'&Help'#4'Kind'#7#6 +'g.Around'#2#6#7'Caption'#6#5'&Help'#4'Kind'#7#6'bkHelp'#9'NumGlyphs'#2#0#8
+'bkHelp'#9'NumGlyphs'#2#0#8'TabOrder'#2#3#4'Left'#3#183#1#6'Height'#2#25#3'T' +'TabOrder'#2#3#0#0#9'TGroupBox'#9'GroupBoxL'#4'Left'#2#6#6'Height'#3'+'#1#3
+'op'#3'9'#1#5'Width'#2'K'#0#0#9'TGroupBox'#9'GroupBoxL'#7'Anchors'#11#5'akTo' +'Top'#2#6#5'Width'#3#24#1#7'Anchors'#11#5'akTop'#6'akLeft'#8'akBottom'#0#20
+'p'#6'akLeft'#8'akBottom'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#6'Imag' +'BorderSpacing.Around'#2#6#7'Caption'#6#6'Images'#8'TabOrder'#2#4#0#9'TTreeV'
+'es'#12'ClientHeight'#3#26#1#11'ClientWidth'#3#20#1#8'TabOrder'#2#4#4'Left'#2 +'iew'#8'TreeView'#4'Left'#2#6#6'Height'#3#13#1#3'Top'#2#6#5'Width'#3#185#0#7
+#6#6'Height'#3'+'#1#3'Top'#2#6#5'Width'#3#24#1#0#9'TTreeView'#8'TreeView'#7
+'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#20'BorderSpacing.Ar' +'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#20'BorderSpacing.Ar'
+'ound'#2#6#17'DefaultItemHeight'#2#16#13'HideSelection'#8#6'Images'#7#9'Imag' +'ound'#2#6#17'DefaultItemHeight'#2#16#13'HideSelection'#8#6'Images'#7#9'Imag'
+'eList'#9'RowSelect'#9#11'ShowButtons'#8#9'ShowLines'#8#8'ShowRoot'#8#8'TabO' +'eList'#9'RowSelect'#9#11'ShowButtons'#8#9'ShowLines'#8#8'ShowRoot'#8#8'TabO'
+'rder'#2#0#10'OnDeletion'#7#16'TreeViewDeletion'#18'OnSelectionChanged'#7#24 +'rder'#2#0#10'OnDeletion'#7#16'TreeViewDeletion'#18'OnSelectionChanged'#7#24
+'TreeViewSelectionChanged'#7'Options'#11#17'tvoAutoItemHeight'#21'tvoKeepCol' +'TreeViewSelectionChanged'#7'Options'#11#17'tvoAutoItemHeight'#21'tvoKeepCol'
+'lapsedNodes'#12'tvoRowSelect'#11'tvoToolTips'#0#4'Left'#2#6#6'Height'#3#14#1 +'lapsedNodes'#12'tvoRowSelect'#11'tvoToolTips'#0#0#0#7'TButton'#6'BtnAdd'#3
+#3'Top'#2#6#5'Width'#3#185#0#0#0#7'TButton'#6'BtnAdd'#7'Anchors'#11#5'akTop' +'Tag'#2#1#4'Left'#3#196#0#6'Height'#2#25#3'Top'#2#6#5'Width'#2'K'#7'Anchors'
+#7'akRight'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#6'Add...'#7'Default' +#11#5'akTop'#7'akRight'#0#20'BorderSpacing.Around'#2#6#25'BorderSpacing.Inne'
+#9#7'OnClick'#7#11'BtnAddClick'#8'TabOrder'#2#1#4'Left'#3#196#0#6'Height'#2 +'rBorder'#2#4#7'Caption'#6#6'Add...'#7'Default'#9#7'OnClick'#7#11'BtnAddClic'
+#25#3'Top'#2#6#5'Width'#2'K'#3'Tag'#2#1#0#0#7'TButton'#8'BtnClear'#7'Anchors' +'k'#8'TabOrder'#2#1#0#0#7'TButton'#8'BtnClear'#4'Left'#3#196#0#6'Height'#2#25
+#11#5'akTop'#7'akRight'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#5'Clear' +#3'Top'#2'D'#5'Width'#2'K'#7'Anchors'#11#5'akTop'#7'akRight'#0#20'BorderSpac'
+#7'OnClick'#7#13'BtnClearClick'#8'TabOrder'#2#2#4'Left'#3#196#0#6'Height'#2 +'ing.Around'#2#6#25'BorderSpacing.InnerBorder'#2#4#7'Caption'#6#5'Clear'#7'O'
+#25#3'Top'#2'D'#5'Width'#2'K'#0#0#7'TButton'#9'BtnDelete'#7'Anchors'#11#5'ak' +'nClick'#7#13'BtnClearClick'#8'TabOrder'#2#2#0#0#7'TButton'#9'BtnDelete'#4'L'
+'Top'#7'akRight'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#7'&Delete'#7'On' +'eft'#3#196#0#6'Height'#2#25#3'Top'#2'%'#5'Width'#2'K'#7'Anchors'#11#5'akTop'
+'Click'#7#14'BtnDeleteClick'#8'TabOrder'#2#3#4'Left'#3#196#0#6'Height'#2#25#3 +#7'akRight'#0#20'BorderSpacing.Around'#2#6#25'BorderSpacing.InnerBorder'#2#4
+'Top'#2'%'#5'Width'#2'K'#0#0#7'TButton'#9'BtnMoveUp'#7'Anchors'#11#5'akTop'#7 +#7'Caption'#6#7'&Delete'#7'OnClick'#7#14'BtnDeleteClick'#8'TabOrder'#2#3#0#0
+'akRight'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#7'Move Up'#7'OnClick'#7 +#7'TButton'#9'BtnMoveUp'#3'Tag'#2#255#4'Left'#3#196#0#6'Height'#2#25#3'Top'#2
+#14'BtnMoveUpClick'#8'TabOrder'#2#4#4'Left'#3#196#0#6'Height'#2#25#3'Top'#2 +'c'#5'Width'#2'K'#7'Anchors'#11#5'akTop'#7'akRight'#0#20'BorderSpacing.Aroun'
+'c'#5'Width'#2'K'#3'Tag'#2#255#0#0#7'TButton'#11'BtnMoveDown'#7'Anchors'#11#5 +'d'#2#6#25'BorderSpacing.InnerBorder'#2#4#7'Caption'#6#7'Move Up'#7'OnClick'
+'akTop'#7'akRight'#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#9'Move Down'#7 +#7#14'BtnMoveUpClick'#8'TabOrder'#2#4#0#0#7'TButton'#11'BtnMoveDown'#3'Tag'#2
+'OnClick'#7#14'BtnMoveUpClick'#8'TabOrder'#2#5#4'Left'#3#196#0#6'Height'#2#25 +#1#4'Left'#3#196#0#6'Height'#2#25#3'Top'#3#130#0#5'Width'#2'K'#7'Anchors'#11
+#3'Top'#3#130#0#5'Width'#2'K'#3'Tag'#2#1#0#0#7'TButton'#7'BtnSave'#7'Anchors' +#5'akTop'#7'akRight'#0#20'BorderSpacing.Around'#2#6#25'BorderSpacing.InnerBo'
+#11#5'akTop'#7'akRight'#0#7'Caption'#6#7'Save...'#7'OnClick'#7#12'BtnSaveCli' +'rder'#2#4#7'Caption'#6#9'Move Down'#7'OnClick'#7#14'BtnMoveUpClick'#8'TabOr'
+'ck'#8'TabOrder'#2#6#4'Left'#3#196#0#6'Height'#2#25#3'Top'#3#161#0#5'Width'#2 +'der'#2#5#0#0#7'TButton'#7'BtnSave'#4'Left'#3#196#0#6'Height'#2#25#3'Top'#3
+'K'#0#0#0#10'TImageList'#9'ImageList'#4'left'#3#216#0#3'top'#3#246#0#0#0#18 +#161#0#5'Width'#2'K'#7'Anchors'#11#5'akTop'#7'akRight'#0#25'BorderSpacing.In'
+'TOpenPictureDialog'#10'OpenDialog'#6'Filter'#12'2'#1#0#0'Graphic (*.ico;*.p' +'nerBorder'#2#4#7'Caption'#6#7'Save...'#7'OnClick'#7#12'BtnSaveClick'#8'TabO'
+'pm;*.pgm;*.pbm;*.png;*.xpm;*.bmp)|*.ico;*.ppm;*.pgm;*.pbm;*.png;*.xpm;*.bmp' +'rder'#2#6#0#0#0#10'TImageList'#9'ImageList'#4'left'#3#216#0#3'top'#3#246#0#0
+'|Icon (*.ico)|*.ico|Portable PixMap (*.ppm)|*.ppm|Portable GrayMap (*.pgm)|' +#0#18'TOpenPictureDialog'#10'OpenDialog'#5'Title'#6#18'Open existing file'#11
+'*.pgm|Portable BitMap (*.pbm)|*.pbm|Portable Network Graphic (*.png)|*.png|' +'FilterIndex'#2#0#7'Options'#11#18'ofAllowMultiSelect'#15'ofFileMustExist'#14
+'Pixmap (*.xpm)|*.xpm|Bitmaps (*.bmp)|*.bmp|All files (*.*)|*.*|'#7'Options' +'ofEnableSizing'#12'ofViewDetail'#13'ofAutoPreview'#0#4'left'#3#216#0#3'top'
+#11#18'ofAllowMultiSelect'#15'ofFileMustExist'#14'ofEnableSizing'#12'ofViewD' +#3#209#0#0#0#18'TSavePictureDialog'#10'SaveDialog'#5'Title'#6#12'Save file a'
+'etail'#13'ofAutoPreview'#0#5'Title'#6#18'Open existing file'#6'Filter'#12'2' +'s'#6'Filter'#6#20'Pixmap (*.xpm)|*.xpm'#11'FilterIndex'#2#0#7'Options'#11#14
+#1#0#0'Graphic (*.ico;*.ppm;*.pgm;*.pbm;*.png;*.xpm;*.bmp)|*.ico;*.ppm;*.pgm' +'ofEnableSizing'#12'ofViewDetail'#13'ofAutoPreview'#0#4'left'#3#252#0#3'top'
+';*.pbm;*.png;*.xpm;*.bmp|Icon (*.ico)|*.ico|Portable PixMap (*.ppm)|*.ppm|P' +#3#209#0#0#0#0
+'ortable GrayMap (*.pgm)|*.pgm|Portable BitMap (*.pbm)|*.pbm|Portable Networ'
+'k Graphic (*.png)|*.png|Pixmap (*.xpm)|*.xpm|Bitmaps (*.bmp)|*.bmp|All file'
+'s (*.*)|*.*|'#11'FilterIndex'#2#0#5'Title'#6#18'Open existing file'#4'left'
+#3#216#0#3'top'#3#209#0#0#0#18'TSavePictureDialog'#10'SaveDialog'#6'Filter'#6
+#20'Pixmap (*.xpm)|*.xpm'#7'Options'#11#14'ofEnableSizing'#12'ofViewDetail'
+#13'ofAutoPreview'#0#5'Title'#6#12'Save file as'#6'Filter'#6#20'Pixmap (*.xp'
+'m)|*.xpm'#11'FilterIndex'#2#0#5'Title'#6#12'Save file as'#4'left'#3#252#0#3
+'top'#3#209#0#0#0#0
]); ]);

View File

@ -78,6 +78,7 @@ type
procedure BtnSaveClick(Sender: TObject); procedure BtnSaveClick(Sender: TObject);
procedure ColorBoxTransparentClick(Sender: TObject); procedure ColorBoxTransparentClick(Sender: TObject);
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure PreviewPaint(Sender: TObject); procedure PreviewPaint(Sender: TObject);
procedure btnApplyClick(Sender: TObject); procedure btnApplyClick(Sender: TObject);
procedure TreeViewDeletion(Sender: TObject; Node: TTreeNode); procedure TreeViewDeletion(Sender: TObject; Node: TTreeNode);
@ -183,6 +184,11 @@ begin
FillColorBoxTransparent; FillColorBoxTransparent;
end; end;
procedure TImageListEditorDlg.FormDestroy(Sender: TObject);
begin
FreeAndNil(FPreviewBmp);
end;
procedure TImageListEditorDlg.BtnAddClick(Sender: TObject); procedure TImageListEditorDlg.BtnAddClick(Sender: TObject);
var var
I: Integer; I: Integer;