From c4b923170643bb0ba7945f2e651af050cd1bfa7d Mon Sep 17 00:00:00 2001 From: mattias Date: Tue, 8 Sep 2009 10:22:48 +0000 Subject: [PATCH] IDE: designer: added menu item Center form git-svn-id: trunk@21614 - --- designer/designer.pp | 16 ++++++++++++++++ ide/lazarusidestrconsts.pas | 1 + 2 files changed, 17 insertions(+) diff --git a/designer/designer.pp b/designer/designer.pp index 5f53e47523..b9f9a9ced5 100644 --- a/designer/designer.pp +++ b/designer/designer.pp @@ -215,6 +215,7 @@ type procedure OnSnapToGuideLinesOptionMenuClick(Sender: TObject); procedure OnViewLFMMenuClick(Sender: TObject); procedure OnSaveAsXMLMenuClick(Sender: TObject); + procedure OnCenterFormMenuClick(Sender: TObject); // hook function GetPropertyEditorHook: TPropertyEditorHook; override; @@ -353,6 +354,7 @@ var DesignerMenuChangeParent: TIDEMenuSection; DesignerMenuViewLFM: TIDEMenuCommand; DesignerMenuSaveAsXML: TIDEMenuCommand; + DesignerMenuCenterForm: TIDEMenuCommand; DesignerMenuSnapToGridOption: TIDEMenuCommand; DesignerMenuSnapToGuideLinesOption: TIDEMenuCommand; @@ -443,6 +445,8 @@ begin 'View LFM',lisViewSourceLfm); DesignerMenuSaveAsXML:=RegisterIDEMenuCommand(DesignerMenuSectionMisc, 'Save as XML',fdmSaveFormAsXML); + DesignerMenuCenterForm:=RegisterIDEMenuCommand(DesignerMenuSectionMisc, + 'Center form', lisCenterForm); // register options section DesignerMenuSectionOptions:=RegisterIDEMenuSection(DesignerMenuRoot, @@ -2403,6 +2407,17 @@ begin if Assigned(OnSaveAsXML) then OnSaveAsXML(Self); end; +procedure TDesigner.OnCenterFormMenuClick(Sender: TObject); +var + NewLeft: Integer; + NewTop: Integer; +begin + if Form=nil then exit; + NewLeft:=Max(30,(Screen.Width-Form.Width) div 2); + NewTop:=Max(30,(Screen.Height-Form.Height) div 2); + Form.SetBounds(NewLeft,NewTop,Form.Width,Form.Height); +end; + procedure TDesigner.OnCopyMenuClick(Sender: TObject); begin CopySelection; @@ -2883,6 +2898,7 @@ begin DesignerMenuChangeClass.OnClick:=@OnChangeClassMenuClick; DesignerMenuViewLFM.OnClick:=@OnViewLFMMenuClick; DesignerMenuSaveAsXML.OnClick:=@OnSaveAsXMLMenuClick; + DesignerMenuCenterForm.OnClick:=@OnCenterFormMenuClick; DesignerMenuSnapToGridOption.OnClick:=@OnSnapToGridOptionMenuClick; DesignerMenuSnapToGridOption.ShowAlwaysCheckable:=true; diff --git a/ide/lazarusidestrconsts.pas b/ide/lazarusidestrconsts.pas index 18617a4b9c..6cb524b4b7 100644 --- a/ide/lazarusidestrconsts.pas +++ b/ide/lazarusidestrconsts.pas @@ -4476,6 +4476,7 @@ resourcestring lisUsePackageInProject2 = 'Use package in project'; lisUseIdentifier = 'Use identifier'; lisUsePackageInPackage2 = 'Use package in package'; + lisCenterForm = 'Center form'; implementation