mirror of
https://github.com/doublecmd/doublecmd.git
synced 2026-06-28 10:02:14 +00:00
ADD: cm_CopyFileDetailsToClip Commands
ADD: Some additional items in main menu
This commit is contained in:
parent
8e8bc6f8ed
commit
d0d5cc2bf3
5 changed files with 92 additions and 4 deletions
|
|
@ -172,12 +172,15 @@ type
|
|||
|
||||
procedure UpdateColumnsView;
|
||||
|
||||
published
|
||||
procedure cm_CopyFileDetailsToClip(const Params: array of string);
|
||||
|
||||
end;
|
||||
|
||||
implementation
|
||||
|
||||
uses
|
||||
LCLProc, Clipbrd, uLng, uGlobs, uPixmapManager, uDebug,
|
||||
LCLProc, Clipbrd, DCStrUtils, uLng, uGlobs, uPixmapManager, uDebug,
|
||||
uDCUtils, math, fMain, fOptions,
|
||||
uOrderedFileView,
|
||||
uFileSourceProperty,
|
||||
|
|
@ -1025,6 +1028,54 @@ begin
|
|||
dgPanel.Hint:= #32;
|
||||
end;
|
||||
|
||||
procedure TColumnsFileView.cm_CopyFileDetailsToClip(const Params: array of string);
|
||||
var
|
||||
I: Integer;
|
||||
AFile: TDisplayFile;
|
||||
sl: TStringList = nil;
|
||||
|
||||
procedure AddFile;
|
||||
var
|
||||
J: Integer;
|
||||
S: UTF8String;
|
||||
begin
|
||||
if AFile.FSFile.IsNameValid then
|
||||
begin
|
||||
S:= EmptyStr;
|
||||
for J:= 0 to AFile.DisplayStrings.Count - 1 do
|
||||
begin
|
||||
S:= S + AFile.DisplayStrings[J] + #09;
|
||||
end;
|
||||
J:= Length(S);
|
||||
if J > 0 then sl.Add(Copy(S, 1, J - 1));
|
||||
end;
|
||||
end;
|
||||
|
||||
begin
|
||||
if DisplayFiles.Count > 0 then
|
||||
begin
|
||||
sl:= TStringList.Create;
|
||||
try
|
||||
for I:= 0 to FFiles.Count - 1 do
|
||||
begin
|
||||
AFile:= FFiles[I];
|
||||
if AFile.Selected then AddFile;
|
||||
end;
|
||||
|
||||
if sl.Count = 0 then
|
||||
begin
|
||||
AFile:= GetActiveDisplayFile;
|
||||
AddFile;
|
||||
end;
|
||||
|
||||
Clipboard.Clear; // prevent multiple formats in Clipboard
|
||||
Clipboard.AsText:= TrimRightLineEnding(sl.Text, sl.TextLineBreakStyle);
|
||||
finally
|
||||
FreeAndNil(sl);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
{ TDrawGridEx }
|
||||
|
||||
constructor TDrawGridEx.Create(AOwner: TComponent; AParent: TWinControl);
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ object frmMain: TfrmMain
|
|||
SessionProperties = 'nbConsole.Height;seLogWindow.Height'
|
||||
ShowHint = True
|
||||
ShowInTaskBar = stAlways
|
||||
LCLVersion = '1.0.1.3'
|
||||
LCLVersion = '1.0.14.0'
|
||||
Visible = True
|
||||
object MainToolBar: TKASToolBar
|
||||
AnchorSideTop.Control = Owner
|
||||
|
|
@ -933,6 +933,7 @@ object frmMain: TfrmMain
|
|||
Top = 0
|
||||
Width = 116
|
||||
Action = actMakeDir
|
||||
Caption = 'Directory'
|
||||
Flat = True
|
||||
NumGlyphs = 0
|
||||
end
|
||||
|
|
@ -979,6 +980,9 @@ object frmMain: TfrmMain
|
|||
object mnuFilesHardLink: TMenuItem
|
||||
Action = actHardLink
|
||||
end
|
||||
object miMakeDir: TMenuItem
|
||||
Action = actMakeDir
|
||||
end
|
||||
object miLine1: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
|
|
@ -1027,6 +1031,15 @@ object frmMain: TfrmMain
|
|||
object miLine4: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object miWipe: TMenuItem
|
||||
Action = actWipe
|
||||
end
|
||||
object miDelete: TMenuItem
|
||||
Action = actDelete
|
||||
end
|
||||
object miLine50: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object miExit: TMenuItem
|
||||
Action = actExit
|
||||
end
|
||||
|
|
@ -1081,6 +1094,9 @@ object frmMain: TfrmMain
|
|||
object miCopyFullNamesToClip: TMenuItem
|
||||
Action = actCopyFullNamesToClip
|
||||
end
|
||||
object miCopyFileDetailsToClip: TMenuItem
|
||||
Action = actCopyFileDetailsToClip
|
||||
end
|
||||
object miLine37: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
|
|
@ -1331,7 +1347,7 @@ object frmMain: TfrmMain
|
|||
end
|
||||
object actMakeDir: TAction
|
||||
Category = 'Classic'
|
||||
Caption = 'MakeDir'
|
||||
Caption = 'Create &Directory'
|
||||
HelpType = htKeyword
|
||||
OnExecute = actExecute
|
||||
end
|
||||
|
|
@ -1979,6 +1995,11 @@ object frmMain: TfrmMain
|
|||
HelpType = htKeyword
|
||||
OnExecute = actExecute
|
||||
end
|
||||
object actCopyFileDetailsToClip: TAction
|
||||
Category = 'Mark'
|
||||
Caption = 'Copy all shown &columns'
|
||||
OnExecute = actExecute
|
||||
end
|
||||
end
|
||||
object pmHotList: TPopupMenu
|
||||
left = 120
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ TFRMMAIN.BTNRIGHTDIRECTORYHOTLIST.CAPTION=*
|
|||
TFRMMAIN.BTNRIGHTEQUALLEFT.HINT=Show current directory of the left panel in the right panel
|
||||
TFRMMAIN.BTNRIGHTEQUALLEFT.CAPTION=>
|
||||
TFRMMAIN.LBLCOMMANDPATH.CAPTION=Path
|
||||
TFRMMAIN.BTNF7.CAPTION=Directory
|
||||
TFRMMAIN.BTNF8.CAPTION=Delete
|
||||
TFRMMAIN.BTNF9.CAPTION=Terminal
|
||||
TFRMMAIN.BTNF10.CAPTION=Exit
|
||||
|
|
@ -23,6 +24,7 @@ TFRMMAIN.MNUFILES.CAPTION=&Files
|
|||
TFRMMAIN.MILINE1.CAPTION=-
|
||||
TFRMMAIN.MILINE2.CAPTION=-
|
||||
TFRMMAIN.MILINE4.CAPTION=-
|
||||
TFRMMAIN.MILINE50.CAPTION=-
|
||||
TFRMMAIN.MNUMARK.CAPTION=&Mark
|
||||
TFRMMAIN.MILINE47.CAPTION=-
|
||||
TFRMMAIN.MILINE5.CAPTION=-
|
||||
|
|
@ -55,7 +57,7 @@ TFRMMAIN.ACTVIEW.CAPTION=View
|
|||
TFRMMAIN.ACTEDIT.CAPTION=Edit
|
||||
TFRMMAIN.ACTCOPY.CAPTION=Copy
|
||||
TFRMMAIN.ACTRENAME.CAPTION=Move
|
||||
TFRMMAIN.ACTMAKEDIR.CAPTION=MakeDir
|
||||
TFRMMAIN.ACTMAKEDIR.CAPTION=Create &Directory
|
||||
TFRMMAIN.ACTDELETE.CAPTION=Delete
|
||||
TFRMMAIN.ACTABOUT.CAPTION=&About
|
||||
TFRMMAIN.ACTSHOWSYSFILES.CAPTION=Show &Hidden/System Files
|
||||
|
|
@ -182,6 +184,8 @@ TFRMMAIN.ACTCOLUMNSVIEW.HINT=Columns View
|
|||
TFRMMAIN.ACTTHUMBNAILSVIEW.CAPTION=Thumbnails
|
||||
TFRMMAIN.ACTTHUMBNAILSVIEW.HINT=Thumbnails View
|
||||
TFRMMAIN.ACTCHANGEDIRTOHOME.CAPTION=Change directory to home
|
||||
TFRMMAIN.ACTSYNCDIRS.CAPTION=Synchronize dirs...
|
||||
TFRMMAIN.ACTCOPYFILEDETAILSTOCLIP.CAPTION=Copy all shown &columns
|
||||
TFRMMAIN.TBEDIT.CAPTION=Edit
|
||||
TFRMMAIN.TBDELETE.CAPTION=Delete
|
||||
TFRMMAIN.TBCHANGEDIR.CAPTION=CD
|
||||
|
|
|
|||
|
|
@ -91,6 +91,7 @@ type
|
|||
actBriefView: TAction;
|
||||
actColumnsView: TAction;
|
||||
actChangeDirToHome: TAction;
|
||||
actCopyFileDetailsToClip: TAction;
|
||||
actSyncDirs: TAction;
|
||||
actThumbnailsView: TAction;
|
||||
actShellExecute: TAction;
|
||||
|
|
@ -165,6 +166,11 @@ type
|
|||
lblRightDriveInfo: TLabel;
|
||||
lblLeftDriveInfo: TLabel;
|
||||
lblCommandPath: TLabel;
|
||||
miMakeDir: TMenuItem;
|
||||
miWipe: TMenuItem;
|
||||
miDelete: TMenuItem;
|
||||
miLine50: TMenuItem;
|
||||
miCopyFileDetailsToClip: TMenuItem;
|
||||
mnuCmdSyncDirs: TMenuItem;
|
||||
mnuContextRenameOnly: TMenuItem;
|
||||
mnuContextCopy: TMenuItem;
|
||||
|
|
|
|||
|
|
@ -98,6 +98,7 @@ type
|
|||
procedure cm_CmdLinePrev(const Params: array of string);
|
||||
procedure cm_ContextMenu(const Params: array of string);
|
||||
procedure cm_CopyFullNamesToClip(const Params: array of string);
|
||||
procedure cm_CopyFileDetailsToClip(const Params: array of string);
|
||||
procedure cm_Exchange(const Params: array of string);
|
||||
procedure cm_OpenArchive(const Params: array of string);
|
||||
procedure cm_TestArchive(const Params: array of string);
|
||||
|
|
@ -733,6 +734,11 @@ begin
|
|||
DoCopySelectedFileNamesToClipboard(frmMain.ActiveFrame, True);
|
||||
end;
|
||||
|
||||
procedure TMainCommands.cm_CopyFileDetailsToClip(const Params: array of string);
|
||||
begin
|
||||
frmMain.ActiveFrame.ExecuteCommand('cm_CopyFileDetailsToClip', []);
|
||||
end;
|
||||
|
||||
procedure TMainCommands.cm_CopyNamesToClip(const Params: array of string);
|
||||
begin
|
||||
DoCopySelectedFileNamesToClipboard(frmMain.ActiveFrame, False);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue