officecfg/registry/data/org/openoffice/Office/UI/DrawImpressCommands.xcu |   
22 ++++++++++
 officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu     |    
2 
 sd/inc/app.hrc                                                           |    
1 
 sd/sdi/_drvwsh.sdi                                                       |    
5 ++
 sd/sdi/sdraw.sdi                                                         |   
16 +++++++
 sd/source/ui/view/drviews2.cxx                                           |    
8 +++
 sd/source/ui/view/drviews7.cxx                                           |    
1 
 sd/uiconfig/sdraw/popupmenu/objectalign.xml                              |    
2 
 sd/uiconfig/sdraw/toolbar/alignmentbar.xml                               |    
1 
 sd/uiconfig/sdraw/toolbar/drawingobjectbar.xml                           |    
1 
 sd/uiconfig/sdraw/toolbar/graphicobjectbar.xml                           |    
1 
 sd/uiconfig/simpress/popupmenu/objectalign.xml                           |    
2 
 sd/uiconfig/simpress/toolbar/alignmentbar.xml                            |    
1 
 sd/uiconfig/simpress/toolbar/drawingobjectbar.xml                        |    
1 
 sd/uiconfig/simpress/toolbar/graphicobjectbar.xml                        |    
1 
 15 files changed, 64 insertions(+), 1 deletion(-)

New commits:
commit b32d040d647812fed03f96be2f07a96ffddad4e9
Author:     Heiko Tietze <tietze.he...@gmail.com>
AuthorDate: Tue Nov 26 15:18:41 2024 +0100
Commit:     Heiko Tietze <heiko.tie...@documentfoundation.org>
CommitDate: Tue Nov 26 18:19:32 2024 +0100

    Resolves tdf#126857 - Center object on page/slide
    
    * uno:AlignMiddle labeled "Middle"
    * uno:AlignOnPage added
    
    Change-Id: Iafc162bdd80d7c20fabd55234e93212c1fa3435a
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177348
    Tested-by: Jenkins
    Reviewed-by: Heiko Tietze <heiko.tie...@documentfoundation.org>

diff --git 
a/officecfg/registry/data/org/openoffice/Office/UI/DrawImpressCommands.xcu 
b/officecfg/registry/data/org/openoffice/Office/UI/DrawImpressCommands.xcu
index f51dcf7a4185..38c4485d565c 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/DrawImpressCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/DrawImpressCommands.xcu
@@ -1786,6 +1786,28 @@
           <value>1</value>
         </prop>
       </node>
+      <node oor:name=".uno:AlignOnPage" oor:op="replace">
+        <prop oor:name="Label" oor:type="xs:string">
+          <value xml:lang="en-US">~Center on Page</value>
+        </prop>
+        <prop oor:name="TooltipLabel" oor:type="xs:string">
+          <value xml:lang="en-US">Center object vertically and 
horizontally</value>
+        </prop>
+        <prop oor:name="Properties" oor:type="xs:int">
+          <value>1</value>
+        </prop>
+      </node>
+      <node oor:name=".uno:AlignOnSlide" oor:op="replace">
+        <prop oor:name="Label" oor:type="xs:string">
+          <value xml:lang="en-US">~Center on Slide</value>
+        </prop>
+        <prop oor:name="TooltipLabel" oor:type="xs:string">
+          <value xml:lang="en-US">Center object vertically and 
horizontally</value>
+        </prop>
+        <prop oor:name="TargetURL" oor:type="xs:string">
+          <value>.uno:AlignOnPage</value>
+        </prop>
+      </node>
     </node>
     <node oor:name="Popups">
       <node oor:name=".uno:ModifyMenu" oor:op="replace">
diff --git 
a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu 
b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
index 703e2c476365..5c92e5147718 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
@@ -2633,7 +2633,7 @@ bit 3 (0x8): #define 
UICOMMANDDESCRIPTION_PROPERTIES_TOGGLEBUTTON 8
       </node>
       <node oor:name=".uno:AlignMiddle" oor:op="replace">
         <prop oor:name="Label" oor:type="xs:string">
-          <value xml:lang="en-US">C~enter</value>
+          <value xml:lang="en-US">~Middle</value>
         </prop>
         <prop oor:name="Properties" oor:type="xs:int">
           <value>1</value>
diff --git a/sd/inc/app.hrc b/sd/inc/app.hrc
index 7a2334b47ed8..56cfc31ede21 100644
--- a/sd/inc/app.hrc
+++ b/sd/inc/app.hrc
@@ -451,5 +451,6 @@
 #define SID_HIDE_LAST_LEVEL                 (SID_SD_START+448)
 #define SID_SHOW_NEXT_LEVEL                 (SID_SD_START+449)
 #define SID_PRESENTATION_MINIMIZER          (SID_SD_START+450)
+#define SID_ALIGN_PAGE                      (SID_SD_START+451)
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi
index 159b5ffc75e4..76fde4080010 100644
--- a/sd/sdi/_drvwsh.sdi
+++ b/sd/sdi/_drvwsh.sdi
@@ -2977,4 +2977,9 @@ interface DrawView
         ExecMethod = FuTemporary;
         StateMethod = GetAttrState;
     ]
+    SID_ALIGN_PAGE
+    [
+        ExecMethod = FuTemporary ;
+        StateMethod = GetMenuState;
+    ]
 }
diff --git a/sd/sdi/sdraw.sdi b/sd/sdi/sdraw.sdi
index bfc38f92e51d..d98a938c1cfd 100644
--- a/sd/sdi/sdraw.sdi
+++ b/sd/sdi/sdraw.sdi
@@ -4720,3 +4720,19 @@ SfxBoolItem UnderlineDotted SID_ULINE_VAL_DOTTED
     ToolBoxConfig = TRUE,
     GroupId = SfxGroupId::Format;
 ]
+
+SfxVoidItem AlignOnPage SID_ALIGN_PAGE
+[
+    AutoUpdate = TRUE,
+    FastCall = FALSE,
+    ReadOnlyDoc = FALSE,
+    Toggle = FALSE,
+    Container = FALSE,
+    RecordAbsolute = FALSE,
+    RecordPerSet;
+
+    AccelConfig = TRUE,
+    MenuConfig = TRUE,
+    ToolBoxConfig = TRUE,
+    GroupId = SfxGroupId::Modify;
+]
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
index 2803fb0721eb..ce9359fbebc3 100644
--- a/sd/source/ui/view/drviews2.cxx
+++ b/sd/source/ui/view/drviews2.cxx
@@ -3139,6 +3139,14 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
         }
         break;
 
+        case SID_ALIGN_PAGE:
+        {
+            mpDrawView->AlignMarkedObjects(SdrHorAlign::Center, 
SdrVertAlign::Center);
+            Cancel();
+            rReq.Done ();
+        }
+        break;
+
         case SID_OBJECT_ALIGN_DOWN:  // BASIC
         {
             mpDrawView->AlignMarkedObjects(SdrHorAlign::NONE, 
SdrVertAlign::Bottom);
diff --git a/sd/source/ui/view/drviews7.cxx b/sd/source/ui/view/drviews7.cxx
index b63253fa36e4..a561bf46f411 100644
--- a/sd/source/ui/view/drviews7.cxx
+++ b/sd/source/ui/view/drviews7.cxx
@@ -1337,6 +1337,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
             rSet.ClearItem(SID_3D_WIN);
 
             rSet.DisableItem(SID_OBJECT_ALIGN);
+            rSet.DisableItem(SID_ALIGN_PAGE);
             rSet.DisableItem(SID_ZOOM_TOOLBOX);
             rSet.DisableItem(SID_OBJECT_CHOOSE_MODE);
             rSet.DisableItem(SID_DRAWTBX_TEXT);
diff --git a/sd/uiconfig/sdraw/popupmenu/objectalign.xml 
b/sd/uiconfig/sdraw/popupmenu/objectalign.xml
index 4bb17386d158..446bd974bed3 100644
--- a/sd/uiconfig/sdraw/popupmenu/objectalign.xml
+++ b/sd/uiconfig/sdraw/popupmenu/objectalign.xml
@@ -15,4 +15,6 @@
   <menu:menuitem menu:id=".uno:AlignUp"/>
   <menu:menuitem menu:id=".uno:AlignMiddle"/>
   <menu:menuitem menu:id=".uno:AlignDown"/>
+  <menu:menuseparator/>
+  <menu:menuitem menu:id=".uno:AlignOnPage"/>
 </menu:menupopup>
diff --git a/sd/uiconfig/sdraw/toolbar/alignmentbar.xml 
b/sd/uiconfig/sdraw/toolbar/alignmentbar.xml
index 38d0340a3d15..91eba5f2a09c 100644
--- a/sd/uiconfig/sdraw/toolbar/alignmentbar.xml
+++ b/sd/uiconfig/sdraw/toolbar/alignmentbar.xml
@@ -25,4 +25,5 @@
  <toolbar:toolbaritem xlink:href=".uno:AlignUp"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignMiddle"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignDown"/>
+ <toolbar:toolbaritem xlink:href=".uno:AlignOnPage"/>
 </toolbar:toolbar>
\ No newline at end of file
diff --git a/sd/uiconfig/sdraw/toolbar/drawingobjectbar.xml 
b/sd/uiconfig/sdraw/toolbar/drawingobjectbar.xml
index 5dfd2a43849c..ba71c63c6a28 100644
--- a/sd/uiconfig/sdraw/toolbar/drawingobjectbar.xml
+++ b/sd/uiconfig/sdraw/toolbar/drawingobjectbar.xml
@@ -29,6 +29,7 @@
  <toolbar:toolbaritem xlink:href=".uno:AlignUp" toolbar:visible="false"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignMiddle" toolbar:visible="false"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignDown" toolbar:visible="false"/>
+ <toolbar:toolbaritem xlink:href=".uno:AlignOnPage" toolbar:visible="false"/>
  <toolbar:toolbarseparator/>
  <toolbar:toolbaritem xlink:href=".uno:ObjectPosition" 
toolbar:visible="false"/>
  <toolbar:toolbarseparator/>
diff --git a/sd/uiconfig/sdraw/toolbar/graphicobjectbar.xml 
b/sd/uiconfig/sdraw/toolbar/graphicobjectbar.xml
index 95113efc9f7d..fa7f90e05700 100644
--- a/sd/uiconfig/sdraw/toolbar/graphicobjectbar.xml
+++ b/sd/uiconfig/sdraw/toolbar/graphicobjectbar.xml
@@ -29,6 +29,7 @@
  <toolbar:toolbaritem xlink:href=".uno:AlignUp" toolbar:visible="false"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignMiddle" toolbar:visible="false"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignDown" toolbar:visible="false"/>
+ <toolbar:toolbaritem xlink:href=".uno:AlignOnPage" toolbar:visible="false"/>
  <toolbar:toolbarseparator/>
  <toolbar:toolbaritem xlink:href=".uno:ObjectPosition" 
toolbar:visible="false"/>
  <toolbar:toolbarseparator/>
diff --git a/sd/uiconfig/simpress/popupmenu/objectalign.xml 
b/sd/uiconfig/simpress/popupmenu/objectalign.xml
index 4bb17386d158..168cd891ad43 100644
--- a/sd/uiconfig/simpress/popupmenu/objectalign.xml
+++ b/sd/uiconfig/simpress/popupmenu/objectalign.xml
@@ -15,4 +15,6 @@
   <menu:menuitem menu:id=".uno:AlignUp"/>
   <menu:menuitem menu:id=".uno:AlignMiddle"/>
   <menu:menuitem menu:id=".uno:AlignDown"/>
+  <menu:menuseparator/>
+  <menu:menuitem menu:id=".uno:AlignOnSlide"/>
 </menu:menupopup>
diff --git a/sd/uiconfig/simpress/toolbar/alignmentbar.xml 
b/sd/uiconfig/simpress/toolbar/alignmentbar.xml
index 38d0340a3d15..206dd8bed4a0 100644
--- a/sd/uiconfig/simpress/toolbar/alignmentbar.xml
+++ b/sd/uiconfig/simpress/toolbar/alignmentbar.xml
@@ -25,4 +25,5 @@
  <toolbar:toolbaritem xlink:href=".uno:AlignUp"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignMiddle"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignDown"/>
+ <toolbar:toolbaritem xlink:href=".uno:AlignOnSlide"/>
 </toolbar:toolbar>
\ No newline at end of file
diff --git a/sd/uiconfig/simpress/toolbar/drawingobjectbar.xml 
b/sd/uiconfig/simpress/toolbar/drawingobjectbar.xml
index 83203c672473..829657583355 100644
--- a/sd/uiconfig/simpress/toolbar/drawingobjectbar.xml
+++ b/sd/uiconfig/simpress/toolbar/drawingobjectbar.xml
@@ -29,6 +29,7 @@
  <toolbar:toolbaritem xlink:href=".uno:AlignUp" toolbar:visible="false"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignMiddle" toolbar:visible="false"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignDown" toolbar:visible="false"/>
+ <toolbar:toolbaritem xlink:href=".uno:AlignOnSlide" toolbar:visible="false"/>
  <toolbar:toolbarseparator/>
  <toolbar:toolbaritem xlink:href=".uno:ObjectPosition" 
toolbar:visible="false"/>
  <toolbar:toolbarseparator/>
diff --git a/sd/uiconfig/simpress/toolbar/graphicobjectbar.xml 
b/sd/uiconfig/simpress/toolbar/graphicobjectbar.xml
index e11ce441752a..a9f5d1c17b45 100644
--- a/sd/uiconfig/simpress/toolbar/graphicobjectbar.xml
+++ b/sd/uiconfig/simpress/toolbar/graphicobjectbar.xml
@@ -29,6 +29,7 @@
  <toolbar:toolbaritem xlink:href=".uno:AlignUp" toolbar:visible="false"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignMiddle" toolbar:visible="false"/>
  <toolbar:toolbaritem xlink:href=".uno:AlignDown" toolbar:visible="false"/>
+ <toolbar:toolbaritem xlink:href=".uno:AlignOnSlide" toolbar:visible="false"/>
  <toolbar:toolbarseparator/>
  <toolbar:toolbaritem xlink:href=".uno:ObjectPosition" 
toolbar:visible="false"/>
  <toolbar:toolbarseparator/>

Reply via email to