mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-16 16:49:12 +02:00
Merge branch 'IDE/Editor/StatusBar/CopyFileName' into 'main'
IDE/SourceEditor: Add a file name copy command to the status bar context menu See merge request freepascal.org/lazarus/lazarus!520
This commit is contained in:
commit
0852c1a313
@ -49,6 +49,10 @@ object SourceNotebook: TSourceNotebook
|
|||||||
Caption = 'Goto line ...'
|
Caption = 'Goto line ...'
|
||||||
OnClick = GoToLineMenuItemClick
|
OnClick = GoToLineMenuItemClick
|
||||||
end
|
end
|
||||||
|
object CopyFullPathMenuItem: TMenuItem
|
||||||
|
Caption = 'Copy full path'
|
||||||
|
OnClick = CopyFullPathMenuItemClick
|
||||||
|
end
|
||||||
object OpenFolderMenuItem: TMenuItem
|
object OpenFolderMenuItem: TMenuItem
|
||||||
Caption = 'Open folder ...'
|
Caption = 'Open folder ...'
|
||||||
OnClick = OpenFolderMenuItemClick
|
OnClick = OpenFolderMenuItemClick
|
||||||
|
@ -684,6 +684,7 @@ type
|
|||||||
|
|
||||||
TSourceNotebook = class(TSourceEditorWindowInterface)
|
TSourceNotebook = class(TSourceEditorWindowInterface)
|
||||||
GoToLineMenuItem: TMenuItem;
|
GoToLineMenuItem: TMenuItem;
|
||||||
|
CopyFullPathMenuItem: TMenuItem;
|
||||||
OpenFolderMenuItem: TMenuItem;
|
OpenFolderMenuItem: TMenuItem;
|
||||||
StatusPopUpMenu: TPopupMenu;
|
StatusPopUpMenu: TPopupMenu;
|
||||||
StatusBar: TStatusBar;
|
StatusBar: TStatusBar;
|
||||||
@ -691,6 +692,7 @@ type
|
|||||||
{%H-}Shift: TShiftState; {%H-}X, {%H-}Y: Integer);
|
{%H-}Shift: TShiftState; {%H-}X, {%H-}Y: Integer);
|
||||||
procedure FormResize(Sender: TObject);
|
procedure FormResize(Sender: TObject);
|
||||||
procedure GoToLineMenuItemClick(Sender: TObject);
|
procedure GoToLineMenuItemClick(Sender: TObject);
|
||||||
|
procedure CopyFullPathMenuItemClick(Sender: TObject);
|
||||||
procedure OpenFolderMenuItemClick(Sender: TObject);
|
procedure OpenFolderMenuItemClick(Sender: TObject);
|
||||||
procedure StatusBarClick(Sender: TObject);
|
procedure StatusBarClick(Sender: TObject);
|
||||||
procedure StatusBarDblClick(Sender: TObject);
|
procedure StatusBarDblClick(Sender: TObject);
|
||||||
@ -7692,6 +7694,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
GoToLineMenuItem.Caption := lisMenuGotoLine;
|
GoToLineMenuItem.Caption := lisMenuGotoLine;
|
||||||
|
CopyFullPathMenuItem.Caption := uemCopyFilename;
|
||||||
OpenFolderMenuItem.Caption := lisMenuOpenFolder;
|
OpenFolderMenuItem.Caption := lisMenuOpenFolder;
|
||||||
{$IFDEF VerboseMenuIntf}
|
{$IFDEF VerboseMenuIntf}
|
||||||
SrcPopupMenu.Items.WriteDebugReport('TSourceNotebook.BuildPopupMenu ');
|
SrcPopupMenu.Items.WriteDebugReport('TSourceNotebook.BuildPopupMenu ');
|
||||||
@ -8885,6 +8888,7 @@ var
|
|||||||
begin
|
begin
|
||||||
i := StatusBar.GetPanelIndexAt(MousePos.X, MousePos.Y);
|
i := StatusBar.GetPanelIndexAt(MousePos.X, MousePos.Y);
|
||||||
GoToLineMenuItem.Visible := i=CStatusPanelXY;
|
GoToLineMenuItem.Visible := i=CStatusPanelXY;
|
||||||
|
CopyFullPathMenuItem.Visible := i=CStatusPanelFile;
|
||||||
OpenFolderMenuItem.Visible := i=CStatusPanelFile;
|
OpenFolderMenuItem.Visible := i=CStatusPanelFile;
|
||||||
if i in [CStatusPanelXY, CStatusPanelFile] then
|
if i in [CStatusPanelXY, CStatusPanelFile] then
|
||||||
StatusPopUpMenu.PopUp
|
StatusPopUpMenu.PopUp
|
||||||
@ -9120,6 +9124,11 @@ begin
|
|||||||
Manager.GotoLineClicked(nil);
|
Manager.GotoLineClicked(nil);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TSourceNotebook.CopyFullPathMenuItemClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
Clipboard.AsText := Statusbar.Panels[CStatusPanelFile].Text;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TSourceNotebook.OpenFolderMenuItemClick(Sender: TObject);
|
procedure TSourceNotebook.OpenFolderMenuItemClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
SelectInFolder(Statusbar.Panels[CStatusPanelFile].Text);
|
SelectInFolder(Statusbar.Panels[CStatusPanelFile].Text);
|
||||||
|
Loading…
Reference in New Issue
Block a user