diff options
author | Armin Le Grand <Armin.Le.Grand@cib.de> | 2017-09-22 15:28:33 +0200 |
---|---|---|
committer | Armin Le Grand <Armin.Le.Grand@cib.de> | 2017-10-20 14:13:20 +0200 |
commit | a42b0985c7619efdc934bb1cf19e5e2c2b6faea2 (patch) | |
tree | b91427e905792292220b01aba45fc80d66d19349 /sw/uiconfig | |
parent | 2e001b40ad0d19c8db528bb4df739e289163779d (diff) |
RotGrfFlyFrame: Initial adaptions
To allow free rotation of Graphic FlyFrames in Writer,
several adaptions are necessary. This change takes care
of all needed changes to internally support a freely
definable rotation angle for that case. Save/Load round
trip is working, the graphic does no longer get modified
and added in 90-degree-changed state to the object, the
original will be preserved. Support for needed slot in
core/ui is implemented. Rotation can be applied from
Menus/Toolbars in the known 90/180 degree steps. Added
a slot/Button/command to reset rotation in these cases.
Added support in Sidebar to rotate using the rotation
wheel and/or numeric field. These fields and support added
to Image TabPage, too, fully functional.
Missing now is a solution for displaying the rotated
Graphic. For now, it just gets rotated, but this will not
be the final state of this change.
Change-Id: I6f3b85ebb5be2b4ad3311c536d54f27a37a494e7
RotGrfFlyFrame: Linux build adaptions
Change-Id: I365287ecd6525b1972e8436d61332f7121d88649
Diffstat (limited to 'sw/uiconfig')
21 files changed, 204 insertions, 2 deletions
diff --git a/sw/uiconfig/sglobal/menubar/menubar.xml b/sw/uiconfig/sglobal/menubar/menubar.xml index b8457d651c59..e492f604017c 100644 --- a/sw/uiconfig/sglobal/menubar/menubar.xml +++ b/sw/uiconfig/sglobal/menubar/menubar.xml @@ -551,6 +551,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menu menu:id=".uno:GroupMenu"> diff --git a/sw/uiconfig/sglobal/popupmenu/graphic.xml b/sw/uiconfig/sglobal/popupmenu/graphic.xml index 689b6a3fd358..05875fae43a6 100644 --- a/sw/uiconfig/sglobal/popupmenu/graphic.xml +++ b/sw/uiconfig/sglobal/popupmenu/graphic.xml @@ -59,6 +59,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menuseparator/> diff --git a/sw/uiconfig/sglobal/toolbar/graphicobjectbar.xml b/sw/uiconfig/sglobal/toolbar/graphicobjectbar.xml index 287402963de5..10513be91e19 100644 --- a/sw/uiconfig/sglobal/toolbar/graphicobjectbar.xml +++ b/sw/uiconfig/sglobal/toolbar/graphicobjectbar.xml @@ -28,6 +28,7 @@ <toolbar:toolbaritem xlink:href=".uno:FlipHorizontal"/> <toolbar:toolbaritem xlink:href=".uno:RotateLeft"/> <toolbar:toolbaritem xlink:href=".uno:RotateRight"/> + <toolbar:toolbaritem xlink:href=".uno:RotateReset"/> <toolbar:toolbaritem xlink:href=".uno:Rotate180" toolbar:visible="false"/> <toolbar:toolbarseparator/> <toolbar:toolbaritem xlink:href=".uno:GrafTransparence"/> diff --git a/sw/uiconfig/sweb/menubar/menubar.xml b/sw/uiconfig/sweb/menubar/menubar.xml index 25ff1afbac2d..ab677853ebb4 100644 --- a/sw/uiconfig/sweb/menubar/menubar.xml +++ b/sw/uiconfig/sweb/menubar/menubar.xml @@ -274,6 +274,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menu menu:id=".uno:GroupMenu"> diff --git a/sw/uiconfig/sweb/popupmenu/graphic.xml b/sw/uiconfig/sweb/popupmenu/graphic.xml index 689b6a3fd358..05875fae43a6 100644 --- a/sw/uiconfig/sweb/popupmenu/graphic.xml +++ b/sw/uiconfig/sweb/popupmenu/graphic.xml @@ -59,6 +59,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menuseparator/> diff --git a/sw/uiconfig/swform/menubar/menubar.xml b/sw/uiconfig/swform/menubar/menubar.xml index 3f61b2e67d80..9bf743953dae 100644 --- a/sw/uiconfig/swform/menubar/menubar.xml +++ b/sw/uiconfig/swform/menubar/menubar.xml @@ -328,6 +328,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menu menu:id=".uno:GroupMenu"> diff --git a/sw/uiconfig/swform/popupmenu/graphic.xml b/sw/uiconfig/swform/popupmenu/graphic.xml index 689b6a3fd358..05875fae43a6 100644 --- a/sw/uiconfig/swform/popupmenu/graphic.xml +++ b/sw/uiconfig/swform/popupmenu/graphic.xml @@ -59,6 +59,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menuseparator/> diff --git a/sw/uiconfig/swform/toolbar/graphicobjectbar.xml b/sw/uiconfig/swform/toolbar/graphicobjectbar.xml index 22257b203ee4..b972e9bf660e 100644 --- a/sw/uiconfig/swform/toolbar/graphicobjectbar.xml +++ b/sw/uiconfig/swform/toolbar/graphicobjectbar.xml @@ -30,6 +30,7 @@ <toolbar:toolbaritem xlink:href=".uno:FlipHorizontal"/> <toolbar:toolbaritem xlink:href=".uno:RotateLeft"/> <toolbar:toolbaritem xlink:href=".uno:RotateRight"/> + <toolbar:toolbaritem xlink:href=".uno:RotateReset"/> <toolbar:toolbaritem xlink:href=".uno:Rotate180"/> <toolbar:toolbaritem xlink:href=".uno:Crop"/> <toolbar:toolbarseparator/> diff --git a/sw/uiconfig/swreport/menubar/menubar.xml b/sw/uiconfig/swreport/menubar/menubar.xml index 41e438cdebe3..bc1a26d036f4 100644 --- a/sw/uiconfig/swreport/menubar/menubar.xml +++ b/sw/uiconfig/swreport/menubar/menubar.xml @@ -330,6 +330,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menu menu:id=".uno:GroupMenu"> diff --git a/sw/uiconfig/swreport/popupmenu/graphic.xml b/sw/uiconfig/swreport/popupmenu/graphic.xml index 689b6a3fd358..05875fae43a6 100644 --- a/sw/uiconfig/swreport/popupmenu/graphic.xml +++ b/sw/uiconfig/swreport/popupmenu/graphic.xml @@ -59,6 +59,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menuseparator/> diff --git a/sw/uiconfig/swreport/toolbar/graphicobjectbar.xml b/sw/uiconfig/swreport/toolbar/graphicobjectbar.xml index 22257b203ee4..6e2c6a2b4823 100644 --- a/sw/uiconfig/swreport/toolbar/graphicobjectbar.xml +++ b/sw/uiconfig/swreport/toolbar/graphicobjectbar.xml @@ -31,6 +31,7 @@ <toolbar:toolbaritem xlink:href=".uno:RotateLeft"/> <toolbar:toolbaritem xlink:href=".uno:RotateRight"/> <toolbar:toolbaritem xlink:href=".uno:Rotate180"/> + <toolbar:toolbaritem xlink:href=".uno:RotateReset"/> <toolbar:toolbaritem xlink:href=".uno:Crop"/> <toolbar:toolbarseparator/> <toolbar:toolbaritem xlink:href=".uno:FrameDialog"/> diff --git a/sw/uiconfig/swriter/menubar/menubar.xml b/sw/uiconfig/swriter/menubar/menubar.xml index ce25da98b5a2..b2e5bf54fea5 100644 --- a/sw/uiconfig/swriter/menubar/menubar.xml +++ b/sw/uiconfig/swriter/menubar/menubar.xml @@ -551,6 +551,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menu menu:id=".uno:GroupMenu"> diff --git a/sw/uiconfig/swriter/popupmenu/graphic.xml b/sw/uiconfig/swriter/popupmenu/graphic.xml index afd5b89285c2..2ab371239b7f 100644 --- a/sw/uiconfig/swriter/popupmenu/graphic.xml +++ b/sw/uiconfig/swriter/popupmenu/graphic.xml @@ -59,6 +59,7 @@ <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> <menu:menuseparator/> <menu:menuitem menu:id=".uno:FlipVertical"/> <menu:menuitem menu:id=".uno:FlipHorizontal"/> diff --git a/sw/uiconfig/swriter/toolbar/graphicobjectbar.xml b/sw/uiconfig/swriter/toolbar/graphicobjectbar.xml index 287402963de5..172d8b4d52b5 100644 --- a/sw/uiconfig/swriter/toolbar/graphicobjectbar.xml +++ b/sw/uiconfig/swriter/toolbar/graphicobjectbar.xml @@ -29,6 +29,7 @@ <toolbar:toolbaritem xlink:href=".uno:RotateLeft"/> <toolbar:toolbaritem xlink:href=".uno:RotateRight"/> <toolbar:toolbaritem xlink:href=".uno:Rotate180" toolbar:visible="false"/> + <toolbar:toolbaritem xlink:href=".uno:RotateReset"/> <toolbar:toolbarseparator/> <toolbar:toolbaritem xlink:href=".uno:GrafTransparence"/> <toolbar:toolbarseparator/> diff --git a/sw/uiconfig/swriter/ui/notebookbar.ui b/sw/uiconfig/swriter/ui/notebookbar.ui index 59da4b4acf4f..e2d8b1f36adc 100644 --- a/sw/uiconfig/swriter/ui/notebookbar.ui +++ b/sw/uiconfig/swriter/ui/notebookbar.ui @@ -6347,6 +6347,32 @@ <property name="position">1</property> </packing> </child> + <child> + <object class="sfxlo-NotebookbarToolBox" id="rotate2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="show_arrow">False</property> + <child> + <object class="GtkToolButton" id="RotateReset"> + <property name="use_action_appearance">False</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="is_important">True</property> + <property name="action_name">.uno:RotateReset</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> </object> <packing> <property name="expand">False</property> diff --git a/sw/uiconfig/swriter/ui/notebookbar_groupedbar_compact.ui b/sw/uiconfig/swriter/ui/notebookbar_groupedbar_compact.ui index dc396347ec7f..711d5e8b28ea 100644 --- a/sw/uiconfig/swriter/ui/notebookbar_groupedbar_compact.ui +++ b/sw/uiconfig/swriter/ui/notebookbar_groupedbar_compact.ui @@ -1714,6 +1714,13 @@ </object> </child> <child> + <object class="GtkMenuItem" id="RotateResetD"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="action_name">.uno:RotateReset</property> + </object> + </child> + <child> <object class="GtkMenuItem" id="FlipVerticalD"> <property name="visible">True</property> <property name="can_focus">False</property> diff --git a/sw/uiconfig/swriter/ui/notebookbar_groupedbar_full.ui b/sw/uiconfig/swriter/ui/notebookbar_groupedbar_full.ui index 3e0c96a8d2a6..24e42699ccfe 100644 --- a/sw/uiconfig/swriter/ui/notebookbar_groupedbar_full.ui +++ b/sw/uiconfig/swriter/ui/notebookbar_groupedbar_full.ui @@ -1645,6 +1645,13 @@ </object> </child> <child> + <object class="GtkMenuItem" id="RotateResetD"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="action_name">.uno:RotateReset</property> + </object> + </child> + <child> <object class="GtkMenuItem" id="FlipVerticalD"> <property name="visible">True</property> <property name="can_focus">False</property> diff --git a/sw/uiconfig/swriter/ui/picturepage.ui b/sw/uiconfig/swriter/ui/picturepage.ui index b710ae9d92b5..4a9364e8dffd 100644 --- a/sw/uiconfig/swriter/ui/picturepage.ui +++ b/sw/uiconfig/swriter/ui/picturepage.ui @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- Generated with glade 3.18.3 --> +<!-- Generated with glade 3.16.1 --> <interface domain="sw"> <requires lib="gtk+" version="3.0"/> - <requires lib="LibreOffice" version="1.0"/> + <!-- interface-requires LibreOffice 1.0 --> <object class="GtkGrid" id="PicturePage"> <property name="visible">True</property> <property name="can_focus">False</property> @@ -37,6 +37,8 @@ <packing> <property name="left_attach">1</property> <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> <child> @@ -49,6 +51,8 @@ <packing> <property name="left_attach">0</property> <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> <child> @@ -64,6 +68,7 @@ <property name="left_attach">0</property> <property name="top_attach">0</property> <property name="width">2</property> + <property name="height">1</property> </packing> </child> </object> @@ -84,6 +89,8 @@ <packing> <property name="left_attach">0</property> <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> <child> @@ -120,6 +127,8 @@ <packing> <property name="left_attach">0</property> <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> <child> @@ -135,6 +144,8 @@ <packing> <property name="left_attach">0</property> <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> <child> @@ -152,6 +163,8 @@ <packing> <property name="left_attach">0</property> <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> <child> @@ -168,6 +181,8 @@ <packing> <property name="left_attach">0</property> <property name="top_attach">3</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> <child> @@ -184,6 +199,8 @@ <packing> <property name="left_attach">0</property> <property name="top_attach">4</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> <child> @@ -217,6 +234,7 @@ <packing> <property name="left_attach">1</property> <property name="top_attach">0</property> + <property name="width">1</property> <property name="height">5</property> </packing> </child> @@ -238,6 +256,133 @@ <packing> <property name="left_attach">0</property> <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="FL_ANGLE"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkBox" id="box4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">12</property> + <property name="homogeneous">True</property> + <child> + <object class="GtkBox" id="box5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="valign">start</property> + <property name="spacing">12</property> + <child> + <object class="GtkLabel" id="FT_ANGLE"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes" context="picturepage|FT_ANGLE">_Angle:</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">NF_ANGLE</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="NF_ANGLE"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">•</property> + <property name="text" translatable="yes" context="picturepage">0,00</property> + <property name="adjustment">adjustmentANGLE</property> + <property name="digits">2</property> + <property name="wrap">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="box6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <object class="GtkLabel" id="FT_ANGLEPRESETS"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="picturepage|FT_ANGLEPRESETS">Default _settings:</property> + <property name="use_underline">True</property> + <property name="mnemonic_widget">CTL_ANGLE</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="svxlo-DialControl" id="CTL_ANGLE"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="tooltip_text" translatable="yes" context="picturepage|CTL_ANGLE|tooltip_text">Rotation Angle</property> + <property name="halign">center</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes" context="picturepage|label2">Rotation Angle</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> </object> diff --git a/sw/uiconfig/swxform/menubar/menubar.xml b/sw/uiconfig/swxform/menubar/menubar.xml index f4b58ebe8b1b..151a9e6887a2 100644 --- a/sw/uiconfig/swxform/menubar/menubar.xml +++ b/sw/uiconfig/swxform/menubar/menubar.xml @@ -330,6 +330,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menu menu:id=".uno:GroupMenu"> diff --git a/sw/uiconfig/swxform/popupmenu/graphic.xml b/sw/uiconfig/swxform/popupmenu/graphic.xml index 689b6a3fd358..05875fae43a6 100644 --- a/sw/uiconfig/swxform/popupmenu/graphic.xml +++ b/sw/uiconfig/swxform/popupmenu/graphic.xml @@ -59,6 +59,7 @@ <menu:menuitem menu:id=".uno:RotateLeft"/> <menu:menuitem menu:id=".uno:RotateRight"/> <menu:menuitem menu:id=".uno:Rotate180"/> + <menu:menuitem menu:id=".uno:RotateReset"/> </menu:menupopup> </menu:menu> <menu:menuseparator/> diff --git a/sw/uiconfig/swxform/toolbar/graphicobjectbar.xml b/sw/uiconfig/swxform/toolbar/graphicobjectbar.xml index 22257b203ee4..6e2c6a2b4823 100644 --- a/sw/uiconfig/swxform/toolbar/graphicobjectbar.xml +++ b/sw/uiconfig/swxform/toolbar/graphicobjectbar.xml @@ -31,6 +31,7 @@ <toolbar:toolbaritem xlink:href=".uno:RotateLeft"/> <toolbar:toolbaritem xlink:href=".uno:RotateRight"/> <toolbar:toolbaritem xlink:href=".uno:Rotate180"/> + <toolbar:toolbaritem xlink:href=".uno:RotateReset"/> <toolbar:toolbaritem xlink:href=".uno:Crop"/> <toolbar:toolbarseparator/> <toolbar:toolbaritem xlink:href=".uno:FrameDialog"/> |