mirror of
https://github.com/doublecmd/doublecmd.git
synced 2026-06-28 10:02:14 +00:00
ADD: New internal cmd and hotkey systems. Hotkeys settings in foptions is not fully workable
This commit is contained in:
parent
ce5c05177c
commit
35e85fdb44
8 changed files with 1512 additions and 1346 deletions
|
|
@ -117,11 +117,14 @@ var
|
|||
vNum: integer;
|
||||
vActions: TAction;
|
||||
begin
|
||||
for vNum := 0 to frmMain.actionLst.ActionCount -1 do
|
||||
{ for vNum := 0 to frmMain.actionLst.ActionCount -1 do
|
||||
begin
|
||||
vActions := frmMain.actionLst.Actions[vNum] as TAction;
|
||||
cbCommand.Items.AddObject(vActions.Name, vActions);
|
||||
end;
|
||||
end;}
|
||||
|
||||
cbCommand.Items.AddStrings(Actions.CommandList);
|
||||
cbCommand.Sorted:=true;
|
||||
end;
|
||||
|
||||
procedure TfrmConfigToolBar.FormShow(Sender: TObject);
|
||||
|
|
@ -178,8 +181,9 @@ procedure TfrmConfigToolBar.cbCommandSelect(Sender: TObject);
|
|||
var
|
||||
vActions: TAction;
|
||||
begin
|
||||
vActions := cbCommand.Items.Objects[cbCommand.ItemIndex] as TAction;
|
||||
kedtToolTip.Text := StringReplace(vActions.Caption, '&', '', [rfReplaceAll]);
|
||||
// vActions := cbCommand.Items.Objects[cbCommand.ItemIndex] as TAction;
|
||||
// kedtToolTip.Text := StringReplace(vActions.Caption, '&', '', [rfReplaceAll]);
|
||||
kedtToolTip.Text :=cbCommand.Items[cbCommand.ItemIndex];
|
||||
end;
|
||||
|
||||
procedure TfrmConfigToolBar.btnOKClick(Sender: TObject);
|
||||
|
|
|
|||
256
fmain.lfm
256
fmain.lfm
|
|
@ -1,15 +1,15 @@
|
|||
object frmMain: TfrmMain
|
||||
Left = 256
|
||||
Height = 398
|
||||
Top = 166
|
||||
Width = 676
|
||||
HorzScrollBar.Page = 675
|
||||
VertScrollBar.Page = 371
|
||||
Left = 287
|
||||
Height = 717
|
||||
Top = 91
|
||||
Width = 989
|
||||
HorzScrollBar.Page = 988
|
||||
VertScrollBar.Page = 690
|
||||
VertScrollBar.Range = 79
|
||||
ActiveControl = nbRight
|
||||
Caption = 'Double Commander'
|
||||
ClientHeight = 372
|
||||
ClientWidth = 676
|
||||
ClientHeight = 691
|
||||
ClientWidth = 989
|
||||
Font.Color = clBlack
|
||||
Font.Height = 13
|
||||
Font.Name = 'Helvetica'
|
||||
|
|
@ -31,15 +31,15 @@ object frmMain: TfrmMain
|
|||
object pnlSyncSize: TPanel
|
||||
Height = 26
|
||||
Top = 24
|
||||
Width = 676
|
||||
Width = 989
|
||||
Align = alTop
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 26
|
||||
ClientWidth = 676
|
||||
ClientWidth = 989
|
||||
FullRepaint = False
|
||||
TabOrder = 0
|
||||
object pnlDisk: TPanel
|
||||
Left = 151
|
||||
Left = 464
|
||||
Height = 26
|
||||
Width = 525
|
||||
Align = alRight
|
||||
|
|
@ -84,18 +84,18 @@ object frmMain: TfrmMain
|
|||
end
|
||||
end
|
||||
object pnlNotebooks: TPanel
|
||||
Height = 230
|
||||
Height = 549
|
||||
Top = 50
|
||||
Width = 676
|
||||
Width = 989
|
||||
Align = alClient
|
||||
ClientHeight = 230
|
||||
ClientWidth = 676
|
||||
ClientHeight = 549
|
||||
ClientWidth = 989
|
||||
FullRepaint = False
|
||||
TabOrder = 1
|
||||
TabStop = True
|
||||
object MainSplitter: TSplitter
|
||||
Left = 171
|
||||
Height = 190
|
||||
Height = 509
|
||||
Top = 1
|
||||
Width = 4
|
||||
OnCanResize = MainSplitterCanResize
|
||||
|
|
@ -106,16 +106,16 @@ object frmMain: TfrmMain
|
|||
end
|
||||
object pnlLeft: TPanel
|
||||
Left = 1
|
||||
Height = 190
|
||||
Height = 509
|
||||
Top = 1
|
||||
Width = 170
|
||||
Align = alLeft
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 190
|
||||
ClientHeight = 509
|
||||
ClientWidth = 170
|
||||
TabOrder = 0
|
||||
object nbLeft: TNotebook
|
||||
Height = 166
|
||||
Height = 485
|
||||
Top = 24
|
||||
Width = 170
|
||||
Align = alClient
|
||||
|
|
@ -193,18 +193,18 @@ object frmMain: TfrmMain
|
|||
end
|
||||
object pnlRight: TPanel
|
||||
Left = 175
|
||||
Height = 190
|
||||
Height = 509
|
||||
Top = 1
|
||||
Width = 500
|
||||
Width = 813
|
||||
Align = alClient
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 190
|
||||
ClientWidth = 500
|
||||
ClientHeight = 509
|
||||
ClientWidth = 813
|
||||
TabOrder = 1
|
||||
object nbRight: TNotebook
|
||||
Height = 166
|
||||
Height = 485
|
||||
Top = 24
|
||||
Width = 500
|
||||
Width = 813
|
||||
Align = alClient
|
||||
OnCloseTabClicked = NoteBookCloseTabClicked
|
||||
OnPageChanged = nbPageChanged
|
||||
|
|
@ -213,11 +213,11 @@ object frmMain: TfrmMain
|
|||
end
|
||||
object pnlRightTools: TPanel
|
||||
Height = 24
|
||||
Width = 500
|
||||
Width = 813
|
||||
Align = alTop
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 24
|
||||
ClientWidth = 500
|
||||
ClientWidth = 813
|
||||
TabOrder = 1
|
||||
object btnRightDrive: TSpeedButton
|
||||
Height = 24
|
||||
|
|
@ -228,7 +228,7 @@ object frmMain: TfrmMain
|
|||
NumGlyphs = 0
|
||||
end
|
||||
object btnRightHome: TSpeedButton
|
||||
Left = 477
|
||||
Left = 790
|
||||
Height = 24
|
||||
Width = 23
|
||||
Align = alRight
|
||||
|
|
@ -238,7 +238,7 @@ object frmMain: TfrmMain
|
|||
OnClick = btnRightClick
|
||||
end
|
||||
object btnRightUp: TSpeedButton
|
||||
Left = 454
|
||||
Left = 767
|
||||
Height = 24
|
||||
Width = 23
|
||||
Align = alRight
|
||||
|
|
@ -248,7 +248,7 @@ object frmMain: TfrmMain
|
|||
OnClick = btnRightClick
|
||||
end
|
||||
object btnRightRoot: TSpeedButton
|
||||
Left = 431
|
||||
Left = 744
|
||||
Height = 24
|
||||
Width = 23
|
||||
Align = alRight
|
||||
|
|
@ -260,14 +260,14 @@ object frmMain: TfrmMain
|
|||
object lblRightDriveInfo: TLabel
|
||||
Left = 48
|
||||
Height = 24
|
||||
Width = 360
|
||||
Width = 673
|
||||
Align = alClient
|
||||
Alignment = taCenter
|
||||
ParentColor = False
|
||||
OnDblClick = lblDriveInfoDblClick
|
||||
end
|
||||
object btnRightDirectoryHotlist: TSpeedButton
|
||||
Left = 408
|
||||
Left = 721
|
||||
Height = 24
|
||||
Width = 23
|
||||
Align = alRight
|
||||
|
|
@ -281,13 +281,13 @@ object frmMain: TfrmMain
|
|||
object pnlCommand: TPanel
|
||||
Left = 1
|
||||
Height = 38
|
||||
Top = 191
|
||||
Width = 674
|
||||
Top = 510
|
||||
Width = 987
|
||||
Align = alBottom
|
||||
Anchors = [akLeft, akRight]
|
||||
BevelOuter = bvLowered
|
||||
ClientHeight = 38
|
||||
ClientWidth = 674
|
||||
ClientWidth = 987
|
||||
FullRepaint = False
|
||||
ParentColor = False
|
||||
TabOrder = 2
|
||||
|
|
@ -295,9 +295,9 @@ object frmMain: TfrmMain
|
|||
AnchorSideTop.Control = edtCommand
|
||||
AnchorSideTop.Side = asrCenter
|
||||
Left = 1
|
||||
Height = 19
|
||||
Top = 14
|
||||
Width = 32
|
||||
Height = 13
|
||||
Top = 17
|
||||
Width = 33
|
||||
Alignment = taRightJustify
|
||||
Caption = 'Path'
|
||||
ParentColor = False
|
||||
|
|
@ -307,7 +307,7 @@ object frmMain: TfrmMain
|
|||
Left = 56
|
||||
Height = 30
|
||||
Top = 8
|
||||
Width = 607
|
||||
Width = 920
|
||||
TabStop = False
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoCompleteText = [cbactEndOfLineComplete, cbactSearchAscending]
|
||||
|
|
@ -319,7 +319,7 @@ object frmMain: TfrmMain
|
|||
end
|
||||
object MainToolBar: TKAStoolBar
|
||||
Height = 24
|
||||
Width = 676
|
||||
Width = 989
|
||||
Align = alTop
|
||||
TabOrder = 2
|
||||
OnDragDrop = MainToolBarDragDrop
|
||||
|
|
@ -333,13 +333,13 @@ object frmMain: TfrmMain
|
|||
end
|
||||
object pnlKeys: TPanel
|
||||
Height = 27
|
||||
Top = 345
|
||||
Width = 676
|
||||
Top = 664
|
||||
Width = 989
|
||||
Align = alBottom
|
||||
Anchors = [akLeft, akRight]
|
||||
BevelOuter = bvLowered
|
||||
ClientHeight = 27
|
||||
ClientWidth = 676
|
||||
ClientWidth = 989
|
||||
FullRepaint = False
|
||||
TabOrder = 3
|
||||
OnResize = pnlKeysResize
|
||||
|
|
@ -426,13 +426,15 @@ object frmMain: TfrmMain
|
|||
end
|
||||
object seLogWindow: TSynEdit
|
||||
Height = 61
|
||||
Top = 284
|
||||
Width = 676
|
||||
Top = 603
|
||||
Width = 989
|
||||
Align = alBottom
|
||||
Font.Height = -16
|
||||
Font.Name = 'courier'
|
||||
ParentColor = False
|
||||
TabOrder = 4
|
||||
BookMarkOptions.OnChange = nil
|
||||
Gutter.OnChange = nil
|
||||
Gutter.CodeFoldingWidth = 14
|
||||
Keystrokes = <
|
||||
item
|
||||
|
|
@ -758,13 +760,14 @@ object frmMain: TfrmMain
|
|||
ReadOnly = True
|
||||
RightEdge = 0
|
||||
ScrollBars = ssVertical
|
||||
SelectedColor.OnChange = nil
|
||||
OnSpecialLineColors = seLogWindowSpecialLineColors
|
||||
end
|
||||
object LogSplitter: TSplitter
|
||||
Cursor = crVSplit
|
||||
Height = 4
|
||||
Top = 280
|
||||
Width = 676
|
||||
Top = 599
|
||||
Width = 989
|
||||
Align = alBottom
|
||||
ResizeAnchor = akBottom
|
||||
ResizeStyle = rsLine
|
||||
|
|
@ -776,87 +779,70 @@ object frmMain: TfrmMain
|
|||
Caption = 'Files'
|
||||
object mnuFilesLink: TMenuItem
|
||||
Action = actHardLink
|
||||
OnClick = actHardLinkExecute
|
||||
end
|
||||
object mnuFilesSymLink: TMenuItem
|
||||
Action = actSymLink
|
||||
OnClick = actSymLinkExecute
|
||||
end
|
||||
object miLine1: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object mnuFilesProperties: TMenuItem
|
||||
Action = actFileProperties
|
||||
OnClick = actFilePropertiesExecute
|
||||
end
|
||||
object mnuFilesSpace: TMenuItem
|
||||
Action = actCalculateSpace
|
||||
OnClick = actCalculateSpaceExecute
|
||||
end
|
||||
object mnuFilesCmpCnt: TMenuItem
|
||||
Action = actCompareContents
|
||||
OnClick = actCompareContentsExecute
|
||||
end
|
||||
object miMultiRename: TMenuItem
|
||||
Action = actMultiRename
|
||||
OnClick = actMultiRenameExecute
|
||||
end
|
||||
object miLine2: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object mnuPackFiles: TMenuItem
|
||||
Action = actPackFiles
|
||||
OnClick = actPackFilesExecute
|
||||
end
|
||||
object mnuExtractFiles: TMenuItem
|
||||
Action = actExtractFiles
|
||||
OnClick = actExtractFilesExecute
|
||||
end
|
||||
object mnuFilesSplit: TMenuItem
|
||||
Action = actFileSpliter
|
||||
OnClick = actFileSpliterExecute
|
||||
end
|
||||
object mnuFilesCombine: TMenuItem
|
||||
Action = actFileLinker
|
||||
Caption = 'Combine Files'
|
||||
OnClick = actFileLinkerExecute
|
||||
end
|
||||
object miLine3: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object mnuFilesShwSysFiles: TMenuItem
|
||||
Action = actShowSysFiles
|
||||
OnClick = actShowSysFilesExecute
|
||||
end
|
||||
object miLine4: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object miExit: TMenuItem
|
||||
Action = actExit
|
||||
OnClick = actExitExecute
|
||||
end
|
||||
end
|
||||
object mnuMark: TMenuItem
|
||||
Caption = '&Mark'
|
||||
object mnuMarkSGroup: TMenuItem
|
||||
Action = actMarkPlus
|
||||
OnClick = actMarkPlusExecute
|
||||
end
|
||||
object mnuMarkUGroup: TMenuItem
|
||||
Action = actMarkMinus
|
||||
OnClick = actMarkMinusExecute
|
||||
end
|
||||
object mnuMarkSAll: TMenuItem
|
||||
Action = actMarkMarkAll
|
||||
OnClick = actMarkMarkAllExecute
|
||||
end
|
||||
object mnuMarkUAll: TMenuItem
|
||||
Action = actMarkUnmarkAll
|
||||
OnClick = actMarkUnmarkAllExecute
|
||||
end
|
||||
object mnuMarkInvert: TMenuItem
|
||||
Action = actMarkInvert
|
||||
OnClick = actMarkInvertExecute
|
||||
end
|
||||
object miLine5: TMenuItem
|
||||
Caption = '-'
|
||||
|
|
@ -871,89 +857,72 @@ object frmMain: TfrmMain
|
|||
end
|
||||
object miCopyNamesToClip: TMenuItem
|
||||
Action = actCopyNamesToClip
|
||||
OnClick = actCopyNamesToClipExecute
|
||||
end
|
||||
object miCopyFullNamesToClip: TMenuItem
|
||||
Action = actCopyFullNamesToClip
|
||||
OnClick = actCopyFullNamesToClipExecute
|
||||
end
|
||||
end
|
||||
object mnuCmd: TMenuItem
|
||||
Caption = '&Commands'
|
||||
object mnuCmdSearch: TMenuItem
|
||||
Action = actSearch
|
||||
OnClick = actSearchExecute
|
||||
end
|
||||
object mnuCmdDirHotlist: TMenuItem
|
||||
Action = actDirHotList
|
||||
OnClick = actDirHotListExecute
|
||||
end
|
||||
object miLine6: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object miRunTerm: TMenuItem
|
||||
Action = actRunTerm
|
||||
OnClick = actRunTermExecute
|
||||
end
|
||||
object miLine9: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object MenuItem1: TMenuItem
|
||||
Action = actOpenVFSList
|
||||
OnClick = actOpenVFSListExecute
|
||||
end
|
||||
object mnuCmdSwapSourceTarget: TMenuItem
|
||||
Action = actExchange
|
||||
OnClick = actExchangeExecute
|
||||
end
|
||||
object mnuCmdTargetIsSource: TMenuItem
|
||||
Action = actTargetEqualSource
|
||||
OnClick = actTargetEqualSourceExecute
|
||||
end
|
||||
end
|
||||
object mnuShow: TMenuItem
|
||||
Caption = '&Show'
|
||||
object mnuShowName: TMenuItem
|
||||
Action = actSortByName
|
||||
OnClick = actSortByNameExecute
|
||||
end
|
||||
object mnuShowExtension: TMenuItem
|
||||
Action = actSortByExt
|
||||
OnClick = actSortByExtExecute
|
||||
end
|
||||
object mnuShowSize: TMenuItem
|
||||
Action = actSortBySize
|
||||
OnClick = actSortBySizeExecute
|
||||
end
|
||||
object mnuShowTime: TMenuItem
|
||||
Action = actSortByDate
|
||||
OnClick = actSortByDateExecute
|
||||
end
|
||||
object mnuShowAttrib: TMenuItem
|
||||
Action = actSortByAttr
|
||||
OnClick = actSortByAttrExecute
|
||||
end
|
||||
object miLine7: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object mnuShowReverse: TMenuItem
|
||||
Action = actReverseOrder
|
||||
OnClick = actReverseOrderExecute
|
||||
end
|
||||
object mnuShowReread: TMenuItem
|
||||
Action = actRefresh
|
||||
OnClick = actRefreshExecute
|
||||
end
|
||||
end
|
||||
object mnuConfig: TMenuItem
|
||||
Caption = 'C&onfiguration'
|
||||
object mnuConfigOptions: TMenuItem
|
||||
Action = actOptions
|
||||
OnClick = actOptionsExecute
|
||||
end
|
||||
object mnuFileAssoc: TMenuItem
|
||||
Action = actFileAssoc
|
||||
OnClick = actFileAssocExecute
|
||||
end
|
||||
end
|
||||
object mnuHelp: TMenuItem
|
||||
|
|
@ -961,7 +930,6 @@ object frmMain: TfrmMain
|
|||
OnClick = mnuHelpClick
|
||||
object mnuHelpAbout: TMenuItem
|
||||
Action = actAbout
|
||||
OnClick = actAboutExecute
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
@ -973,7 +941,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Exit'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actExitExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 32856
|
||||
end
|
||||
object actView: TAction
|
||||
|
|
@ -981,7 +949,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'View F3'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actViewExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 114
|
||||
end
|
||||
object actEdit: TAction
|
||||
|
|
@ -989,7 +957,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Edit F4'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actEditExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 115
|
||||
end
|
||||
object actCopy: TAction
|
||||
|
|
@ -997,7 +965,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Copy F5'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actCopyExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 116
|
||||
end
|
||||
object actRename: TAction
|
||||
|
|
@ -1005,7 +973,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Move F6'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actRenameExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 117
|
||||
end
|
||||
object actMakeDir: TAction
|
||||
|
|
@ -1013,7 +981,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'MakeDir F7'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actMakeDirExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 118
|
||||
end
|
||||
object actDelete: TAction
|
||||
|
|
@ -1021,14 +989,14 @@ object frmMain: TfrmMain
|
|||
Caption = 'Delete F8'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actDeleteExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actAbout: TAction
|
||||
Category = 'Help'
|
||||
Caption = 'About'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actAboutExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 112
|
||||
end
|
||||
object actShowSysFiles: TAction
|
||||
|
|
@ -1037,28 +1005,28 @@ object frmMain: TfrmMain
|
|||
Checked = True
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actShowSysFilesExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actOptions: TAction
|
||||
Category = 'Config'
|
||||
Caption = 'Options...'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actOptionsExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actCompareContents: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Compare by &Contents'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actCompareContentsExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actShowMenu: TAction
|
||||
Category = 'Classic'
|
||||
Caption = 'Menu F9'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actShowMenuExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 120
|
||||
end
|
||||
object actRefresh: TAction
|
||||
|
|
@ -1066,7 +1034,7 @@ object frmMain: TfrmMain
|
|||
Caption = '&Refresh'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actRefreshExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16466
|
||||
end
|
||||
object actSearch: TAction
|
||||
|
|
@ -1074,7 +1042,7 @@ object frmMain: TfrmMain
|
|||
Caption = '&Search'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actSearchExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 32886
|
||||
end
|
||||
object actDirHotList: TAction
|
||||
|
|
@ -1082,7 +1050,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Directory &hotlist'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actDirHotListExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16452
|
||||
end
|
||||
object actMarkMarkAll: TAction
|
||||
|
|
@ -1090,63 +1058,63 @@ object frmMain: TfrmMain
|
|||
Caption = '&Select All'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actMarkMarkAllExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actMarkInvert: TAction
|
||||
Category = 'Mark'
|
||||
Caption = 'Invert Selections'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actMarkInvertExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actMarkUnmarkAll: TAction
|
||||
Category = 'Mark'
|
||||
Caption = 'Unselect All'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actMarkUnmarkAllExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actMarkPlus: TAction
|
||||
Category = 'Mark'
|
||||
Caption = 'Select a group'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actMarkPlusExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actMarkMinus: TAction
|
||||
Category = 'Mark'
|
||||
Caption = 'Unselect a group'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actMarkMinusExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actSymLink: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Create symlink...'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actSymLinkExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actHardLink: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Create link...'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actHardLinkExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actReverseOrder: TAction
|
||||
Category = 'Show'
|
||||
Caption = 'Reverse order'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actReverseOrderExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actSortByName: TAction
|
||||
Category = 'Show'
|
||||
Caption = 'Sort by name'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actSortByNameExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16498
|
||||
end
|
||||
object actSortByExt: TAction
|
||||
|
|
@ -1154,7 +1122,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Sort by extension'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actSortByExtExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16499
|
||||
end
|
||||
object actSortBySize: TAction
|
||||
|
|
@ -1162,7 +1130,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Sort by size'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actSortBySizeExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16501
|
||||
end
|
||||
object actSortByDate: TAction
|
||||
|
|
@ -1170,7 +1138,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Sort by date'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actSortByDateExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16500
|
||||
end
|
||||
object actSortByAttr: TAction
|
||||
|
|
@ -1178,14 +1146,14 @@ object frmMain: TfrmMain
|
|||
Caption = 'Sort by attrib'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actSortByAttrExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actMultiRename: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Multi Rename Tool'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actMultiRenameExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16461
|
||||
end
|
||||
object actCopySamePanel: TAction
|
||||
|
|
@ -1193,7 +1161,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Copy to same panel'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actCopySamePanelExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 8308
|
||||
end
|
||||
object actRenameOnly: TAction
|
||||
|
|
@ -1201,7 +1169,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Rename'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actRenameOnlyExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 8309
|
||||
end
|
||||
object actEditNew: TAction
|
||||
|
|
@ -1209,7 +1177,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Edit new file'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actEditNewExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 8307
|
||||
end
|
||||
object actDirHistory: TAction
|
||||
|
|
@ -1217,7 +1185,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Directory history'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actDirHistoryExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16456
|
||||
end
|
||||
object actShowCmdLineHistory: TAction
|
||||
|
|
@ -1225,7 +1193,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Show command line history'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actShowCmdLineHistoryExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 20535
|
||||
end
|
||||
object actRunTerm: TAction
|
||||
|
|
@ -1233,7 +1201,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Run Term'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actRunTermExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16472
|
||||
end
|
||||
object actCalculateSpace: TAction
|
||||
|
|
@ -1241,7 +1209,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Calculate &Occupied Space...'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actCalculateSpaceExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16460
|
||||
end
|
||||
object actFileProperties: TAction
|
||||
|
|
@ -1249,7 +1217,7 @@ object frmMain: TfrmMain
|
|||
Caption = 'Show file properties'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actFilePropertiesExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 32781
|
||||
end
|
||||
object actFileLinker: TAction
|
||||
|
|
@ -1257,21 +1225,21 @@ object frmMain: TfrmMain
|
|||
Caption = 'Link files'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actFileLinkerExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actFileSpliter: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Split file'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actFileSpliterExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actNewTab: TAction
|
||||
Category = 'Tabs'
|
||||
Caption = 'New tab'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actNewTabExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16468
|
||||
end
|
||||
object actRemoveTab: TAction
|
||||
|
|
@ -1279,148 +1247,148 @@ object frmMain: TfrmMain
|
|||
Caption = 'Remove tab'
|
||||
DisableIfNoHandler = True
|
||||
HelpType = htKeyword
|
||||
OnExecute = actRemoveTabExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16471
|
||||
end
|
||||
object actPackFiles: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Pack files...'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actPackFilesExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 32884
|
||||
end
|
||||
object actExtractFiles: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Extract files...'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actExtractFilesExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 32888
|
||||
end
|
||||
object actOpenVFSList: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Open VFS List'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actOpenVFSListExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actLeftOpenDrives: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Open left drive list'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actLeftOpenDrivesExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 32880
|
||||
end
|
||||
object actRightOpenDrives: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Open right drive list'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actRightOpenDrivesExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 32881
|
||||
end
|
||||
object actAddPathToCmdLine: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Copy path to command line'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actAddPathToCmdLineExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16464
|
||||
end
|
||||
object actFocusCmdLine: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Focus command line'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actFocusCmdLineExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 8305
|
||||
end
|
||||
object actTransferLeft: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Transfer dir under cursor to left window'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actTransferLeftExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16421
|
||||
end
|
||||
object actTransferRight: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Transfer dir under cursor to right window'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actTransferRightExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16423
|
||||
end
|
||||
object actContextMenu: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Show context menu'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actContextMenuExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actOpenArchive: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Try open archive'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actOpenArchiveExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16418
|
||||
end
|
||||
object actShowButtonMenu: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Show button menu'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actShowButtonMenuExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actQuickSearch: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Quick search'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actQuickSearchExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16467
|
||||
end
|
||||
object actFileAssoc: TAction
|
||||
Category = 'Config'
|
||||
Caption = 'File associations...'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actFileAssocExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actOpen: TAction
|
||||
Category = 'File'
|
||||
Caption = 'Open'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actOpenExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actCopyNamesToClip: TAction
|
||||
Category = 'Mark'
|
||||
Caption = 'Copy &Filename(s) to Clipboard'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actCopyNamesToClipExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 49240
|
||||
end
|
||||
object actCopyFullNamesToClip: TAction
|
||||
Category = 'Mark'
|
||||
Caption = 'Copy Filename(s) with Full &Path'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actCopyFullNamesToClipExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 49219
|
||||
end
|
||||
object actTargetEqualSource: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Target &= Source'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actTargetEqualSourceExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 32858
|
||||
end
|
||||
object actExchange: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Swap &Panels'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actExchangeExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 16469
|
||||
end
|
||||
object actOpenDirInNewTab: TAction
|
||||
Category = 'Tabs'
|
||||
Caption = 'Open folder in new tab'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actOpenDirInNewTabExecute
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actWipe: TAction
|
||||
Category = 'Commands'
|
||||
Caption = 'Wipe'
|
||||
DisableIfNoHandler = True
|
||||
OnExecute = actWipeExecute
|
||||
OnExecute = actExecute
|
||||
ShortCut = 32814
|
||||
end
|
||||
end
|
||||
|
|
|
|||
99
fmain.lrt
99
fmain.lrt
|
|
@ -97,3 +97,102 @@ TFRMMAIN.MI5050.CAPTION=&50/50
|
|||
TFRMMAIN.MI6040.CAPTION=&60/40
|
||||
TFRMMAIN.MI7030.CAPTION=&70/30
|
||||
TFRMMAIN.MI8020.CAPTION=&80/20
|
||||
TFRMMAIN.CAPTION=Double Commander
|
||||
TFRMMAIN.BTNLEFTHOME.CAPTION=~
|
||||
TFRMMAIN.BTNLEFTUP.CAPTION=..
|
||||
TFRMMAIN.BTNLEFTROOT.CAPTION=/
|
||||
TFRMMAIN.BTNLEFTDIRECTORYHOTLIST.CAPTION=*
|
||||
TFRMMAIN.BTNRIGHTHOME.CAPTION=~
|
||||
TFRMMAIN.BTNRIGHTUP.CAPTION=..
|
||||
TFRMMAIN.BTNRIGHTROOT.CAPTION=/
|
||||
TFRMMAIN.BTNRIGHTDIRECTORYHOTLIST.CAPTION=*
|
||||
TFRMMAIN.LBLCOMMANDPATH.CAPTION=Path
|
||||
TFRMMAIN.MNUFILES.CAPTION=Files
|
||||
TFRMMAIN.MILINE1.CAPTION=-
|
||||
TFRMMAIN.MILINE2.CAPTION=-
|
||||
TFRMMAIN.MNUFILESCOMBINE.CAPTION=Combine Files
|
||||
TFRMMAIN.MILINE3.CAPTION=-
|
||||
TFRMMAIN.MILINE4.CAPTION=-
|
||||
TFRMMAIN.MNUMARK.CAPTION=&Mark
|
||||
TFRMMAIN.MILINE5.CAPTION=-
|
||||
TFRMMAIN.MNUMARKCMPDIR.CAPTION=&Compare Directories
|
||||
TFRMMAIN.MILINE10.CAPTION=-
|
||||
TFRMMAIN.MNUCMD.CAPTION=&Commands
|
||||
TFRMMAIN.MILINE6.CAPTION=-
|
||||
TFRMMAIN.MILINE9.CAPTION=-
|
||||
TFRMMAIN.MNUSHOW.CAPTION=&Show
|
||||
TFRMMAIN.MILINE7.CAPTION=-
|
||||
TFRMMAIN.MNUCONFIG.CAPTION=C&onfiguration
|
||||
TFRMMAIN.MNUHELP.CAPTION=&Help
|
||||
TFRMMAIN.ACTEXIT.CAPTION=Exit
|
||||
TFRMMAIN.ACTVIEW.CAPTION=View F3
|
||||
TFRMMAIN.ACTEDIT.CAPTION=Edit F4
|
||||
TFRMMAIN.ACTCOPY.CAPTION=Copy F5
|
||||
TFRMMAIN.ACTRENAME.CAPTION=Move F6
|
||||
TFRMMAIN.ACTMAKEDIR.CAPTION=MakeDir F7
|
||||
TFRMMAIN.ACTDELETE.CAPTION=Delete F8
|
||||
TFRMMAIN.ACTABOUT.CAPTION=About
|
||||
TFRMMAIN.ACTSHOWSYSFILES.CAPTION=Show hidden/system files
|
||||
TFRMMAIN.ACTOPTIONS.CAPTION=Options...
|
||||
TFRMMAIN.ACTCOMPARECONTENTS.CAPTION=Compare by &Contents
|
||||
TFRMMAIN.ACTSHOWMENU.CAPTION=Menu F9
|
||||
TFRMMAIN.ACTREFRESH.CAPTION=&Refresh
|
||||
TFRMMAIN.ACTSEARCH.CAPTION=&Search
|
||||
TFRMMAIN.ACTDIRHOTLIST.CAPTION=Directory &hotlist
|
||||
TFRMMAIN.ACTMARKMARKALL.CAPTION=&Select All
|
||||
TFRMMAIN.ACTMARKINVERT.CAPTION=Invert Selections
|
||||
TFRMMAIN.ACTMARKUNMARKALL.CAPTION=Unselect All
|
||||
TFRMMAIN.ACTMARKPLUS.CAPTION=Select a group
|
||||
TFRMMAIN.ACTMARKMINUS.CAPTION=Unselect a group
|
||||
TFRMMAIN.ACTSYMLINK.CAPTION=Create symlink...
|
||||
TFRMMAIN.ACTHARDLINK.CAPTION=Create link...
|
||||
TFRMMAIN.ACTREVERSEORDER.CAPTION=Reverse order
|
||||
TFRMMAIN.ACTSORTBYNAME.CAPTION=Sort by name
|
||||
TFRMMAIN.ACTSORTBYEXT.CAPTION=Sort by extension
|
||||
TFRMMAIN.ACTSORTBYSIZE.CAPTION=Sort by size
|
||||
TFRMMAIN.ACTSORTBYDATE.CAPTION=Sort by date
|
||||
TFRMMAIN.ACTSORTBYATTR.CAPTION=Sort by attrib
|
||||
TFRMMAIN.ACTMULTIRENAME.CAPTION=Multi Rename Tool
|
||||
TFRMMAIN.ACTCOPYSAMEPANEL.CAPTION=Copy to same panel
|
||||
TFRMMAIN.ACTRENAMEONLY.CAPTION=Rename
|
||||
TFRMMAIN.ACTEDITNEW.CAPTION=Edit new file
|
||||
TFRMMAIN.ACTDIRHISTORY.CAPTION=Directory history
|
||||
TFRMMAIN.ACTSHOWCMDLINEHISTORY.CAPTION=Show command line history
|
||||
TFRMMAIN.ACTRUNTERM.CAPTION=Run Term
|
||||
TFRMMAIN.ACTCALCULATESPACE.CAPTION=Calculate &Occupied Space...
|
||||
TFRMMAIN.ACTFILEPROPERTIES.CAPTION=Show file properties
|
||||
TFRMMAIN.ACTFILELINKER.CAPTION=Link files
|
||||
TFRMMAIN.ACTFILESPLITER.CAPTION=Split file
|
||||
TFRMMAIN.ACTNEWTAB.CAPTION=New tab
|
||||
TFRMMAIN.ACTREMOVETAB.CAPTION=Remove tab
|
||||
TFRMMAIN.ACTPACKFILES.CAPTION=Pack files...
|
||||
TFRMMAIN.ACTEXTRACTFILES.CAPTION=Extract files...
|
||||
TFRMMAIN.ACTOPENVFSLIST.CAPTION=Open VFS List
|
||||
TFRMMAIN.ACTLEFTOPENDRIVES.CAPTION=Open left drive list
|
||||
TFRMMAIN.ACTRIGHTOPENDRIVES.CAPTION=Open right drive list
|
||||
TFRMMAIN.ACTADDPATHTOCMDLINE.CAPTION=Copy path to command line
|
||||
TFRMMAIN.ACTFOCUSCMDLINE.CAPTION=Focus command line
|
||||
TFRMMAIN.ACTTRANSFERLEFT.CAPTION=Transfer dir under cursor to left window
|
||||
TFRMMAIN.ACTTRANSFERRIGHT.CAPTION=Transfer dir under cursor to right window
|
||||
TFRMMAIN.ACTCONTEXTMENU.CAPTION=Show context menu
|
||||
TFRMMAIN.ACTOPENARCHIVE.CAPTION=Try open archive
|
||||
TFRMMAIN.ACTSHOWBUTTONMENU.CAPTION=Show button menu
|
||||
TFRMMAIN.ACTQUICKSEARCH.CAPTION=Quick search
|
||||
TFRMMAIN.ACTFILEASSOC.CAPTION=File associations...
|
||||
TFRMMAIN.ACTOPEN.CAPTION=Open
|
||||
TFRMMAIN.ACTCOPYNAMESTOCLIP.CAPTION=Copy &Filename(s) to Clipboard
|
||||
TFRMMAIN.ACTCOPYFULLNAMESTOCLIP.CAPTION=Copy Filename(s) with Full &Path
|
||||
TFRMMAIN.ACTTARGETEQUALSOURCE.CAPTION=Target &= Source
|
||||
TFRMMAIN.ACTEXCHANGE.CAPTION=Swap &Panels
|
||||
TFRMMAIN.ACTOPENDIRINNEWTAB.CAPTION=Open folder in new tab
|
||||
TFRMMAIN.ACTWIPE.CAPTION=Wipe
|
||||
TFRMMAIN.TBEDIT.CAPTION=Edit
|
||||
TFRMMAIN.TBDELETE.CAPTION=Delete
|
||||
TFRMMAIN.MENUITEM2.CAPTION=-
|
||||
TFRMMAIN.MI2080.CAPTION=&20/80
|
||||
TFRMMAIN.MI3070.CAPTION=&30/70
|
||||
TFRMMAIN.MI4060.CAPTION=&40/60
|
||||
TFRMMAIN.MI5050.CAPTION=&50/50
|
||||
TFRMMAIN.MI6040.CAPTION=&60/40
|
||||
TFRMMAIN.MI7030.CAPTION=&70/30
|
||||
TFRMMAIN.MI8020.CAPTION=&80/20
|
||||
|
|
|
|||
51
foptions.pas
51
foptions.pas
|
|
@ -325,7 +325,7 @@ implementation
|
|||
|
||||
uses
|
||||
uLng, uGlobs, uGlobsPaths, uPixMapManager, fMain, ActnList, LCLProc, menus,
|
||||
uColorExt, uWCXModule, uWFXmodule, uDCUtils, uOSUtils,fColumnsSetConf;
|
||||
uColorExt, uWCXModule, uWFXmodule, uDCUtils, uOSUtils,fColumnsSetConf,uhotkeymanger;
|
||||
|
||||
procedure TfrmOptions.FormCreate(Sender: TObject);
|
||||
begin
|
||||
|
|
@ -486,35 +486,26 @@ begin
|
|||
edtTerm.Text:=gTerm;
|
||||
|
||||
|
||||
{ Columns Set}
|
||||
//ColSet.Clear;
|
||||
// ColSet.Load(gIni);
|
||||
FillColumnsList;
|
||||
FillColumnsList;
|
||||
|
||||
nbNotebook.PageIndex := 0; //let not warning on which page save form
|
||||
|
||||
end;
|
||||
|
||||
procedure TfrmOptions.btSetHotKeyClick(Sender: TObject);
|
||||
var vNum: integer;
|
||||
var vNum,i: integer;
|
||||
vActions: TAction;
|
||||
begin
|
||||
// ToDo Black list HotKey which can't use
|
||||
//TODO: Realize full version of hotkey's using. Allow to bind hotkeys to any controls.
|
||||
|
||||
for vNum := 0 to cbActions.Items.Count - 1 do
|
||||
begin
|
||||
vActions := cbActions.Items.Objects[vNum] as TAction;
|
||||
if vActions.ShortCut = vShortCut then
|
||||
begin
|
||||
ShowMessage('ShortCut used by '+vActions.Name);// ToDo lang
|
||||
Exit;
|
||||
end;
|
||||
end;
|
||||
|
||||
vActions := cbActions.Items.Objects[cbActions.ItemIndex] as TAction;
|
||||
vActions.ShortCut := vShortCut;
|
||||
cbActions.Items[cbActions.ItemIndex] := vActions.Name+'('+ShortCutToText(vActions.ShortCut)+')';
|
||||
cbActions.Text := vActions.Name+'('+ShortCutToText(vActions.ShortCut)+')';
|
||||
i:=HotMan.GetHotKeyIndex(ShortCutToTextEx(vShortCut));
|
||||
if i=-1 then
|
||||
HotMan.AddHotKey(ShortCutToTextEx(vShortCut),cbActions.Text,'',frmMain)
|
||||
else
|
||||
begin
|
||||
ShowMessage('ShortCut used by '+THotkeyInfoClass(TStringList(TStringList(HotMan.HotkeyList.Objects[i]).Objects[0]).Objects[0]).ACommand);
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
|
|
@ -873,11 +864,12 @@ procedure TfrmOptions.FillActionLists;
|
|||
var vNum: integer;
|
||||
var vActions: TAction;
|
||||
begin
|
||||
for vNum := 0 to frmMain.actionLst.ActionCount -1 do
|
||||
{ for vNum := 0 to frmMain.actionLst.ActionCount -1 do
|
||||
begin
|
||||
vActions := frmMain.actionLst.Actions[vNum] as TAction;
|
||||
cbActions.Items.AddObject(vActions.Name+'('+ShortCutToText(vActions.ShortCut)+')',vActions);
|
||||
end;
|
||||
end;}
|
||||
cbActions.items.AddStrings(Actions.CommandList);
|
||||
end;
|
||||
|
||||
procedure TfrmOptions.cbMainFontChange(Sender: TObject);
|
||||
|
|
@ -898,8 +890,8 @@ end;
|
|||
procedure TfrmOptions.edHotKeyKeyDown(Sender: TObject; var Key: Word;
|
||||
Shift: TShiftState);
|
||||
begin
|
||||
vShortCut := ShortCut(Key,Shift);
|
||||
TEdit(Sender).Text := ShortCutToText(vShortCut);
|
||||
vShortCut := ShortCutEx(Key,Shift);
|
||||
TEdit(Sender).Text := ShortCutToTextEx(vShortCut);
|
||||
Key := 0;
|
||||
btSetHotKey.Enabled := (edHotKey.Text <> '');
|
||||
end;
|
||||
|
|
@ -1463,10 +1455,17 @@ end;
|
|||
procedure TfrmOptions.btClearHotKeyClick(Sender: TObject);
|
||||
var vActions: TAction;
|
||||
begin
|
||||
vActions := cbActions.Items.Objects[cbActions.ItemIndex] as TAction;
|
||||
{ vActions := cbActions.Items.Objects[cbActions.ItemIndex] as TAction;
|
||||
vActions.ShortCut := TextToShortCut('');
|
||||
cbActions.Items[cbActions.ItemIndex] := vActions.Name+'('+ShortCutToText(vActions.ShortCut)+')';
|
||||
cbActions.Text := vActions.Name+'('+ShortCutToText(vActions.ShortCut)+')';
|
||||
cbActions.Text := vActions.Name+'('+ShortCutToText(vActions.ShortCut)+')';}
|
||||
{if cbActions.ItemIndex=-1 then exit;
|
||||
showmessage(cbActions.Items.Strings[cbActions.ItemIndex]);
|
||||
HotMan.DeleteHotKey(HotMan.GetHotKeyIndex(cbActions.Items.Strings[cbActions.ItemIndex]));
|
||||
edHotKey.Text:='';}
|
||||
|
||||
//TODO: delete hotkey.
|
||||
//TODO:New interface for hotkeys
|
||||
end;
|
||||
|
||||
procedure TfrmOptions.btnBackColor2Click(Sender: TObject);
|
||||
|
|
|
|||
21
uglobs.pas
21
uglobs.pas
|
|
@ -22,7 +22,7 @@ unit uGlobs;
|
|||
|
||||
interface
|
||||
uses
|
||||
Classes, Controls, uExts, uColorExt, Graphics, uClassesEx, uWDXModule, uColumns;
|
||||
Classes, Controls, uExts, uColorExt, Graphics, uClassesEx, uWDXModule, uColumns,uhotkeymanger,uActs;
|
||||
|
||||
type
|
||||
TControlPosition = object
|
||||
|
|
@ -162,6 +162,12 @@ var
|
|||
gQuickSearchMatchBeginning,
|
||||
gQuickSearchMatchEnding : Boolean;
|
||||
|
||||
{HotKey Manager}
|
||||
HotMan:THotKeyManager;
|
||||
|
||||
{Actions}
|
||||
Actions:TActs;
|
||||
|
||||
const
|
||||
{ Tabs options }
|
||||
tb_always_visible = 1;
|
||||
|
|
@ -292,6 +298,9 @@ begin
|
|||
glsHotDir := TStringListEx.Create;
|
||||
glsDirHistory := TStringListEx.Create;
|
||||
glsMaskHistory := TStringListEx.Create;
|
||||
|
||||
HotMan:=THotKeyManager.Create;
|
||||
Actions:=TActs.Create;
|
||||
end;
|
||||
|
||||
procedure DeInitGlobs;
|
||||
|
|
@ -312,6 +321,10 @@ begin
|
|||
WdxPlugins.Free;
|
||||
if Assigned(ColSet) then
|
||||
ColSet.Free;
|
||||
if Assigned(HotMan) then
|
||||
HotMan.Free;
|
||||
if Assigned(Actions) then
|
||||
Actions.Free;
|
||||
|
||||
{ Save location of configuration files }
|
||||
gIni := TIniFileEx.Create(gpCfgDir + 'doublecmd.ini');
|
||||
|
|
@ -448,6 +461,9 @@ begin
|
|||
ColSet:=TPanelColumnsList.Create;
|
||||
ColSet.Load(gIni);
|
||||
//---------------------
|
||||
|
||||
//TODO: Load hotkeys
|
||||
//HotMan.Load();
|
||||
end;
|
||||
|
||||
function LoadStringsFromFile(var list:TStringListEx; const sFileName:String):boolean;
|
||||
|
|
@ -574,6 +590,9 @@ begin
|
|||
gExts.SaveToFile(gpIniDir + 'doublecmd.ext');
|
||||
gColorExt.Save;
|
||||
|
||||
//TODO: Save hotkeys
|
||||
//HotMan.Save();
|
||||
|
||||
DeInitGlobs;
|
||||
end;
|
||||
|
||||
|
|
|
|||
|
|
@ -102,17 +102,14 @@ type
|
|||
//Hotkey Handler
|
||||
procedure KeyDownHandler(Sender: TObject; var Key: Word; Shift: TShiftState);
|
||||
//---------------------
|
||||
//Эта функция вызывается из KeyDownHandler и проверяет - зарегистрирован ли хоткей,
|
||||
//и, если зарегистрирован - выполняет нужное действие.
|
||||
//This function is called from KeyDownHandler to find registered hotkey and execute assigned action
|
||||
function HotKeyEvent(sShortcut:string; ObjInfo:TObjInfoClass):boolean;
|
||||
//Индекс в FHotList по сочетанию клавиш
|
||||
function GetHotKeyIndex(Hotkey:string; FromI:integer=0):integer;
|
||||
//---------------------
|
||||
//Регистрация формы
|
||||
//Form registration
|
||||
procedure RegisterManagerForF(AObject:TCustomForm);
|
||||
//Рекистрация контрола
|
||||
//TWinControl Registration
|
||||
procedure RegisterManagerForW(AObject: TWinControl);
|
||||
//и соответственно обратные действия
|
||||
//Unregistration procs
|
||||
procedure UnRegisterManagerForF(AObject:TCustomForm);
|
||||
procedure UnRegisterManagerForW(AObject: TWinControl);
|
||||
//---------------------
|
||||
|
|
@ -128,6 +125,9 @@ type
|
|||
function DeleteHotKey(AHotKey:string; AObject:TWinControl):boolean;
|
||||
function ReplaceHotkey(AOldHotkey,ANewHotKey:string):integer;
|
||||
//---------------------
|
||||
//Index of hotkey in FHotList
|
||||
function GetHotKeyIndex(Hotkey:string; FromI:integer=0):integer;
|
||||
//---------------------
|
||||
procedure Save(FileName:string);
|
||||
procedure Load(FileName:string);
|
||||
//---------------------
|
||||
|
|
@ -334,7 +334,7 @@ end;
|
|||
function THotKeyManager.AddHotKey(AHotKey,ACommand,AParams:string; AObject: TWinControl): integer;
|
||||
var par:TWinControl; TH:THotkeyInfoClass; i,j,k:integer; st:TStringList;
|
||||
begin
|
||||
//Поиск формы родителя
|
||||
//Find control's parent form
|
||||
par:=AObject;
|
||||
while assigned(Par) and (not (par is TCustomForm)) do
|
||||
Par:=Par.Parent;
|
||||
|
|
@ -347,7 +347,7 @@ begin
|
|||
result:=i;
|
||||
st:=TStringList(FHotList.Objects[i]); //form list
|
||||
//---------------------
|
||||
//найти форму и добавить контрол в её список
|
||||
//find form and add it in form list
|
||||
j:=st.IndexOf(par.Name);
|
||||
if j=-1 then
|
||||
j:=st.AddObject(par.Name,TStringList.Create);
|
||||
|
|
@ -378,7 +378,7 @@ begin
|
|||
if tmp=-1 then
|
||||
tmp:=FHotList.AddObject(th.AShortCut,TStringList.Create);
|
||||
|
||||
//найти форму и добавить контрол в её список
|
||||
//find form and add it in form list
|
||||
k:=TStringList(FHotList.Objects[tmp]).IndexOf(th.AObjectFormName);
|
||||
if k=-1 then
|
||||
k:=TStringList(FHotList.Objects[tmp]).AddObject(th.AObjectFormName,TStringList.Create);
|
||||
|
|
@ -537,7 +537,7 @@ begin
|
|||
t.AKeyDownProc:=AObject.OnKeyDown;
|
||||
t.AChilds:=nil;
|
||||
|
||||
//Поиск формы родителя
|
||||
//find component's parent form
|
||||
par:=AObject;
|
||||
while assigned(Par) and (not (par is TCustomForm)) do
|
||||
Par:=Par.Parent;
|
||||
|
|
@ -546,7 +546,7 @@ begin
|
|||
i:=FFormsList.IndexOf(par.Name);
|
||||
if i=-1 then
|
||||
begin
|
||||
{Регистрация формы}
|
||||
{register form}
|
||||
RegisterManagerForF(Par as TCustomForm);
|
||||
i:=FFormsList.IndexOf(par.Name);
|
||||
if i=-1 then exit;
|
||||
|
|
@ -579,7 +579,7 @@ procedure THotKeyManager.UnRegisterManagerForW(AObject: TWinControl);
|
|||
begin
|
||||
if Assigned(AObject.OnKeyDown) then
|
||||
begin
|
||||
//Поиск формы родителя
|
||||
//find parent form
|
||||
par:=AObject;
|
||||
while assigned(Par) and (not (par is TCustomForm)) do
|
||||
Par:=Par.Parent;
|
||||
|
|
@ -609,21 +609,21 @@ begin
|
|||
hi:=GetHotKeyIndex(sShortcut);
|
||||
if hi=-1 then exit;
|
||||
|
||||
//Поиск формы родителя
|
||||
//find parent form
|
||||
par:=ObjInfo.AObject;
|
||||
while assigned(Par) and (not (par is TCustomForm)) do
|
||||
Par:=Par.Parent;
|
||||
|
||||
if par is TCustomForm then
|
||||
begin
|
||||
//лист форм
|
||||
//form's list
|
||||
//---------------------
|
||||
if not assigned(FHotList.Objects[hi]) then exit;
|
||||
st:=TStringList(FHotList.Objects[hi]);
|
||||
tmp:=st.IndexOf(Par.Name);
|
||||
if tmp=-1 then exit;
|
||||
|
||||
//лист контролов
|
||||
//control's list
|
||||
//---------------------
|
||||
if not assigned(st.Objects[tmp]) then exit;
|
||||
st:=TStringList(st.Objects[tmp]);
|
||||
|
|
@ -691,9 +691,9 @@ procedure THotKeyManager.KeyDownHandler(Sender: TObject; var Key: Word; Shift: T
|
|||
begin
|
||||
|
||||
{предварительная проверка - зарегистрирован ли хоткей вообще,
|
||||
чтобы не тратить время на вычисления}
|
||||
чтобы не тратить время на вычисления и вызов оригинальных обработчиков}
|
||||
//if GetHotKeyIndex(KeyToText(Key))=-1 then exit;
|
||||
|
||||
|
||||
Handled:=false;
|
||||
|
||||
i:=FFormsList.IndexOf((Sender as TWinControl).Name);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue