mirror of
https://github.com/doublecmd/doublecmd.git
synced 2026-06-21 09:58:13 +00:00
ADD: Delete files from archives
This commit is contained in:
parent
d31ba3af34
commit
e8881527f9
15 changed files with 639 additions and 714 deletions
|
|
@ -1,6 +1,7 @@
|
|||
|
||||
delp .\
|
||||
|
||||
del /Q *.lrs
|
||||
del /Q *.or
|
||||
del /Q *.*~
|
||||
del /Q *.~*
|
||||
|
|
|
|||
|
|
@ -18,6 +18,11 @@
|
|||
<CodeGeneration>
|
||||
<Generate Value="Faster"/>
|
||||
</CodeGeneration>
|
||||
<Linking>
|
||||
<Debugging>
|
||||
<GenerateDebugInfo Value="True"/>
|
||||
</Debugging>
|
||||
</Linking>
|
||||
<Other>
|
||||
<CompilerPath Value="$(CompPath)"/>
|
||||
</Other>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
inherited frmFindDlg: TfrmFindDlg
|
||||
Left = 282
|
||||
Left = 173
|
||||
Height = 476
|
||||
Top = 231
|
||||
Top = 33
|
||||
Width = 541
|
||||
HorzScrollBar.Page = 540
|
||||
VertScrollBar.Page = 475
|
||||
|
|
@ -111,7 +111,7 @@ inherited frmFindDlg: TfrmFindDlg
|
|||
Left = 16
|
||||
Height = 24
|
||||
Top = 9
|
||||
Width = 314
|
||||
Width = 310
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
TabOrder = 1
|
||||
end
|
||||
|
|
|
|||
|
|
@ -348,6 +348,7 @@ begin
|
|||
end;
|
||||
frmMain.ActiveFrame.pnlFile.FileList.UpdateFileInformation;
|
||||
frmMain.ActiveFrame.pnlFile.Sort;
|
||||
frmMain.ActiveFrame.pnlFile.ActiveDir := '';
|
||||
Close;
|
||||
end;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,109 +1,109 @@
|
|||
object OneButtonChangeDlg: TOneButtonChangeDlg
|
||||
ActiveControl = id_btn_command
|
||||
Tag = 1
|
||||
Left = 250
|
||||
Height = 240
|
||||
Top = 235
|
||||
Width = 533
|
||||
HelpContext = 270
|
||||
HorzScrollBar.Page = 532
|
||||
VertScrollBar.Page = 239
|
||||
ActiveControl = cbCommand
|
||||
BorderIcons = []
|
||||
BorderStyle = bsDialog
|
||||
Caption = 'Change single button'
|
||||
ClientHeight = 240
|
||||
ClientWidth = 533
|
||||
Font.Color = clBtnText
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
PixelsPerInch = 96
|
||||
Position = poScreenCenter
|
||||
TextHeight = 13
|
||||
HorzScrollBar.Page = 532
|
||||
VertScrollBar.Page = 239
|
||||
Left = 349
|
||||
Height = 240
|
||||
Top = 436
|
||||
Width = 533
|
||||
HelpContext = 270
|
||||
Tag = 1
|
||||
object Command: TLabel
|
||||
AutoSize = False
|
||||
Caption = '&Command:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_command
|
||||
ParentColor = False
|
||||
object lblCommand: TLabel
|
||||
Tag = 9
|
||||
Left = 4
|
||||
Height = 14
|
||||
Top = 7
|
||||
Width = 80
|
||||
Tag = 9
|
||||
end
|
||||
object Parameters: TLabel
|
||||
AutoSize = False
|
||||
Caption = '&Parameters:'
|
||||
Caption = '&Command:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_param
|
||||
FocusControl = cbCommand
|
||||
ParentColor = False
|
||||
end
|
||||
object lblParameters: TLabel
|
||||
Tag = 10
|
||||
Left = 4
|
||||
Height = 14
|
||||
Top = 35
|
||||
Width = 80
|
||||
Tag = 10
|
||||
end
|
||||
object Startpath: TLabel
|
||||
AutoSize = False
|
||||
Caption = '&Start path:'
|
||||
Caption = '&Parameters:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_startpath
|
||||
FocusControl = kedtParams
|
||||
ParentColor = False
|
||||
end
|
||||
object lblStartpath: TLabel
|
||||
Tag = 11
|
||||
Left = 4
|
||||
Height = 14
|
||||
Top = 60
|
||||
Width = 80
|
||||
Tag = 11
|
||||
end
|
||||
object Iconfile: TLabel
|
||||
AutoSize = False
|
||||
Caption = 'Icon &file:'
|
||||
Caption = '&Start path:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_iconfilename
|
||||
FocusControl = kedtStartpath
|
||||
ParentColor = False
|
||||
end
|
||||
object lblIconfile: TLabel
|
||||
Tag = 12
|
||||
Left = 4
|
||||
Height = 13
|
||||
Top = 85
|
||||
Width = 80
|
||||
Tag = 12
|
||||
end
|
||||
object Icon: TLabel
|
||||
AutoSize = False
|
||||
Caption = '&Icon:'
|
||||
Caption = 'Icon &file:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_icon
|
||||
FocusControl = kedtIconFileName
|
||||
ParentColor = False
|
||||
WordWrap = True
|
||||
end
|
||||
object lblIconX: TLabel
|
||||
Tag = 13
|
||||
Left = 4
|
||||
Height = 14
|
||||
Top = 110
|
||||
Width = 45
|
||||
Tag = 13
|
||||
AutoSize = False
|
||||
Caption = '&Icon:'
|
||||
Color = clNone
|
||||
FocusControl = lblIcons
|
||||
ParentColor = False
|
||||
WordWrap = True
|
||||
end
|
||||
object id_btn_iconindex: TLabel
|
||||
object lblIconIndex: TLabel
|
||||
Left = 54
|
||||
Height = 14
|
||||
Top = 110
|
||||
Width = 25
|
||||
AutoSize = False
|
||||
Caption = '0'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
WordWrap = True
|
||||
Left = 54
|
||||
Height = 14
|
||||
Top = 110
|
||||
Width = 25
|
||||
end
|
||||
object Tooltip: TLabel
|
||||
AutoSize = False
|
||||
Caption = '&Tooltip:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_ToolTip
|
||||
ParentColor = False
|
||||
object lblTooltip: TLabel
|
||||
Tag = 14
|
||||
Left = 4
|
||||
Height = 14
|
||||
Top = 167
|
||||
Width = 80
|
||||
Tag = 14
|
||||
AutoSize = False
|
||||
Caption = '&Tooltip:'
|
||||
Color = clNone
|
||||
FocusControl = kedtToolTip
|
||||
ParentColor = False
|
||||
end
|
||||
object id_btn_command: TComboBox
|
||||
object cbCommand: TComboBox
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 6
|
||||
Width = 298
|
||||
AutoCompleteText = [cbactEndOfLineComplete, cbactSearchAscending]
|
||||
DropDownCount = 20
|
||||
Font.Height = -11
|
||||
|
|
@ -111,149 +111,144 @@ object OneButtonChangeDlg: TOneButtonChangeDlg
|
|||
ItemHeight = 13
|
||||
MaxLength = 0
|
||||
TabOrder = 0
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 6
|
||||
Width = 298
|
||||
end
|
||||
object id_btn_find1: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '>>'
|
||||
OnClick = id_btn_find1Click
|
||||
TabOrder = 1
|
||||
object btnOpenFile: TButton
|
||||
Left = 384
|
||||
Height = 22
|
||||
Top = 5
|
||||
Width = 25
|
||||
BorderSpacing.InnerBorder = 4
|
||||
Caption = '>>'
|
||||
OnClick = btnOpenFileClick
|
||||
TabOrder = 1
|
||||
end
|
||||
object id_btn_findbar: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = 'Add Subbar >>'
|
||||
TabOrder = 2
|
||||
object btnAddSubBar: TButton
|
||||
Tag = 15
|
||||
Left = 412
|
||||
Height = 23
|
||||
Top = 4
|
||||
Width = 110
|
||||
Tag = 15
|
||||
BorderSpacing.InnerBorder = 4
|
||||
Caption = 'Add Subbar >>'
|
||||
TabOrder = 2
|
||||
end
|
||||
object id_btn_param: TKASEdit
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 3
|
||||
object kedtParams: TKASEdit
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 31
|
||||
Width = 298
|
||||
end
|
||||
object id_btn_assymbol: TCheckBox
|
||||
Caption = 'Run mi&nimized'
|
||||
TabOrder = 4
|
||||
Left = 387
|
||||
Height = 13
|
||||
Top = 34
|
||||
Width = 94
|
||||
Tag = 16
|
||||
end
|
||||
object id_btn_startpath: TKASEdit
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 6
|
||||
TabOrder = 3
|
||||
end
|
||||
object lblRunMinimized: TCheckBox
|
||||
Tag = 16
|
||||
Left = 387
|
||||
Height = 13
|
||||
Top = 34
|
||||
Width = 88
|
||||
Caption = 'Run mi&nimized'
|
||||
TabOrder = 4
|
||||
end
|
||||
object kedtStartpath: TKASEdit
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 56
|
||||
Width = 298
|
||||
end
|
||||
object id_btn_iconfilename: TKASEdit
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 7
|
||||
TabOrder = 6
|
||||
end
|
||||
object kedtIconFileName: TKASEdit
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 81
|
||||
Width = 298
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 7
|
||||
end
|
||||
object id_btn_iconfile: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '>>'
|
||||
OnClick = id_btn_iconfileClick
|
||||
TabOrder = 8
|
||||
object btnOpenIconFile: TButton
|
||||
Left = 384
|
||||
Height = 21
|
||||
Top = 81
|
||||
Width = 25
|
||||
BorderSpacing.InnerBorder = 4
|
||||
Caption = '>>'
|
||||
OnClick = btnOpenIconFileClick
|
||||
TabOrder = 8
|
||||
end
|
||||
object id_btn_icon: TListBox
|
||||
object lblIcons: TListBox
|
||||
Left = 85
|
||||
Height = 54
|
||||
Top = 106
|
||||
Width = 298
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
ItemHeight = 36
|
||||
Style = lbOwnerDrawFixed
|
||||
TabOrder = 9
|
||||
Left = 85
|
||||
Height = 54
|
||||
Top = 106
|
||||
Width = 298
|
||||
end
|
||||
object id_btn_ToolTip: TKASEdit
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 10
|
||||
object kedtToolTip: TKASEdit
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 164
|
||||
Width = 298
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 10
|
||||
end
|
||||
object Ok: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
OnClick = OkClick
|
||||
TabOrder = 11
|
||||
object btnOK: TButton
|
||||
Tag = 4001
|
||||
Left = 420
|
||||
Height = 23
|
||||
Top = 110
|
||||
Width = 100
|
||||
Tag = 4001
|
||||
BorderSpacing.InnerBorder = 4
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
OnClick = btnOKClick
|
||||
TabOrder = 11
|
||||
end
|
||||
object Cancel: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
OnClick = CancelClick
|
||||
TabOrder = 12
|
||||
object btnCancel: TButton
|
||||
Tag = 4002
|
||||
Left = 420
|
||||
Height = 23
|
||||
Top = 136
|
||||
Width = 100
|
||||
Tag = 4002
|
||||
BorderSpacing.InnerBorder = 4
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
OnClick = btnCancelClick
|
||||
TabOrder = 12
|
||||
end
|
||||
object id_Globalhelp: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '&Help'
|
||||
TabOrder = 13
|
||||
object btnHelp: TButton
|
||||
Tag = 4003
|
||||
Left = 420
|
||||
Height = 23
|
||||
Top = 162
|
||||
Width = 100
|
||||
Tag = 4003
|
||||
BorderSpacing.InnerBorder = 4
|
||||
Caption = '&Help'
|
||||
TabOrder = 13
|
||||
end
|
||||
object id_btn_maximized: TCheckBox
|
||||
Caption = 'Run ma&ximized'
|
||||
TabOrder = 5
|
||||
object lblRunMaximized: TCheckBox
|
||||
Tag = 17
|
||||
Left = 387
|
||||
Height = 13
|
||||
Top = 50
|
||||
Width = 97
|
||||
Tag = 17
|
||||
Width = 91
|
||||
Caption = 'Run ma&ximized'
|
||||
TabOrder = 5
|
||||
end
|
||||
object OpenDialog: TOpenDialog
|
||||
Title = 'Îòêðûòü ñóùåñòâóþùèé ôàéë'
|
||||
FilterIndex = 0
|
||||
Title = 'Îòêðûòü ñóùåñòâóþùèé ôàéë'
|
||||
left = 32
|
||||
top = 496
|
||||
end
|
||||
|
|
|
|||
|
|
@ -23,32 +23,32 @@ type
|
|||
{ TOneButtonChangeDlg }
|
||||
|
||||
TOneButtonChangeDlg = class(TForm)
|
||||
Cancel: TButton;
|
||||
Command: TLabel;
|
||||
btnCancel: TButton;
|
||||
lblCommand: TLabel;
|
||||
IconX: TLabel;
|
||||
Iconfile: TLabel;
|
||||
id_btn_assymbol: TCheckBox;
|
||||
id_btn_command: TComboBox;
|
||||
id_btn_find1: TButton;
|
||||
id_btn_findbar: TButton;
|
||||
id_btn_icon: TListBox;
|
||||
id_btn_iconfile: TButton;
|
||||
id_btn_iconfilename: TKASEdit;
|
||||
id_btn_iconindex: TLabel;
|
||||
id_btn_maximized: TCheckBox;
|
||||
id_btn_param: TKASEdit;
|
||||
id_btn_startpath: TKASEdit;
|
||||
id_btn_ToolTip: TKASEdit;
|
||||
id_Globalhelp: TButton;
|
||||
Ok: TButton;
|
||||
lblIconfile: TLabel;
|
||||
lblRunMinimized: TCheckBox;
|
||||
cbCommand: TComboBox;
|
||||
btnOpenFile: TButton;
|
||||
btnAddSubBar: TButton;
|
||||
lblIcons: TListBox;
|
||||
btnOpenIconFile: TButton;
|
||||
kedtIconFileName: TKASEdit;
|
||||
lblIconIndex: TLabel;
|
||||
lblRunMaximized: TCheckBox;
|
||||
kedtParams: TKASEdit;
|
||||
kedtStartpath: TKASEdit;
|
||||
kedtToolTip: TKASEdit;
|
||||
btnHelp: TButton;
|
||||
btnOK: TButton;
|
||||
OpenDialog: TOpenDialog;
|
||||
Parameters: TLabel;
|
||||
Startpath: TLabel;
|
||||
Tooltip: TLabel;
|
||||
procedure CancelClick(Sender: TObject);
|
||||
procedure OkClick(Sender: TObject);
|
||||
procedure id_btn_find1Click(Sender: TObject);
|
||||
procedure id_btn_iconfileClick(Sender: TObject);
|
||||
lblParameters: TLabel;
|
||||
lblStartpath: TLabel;
|
||||
lblTooltip: TLabel;
|
||||
procedure btnCancelClick(Sender: TObject);
|
||||
procedure btnOKClick(Sender: TObject);
|
||||
procedure btnOpenFileClick(Sender: TObject);
|
||||
procedure btnOpenIconFileClick(Sender: TObject);
|
||||
|
||||
private
|
||||
{ private declarations }
|
||||
|
|
@ -70,9 +70,9 @@ procedure ShowOneBtnChangeDlg(NumberOfButton : Integer);
|
|||
begin
|
||||
with TOneButtonChangeDlg.Create(Application) do
|
||||
try
|
||||
id_btn_command.Text := frmMain.MainToolBar.Commands[NumberOfButton];
|
||||
id_btn_iconfilename.Text := frmMain.MainToolBar.Icons[NumberOfButton];
|
||||
id_btn_ToolTip.Text := frmMain.MainToolBar.Buttons[NumberOfButton].Hint;
|
||||
cbCommand.Text := frmMain.MainToolBar.Commands[NumberOfButton];
|
||||
kedtIconFileName.Text := frmMain.MainToolBar.Icons[NumberOfButton];
|
||||
kedtToolTip.Text := frmMain.MainToolBar.Buttons[NumberOfButton].Hint;
|
||||
LastToolButton := NumberOfButton;
|
||||
ShowModal;
|
||||
finally
|
||||
|
|
@ -80,30 +80,30 @@ begin
|
|||
end;
|
||||
end;
|
||||
|
||||
procedure TOneButtonChangeDlg.CancelClick(Sender: TObject);
|
||||
procedure TOneButtonChangeDlg.btnCancelClick(Sender: TObject);
|
||||
begin
|
||||
Close;
|
||||
end;
|
||||
|
||||
procedure TOneButtonChangeDlg.OkClick(Sender: TObject);
|
||||
procedure TOneButtonChangeDlg.btnOKClick(Sender: TObject);
|
||||
begin
|
||||
frmMain.MainToolBar.Commands[LastToolButton] := id_btn_command.Text;
|
||||
frmMain.MainToolBar.Icons[LastToolButton] := id_btn_iconfilename.Text;
|
||||
frmMain.MainToolBar.Buttons[LastToolButton].Hint := id_btn_ToolTip.Text;
|
||||
frmMain.MainToolBar.Commands[LastToolButton] := cbCommand.Text;
|
||||
frmMain.MainToolBar.Icons[LastToolButton] := kedtIconFileName.Text;
|
||||
frmMain.MainToolBar.Buttons[LastToolButton].Hint := kedtToolTip.Text;
|
||||
frmMain.MainToolBar.SaveToFile(gpIniDir + 'default.bar');
|
||||
Close;
|
||||
end;
|
||||
|
||||
procedure TOneButtonChangeDlg.id_btn_find1Click(Sender: TObject);
|
||||
procedure TOneButtonChangeDlg.btnOpenFileClick(Sender: TObject);
|
||||
begin
|
||||
if OpenDialog.Execute then
|
||||
id_btn_command.Text := OpenDialog.FileName;
|
||||
cbCommand.Text := OpenDialog.FileName;
|
||||
end;
|
||||
|
||||
procedure TOneButtonChangeDlg.id_btn_iconfileClick(Sender: TObject);
|
||||
procedure TOneButtonChangeDlg.btnOpenIconFileClick(Sender: TObject);
|
||||
begin
|
||||
if OpenDialog.Execute then
|
||||
id_btn_iconfilename.Text := OpenDialog.FileName;
|
||||
kedtIconFileName.Text := OpenDialog.FileName;
|
||||
end;
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,162 +1,159 @@
|
|||
object ButtonChangeDlg: TButtonChangeDlg
|
||||
ActiveControl = id_btn_barfilesearch
|
||||
Tag = 1
|
||||
Left = 273
|
||||
Height = 281
|
||||
Top = 142
|
||||
Width = 562
|
||||
HelpContext = 270
|
||||
HorzScrollBar.Page = 561
|
||||
VertScrollBar.Page = 280
|
||||
ActiveControl = btnOpenBarFile
|
||||
BorderIcons = [biSystemMenu]
|
||||
BorderStyle = bsDialog
|
||||
Caption = 'Change button bar'
|
||||
ClientHeight = 281
|
||||
ClientWidth = 562
|
||||
Font.Color = clBtnText
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
OnShow = FormShow
|
||||
PixelsPerInch = 96
|
||||
Position = poScreenCenter
|
||||
TextHeight = 13
|
||||
HorzScrollBar.Page = 561
|
||||
VertScrollBar.Page = 280
|
||||
Left = 280
|
||||
Height = 281
|
||||
Top = 351
|
||||
Width = 562
|
||||
HelpContext = 270
|
||||
Tag = 1
|
||||
object Buttonbar: TLabel
|
||||
AutoSize = False
|
||||
Caption = '&Button bar:'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
object lblButtonBar: TLabel
|
||||
Tag = 5
|
||||
Left = 6
|
||||
Height = 13
|
||||
Top = 5
|
||||
Width = 75
|
||||
Tag = 5
|
||||
end
|
||||
object Label1: TLabel
|
||||
AutoSize = False
|
||||
Color = clWindowFrame
|
||||
Caption = '&Button bar:'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
Transparent = False
|
||||
end
|
||||
object lblLabel: TLabel
|
||||
Left = -5
|
||||
Height = 2
|
||||
Top = 80
|
||||
Width = 562
|
||||
end
|
||||
object Command: TLabel
|
||||
AutoSize = False
|
||||
Caption = '&Command:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_command
|
||||
Color = clWindowFrame
|
||||
ParentColor = False
|
||||
Transparent = False
|
||||
end
|
||||
object lblCommand: TLabel
|
||||
Tag = 9
|
||||
Left = 4
|
||||
Height = 13
|
||||
Top = 87
|
||||
Width = 81
|
||||
Tag = 9
|
||||
end
|
||||
object Parameters: TLabel
|
||||
AutoSize = False
|
||||
Caption = '&Parameters:'
|
||||
Caption = '&Command:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_param
|
||||
FocusControl = cbCommand
|
||||
ParentColor = False
|
||||
end
|
||||
object lblParameters: TLabel
|
||||
Tag = 10
|
||||
Left = 4
|
||||
Height = 13
|
||||
Top = 115
|
||||
Width = 81
|
||||
Tag = 10
|
||||
end
|
||||
object Startpath: TLabel
|
||||
AutoSize = False
|
||||
Caption = '&Start path:'
|
||||
Caption = '&Parameters:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_startpath
|
||||
FocusControl = kedtParams
|
||||
ParentColor = False
|
||||
end
|
||||
object lblStartpath: TLabel
|
||||
Tag = 11
|
||||
Left = 4
|
||||
Height = 13
|
||||
Top = 140
|
||||
Width = 81
|
||||
Tag = 11
|
||||
end
|
||||
object Iconfile: TLabel
|
||||
AutoSize = False
|
||||
Caption = 'Icon &file:'
|
||||
Caption = '&Start path:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_iconfilename
|
||||
FocusControl = kedtStartPath
|
||||
ParentColor = False
|
||||
end
|
||||
object lblIconfile: TLabel
|
||||
Tag = 12
|
||||
Left = 4
|
||||
Height = 13
|
||||
Top = 165
|
||||
Width = 81
|
||||
Tag = 12
|
||||
end
|
||||
object IconX: TLabel
|
||||
AutoSize = False
|
||||
Caption = 'Ic&on:'
|
||||
Caption = 'Icon &file:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_icon
|
||||
FocusControl = kedtIconFileName
|
||||
ParentColor = False
|
||||
WordWrap = True
|
||||
end
|
||||
object lblIconX: TLabel
|
||||
Tag = 13
|
||||
Left = 4
|
||||
Height = 13
|
||||
Top = 190
|
||||
Width = 49
|
||||
Tag = 13
|
||||
AutoSize = False
|
||||
Caption = 'Ic&on:'
|
||||
Color = clNone
|
||||
FocusControl = lbIcons
|
||||
ParentColor = False
|
||||
WordWrap = True
|
||||
end
|
||||
object id_btn_iconindex: TLabel
|
||||
object lblIconIndex: TLabel
|
||||
Left = 54
|
||||
Height = 14
|
||||
Top = 190
|
||||
Width = 25
|
||||
AutoSize = False
|
||||
Caption = '0'
|
||||
Color = clNone
|
||||
ParentColor = False
|
||||
WordWrap = True
|
||||
Left = 54
|
||||
Height = 14
|
||||
Top = 190
|
||||
Width = 25
|
||||
end
|
||||
object Tooltip: TLabel
|
||||
AutoSize = False
|
||||
Caption = '&Tooltip:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_ToolTip
|
||||
ParentColor = False
|
||||
object lblTooltip: TLabel
|
||||
Tag = 14
|
||||
Left = 4
|
||||
Height = 14
|
||||
Top = 248
|
||||
Width = 81
|
||||
Tag = 14
|
||||
AutoSize = False
|
||||
Caption = '&Tooltip:'
|
||||
Color = clNone
|
||||
FocusControl = kedtToolTip
|
||||
ParentColor = False
|
||||
end
|
||||
object id_btn_barfilesearch: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '>>'
|
||||
TabOrder = 0
|
||||
object btnOpenBarFile: TButton
|
||||
Left = 394
|
||||
Height = 21
|
||||
Top = 2
|
||||
Width = 24
|
||||
Caption = '>>'
|
||||
TabOrder = 0
|
||||
end
|
||||
object id_btn_delete: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '&Delete'
|
||||
OnClick = id_btn_deleteClick
|
||||
TabOrder = 2
|
||||
object btnDeleteButton: TButton
|
||||
Tag = 8
|
||||
Left = 4
|
||||
Height = 23
|
||||
Top = 52
|
||||
Width = 77
|
||||
Tag = 8
|
||||
Caption = '&Delete'
|
||||
OnClick = btnDeleteButtonClick
|
||||
TabOrder = 2
|
||||
end
|
||||
object id_btn_add: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '&Append'
|
||||
OnClick = id_btn_addClick
|
||||
TabOrder = 1
|
||||
object btnAddButton: TButton
|
||||
Tag = 7
|
||||
Left = 4
|
||||
Height = 23
|
||||
Top = 25
|
||||
Width = 77
|
||||
Tag = 7
|
||||
Caption = '&Append'
|
||||
OnClick = btnAddButtonClick
|
||||
TabOrder = 1
|
||||
end
|
||||
object id_btn_command: TComboBox
|
||||
object cbCommand: TComboBox
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 86
|
||||
Width = 298
|
||||
AutoCompleteText = [cbactEndOfLineComplete, cbactSearchAscending]
|
||||
DropDownCount = 20
|
||||
Font.Height = -11
|
||||
|
|
@ -164,217 +161,202 @@ object ButtonChangeDlg: TButtonChangeDlg
|
|||
ItemHeight = 13
|
||||
MaxLength = 0
|
||||
TabOrder = 4
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 86
|
||||
Width = 298
|
||||
end
|
||||
object id_btn_find1: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '>>'
|
||||
OnClick = id_btn_find1Click
|
||||
TabOrder = 5
|
||||
object btnOpenFile: TButton
|
||||
Left = 384
|
||||
Height = 22
|
||||
Top = 85
|
||||
Width = 24
|
||||
Caption = '>>'
|
||||
OnClick = btnOpenFileClick
|
||||
TabOrder = 5
|
||||
end
|
||||
object id_btn_findbar: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = 'Add S&ubbar >>'
|
||||
TabOrder = 6
|
||||
object btnAddSubBar: TButton
|
||||
Tag = 15
|
||||
Left = 420
|
||||
Height = 23
|
||||
Top = 84
|
||||
Width = 109
|
||||
Tag = 15
|
||||
Caption = 'Add S&ubbar >>'
|
||||
TabOrder = 6
|
||||
end
|
||||
object id_btn_param: TKASEdit
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 7
|
||||
object kedtParams: TKASEdit
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 111
|
||||
Width = 298
|
||||
end
|
||||
object id_btn_assymbol: TCheckBox
|
||||
Caption = 'Run mi&nimized'
|
||||
TabOrder = 8
|
||||
Left = 387
|
||||
Height = 13
|
||||
Top = 114
|
||||
Width = 94
|
||||
Tag = 16
|
||||
end
|
||||
object id_btn_startpath: TKASEdit
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 10
|
||||
TabOrder = 7
|
||||
end
|
||||
object cbRunMinimized: TCheckBox
|
||||
Tag = 16
|
||||
Left = 387
|
||||
Height = 13
|
||||
Top = 114
|
||||
Width = 88
|
||||
Caption = 'Run mi&nimized'
|
||||
TabOrder = 8
|
||||
end
|
||||
object kedtStartPath: TKASEdit
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 136
|
||||
Width = 298
|
||||
end
|
||||
object id_btn_iconfilename: TKASEdit
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 11
|
||||
TabOrder = 10
|
||||
end
|
||||
object kedtIconFileName: TKASEdit
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 161
|
||||
Width = 298
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 11
|
||||
end
|
||||
object id_btn_iconfile: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '>>'
|
||||
OnClick = id_btn_iconfileClick
|
||||
TabOrder = 12
|
||||
object btnOpenIconFile: TButton
|
||||
Left = 384
|
||||
Height = 21
|
||||
Top = 160
|
||||
Width = 24
|
||||
Caption = '>>'
|
||||
OnClick = btnOpenIconFileClick
|
||||
TabOrder = 12
|
||||
end
|
||||
object id_btn_icon: TListBox
|
||||
object lbIcons: TListBox
|
||||
Left = 85
|
||||
Height = 54
|
||||
Top = 186
|
||||
Width = 298
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
ItemHeight = 36
|
||||
Style = lbOwnerDrawFixed
|
||||
TabOrder = 13
|
||||
Left = 85
|
||||
Height = 54
|
||||
Top = 186
|
||||
Width = 298
|
||||
end
|
||||
object id_btn_ToolTip: TKASEdit
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 14
|
||||
object kedtToolTip: TKASEdit
|
||||
Left = 85
|
||||
Height = 21
|
||||
Top = 245
|
||||
Width = 298
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
MaxLength = 259
|
||||
TabOrder = 14
|
||||
end
|
||||
object Ok: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
OnClick = OkClick
|
||||
TabOrder = 15
|
||||
object btnOK: TButton
|
||||
Tag = 4001
|
||||
Left = 420
|
||||
Height = 23
|
||||
Top = 187
|
||||
Width = 109
|
||||
Tag = 4001
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
OnClick = btnOKClick
|
||||
TabOrder = 15
|
||||
end
|
||||
object Cancel: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
TabOrder = 17
|
||||
object btnCancel: TButton
|
||||
Tag = 4002
|
||||
Left = 420
|
||||
Height = 23
|
||||
Top = 213
|
||||
Width = 109
|
||||
Tag = 4002
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
TabOrder = 17
|
||||
end
|
||||
object id_Globalhelp: TButton
|
||||
BorderSpacing.InnerBorder = 2
|
||||
Caption = '&Help'
|
||||
TabOrder = 16
|
||||
object btnHelp: TButton
|
||||
Tag = 4003
|
||||
Left = 420
|
||||
Height = 23
|
||||
Top = 239
|
||||
Width = 109
|
||||
Tag = 4003
|
||||
Caption = '&Help'
|
||||
TabOrder = 16
|
||||
end
|
||||
object id_btn_maximized: TCheckBox
|
||||
Caption = 'Run ma&ximized'
|
||||
TabOrder = 9
|
||||
object cbRunMaximized: TCheckBox
|
||||
Tag = 17
|
||||
Left = 387
|
||||
Height = 13
|
||||
Top = 130
|
||||
Width = 97
|
||||
Tag = 17
|
||||
Width = 91
|
||||
Caption = 'Run ma&ximized'
|
||||
TabOrder = 9
|
||||
end
|
||||
object GroupBox1: TGroupBox
|
||||
Caption = 'Appearance'
|
||||
ClientHeight = 59
|
||||
ClientWidth = 109
|
||||
TabOrder = 3
|
||||
object gbGroupBox: TGroupBox
|
||||
Tag = 18
|
||||
Left = 420
|
||||
Height = 77
|
||||
Width = 113
|
||||
Tag = 18
|
||||
object Size: TLabel
|
||||
AutoSize = False
|
||||
Caption = 'S&ize:'
|
||||
Color = clNone
|
||||
FocusControl = id_btn_barsize
|
||||
ParentColor = False
|
||||
Caption = 'Appearance'
|
||||
TabOrder = 3
|
||||
object lblSize: TLabel
|
||||
Tag = 6
|
||||
Left = 6
|
||||
Height = 14
|
||||
Top = 7
|
||||
Width = 55
|
||||
Tag = 6
|
||||
AutoSize = False
|
||||
Caption = 'S&ize:'
|
||||
Color = clNone
|
||||
FocusControl = kedtBarSize
|
||||
ParentColor = False
|
||||
end
|
||||
object id_btn_barsize: TKASEdit
|
||||
object kedtBarSize: TKASEdit
|
||||
Left = 62
|
||||
Height = 21
|
||||
Width = 43
|
||||
Font.Height = -11
|
||||
Font.Name = 'MS Sans Serif'
|
||||
TabOrder = 0
|
||||
Text = '0'
|
||||
Left = 62
|
||||
Height = 21
|
||||
Width = 43
|
||||
end
|
||||
object id_FlatIcons: TCheckBox
|
||||
object cbFlatIcons: TCheckBox
|
||||
Tag = 19
|
||||
Left = 6
|
||||
Height = 13
|
||||
Top = 18
|
||||
Width = 65
|
||||
Caption = 'F&lat icons'
|
||||
Checked = True
|
||||
State = cbChecked
|
||||
TabOrder = 1
|
||||
Left = 6
|
||||
Height = 13
|
||||
Top = 18
|
||||
Width = 71
|
||||
Tag = 19
|
||||
end
|
||||
object id_SmallIcons: TCheckBox
|
||||
Caption = 'S&mall icons'
|
||||
TabOrder = 2
|
||||
object cbSmallIcons: TCheckBox
|
||||
Tag = 20
|
||||
Left = 6
|
||||
Height = 13
|
||||
Top = 38
|
||||
Width = 79
|
||||
Tag = 20
|
||||
Width = 73
|
||||
Caption = 'S&mall icons'
|
||||
TabOrder = 2
|
||||
end
|
||||
end
|
||||
object tbScrollBox: TScrollBox
|
||||
TabOrder = 18
|
||||
AutoScroll = True
|
||||
Left = 86
|
||||
Height = 50
|
||||
Top = 25
|
||||
Width = 330
|
||||
object id_btn_bar: TKAStoolBar
|
||||
OnToolButtonClick = id_btn_barToolButtonClick
|
||||
CheckToolButton = True
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 23
|
||||
ClientWidth = 296
|
||||
TabOrder = 0
|
||||
AutoScroll = True
|
||||
TabOrder = 18
|
||||
object ktbBar: TKAStoolBar
|
||||
Height = 23
|
||||
Width = 296
|
||||
BevelOuter = bvNone
|
||||
TabOrder = 0
|
||||
OnToolButtonClick = ktbBarToolButtonClick
|
||||
CheckToolButton = True
|
||||
end
|
||||
end
|
||||
object OpenDialog: TOpenDialog
|
||||
Title = 'Îòêðûòü ñóùåñòâóþùèé ôàéë'
|
||||
FilterIndex = 0
|
||||
Title = 'Îòêðûòü ñóùåñòâóþùèé ôàéë'
|
||||
left = 8
|
||||
top = 535
|
||||
end
|
||||
|
|
|
|||
|
|
@ -23,48 +23,48 @@ type
|
|||
{ TButtonChangeDlg }
|
||||
|
||||
TButtonChangeDlg = class(TForm)
|
||||
Buttonbar: TLabel;
|
||||
Cancel: TButton;
|
||||
Command: TLabel;
|
||||
GroupBox1: TGroupBox;
|
||||
IconX: TLabel;
|
||||
Iconfile: TLabel;
|
||||
id_btn_add: TButton;
|
||||
id_btn_assymbol: TCheckBox;
|
||||
id_btn_bar: TKASToolBar;
|
||||
id_btn_barfilesearch: TButton;
|
||||
id_btn_barsize: TKASEdit;
|
||||
id_btn_command: TComboBox;
|
||||
id_btn_delete: TButton;
|
||||
id_btn_find1: TButton;
|
||||
id_btn_findbar: TButton;
|
||||
id_btn_icon: TListBox;
|
||||
id_btn_iconfile: TButton;
|
||||
id_btn_iconfilename: TKASEdit;
|
||||
id_btn_iconindex: TLabel;
|
||||
id_btn_maximized: TCheckBox;
|
||||
id_btn_param: TKASEdit;
|
||||
id_btn_startpath: TKASEdit;
|
||||
id_btn_ToolTip: TKASEdit;
|
||||
id_FlatIcons: TCheckBox;
|
||||
id_Globalhelp: TButton;
|
||||
id_SmallIcons: TCheckBox;
|
||||
Label1: TLabel;
|
||||
Ok: TButton;
|
||||
lblButtonBar: TLabel;
|
||||
btnCancel: TButton;
|
||||
lblCommand: TLabel;
|
||||
gbGroupBox: TGroupBox;
|
||||
lblIconX: TLabel;
|
||||
lblIconfile: TLabel;
|
||||
btnAddButton: TButton;
|
||||
cbRunMinimized: TCheckBox;
|
||||
ktbBar: TKASToolBar;
|
||||
btnOpenBarFile: TButton;
|
||||
kedtBarSize: TKASEdit;
|
||||
cbCommand: TComboBox;
|
||||
btnDeleteButton: TButton;
|
||||
btnOpenFile: TButton;
|
||||
btnAddSubBar: TButton;
|
||||
lbIcons: TListBox;
|
||||
btnOpenIconFile: TButton;
|
||||
kedtIconFileName: TKASEdit;
|
||||
lblIconIndex: TLabel;
|
||||
cbRunMaximized: TCheckBox;
|
||||
kedtParams: TKASEdit;
|
||||
kedtStartPath: TKASEdit;
|
||||
kedtToolTip: TKASEdit;
|
||||
cbFlatIcons: TCheckBox;
|
||||
btnHelp: TButton;
|
||||
cbSmallIcons: TCheckBox;
|
||||
lblLabel: TLabel;
|
||||
btnOK: TButton;
|
||||
OpenDialog: TOpenDialog;
|
||||
Parameters: TLabel;
|
||||
lblParameters: TLabel;
|
||||
tbScrollBox: TScrollBox;
|
||||
Size: TLabel;
|
||||
Startpath: TLabel;
|
||||
Tooltip: TLabel;
|
||||
lblSize: TLabel;
|
||||
lblStartpath: TLabel;
|
||||
lblTooltip: TLabel;
|
||||
procedure FormShow(Sender: TObject);
|
||||
procedure OkClick(Sender: TObject);
|
||||
procedure id_btn_addClick(Sender: TObject);
|
||||
procedure id_btn_barToolButtonClick(NumberOfButton : Integer);
|
||||
procedure btnOKClick(Sender: TObject);
|
||||
procedure btnAddButtonClick(Sender: TObject);
|
||||
procedure ktbBarToolButtonClick(NumberOfButton : Integer);
|
||||
procedure Save;
|
||||
procedure id_btn_deleteClick(Sender: TObject);
|
||||
procedure id_btn_find1Click(Sender: TObject);
|
||||
procedure id_btn_iconfileClick(Sender: TObject);
|
||||
procedure btnDeleteButtonClick(Sender: TObject);
|
||||
procedure btnOpenFileClick(Sender: TObject);
|
||||
procedure btnOpenIconFileClick(Sender: TObject);
|
||||
private
|
||||
{ private declarations }
|
||||
public
|
||||
|
|
@ -86,7 +86,7 @@ begin
|
|||
try
|
||||
LastToolButton := -1;
|
||||
NewToolButton := -1;
|
||||
id_btn_bar.CreateWnd;
|
||||
ktbBar.CreateWnd;
|
||||
ShowModal;
|
||||
finally
|
||||
Free;
|
||||
|
|
@ -97,13 +97,13 @@ end;
|
|||
|
||||
procedure TButtonChangeDlg.FormShow(Sender: TObject);
|
||||
begin
|
||||
id_btn_bar.LoadFromFile(gpIniDir + 'default.bar');
|
||||
ktbBar.LoadFromFile(gpIniDir + 'default.bar');
|
||||
end;
|
||||
|
||||
procedure TButtonChangeDlg.OkClick(Sender: TObject);
|
||||
procedure TButtonChangeDlg.btnOKClick(Sender: TObject);
|
||||
begin
|
||||
Save;
|
||||
id_btn_bar.SaveToFile(gpIniDir + 'default.bar');
|
||||
ktbBar.SaveToFile(gpIniDir + 'default.bar');
|
||||
frmMain.MainToolBar.DeleteAllToolButtons;
|
||||
//frmMain.MainToolBar.CreateWnd;
|
||||
frmMain.MainToolBar.LoadFromFile(gpIniDir + 'default.bar');
|
||||
|
|
@ -111,68 +111,68 @@ begin
|
|||
end;
|
||||
|
||||
(*Add new button on tool bar*)
|
||||
procedure TButtonChangeDlg.id_btn_addClick(Sender: TObject);
|
||||
procedure TButtonChangeDlg.btnAddButtonClick(Sender: TObject);
|
||||
begin
|
||||
Save;
|
||||
NewToolButton := id_btn_bar.AddButton('', '', '');
|
||||
NewToolButton := ktbBar.AddButton('', '', '');
|
||||
//ShowMessage(IntToStr(NewToolButton));
|
||||
end;
|
||||
|
||||
(*Select button on panel*)
|
||||
procedure TButtonChangeDlg.id_btn_barToolButtonClick(NumberOfButton : Integer);
|
||||
procedure TButtonChangeDlg.ktbBarToolButtonClick(NumberOfButton : Integer);
|
||||
begin
|
||||
Save;
|
||||
id_btn_command.Text := id_btn_bar.Commands[NumberOfButton];
|
||||
id_btn_iconfilename.Text := id_btn_bar.Icons[NumberOfButton];
|
||||
id_btn_ToolTip.Text := id_btn_bar.Buttons[NumberOfButton].Hint;
|
||||
cbCommand.Text := ktbBar.Commands[NumberOfButton];
|
||||
kedtIconFileName.Text := ktbBar.Icons[NumberOfButton];
|
||||
kedtToolTip.Text := ktbBar.Buttons[NumberOfButton].Hint;
|
||||
LastToolButton := NumberOfButton;
|
||||
end;
|
||||
|
||||
(*Save current button*)
|
||||
procedure TButtonChangeDlg.Save;
|
||||
begin
|
||||
if (LastToolButton >= 0) and (id_btn_bar.ButtonCount > 0) then
|
||||
if (LastToolButton >= 0) and (ktbBar.ButtonCount > 0) then
|
||||
begin
|
||||
id_btn_bar.Commands[LastToolButton] := id_btn_command.Text;
|
||||
id_btn_bar.Icons[LastToolButton] := id_btn_iconfilename.Text;
|
||||
id_btn_bar.Buttons[LastToolButton].Hint := id_btn_ToolTip.Text;
|
||||
ktbBar.Commands[LastToolButton] := cbCommand.Text;
|
||||
ktbBar.Icons[LastToolButton] := kedtIconFileName.Text;
|
||||
ktbBar.Buttons[LastToolButton].Hint := kedtToolTip.Text;
|
||||
end
|
||||
else (*If only Append clicked*)
|
||||
if NewToolButton >= 0 then
|
||||
begin
|
||||
//ShowMessage(IntToStr(NewToolButton));
|
||||
id_btn_bar.Commands[NewToolButton] := id_btn_command.Text;
|
||||
id_btn_bar.Icons[NewToolButton] := id_btn_iconfilename.Text;
|
||||
id_btn_bar.Buttons[NewToolButton].Hint := id_btn_ToolTip.Text;
|
||||
ktbBar.Commands[NewToolButton] := cbCommand.Text;
|
||||
ktbBar.Icons[NewToolButton] := kedtIconFileName.Text;
|
||||
ktbBar.Buttons[NewToolButton].Hint := kedtToolTip.Text;
|
||||
end;
|
||||
end;
|
||||
|
||||
(*Remove current button*)
|
||||
procedure TButtonChangeDlg.id_btn_deleteClick(Sender: TObject);
|
||||
procedure TButtonChangeDlg.btnDeleteButtonClick(Sender: TObject);
|
||||
begin
|
||||
if (LastToolButton >= 0) and (id_btn_bar.ButtonCount > 0) then
|
||||
if (LastToolButton >= 0) and (ktbBar.ButtonCount > 0) then
|
||||
begin
|
||||
id_btn_bar.RemoveButton(LastToolButton);
|
||||
id_btn_command.Text := '';
|
||||
id_btn_iconfilename.Text := '';
|
||||
id_btn_ToolTip.Text := '';
|
||||
ktbBar.RemoveButton(LastToolButton);
|
||||
cbCommand.Text := '';
|
||||
kedtIconFileName.Text := '';
|
||||
kedtToolTip.Text := '';
|
||||
LastToolButton := -1;
|
||||
NewToolButton := -1;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TButtonChangeDlg.id_btn_find1Click(Sender: TObject);
|
||||
procedure TButtonChangeDlg.btnOpenFileClick(Sender: TObject);
|
||||
begin
|
||||
if OpenDialog.Execute then
|
||||
id_btn_command.Text := OpenDialog.FileName;
|
||||
cbCommand.Text := OpenDialog.FileName;
|
||||
end;
|
||||
|
||||
procedure TButtonChangeDlg.id_btn_iconfileClick(Sender: TObject);
|
||||
procedure TButtonChangeDlg.btnOpenIconFileClick(Sender: TObject);
|
||||
var
|
||||
sDir: string;
|
||||
begin
|
||||
if OpenDialog.Execute then
|
||||
id_btn_iconfilename.Text := OpenDialog.FileName;
|
||||
kedtIconFileName.Text := OpenDialog.FileName;
|
||||
end;
|
||||
|
||||
initialization
|
||||
|
|
|
|||
|
|
@ -770,8 +770,15 @@ begin
|
|||
try
|
||||
CopyListSelectedExpandNames(ActiveFrame.pnlFile.FileList,fl,ActiveFrame.ActiveDir);
|
||||
|
||||
(*Delete files*)
|
||||
|
||||
(* Delete files from archive *)
|
||||
if ActiveFrame.pnlFile.PanelMode = pmArchive then
|
||||
begin
|
||||
DebugLN('+++ Delete files +++');
|
||||
ActiveFrame.pnlFile.VFS.VFSmodule.VFSDelete(fl);
|
||||
end
|
||||
else
|
||||
(* Delete files *)
|
||||
begin
|
||||
if not Assigned(frmFileOp) then
|
||||
frmFileOp:= TfrmFileOp.Create(Application);
|
||||
|
|
|
|||
|
|
@ -1,157 +1,156 @@
|
|||
<?xml version="1.0"?>
|
||||
<CONFIG>
|
||||
<ProjectOptions>
|
||||
<PathDelim Value="\"/>
|
||||
<Version Value="5"/>
|
||||
<General>
|
||||
<MainUnit Value="0"/>
|
||||
<IconPath Value="./"/>
|
||||
<TargetFileExt Value=".exe"/>
|
||||
<ActiveEditorIndexAtStart Value="1"/>
|
||||
</General>
|
||||
<VersionInfo>
|
||||
<ProjectVersion Value=""/>
|
||||
<Language Value=""/>
|
||||
<CharSet Value=""/>
|
||||
</VersionInfo>
|
||||
<PublishOptions>
|
||||
<Version Value="2"/>
|
||||
<IgnoreBinaries Value="False"/>
|
||||
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
|
||||
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
|
||||
</PublishOptions>
|
||||
<RunParams>
|
||||
<local>
|
||||
<FormatVersion Value="1"/>
|
||||
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
|
||||
</local>
|
||||
</RunParams>
|
||||
<Units Count="13">
|
||||
<Unit0>
|
||||
<Filename Value="unbz2.dpr"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<CursorPos X="44" Y="12"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<UsageCount Value="20"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
<Filename Value="bz2func.pas"/>
|
||||
<UnitName Value="bz2func"/>
|
||||
<CursorPos X="3" Y="158"/>
|
||||
<TopLine Value="148"/>
|
||||
<EditorIndex Value="1"/>
|
||||
<UsageCount Value="10"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit1>
|
||||
<Unit2>
|
||||
<Filename Value="wcxhead.pas"/>
|
||||
<UnitName Value="wcxhead"/>
|
||||
<CursorPos X="47" Y="71"/>
|
||||
<TopLine Value="60"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit2>
|
||||
<Unit3>
|
||||
<Filename Value="..\..\..\..\..\Prog\lazarus\fpcsrc\rtl\inc\systemh.inc"/>
|
||||
<CursorPos X="3" Y="349"/>
|
||||
<TopLine Value="329"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit3>
|
||||
<Unit4>
|
||||
<Filename Value="..\..\..\..\..\Prog\lazarus\fpcsrc\rtl\inc\objects.pp"/>
|
||||
<UnitName Value="Objects"/>
|
||||
<CursorPos X="10" Y="273"/>
|
||||
<TopLine Value="257"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit4>
|
||||
<Unit5>
|
||||
<Filename Value="..\..\..\..\..\Prog\lazarus\fpcsrc\rtl\objpas\sysutils\finah.inc"/>
|
||||
<CursorPos X="1" Y="30"/>
|
||||
<TopLine Value="13"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit5>
|
||||
<Unit6>
|
||||
<Filename Value="..\..\..\..\..\Prog\lazarus\fpcsrc\rtl\objpas\sysutils\fina.inc"/>
|
||||
<CursorPos X="1" Y="89"/>
|
||||
<TopLine Value="69"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit6>
|
||||
<Unit7>
|
||||
<Filename Value="..\..\..\..\..\Prog\lazarus\fpcsrc\rtl\inc\fexpand.inc"/>
|
||||
<CursorPos X="10" Y="84"/>
|
||||
<TopLine Value="553"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit7>
|
||||
<Unit8>
|
||||
<Filename Value="..\..\..\..\..\Prog\lazarus\fpcsrc\rtl\objpas\sysutils\syspchh.inc"/>
|
||||
<CursorPos X="10" Y="45"/>
|
||||
<TopLine Value="18"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit8>
|
||||
<Unit9>
|
||||
<Filename Value="..\..\..\..\..\Prog\lazarus\fpcsrc\rtl\win32\wininc\func.inc"/>
|
||||
<CursorPos X="10" Y="184"/>
|
||||
<TopLine Value="168"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit9>
|
||||
<Unit10>
|
||||
<Filename Value="..\..\..\..\..\Prog\lazarus\fpcsrc\rtl\win32\sysutils.pp"/>
|
||||
<UnitName Value="sysutils"/>
|
||||
<CursorPos X="17" Y="254"/>
|
||||
<TopLine Value="249"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit10>
|
||||
<Unit11>
|
||||
<Filename Value="..\..\..\..\..\Prog\lazarus\fpcsrc\rtl\objpas\sysutils\filutilh.inc"/>
|
||||
<CursorPos X="19" Y="86"/>
|
||||
<TopLine Value="69"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit11>
|
||||
<Unit12>
|
||||
<Filename Value="bzip2\bzip2.pas"/>
|
||||
<UnitName Value="bzip2"/>
|
||||
<CursorPos X="7" Y="46"/>
|
||||
<TopLine Value="30"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit12>
|
||||
</Units>
|
||||
<JumpHistory Count="0" HistoryIndex="-1"/>
|
||||
</ProjectOptions>
|
||||
<CompilerOptions>
|
||||
<Version Value="5"/>
|
||||
<PathDelim Value="\"/>
|
||||
<SearchPaths>
|
||||
<OtherUnitFiles Value="bzip2\;..\..\"/>
|
||||
<UnitOutputDirectory Value="bin"/>
|
||||
</SearchPaths>
|
||||
<Parsing>
|
||||
<SyntaxOptions>
|
||||
<DelphiCompat Value="True"/>
|
||||
</SyntaxOptions>
|
||||
</Parsing>
|
||||
<CodeGeneration>
|
||||
<Generate Value="Faster"/>
|
||||
</CodeGeneration>
|
||||
<Linking>
|
||||
<Options>
|
||||
<ExecutableType Value="Library"/>
|
||||
</Options>
|
||||
</Linking>
|
||||
<Other>
|
||||
<CompilerPath Value="$(CompPath)"/>
|
||||
</Other>
|
||||
</CompilerOptions>
|
||||
<Debugging>
|
||||
<BreakPoints Count="2">
|
||||
<Item1>
|
||||
<Source Value="..\..\mnt\X\linux\lazarus\lcl\include\imglist.inc"/>
|
||||
<Line Value="435"/>
|
||||
</Item1>
|
||||
<Item2>
|
||||
<Source Value="..\..\ucopythread.pas"/>
|
||||
<Line Value="42"/>
|
||||
</Item2>
|
||||
</BreakPoints>
|
||||
</Debugging>
|
||||
</CONFIG>
|
||||
<?xml version="1.0"?>
|
||||
<CONFIG>
|
||||
<ProjectOptions>
|
||||
<PathDelim Value="/"/>
|
||||
<Version Value="5"/>
|
||||
<General>
|
||||
<MainUnit Value="0"/>
|
||||
<IconPath Value="./"/>
|
||||
<TargetFileExt Value=".exe"/>
|
||||
<ActiveEditorIndexAtStart Value="1"/>
|
||||
</General>
|
||||
<VersionInfo>
|
||||
<ProjectVersion Value=""/>
|
||||
<Language Value=""/>
|
||||
<CharSet Value=""/>
|
||||
</VersionInfo>
|
||||
<PublishOptions>
|
||||
<Version Value="2"/>
|
||||
<IgnoreBinaries Value="False"/>
|
||||
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
|
||||
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
|
||||
</PublishOptions>
|
||||
<RunParams>
|
||||
<local>
|
||||
<FormatVersion Value="1"/>
|
||||
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
|
||||
</local>
|
||||
</RunParams>
|
||||
<Units Count="13">
|
||||
<Unit0>
|
||||
<Filename Value="unbz2.dpr"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<CursorPos X="44" Y="12"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<UsageCount Value="20"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
<Filename Value="bz2func.pas"/>
|
||||
<UnitName Value="bz2func"/>
|
||||
<CursorPos X="3" Y="158"/>
|
||||
<TopLine Value="148"/>
|
||||
<EditorIndex Value="1"/>
|
||||
<UsageCount Value="10"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit1>
|
||||
<Unit2>
|
||||
<Filename Value="wcxhead.pas"/>
|
||||
<UnitName Value="wcxhead"/>
|
||||
<CursorPos X="47" Y="71"/>
|
||||
<TopLine Value="60"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit2>
|
||||
<Unit3>
|
||||
<Filename Value="../../../../../Prog/lazarus/fpcsrc/rtl/inc/systemh.inc"/>
|
||||
<CursorPos X="3" Y="349"/>
|
||||
<TopLine Value="329"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit3>
|
||||
<Unit4>
|
||||
<Filename Value="../../../../../Prog/lazarus/fpcsrc/rtl/inc/objects.pp"/>
|
||||
<UnitName Value="Objects"/>
|
||||
<CursorPos X="10" Y="273"/>
|
||||
<TopLine Value="257"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit4>
|
||||
<Unit5>
|
||||
<Filename Value="../../../../../Prog/lazarus/fpcsrc/rtl/objpas/sysutils/finah.inc"/>
|
||||
<CursorPos X="1" Y="30"/>
|
||||
<TopLine Value="13"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit5>
|
||||
<Unit6>
|
||||
<Filename Value="../../../../../Prog/lazarus/fpcsrc/rtl/objpas/sysutils/fina.inc"/>
|
||||
<CursorPos X="1" Y="89"/>
|
||||
<TopLine Value="69"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit6>
|
||||
<Unit7>
|
||||
<Filename Value="../../../../../Prog/lazarus/fpcsrc/rtl/inc/fexpand.inc"/>
|
||||
<CursorPos X="10" Y="84"/>
|
||||
<TopLine Value="553"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit7>
|
||||
<Unit8>
|
||||
<Filename Value="../../../../../Prog/lazarus/fpcsrc/rtl/objpas/sysutils/syspchh.inc"/>
|
||||
<CursorPos X="10" Y="45"/>
|
||||
<TopLine Value="18"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit8>
|
||||
<Unit9>
|
||||
<Filename Value="../../../../../Prog/lazarus/fpcsrc/rtl/win32/wininc/func.inc"/>
|
||||
<CursorPos X="10" Y="184"/>
|
||||
<TopLine Value="168"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit9>
|
||||
<Unit10>
|
||||
<Filename Value="../../../../../Prog/lazarus/fpcsrc/rtl/win32/sysutils.pp"/>
|
||||
<UnitName Value="sysutils"/>
|
||||
<CursorPos X="17" Y="254"/>
|
||||
<TopLine Value="249"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit10>
|
||||
<Unit11>
|
||||
<Filename Value="../../../../../Prog/lazarus/fpcsrc/rtl/objpas/sysutils/filutilh.inc"/>
|
||||
<CursorPos X="19" Y="86"/>
|
||||
<TopLine Value="69"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit11>
|
||||
<Unit12>
|
||||
<Filename Value="bzip2/bzip2.pas"/>
|
||||
<UnitName Value="bzip2"/>
|
||||
<CursorPos X="7" Y="46"/>
|
||||
<TopLine Value="30"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit12>
|
||||
</Units>
|
||||
<JumpHistory Count="0" HistoryIndex="-1"/>
|
||||
</ProjectOptions>
|
||||
<CompilerOptions>
|
||||
<Version Value="5"/>
|
||||
<SearchPaths>
|
||||
<OtherUnitFiles Value="bzip2/;../../"/>
|
||||
<UnitOutputDirectory Value="bin"/>
|
||||
</SearchPaths>
|
||||
<Parsing>
|
||||
<SyntaxOptions>
|
||||
<DelphiCompat Value="True"/>
|
||||
</SyntaxOptions>
|
||||
</Parsing>
|
||||
<CodeGeneration>
|
||||
<Generate Value="Faster"/>
|
||||
</CodeGeneration>
|
||||
<Linking>
|
||||
<Options>
|
||||
<ExecutableType Value="Library"/>
|
||||
</Options>
|
||||
</Linking>
|
||||
<Other>
|
||||
<CompilerPath Value="$(CompPath)"/>
|
||||
</Other>
|
||||
</CompilerOptions>
|
||||
<Debugging>
|
||||
<BreakPoints Count="2">
|
||||
<Item1>
|
||||
<Source Value="../../mnt/X/linux/lazarus/lcl/include/imglist.inc"/>
|
||||
<Line Value="435"/>
|
||||
</Item1>
|
||||
<Item2>
|
||||
<Source Value="../../ucopythread.pas"/>
|
||||
<Line Value="42"/>
|
||||
</Item2>
|
||||
</BreakPoints>
|
||||
</Debugging>
|
||||
</CONFIG>
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
<Version Value="5"/>
|
||||
<General>
|
||||
<MainUnit Value="0"/>
|
||||
<IconPath Value="./"/>
|
||||
<IconPath Value=".\"/>
|
||||
<TargetFileExt Value=".wcx"/>
|
||||
<ActiveEditorIndexAtStart Value="1"/>
|
||||
</General>
|
||||
|
|
@ -42,8 +42,8 @@
|
|||
<Unit2>
|
||||
<Filename Value="ZipFunc.pas"/>
|
||||
<UnitName Value="ZipFunc"/>
|
||||
<CursorPos X="11" Y="222"/>
|
||||
<TopLine Value="211"/>
|
||||
<CursorPos X="27" Y="219"/>
|
||||
<TopLine Value="203"/>
|
||||
<EditorIndex Value="1"/>
|
||||
<UsageCount Value="13"/>
|
||||
<Loaded Value="True"/>
|
||||
|
|
@ -92,16 +92,7 @@
|
|||
<Loaded Value="True"/>
|
||||
</Unit8>
|
||||
</Units>
|
||||
<JumpHistory Count="2" HistoryIndex="1">
|
||||
<Position1>
|
||||
<Filename Value="ZipFunc.pas"/>
|
||||
<Caret Line="46" Column="20" TopLine="34"/>
|
||||
</Position1>
|
||||
<Position2>
|
||||
<Filename Value="fparchive\abutils.pas"/>
|
||||
<Caret Line="509" Column="3" TopLine="495"/>
|
||||
</Position2>
|
||||
</JumpHistory>
|
||||
<JumpHistory Count="0" HistoryIndex="-1"/>
|
||||
</ProjectOptions>
|
||||
<CompilerOptions>
|
||||
<Version Value="5"/>
|
||||
|
|
|
|||
|
|
@ -1,80 +0,0 @@
|
|||
{
|
||||
Constants file unit
|
||||
|
||||
Part of PFM - constants and strings for program.
|
||||
|
||||
Copyright : Peter Cernoch 2002
|
||||
Contact : pcernoch@volny.cz
|
||||
Licence : GNU GPL v 2.0
|
||||
|
||||
This is maybe replaced in future by external file
|
||||
|
||||
}
|
||||
|
||||
unit uConstants;
|
||||
|
||||
interface
|
||||
|
||||
const
|
||||
|
||||
//index of bitmaps in ImageList
|
||||
BM_UP = 0;
|
||||
BM_DIR = 1;
|
||||
BM_DIRLINK = 2;
|
||||
BM_DIRNOACCESS = 3;
|
||||
|
||||
BM_FILE = 4;
|
||||
BM_FILELINK = 5;
|
||||
BM_FILELINKNOEX = 6;
|
||||
|
||||
BM_TEX = 7;
|
||||
BM_TXT = 8;
|
||||
BM_BMP = 9;
|
||||
BM_GIF = 10;
|
||||
BM_IMG = 11;
|
||||
BM_JPG = 12;
|
||||
BM_PDF = 13;
|
||||
BM_PNG = 14;
|
||||
BM_PS = 15;
|
||||
BM_XBM = 16;
|
||||
BM_XCF = 17;
|
||||
BM_XPM = 18;
|
||||
BM_3D = 19;
|
||||
BM_VID = 20;
|
||||
BM_MP3 = 21;
|
||||
BM_SND = 22;
|
||||
BM_WWW = 23;
|
||||
BM_XML = 24;
|
||||
|
||||
BM_ARCH = 25;
|
||||
BM_RPM = 26;
|
||||
BM_TAR = 27;
|
||||
BM_TGZ = 28;
|
||||
BM_ARCH2 = 29;
|
||||
|
||||
BM_LOCK = 30;
|
||||
BM_DOC = 31;
|
||||
BM_CALC = 32;
|
||||
BM_PRES = 34;
|
||||
BM_MATH = 34;
|
||||
|
||||
BM_CC = 35;
|
||||
BM_C = 36;
|
||||
BM_O = 42;
|
||||
BM_H = 38;
|
||||
BM_J = 39;
|
||||
BM_KYLIX = 40;
|
||||
BM_TCL = 43;
|
||||
|
||||
BM_EXE = 44;
|
||||
BM_CFG = 45;
|
||||
BM_DLL = 46;
|
||||
|
||||
BM_PENGUIN = 47;
|
||||
BM_INFO = 52;
|
||||
|
||||
BM_HLP = 50;
|
||||
|
||||
BM_EXEC = 53;
|
||||
implementation
|
||||
end.
|
||||
|
|
@ -48,7 +48,7 @@ Type
|
|||
function VFSCopyIn(var flSrcList : TFileList; sDstName:String; Flags : Integer):Boolean;virtual;abstract;
|
||||
function VFSRename(const sSrcName, sDstName:String):Boolean;virtual;abstract;
|
||||
function VFSRun(const sName:String):Boolean;virtual;abstract;
|
||||
function VFSDelete(const flNameList:TFileList):Boolean;virtual;abstract;
|
||||
function VFSDelete(var flNameList:TFileList):Boolean;virtual;abstract;
|
||||
|
||||
function VFSList(const sDir:String; var fl:TFileList):Boolean;virtual;abstract;
|
||||
end;
|
||||
|
|
|
|||
|
|
@ -49,17 +49,18 @@ procedure SelectFilesInSubFoldersInRFS(var fl:TFileList);
|
|||
begin
|
||||
if FindFirst(sDir + PathDelim + '*',faAnyFile,sr) = 0 then
|
||||
repeat
|
||||
if (sr.Name = '.') or (sr.Name = '..') then Continue;
|
||||
New(fr);
|
||||
with fr^ do
|
||||
begin
|
||||
sName := ExtractDirLevel(fl.CurrentDirectory, sr.Name);
|
||||
sName := ExtractDirLevel(fl.CurrentDirectory, sDir + PathDelim + sr.Name);
|
||||
DebugLN('Name of File = ' + sName);
|
||||
iMode := sr.Attr;
|
||||
if FPS_ISDIR(iMode) then
|
||||
begin
|
||||
sExt:='';
|
||||
//DebugLN('SelectFilesInSubfolders = ' + sName);
|
||||
SelectFilesInSubFolders(sr.Name, fl);
|
||||
SelectFilesInSubFolders(fl.CurrentDirectory + sr.Name, fl);
|
||||
end;
|
||||
end; //with
|
||||
fl.AddItem(fr);
|
||||
|
|
|
|||
139
uwcxmodule.pas
139
uwcxmodule.pas
|
|
@ -30,12 +30,6 @@ uses
|
|||
{$H+}
|
||||
Type
|
||||
|
||||
TWCXItem=packed record
|
||||
HeaderData : THeaderData;
|
||||
FileRecItem : TFileRecItem;
|
||||
end;
|
||||
PWCXItem = ^TWCXItem;
|
||||
|
||||
PHeaderData = ^THeaderData;
|
||||
|
||||
{ TWCXModule }
|
||||
|
|
@ -45,7 +39,7 @@ Type
|
|||
FArcFileList : TList;
|
||||
FDstPath,
|
||||
fFolder : String;
|
||||
procedure SelectFilesInSubfolders(var fl : TFileList; sDir : String);
|
||||
function ProcessDataProc(FileName:pchar;Size:longint):longint; stdcall;
|
||||
procedure CopySelectedWithSubFolders(var flist:TFileList);
|
||||
protected
|
||||
// module's functions
|
||||
|
|
@ -90,7 +84,7 @@ Type
|
|||
function VFSCopyIn(var flSrcList : TFileList; sDstName:String; Flags : Integer):Boolean;override;{Pack files in archive}
|
||||
function VFSRename(const sSrcName, sDstName:String):Boolean;override;{Rename or move file}
|
||||
function VFSRun(const sName:String):Boolean;override;
|
||||
function VFSDelete(const flNameList:TFileList):Boolean;override;{Delete files from archive}
|
||||
function VFSDelete(var flNameList:TFileList):Boolean;override;{Delete files from archive}
|
||||
|
||||
function VFSList(const sDir:String; var fl:TFileList ):Boolean;override;{Return the filelist of archive}
|
||||
end;
|
||||
|
|
@ -271,72 +265,82 @@ begin
|
|||
Result := FileList;
|
||||
end;
|
||||
|
||||
procedure TWCXModule.SelectFilesInSubfolders(var fl : TFileList; sDir : String);
|
||||
var
|
||||
fr : PFileRecItem;
|
||||
I, Count : Integer;
|
||||
CurrFileName : String; // Current file name
|
||||
function TWCXModule.ProcessDataProc(FileName: pchar; Size: longint): longint;
|
||||
begin
|
||||
|
||||
|
||||
ForceDirectory(FDstPath + ExtractDirLevel(FFolder, PathDelim + sDir));
|
||||
|
||||
//DebugLN('ForceDirectory = ' + FDstPath + ExtractDirLevel(FFolder, PathDelim + sDir));
|
||||
|
||||
Count := FArcFileList.Count - 1;
|
||||
for I := 0 to Count do
|
||||
begin
|
||||
CurrFileName := PathDelim + PHeaderData(FArcFileList.Items[I])^.FileName;
|
||||
|
||||
//DebugLN('sDir = ', sDir);
|
||||
//DebugLN('In folder = ' + CurrFileName);
|
||||
|
||||
if not IncludeFileInList(sDir + PathDelim, CurrFileName) then
|
||||
Continue;
|
||||
|
||||
// DebugLN('In folder = ' + CurrFileName);
|
||||
|
||||
New(fr);
|
||||
with fr^, PHeaderData(FArcFileList.Items[I])^ do
|
||||
begin
|
||||
sName := FArchiveName + PathDelim + FileName;
|
||||
iMode := FileAttr;
|
||||
if FPS_ISDIR(iMode) then
|
||||
begin
|
||||
sExt:='';
|
||||
//DebugLN('SelectFilesInSubfolders = ' + FileName);
|
||||
SelectFilesInSubfolders(fl, FileName);
|
||||
end;
|
||||
end; //with
|
||||
fl.AddItem(fr);
|
||||
end;
|
||||
DebugLN('Working ' + FileName + IntToStr(Size));
|
||||
end;
|
||||
|
||||
|
||||
procedure TWCXModule.CopySelectedWithSubFolders(var flist:TFileList);
|
||||
|
||||
procedure SelectFilesInSubfolders(var fl : TFileList; sDir : String);
|
||||
var
|
||||
fr : PFileRecItem;
|
||||
I, Count : Integer;
|
||||
CurrFileName : String; // Current file name
|
||||
begin
|
||||
|
||||
|
||||
ForceDirectory(FDstPath + ExtractDirLevel(FFolder, PathDelim + sDir));
|
||||
|
||||
//DebugLN('ForceDirectory = ' + FDstPath + ExtractDirLevel(FFolder, PathDelim + sDir));
|
||||
|
||||
Count := FArcFileList.Count - 1;
|
||||
for I := 0 to Count do
|
||||
begin
|
||||
CurrFileName := PathDelim + PHeaderData(FArcFileList.Items[I])^.FileName;
|
||||
|
||||
//DebugLN('sDir = ', sDir);
|
||||
//DebugLN('In folder = ' + CurrFileName);
|
||||
|
||||
if not IncludeFileInList(sDir + PathDelim, CurrFileName) then
|
||||
Continue;
|
||||
|
||||
// DebugLN('In folder = ' + CurrFileName);
|
||||
|
||||
New(fr);
|
||||
with fr^, PHeaderData(FArcFileList.Items[I])^ do
|
||||
begin
|
||||
sName := {FArchiveName + PathDelim +} FileName;
|
||||
iMode := FileAttr;
|
||||
if FPS_ISDIR(iMode) then
|
||||
begin
|
||||
sExt:='';
|
||||
//DebugLN('SelectFilesInSubfolders = ' + FileName);
|
||||
SelectFilesInSubfolders(fl, FileName);
|
||||
end;
|
||||
end; //with
|
||||
fl.AddItem(fr);
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
var
|
||||
xIndex:Integer;
|
||||
p:TFileRecItem;
|
||||
tmp : String;
|
||||
fri:TFileRecItem;
|
||||
Newfl : TFileList;
|
||||
Count : Integer;
|
||||
begin
|
||||
|
||||
Newfl := TFileList.Create;
|
||||
Count := flist.Count-1;
|
||||
for xIndex:=0 to Count do
|
||||
begin
|
||||
p:=flist.GetItem(xIndex)^;
|
||||
fri:=flist.GetItem(xIndex)^;
|
||||
|
||||
|
||||
tmp := p.sName;
|
||||
Delete(tmp, Pos(FArchiveName, tmp), Length(FArchiveName));
|
||||
fri.sName := ExtractDirLevel(FArchiveName, fri.sName);
|
||||
|
||||
//DebugLN('Curr File = ' + tmp);
|
||||
if fri.sName[1] = PathDelim then
|
||||
Delete(fri.sName, 1, 1);
|
||||
|
||||
if FPS_ISDIR(p.iMode) then
|
||||
SelectFilesInSubfolders(flist, tmp);
|
||||
Newfl.AddItem(@fri);
|
||||
DebugLN('Curr File = ' + fri.sName);
|
||||
|
||||
if FPS_ISDIR(fri.iMode) then
|
||||
SelectFilesInSubfolders(Newfl, fri.sName);
|
||||
|
||||
end;
|
||||
flist.Free;
|
||||
flist := Newfl;
|
||||
end;
|
||||
|
||||
{Extract files from archive}
|
||||
|
|
@ -382,13 +386,15 @@ begin
|
|||
Result := False;
|
||||
Exit;
|
||||
end;
|
||||
|
||||
SetProcessDataProc(ArcHandle, TProcessDataProc(ProcessDataProc));
|
||||
|
||||
FillChar(ArcHeader, SizeOf(ArcHeader), #0);
|
||||
while (ReadHeader(ArcHandle, ArcHeader) = 0) do
|
||||
begin
|
||||
|
||||
|
||||
if flSrcList.CheckFileName(FArchiveName + DirectorySeparator + ArcHeader.FileName) >= 0 then
|
||||
if flSrcList.CheckFileName({FArchiveName + DirectorySeparator +} ArcHeader.FileName) >= 0 then
|
||||
begin
|
||||
DebugLN(sDstPath + ExtractDirLevel(Folder, ArcHeader.FileName));
|
||||
|
||||
|
|
@ -438,9 +444,26 @@ begin
|
|||
|
||||
end;
|
||||
|
||||
function TWCXModule.VFSDelete(const flNameList: TFileList): Boolean;
|
||||
function TWCXModule.VFSDelete(var flNameList: TFileList): Boolean;
|
||||
var
|
||||
Folder : String;
|
||||
begin
|
||||
|
||||
(* Get current folder in archive *)
|
||||
// Folder := LowDirLevel(flNameList.GetItem(0)^.sName);
|
||||
|
||||
(* Get relative path *)
|
||||
//IncludeFileInList(FArchiveName, Folder);
|
||||
|
||||
//FFolder := Folder;
|
||||
|
||||
// DebugLN('Folder = ' + Folder);
|
||||
|
||||
CopySelectedWithSubFolders(flNameList);
|
||||
|
||||
DeleteFiles(PChar(FArchiveName), PChar(GetFileList(flNameList)));
|
||||
|
||||
|
||||
end;
|
||||
|
||||
function TWCXModule.VFSList(const sDir: String; var fl: TFileList): Boolean;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue