From b7c4f73c4fc0fe5ea4fbc4243aeab804d5aad8c9 Mon Sep 17 00:00:00 2001 From: paul Date: Fri, 22 May 2009 06:42:05 +0000 Subject: [PATCH] ide: add "Close All Other Pages" command to the source editor menu git-svn-id: trunk@20120 - --- ide/lazarusidestrconsts.pas | 1 + ide/sourceeditor.pp | 18 ++++++++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/ide/lazarusidestrconsts.pas b/ide/lazarusidestrconsts.pas index 13f7cac63e..feee67654a 100644 --- a/ide/lazarusidestrconsts.pas +++ b/ide/lazarusidestrconsts.pas @@ -1769,6 +1769,7 @@ resourcestring uemOpenFileAtCursor = '&Open file at cursor'; uemProcedureJump = 'Procedure Jump'; uemClosePage = '&Close Page'; + uemCloseOtherPages = 'Close All &Other Pages'; uemCut = 'Cut'; uemCopy = 'Copy'; uemPaste = 'Paste'; diff --git a/ide/sourceeditor.pp b/ide/sourceeditor.pp index 8124c1c6ea..98621dc8fd 100644 --- a/ide/sourceeditor.pp +++ b/ide/sourceeditor.pp @@ -685,6 +685,7 @@ type procedure CloseTabClicked(Sender: TObject); procedure CloseClicked(Sender: TObject); + procedure CloseOtherPagesClicked(Sender: TObject); procedure ToggleFormUnitClicked(Sender: TObject); procedure ToggleObjectInspClicked(Sender: TObject); @@ -842,6 +843,7 @@ var // open file SrcEditMenuOpenFileAtCursor: TIDEMenuCommand; SrcEditMenuClosePage: TIDEMenuCommand; + SrcEditMenuCloseOtherPages: TIDEMenuCommand; SrcEditMenuCut: TIDEMenuCommand; SrcEditMenuCopy: TIDEMenuCommand; SrcEditMenuPaste: TIDEMenuCommand; @@ -931,8 +933,10 @@ begin SrcEditMenuSectionPages := RegisterIDEMenuSection(SourceEditorMenuRoot, 'Pages'); - SrcEditMenuClosePage:=RegisterIDEMenuCommand(SrcEditMenuSectionPages, - 'Close Page',uemClosePage, nil, nil, nil, 'menu_close'); + SrcEditMenuClosePage := RegisterIDEMenuCommand(SrcEditMenuSectionPages, + 'Close Page',uemClosePage, nil, nil, nil, 'menu_close'); + SrcEditMenuCloseOtherPages := RegisterIDEMenuCommand(SrcEditMenuSectionPages, + 'Close All Other Pages',uemCloseOtherPages, nil, nil, nil); // register the Move Page sub menu SrcEditSubMenuMovePage:=RegisterIDESubMenu(SrcEditMenuSectionPages, @@ -4449,6 +4453,7 @@ begin SrcEditMenuOpenFileAtCursor.OnClick:=@OpenAtCursorClicked; SrcEditMenuClosePage.OnClick:=@CloseClicked; + SrcEditMenuCloseOtherPages.OnClick:=@CloseOtherPagesClicked; SrcEditMenuCut.OnClick:=@CutClicked; SrcEditMenuCopy.OnClick:=@CopyClicked; SrcEditMenuPaste.OnClick:=@PasteClicked; @@ -6044,7 +6049,12 @@ end; Procedure TSourceNotebook.CloseClicked(Sender: TObject); Begin - if Assigned(FOnCloseClicked) then FOnCloseClicked(Sender,false); + if Assigned(FOnCloseClicked) then FOnCloseClicked(Sender, False); +end; + +procedure TSourceNotebook.CloseOtherPagesClicked(Sender: TObject); +begin + if Assigned(FOnCloseClicked) then FOnCloseClicked(Sender, True); end; Function TSourceNotebook.FindUniquePageName(FileName:string; @@ -6855,7 +6865,7 @@ end; procedure TSourceNotebook.CloseTabClicked(Sender: TObject); begin if Assigned(FOnCloseClicked) then - FOnCloseClicked(Sender,GetKeyState(VK_CONTROL)<0); + FOnCloseClicked(Sender, GetKeyState(VK_CONTROL) < 0); end; { TSynEditPlugin1 }