parent
c798e3b7a5
commit
191a4527b1
File diff suppressed because it is too large
Load Diff
@ -1,29 +0,0 @@
|
||||
From ac33ef3a4abe73c65600e1f199d25e1a1f0080db Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Thu, 8 Oct 2015 12:38:06 +0100
|
||||
Subject: [PATCH] Related: tdf#72880 presumably using startcenter as generic LO
|
||||
target will work
|
||||
|
||||
for the gnome case
|
||||
|
||||
Change-Id: Icb5ad2d50d672b35783720c100a408fa3e5cb63e
|
||||
---
|
||||
sysui/desktop/menus/startcenter.desktop | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/sysui/desktop/menus/startcenter.desktop b/sysui/desktop/menus/startcenter.desktop
|
||||
index ed333b6..f0d2b63 100644
|
||||
--- a/sysui/desktop/menus/startcenter.desktop
|
||||
+++ b/sysui/desktop/menus/startcenter.desktop
|
||||
@@ -23,7 +23,7 @@ Icon=startcenter
|
||||
Type=Application
|
||||
Categories=Office;X-Red-Hat-Base;X-SuSE-Core-Office;X-MandrivaLinux-Office-Other;
|
||||
Exec=${UNIXBASISROOTNAME} %%FILE%%
|
||||
-MimeType=application/vnd.openofficeorg.extension;
|
||||
+MimeType=application/vnd.openofficeorg.extension;x-scheme-handler/vnd.libreoffice.cmis;
|
||||
Name=%PRODUCTNAME
|
||||
GenericName=Office
|
||||
Comment=The office productivity suite compatible to the open and standardized ODF document format. Supported by The Document Foundation.
|
||||
--
|
||||
2.4.3
|
||||
|
@ -1,49 +0,0 @@
|
||||
From 1ff5ecda9ccfcf3e65e90c404db93fcbbefb889e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Mon, 7 Sep 2015 16:37:22 +0100
|
||||
Subject: [PATCH] Related: tdf#93676 msword wraps slightly differently than us
|
||||
|
||||
Change-Id: I91ba41cb052c38aa3b047cf079090b01bbe93b39
|
||||
---
|
||||
sw/source/filter/ww8/wrtw8esh.cxx | 17 +++++++++++++++--
|
||||
1 file changed, 15 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/sw/source/filter/ww8/wrtw8esh.cxx b/sw/source/filter/ww8/wrtw8esh.cxx
|
||||
index 763fb44..fd6dfbc 100644
|
||||
--- a/sw/source/filter/ww8/wrtw8esh.cxx
|
||||
+++ b/sw/source/filter/ww8/wrtw8esh.cxx
|
||||
@@ -803,6 +803,19 @@ void PlcDrawObj::WritePlc( WW8Export& rWrt ) const
|
||||
|
||||
SwTwips nLeft = aRect.Left() + nThick;
|
||||
SwTwips nRight = aRect.Right() - nThick;
|
||||
+ SwTwips nTop = aRect.Top() + nThick;
|
||||
+ SwTwips nBottom = aRect.Bottom() - nThick;
|
||||
+
|
||||
+ // tdf#93675, 0 below line/paragraph and/or top line/paragraph with
|
||||
+ // wrap top+bottom or other wraps is affecting the line directly
|
||||
+ // above the anchor line, which seems odd, but a tiny adjustment
|
||||
+ // here to bring the top down convinces msoffice to wrap like us
|
||||
+ if (nTop < 8 && !rFrameFormat.IsInline() &&
|
||||
+ rVOr.GetVertOrient() == text::VertOrientation::NONE &&
|
||||
+ rVOr.GetRelationOrient() == text::RelOrientation::FRAME)
|
||||
+ {
|
||||
+ nTop = 8;
|
||||
+ }
|
||||
|
||||
//Nasty swap for bidi if necessary
|
||||
rWrt.MiserableRTLFrameFormatHack(nLeft, nRight, rFrameFormat);
|
||||
@@ -811,9 +824,9 @@ void PlcDrawObj::WritePlc( WW8Export& rWrt ) const
|
||||
//(most of) the border is outside the graphic is word, so
|
||||
//change dimensions to fit
|
||||
SwWW8Writer::WriteLong(*rWrt.pTableStrm, nLeft);
|
||||
- SwWW8Writer::WriteLong(*rWrt.pTableStrm,aRect.Top() + nThick);
|
||||
+ SwWW8Writer::WriteLong(*rWrt.pTableStrm, nTop);
|
||||
SwWW8Writer::WriteLong(*rWrt.pTableStrm, nRight);
|
||||
- SwWW8Writer::WriteLong(*rWrt.pTableStrm,aRect.Bottom() - nThick);
|
||||
+ SwWW8Writer::WriteLong(*rWrt.pTableStrm, nBottom);
|
||||
|
||||
//fHdr/bx/by/wr/wrk/fRcaSimple/fBelowText/fAnchorLock
|
||||
sal_uInt16 nFlags=0;
|
||||
--
|
||||
2.1.0
|
||||
|
@ -1,786 +0,0 @@
|
||||
From c33062fc07ac20b1ac28bd000fd3c57016d72e34 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Tue, 1 Sep 2015 11:59:32 +0100
|
||||
Subject: [PATCH] Resolves: rhbz#1256843 no obvious means to close template
|
||||
dialog
|
||||
|
||||
under gnome-shell which doesn't put an "X" to close things in
|
||||
the wm decorations if the GDK DIALOG hint it set
|
||||
|
||||
prior to tdf#72587 this was a modeless dialog and in that case
|
||||
it doesn't have a parent, in which case the hint is NORMAL
|
||||
and it used to get close decorations.
|
||||
|
||||
easist thing to do is to remain modal so the crashes and
|
||||
confusion of tdf#72587 remain fixed but add a close to it to
|
||||
behave like all the other dialogs do
|
||||
|
||||
Change-Id: I64450be0ad1bc7b06196e1342679e15b60fc60d9
|
||||
---
|
||||
sfx2/uiconfig/ui/templatedlg.ui | 653 +++++++++++++++++++++-------------------
|
||||
1 file changed, 346 insertions(+), 307 deletions(-)
|
||||
|
||||
diff --git a/sfx2/uiconfig/ui/templatedlg.ui b/sfx2/uiconfig/ui/templatedlg.ui
|
||||
index de8270c..6ed0172 100644
|
||||
--- a/sfx2/uiconfig/ui/templatedlg.ui
|
||||
+++ b/sfx2/uiconfig/ui/templatedlg.ui
|
||||
@@ -1,111 +1,327 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.18.3 -->
|
||||
<interface>
|
||||
- <requires lib="gtk+" version="3.0"/>
|
||||
+ <requires lib="gtk+" version="3.6"/>
|
||||
<requires lib="LibreOffice" version="1.0"/>
|
||||
- <object class="GtkWindow" id="TemplateDialog">
|
||||
+ <object class="GtkDialog" id="TemplateDialog">
|
||||
<property name="width_request">800</property>
|
||||
- <property name="height_request">560</property>
|
||||
+ <property name="height_request">600</property>
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="modal">True</property>
|
||||
<property name="border_width">6</property>
|
||||
<property name="title" translatable="yes">Template Manager</property>
|
||||
- <child>
|
||||
- <object class="GtkBox" id="box1">
|
||||
- <property name="visible">True</property>
|
||||
+ <property name="modal">True</property>
|
||||
+ <property name="type_hint">normal</property>
|
||||
+ <child internal-child="vbox">
|
||||
+ <object class="GtkBox" id="dialog-vbox1">
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="border_width">6</property>
|
||||
<property name="orientation">vertical</property>
|
||||
+ <property name="spacing">2</property>
|
||||
+ <child internal-child="action_area">
|
||||
+ <object class="GtkButtonBox" id="dialog-action_area1">
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="layout_style">end</property>
|
||||
+ <child>
|
||||
+ <object class="GtkButton" id="button1">
|
||||
+ <property name="label">gtk-close</property>
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">True</property>
|
||||
+ <property name="can_default">True</property>
|
||||
+ <property name="has_default">True</property>
|
||||
+ <property name="receives_default">True</property>
|
||||
+ <property name="use_stock">True</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">True</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">0</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="fill">False</property>
|
||||
+ <property name="position">1</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
<child>
|
||||
- <object class="GtkNotebook" id="tab_control">
|
||||
+ <object class="GtkBox" id="box1">
|
||||
<property name="visible">True</property>
|
||||
- <property name="can_focus">True</property>
|
||||
- <property name="hexpand">True</property>
|
||||
- <property name="vexpand">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="orientation">vertical</property>
|
||||
<child>
|
||||
- <object class="GtkBox" id="box2">
|
||||
+ <object class="GtkNotebook" id="tab_control">
|
||||
<property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
+ <property name="can_focus">True</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="vexpand">True</property>
|
||||
- <property name="orientation">vertical</property>
|
||||
- <property name="spacing">6</property>
|
||||
<child>
|
||||
- <object class="GtkBox" id="box3">
|
||||
+ <object class="GtkBox" id="box2">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
+ <property name="vexpand">True</property>
|
||||
+ <property name="orientation">vertical</property>
|
||||
<property name="spacing">6</property>
|
||||
<child>
|
||||
- <object class="GtkToolbar" id="action_view">
|
||||
+ <object class="GtkBox" id="box3">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
+ <property name="spacing">6</property>
|
||||
<child>
|
||||
- <object class="GtkToolButton" id="repository">
|
||||
+ <object class="GtkToolbar" id="action_view">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="action_name">repository</property>
|
||||
- <property name="label" translatable="yes">Repository</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actionview026.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="import">
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">import</property>
|
||||
- <property name="label" translatable="yes">Import</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actionview010.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="delete">
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">delete</property>
|
||||
- <property name="label" translatable="yes">Delete</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actionview025.png</property>
|
||||
+ <property name="hexpand">True</property>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="repository">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">repository</property>
|
||||
+ <property name="label" translatable="yes">Repository</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actionview026.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="import">
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">import</property>
|
||||
+ <property name="label" translatable="yes">Import</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actionview010.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="delete">
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">delete</property>
|
||||
+ <property name="label" translatable="yes">Delete</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actionview025.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="save">
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">save</property>
|
||||
+ <property name="label" translatable="yes">Save</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actionview028.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="new_folder">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">new_folder</property>
|
||||
+ <property name="label" translatable="yes">New Folder</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actionview029.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
- <object class="GtkToolButton" id="save">
|
||||
+ <object class="GtkToolbar" id="action_templates">
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="action_name">save</property>
|
||||
- <property name="label" translatable="yes">Save</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actionview028.png</property>
|
||||
+ <property name="hexpand">True</property>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="template_save">
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">template_save</property>
|
||||
+ <property name="label" translatable="yes">Save</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actionview028.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="open">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">open</property>
|
||||
+ <property name="label" translatable="yes">Open</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actionview030.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="edit">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">edit</property>
|
||||
+ <property name="label" translatable="yes">Edit</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actiontemplates019.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="properties">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">properties</property>
|
||||
+ <property name="label" translatable="yes">Properties</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actiontemplates016.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="default">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">default</property>
|
||||
+ <property name="label" translatable="yes">Set as Default</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actiontemplates015.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="move">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">move</property>
|
||||
+ <property name="label" translatable="yes">Move to Folder</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actiontemplates017.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="export">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">export</property>
|
||||
+ <property name="label" translatable="yes">Export</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actiontemplates020.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="template_delete">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">template_delete</property>
|
||||
+ <property name="label" translatable="yes">Delete</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actiontemplates018.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
- <object class="GtkToolButton" id="new_folder">
|
||||
+ <object class="GtkToolbar" id="action_action">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="action_name">new_folder</property>
|
||||
- <property name="label" translatable="yes">New Folder</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actionview029.png</property>
|
||||
+ <property name="halign">end</property>
|
||||
+ <property name="hexpand">True</property>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="search">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">search</property>
|
||||
+ <property name="label" translatable="yes">Search</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actionaction012.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="action_menu">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">action_menu</property>
|
||||
+ <property name="label" translatable="yes">Action Menu</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actionaction013.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkToolButton" id="template_link">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="action_name">template_link</property>
|
||||
+ <property name="label" translatable="yes">Get more templates for %PRODUCTNAME</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="icon_name">sfx2/imglst/actionview010.png</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="homogeneous">True</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
@@ -116,120 +332,10 @@
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
- <object class="GtkToolbar" id="action_templates">
|
||||
- <property name="can_focus">False</property>
|
||||
+ <object class="GtkEntry" id="search_edit">
|
||||
+ <property name="can_focus">True</property>
|
||||
<property name="hexpand">True</property>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="template_save">
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">template_save</property>
|
||||
- <property name="label" translatable="yes">Save</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actionview028.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="open">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">open</property>
|
||||
- <property name="label" translatable="yes">Open</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actionview030.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="edit">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">edit</property>
|
||||
- <property name="label" translatable="yes">Edit</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actiontemplates019.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="properties">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">properties</property>
|
||||
- <property name="label" translatable="yes">Properties</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actiontemplates016.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="default">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">default</property>
|
||||
- <property name="label" translatable="yes">Set as Default</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actiontemplates015.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="move">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">move</property>
|
||||
- <property name="label" translatable="yes">Move to Folder</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actiontemplates017.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="export">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">export</property>
|
||||
- <property name="label" translatable="yes">Export</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actiontemplates020.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="template_delete">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">template_delete</property>
|
||||
- <property name="label" translatable="yes">Delete</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actiontemplates018.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
+ <property name="invisible_char">●</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@@ -238,53 +344,11 @@
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
- <object class="GtkToolbar" id="action_action">
|
||||
+ <object class="sfxlo-TemplateLocalView" id="template_view">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="halign">end</property>
|
||||
<property name="hexpand">True</property>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="search">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">search</property>
|
||||
- <property name="label" translatable="yes">Search</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actionaction012.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="action_menu">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">action_menu</property>
|
||||
- <property name="label" translatable="yes">Action Menu</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actionaction013.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <object class="GtkToolButton" id="template_link">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="action_name">template_link</property>
|
||||
- <property name="label" translatable="yes">Get more templates for %PRODUCTNAME</property>
|
||||
- <property name="use_underline">True</property>
|
||||
- <property name="icon_name">sfx2/imglst/actionview010.png</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="homogeneous">True</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
+ <property name="vexpand">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@@ -292,123 +356,98 @@
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
+ <child>
|
||||
+ <object class="sfxlo-TemplateSearchView" id="search_view">
|
||||
+ <property name="can_focus">True</property>
|
||||
+ <property name="no_show_all">True</property>
|
||||
+ <property name="margin">0</property>
|
||||
+ <property name="hexpand">True</property>
|
||||
+ <property name="vexpand">True</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">3</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="sfxlo-TemplateRemoteView" id="remote_view">
|
||||
+ <property name="can_focus">True</property>
|
||||
+ <property name="no_show_all">True</property>
|
||||
+ <property name="margin">0</property>
|
||||
+ <property name="hexpand">True</property>
|
||||
+ <property name="vexpand">True</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">4</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ </object>
|
||||
+ </child>
|
||||
+ <child type="tab">
|
||||
+ <object class="GtkLabel" id="filter_docs">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label" translatable="yes">Documents</property>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
- <property name="position">0</property>
|
||||
+ <property name="tab_fill">False</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
- <object class="GtkEntry" id="search_edit">
|
||||
- <property name="can_focus">True</property>
|
||||
- <property name="hexpand">True</property>
|
||||
- <property name="invisible_char">●</property>
|
||||
+ <placeholder/>
|
||||
+ </child>
|
||||
+ <child type="tab">
|
||||
+ <object class="GtkLabel" id="filter_sheets">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label" translatable="yes">Spreadsheets</property>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
+ <property name="tab_fill">False</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
- <object class="sfxlo-TemplateLocalView" id="template_view">
|
||||
+ <placeholder/>
|
||||
+ </child>
|
||||
+ <child type="tab">
|
||||
+ <object class="GtkLabel" id="filter_presentations">
|
||||
<property name="visible">True</property>
|
||||
- <property name="can_focus">True</property>
|
||||
- <property name="hexpand">True</property>
|
||||
- <property name="vexpand">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label" translatable="yes">Presentations</property>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
+ <property name="tab_fill">False</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
- <object class="sfxlo-TemplateSearchView" id="search_view">
|
||||
- <property name="can_focus">True</property>
|
||||
- <property name="no_show_all">True</property>
|
||||
- <property name="margin">0</property>
|
||||
- <property name="hexpand">True</property>
|
||||
- <property name="vexpand">True</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
- <property name="position">3</property>
|
||||
- </packing>
|
||||
+ <placeholder/>
|
||||
</child>
|
||||
- <child>
|
||||
- <object class="sfxlo-TemplateRemoteView" id="remote_view">
|
||||
- <property name="can_focus">True</property>
|
||||
- <property name="no_show_all">True</property>
|
||||
- <property name="margin">0</property>
|
||||
- <property name="hexpand">True</property>
|
||||
- <property name="vexpand">True</property>
|
||||
+ <child type="tab">
|
||||
+ <object class="GtkLabel" id="filter_draws">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label" translatable="yes">Drawings</property>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
- <property name="position">4</property>
|
||||
+ <property name="position">3</property>
|
||||
+ <property name="tab_fill">False</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
- </child>
|
||||
- <child type="tab">
|
||||
- <object class="GtkLabel" id="filter_docs">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="label" translatable="yes">Documents</property>
|
||||
- </object>
|
||||
<packing>
|
||||
- <property name="tab_fill">False</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <placeholder/>
|
||||
- </child>
|
||||
- <child type="tab">
|
||||
- <object class="GtkLabel" id="filter_sheets">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="label" translatable="yes">Spreadsheets</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="position">1</property>
|
||||
- <property name="tab_fill">False</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <placeholder/>
|
||||
- </child>
|
||||
- <child type="tab">
|
||||
- <object class="GtkLabel" id="filter_presentations">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="label" translatable="yes">Presentations</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="position">2</property>
|
||||
- <property name="tab_fill">False</property>
|
||||
- </packing>
|
||||
- </child>
|
||||
- <child>
|
||||
- <placeholder/>
|
||||
- </child>
|
||||
- <child type="tab">
|
||||
- <object class="GtkLabel" id="filter_draws">
|
||||
- <property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
- <property name="label" translatable="yes">Drawings</property>
|
||||
- </object>
|
||||
- <packing>
|
||||
- <property name="position">3</property>
|
||||
- <property name="tab_fill">False</property>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
+ <property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,222 +0,0 @@
|
||||
From fb65ac2e3028c4fc160a47448bc44d73d282c9f2 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Mon, 8 Jun 2015 12:21:01 +0100
|
||||
Subject: [PATCH] Resolves: tdf#49407 enable CaseMap property in impress/draw
|
||||
|
||||
I don't see why this was explicitly disabled, works fine
|
||||
out of the box for me, import/export already hooked up
|
||||
in odf
|
||||
|
||||
Change-Id: I5e6bdbc6a4f3cbcd97330c7d9fb33589489afee2
|
||||
---
|
||||
cui/source/inc/chardlg.hxx | 10 ----------
|
||||
sd/sdi/drtxtob.sdi | 6 ++++++
|
||||
sd/source/core/typemap.cxx | 1 +
|
||||
sd/source/ui/dlg/dlgchar.cxx | 1 -
|
||||
sd/source/ui/dlg/prltempl.cxx | 1 -
|
||||
sd/source/ui/dlg/tabtempl.cxx | 1 -
|
||||
sd/source/ui/func/fuchar.cxx | 1 +
|
||||
sd/source/ui/func/futext.cxx | 7 ++++---
|
||||
sd/source/ui/view/drtxtob.cxx | 3 ++-
|
||||
sd/source/ui/view/drviews2.cxx | 11 +++++++++++
|
||||
sd/source/ui/view/drviewsf.cxx | 1 +
|
||||
sw/source/ui/chrdlg/chardlg.cxx | 8 +-------
|
||||
12 files changed, 27 insertions(+), 24 deletions(-)
|
||||
|
||||
diff --git a/cui/source/inc/chardlg.hxx b/cui/source/inc/chardlg.hxx
|
||||
index 4eb009a..a023a45 100644
|
||||
--- a/cui/source/inc/chardlg.hxx
|
||||
+++ b/cui/source/inc/chardlg.hxx
|
||||
@@ -32,16 +32,6 @@
|
||||
class SvxFontListItem;
|
||||
class FontList;
|
||||
|
||||
-
|
||||
-
|
||||
-#define DISABLE_CASEMAP ((sal_uInt16)0x0001)
|
||||
-#define DISABLE_WORDLINE ((sal_uInt16)0x0002)
|
||||
-#define DISABLE_BLINK ((sal_uInt16)0x0004)
|
||||
-#define DISABLE_UNDERLINE_COLOR ((sal_uInt16)0x0008)
|
||||
-
|
||||
-#define DISABLE_LANGUAGE ((sal_uInt16)0x0010)
|
||||
-#define DISABLE_HIDE_LANGUAGE ((sal_uInt16)0x0020)
|
||||
-
|
||||
// class SvxCharBasePage -------------------------------------------------
|
||||
|
||||
class SvxCharBasePage : public SfxTabPage
|
||||
diff --git a/sd/sdi/drtxtob.sdi b/sd/sdi/drtxtob.sdi
|
||||
index 3e975d4..ed564e4 100644
|
||||
--- a/sd/sdi/drtxtob.sdi
|
||||
+++ b/sd/sdi/drtxtob.sdi
|
||||
@@ -92,6 +92,12 @@ shell TextObjectBar
|
||||
StateMethod = GetAttrState;
|
||||
]
|
||||
|
||||
+ SID_ATTR_CHAR_CASEMAP // ole : ?, status : ?
|
||||
+ [
|
||||
+ ExecMethod = Execute;
|
||||
+ StateMethod = GetAttrState;
|
||||
+ ]
|
||||
+
|
||||
SID_ATTR_PARA_ADJUST_LEFT // ole : ?, status : ?
|
||||
[
|
||||
ExecMethod = Execute;
|
||||
diff --git a/sd/source/core/typemap.cxx b/sd/source/core/typemap.cxx
|
||||
index a5548a3..65f7cf0 100644
|
||||
--- a/sd/source/core/typemap.cxx
|
||||
+++ b/sd/source/core/typemap.cxx
|
||||
@@ -21,6 +21,7 @@
|
||||
|
||||
#include <editeng/outliner.hxx>
|
||||
#include <editeng/eeitem.hxx>
|
||||
+#include <editeng/cmapitem.hxx>
|
||||
#include <editeng/langitem.hxx>
|
||||
#include <editeng/fhgtitem.hxx>
|
||||
#include <editeng/colritem.hxx>
|
||||
diff --git a/sd/source/ui/dlg/dlgchar.cxx b/sd/source/ui/dlg/dlgchar.cxx
|
||||
index a23cd80..5e44899 100644
|
||||
--- a/sd/source/ui/dlg/dlgchar.cxx
|
||||
+++ b/sd/source/ui/dlg/dlgchar.cxx
|
||||
@@ -60,7 +60,6 @@ void SdCharDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage )
|
||||
}
|
||||
else if (nId == mnCharEffects)
|
||||
{
|
||||
- aSet.Put (SfxUInt16Item(SID_DISABLE_CTL,DISABLE_CASEMAP));
|
||||
rPage.PageCreated(aSet);
|
||||
}
|
||||
}
|
||||
diff --git a/sd/source/ui/dlg/prltempl.cxx b/sd/source/ui/dlg/prltempl.cxx
|
||||
index 74c010e..c503c93 100644
|
||||
--- a/sd/source/ui/dlg/prltempl.cxx
|
||||
+++ b/sd/source/ui/dlg/prltempl.cxx
|
||||
@@ -281,7 +281,6 @@ void SdPresLayoutTemplateDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage )
|
||||
|
||||
else if (nId == mnEffects)
|
||||
{
|
||||
- aSet.Put (SfxUInt16Item(SID_DISABLE_CTL,DISABLE_CASEMAP));
|
||||
rPage.PageCreated(aSet);
|
||||
}
|
||||
}
|
||||
diff --git a/sd/source/ui/dlg/tabtempl.cxx b/sd/source/ui/dlg/tabtempl.cxx
|
||||
index 61514ee..1189922 100644
|
||||
--- a/sd/source/ui/dlg/tabtempl.cxx
|
||||
+++ b/sd/source/ui/dlg/tabtempl.cxx
|
||||
@@ -152,7 +152,6 @@ void SdTabTemplateDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage )
|
||||
}
|
||||
else if (nId == m_nFontEffectId)
|
||||
{
|
||||
- aSet.Put (SfxUInt16Item(SID_DISABLE_CTL,DISABLE_CASEMAP));
|
||||
rPage.PageCreated(aSet);
|
||||
}
|
||||
else if (nId == m_nTextId)
|
||||
diff --git a/sd/source/ui/func/fuchar.cxx b/sd/source/ui/func/fuchar.cxx
|
||||
index 174391a..b8166c2 100644
|
||||
--- a/sd/source/ui/func/fuchar.cxx
|
||||
+++ b/sd/source/ui/func/fuchar.cxx
|
||||
@@ -106,6 +106,7 @@ void FuChar::DoExecute( SfxRequest& rReq )
|
||||
SID_ATTR_CHAR_FONTHEIGHT,
|
||||
SID_ATTR_CHAR_COLOR,
|
||||
SID_ATTR_CHAR_KERNING,
|
||||
+ SID_ATTR_CHAR_CASEMAP,
|
||||
SID_SET_SUPER_SCRIPT,
|
||||
SID_SET_SUB_SCRIPT,
|
||||
0 };
|
||||
diff --git a/sd/source/ui/func/futext.cxx b/sd/source/ui/func/futext.cxx
|
||||
index ac6fb71..33e5339 100644
|
||||
--- a/sd/source/ui/func/futext.cxx
|
||||
+++ b/sd/source/ui/func/futext.cxx
|
||||
@@ -85,12 +85,13 @@ static sal_uInt16 SidArray[] = {
|
||||
SID_ATTR_CHAR_FONT, // 10007
|
||||
SID_ATTR_CHAR_POSTURE, // 10008
|
||||
SID_ATTR_CHAR_WEIGHT, // 10009
|
||||
- SID_ATTR_CHAR_SHADOWED, //10010
|
||||
- SID_ATTR_CHAR_STRIKEOUT, //10013
|
||||
+ SID_ATTR_CHAR_SHADOWED, // 10010
|
||||
+ SID_ATTR_CHAR_STRIKEOUT, // 10013
|
||||
SID_ATTR_CHAR_UNDERLINE, // 10014
|
||||
SID_ATTR_CHAR_FONTHEIGHT, // 10015
|
||||
SID_ATTR_CHAR_COLOR, // 10017
|
||||
- SID_ATTR_CHAR_KERNING, //10018
|
||||
+ SID_ATTR_CHAR_KERNING, // 10018
|
||||
+ SID_ATTR_CHAR_CASEMAP, // 10019
|
||||
SID_ATTR_PARA_ADJUST_LEFT, // 10028
|
||||
SID_ATTR_PARA_ADJUST_RIGHT, // 10029
|
||||
SID_ATTR_PARA_ADJUST_CENTER, // 10030
|
||||
diff --git a/sd/source/ui/view/drtxtob.cxx b/sd/source/ui/view/drtxtob.cxx
|
||||
index 25913dd..45c868f 100644
|
||||
--- a/sd/source/ui/view/drtxtob.cxx
|
||||
+++ b/sd/source/ui/view/drtxtob.cxx
|
||||
@@ -171,8 +171,9 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
|
||||
case SID_ATTR_CHAR_FONTHEIGHT:
|
||||
case SID_ATTR_CHAR_WEIGHT:
|
||||
case SID_ATTR_CHAR_POSTURE:
|
||||
- case SID_ATTR_CHAR_SHADOWED:
|
||||
+ case SID_ATTR_CHAR_SHADOWED:
|
||||
case SID_ATTR_CHAR_STRIKEOUT:
|
||||
+ case SID_ATTR_CHAR_CASEMAP:
|
||||
{
|
||||
sal_uInt16 stretchX = 100;
|
||||
sal_uInt16 stretchY = 100;
|
||||
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
|
||||
index d4ed8fa..ffbb503 100644
|
||||
--- a/sd/source/ui/view/drviews2.cxx
|
||||
+++ b/sd/source/ui/view/drviews2.cxx
|
||||
@@ -87,6 +87,7 @@
|
||||
#include <vcl/svapp.hxx>
|
||||
#include <vcl/waitobj.hxx>
|
||||
|
||||
+#include <editeng/cmapitem.hxx>
|
||||
#include <editeng/escapementitem.hxx>
|
||||
#include <editeng/kernitem.hxx>
|
||||
#include <editeng/wghtitem.hxx>
|
||||
@@ -3032,6 +3033,16 @@ void DrawViewShell::ExecChar( SfxRequest &rReq )
|
||||
}
|
||||
}
|
||||
break;
|
||||
+ case SID_ATTR_CHAR_CASEMAP:
|
||||
+ if( rReq.GetArgs() )
|
||||
+ {
|
||||
+ SFX_REQUEST_ARG( rReq, pItem, SvxCaseMapItem, SID_ATTR_CHAR_CASEMAP , false );
|
||||
+ if (pItem)
|
||||
+ {
|
||||
+ aNewAttr.Put(*pItem);
|
||||
+ }
|
||||
+ }
|
||||
+ break;
|
||||
case SID_SET_SUB_SCRIPT:
|
||||
{
|
||||
SvxEscapementItem aItem( EE_CHAR_ESCAPEMENT );
|
||||
diff --git a/sd/source/ui/view/drviewsf.cxx b/sd/source/ui/view/drviewsf.cxx
|
||||
index 56d7a88..a5183c1 100644
|
||||
--- a/sd/source/ui/view/drviewsf.cxx
|
||||
+++ b/sd/source/ui/view/drviewsf.cxx
|
||||
@@ -409,6 +409,7 @@ void DrawViewShell::GetAttrState( SfxItemSet& rSet )
|
||||
case SID_ATTR_CHAR_WEIGHT:
|
||||
case SID_ATTR_CHAR_COLOR:
|
||||
case SID_ATTR_CHAR_KERNING:
|
||||
+ case SID_ATTR_CHAR_CASEMAP:
|
||||
case SID_SET_SUB_SCRIPT:
|
||||
case SID_SET_SUPER_SCRIPT:
|
||||
{
|
||||
diff --git a/sw/source/ui/chrdlg/chardlg.cxx b/sw/source/ui/chrdlg/chardlg.cxx
|
||||
index b20dfdc2..2483fda 100644
|
||||
--- a/sw/source/ui/chrdlg/chardlg.cxx
|
||||
+++ b/sw/source/ui/chrdlg/chardlg.cxx
|
||||
@@ -112,13 +112,7 @@ void SwCharDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage )
|
||||
}
|
||||
else if (nId == m_nCharExtId)
|
||||
{
|
||||
- if(m_nDialogMode == DLG_CHAR_DRAW || m_nDialogMode == DLG_CHAR_ANN)
|
||||
- aSet.Put (SfxUInt16Item(SID_DISABLE_CTL,DISABLE_CASEMAP));
|
||||
-
|
||||
- else
|
||||
- {
|
||||
- aSet.Put (SfxUInt32Item(SID_FLAG_TYPE,SVX_PREVIEW_CHARACTER|SVX_ENABLE_FLASH));
|
||||
- }
|
||||
+ aSet.Put (SfxUInt32Item(SID_FLAG_TYPE,SVX_PREVIEW_CHARACTER|SVX_ENABLE_FLASH));
|
||||
rPage.PageCreated(aSet);
|
||||
}
|
||||
else if (nId == m_nCharPosId)
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,599 +0,0 @@
|
||||
From f47aa0dbb17a998bdeb01036b9fd9ba0b74b8704 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Sat, 6 Jun 2015 14:24:46 +0100
|
||||
Subject: [PATCH] Resolves: tdf#89905 don't copy palettes from shared to user
|
||||
|
||||
make this a multi-path element with a shared read-only location
|
||||
and a user read/write location and don't copy the presets, instead
|
||||
just keep them in the shared location
|
||||
|
||||
Now an admin can copy extra palettes into the shared location
|
||||
and they magically appear in the user deployments
|
||||
|
||||
Change-Id: I7585789c0c59941094f6128368df94b834d3c2a2
|
||||
(cherry picked from commit 29202a16d9f1934684c7d0978112849f2a21fe2f)
|
||||
|
||||
Related: tdf#89905 these PalettePath uses appear to really be UserConfigPath
|
||||
|
||||
which is the same path at the moment
|
||||
|
||||
Change-Id: Ifdefa478003a2b5cc5c065b1942194dda1275f5e
|
||||
(cherry picked from commit 2c3bf6bfc244517a0134e320acaa1f720703d8f2)
|
||||
---
|
||||
cui/source/tabpages/tabarea.cxx | 9 ++-
|
||||
cui/source/tabpages/tabline.cxx | 10 +++-
|
||||
cui/source/tabpages/tpbitmap.cxx | 22 ++++++-
|
||||
cui/source/tabpages/tpcolor.cxx | 22 ++++++-
|
||||
cui/source/tabpages/tpgradnt.cxx | 22 ++++++-
|
||||
cui/source/tabpages/tphatch.cxx | 22 ++++++-
|
||||
cui/source/tabpages/tplnedef.cxx | 22 ++++++-
|
||||
cui/source/tabpages/tplneend.cxx | 23 +++++++-
|
||||
extras/Package_palettes.mk | 2 +-
|
||||
offapi/com/sun/star/util/XPathSettings.idl | 3 +-
|
||||
.../registry/data/org/openoffice/Office/Paths.xcu | 3 +
|
||||
.../schema/org/openoffice/Office/Common.xcs | 7 ++-
|
||||
sd/source/ui/dlg/PhotoAlbumDialog.cxx | 2 +-
|
||||
svx/source/sidebar/nbdtmg.cxx | 4 +-
|
||||
svx/source/tbxctrls/PaletteManager.cxx | 67 +++++++++++++++-------
|
||||
svx/source/xoutdev/xtable.cxx | 54 ++++++++++++-----
|
||||
16 files changed, 237 insertions(+), 57 deletions(-)
|
||||
|
||||
diff --git a/cui/source/tabpages/tabarea.cxx b/cui/source/tabpages/tabarea.cxx
|
||||
index 7ecc836..1bdaa17 100644
|
||||
--- a/cui/source/tabpages/tabarea.cxx
|
||||
+++ b/cui/source/tabpages/tabarea.cxx
|
||||
@@ -142,7 +142,14 @@ void SvxAreaTabDialog::SavePalettes()
|
||||
|
||||
// save the tables when they have been changed
|
||||
|
||||
- const OUString aPath( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aPath;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aPath = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
|
||||
if( mnHatchingListState & ChangeType::MODIFIED )
|
||||
{
|
||||
diff --git a/cui/source/tabpages/tabline.cxx b/cui/source/tabpages/tabline.cxx
|
||||
index aa99b2c..6049c8c 100644
|
||||
--- a/cui/source/tabpages/tabline.cxx
|
||||
+++ b/cui/source/tabpages/tabline.cxx
|
||||
@@ -130,8 +130,14 @@ void SvxLineTabDialog::SavePalettes()
|
||||
}
|
||||
|
||||
// Save the tables when they have been changed
|
||||
-
|
||||
- const OUString aPath( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aPath;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aPath = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
|
||||
if( nDashListState & ChangeType::MODIFIED )
|
||||
{
|
||||
diff --git a/cui/source/tabpages/tpbitmap.cxx b/cui/source/tabpages/tpbitmap.cxx
|
||||
index 0d11116..71c23e6 100644
|
||||
--- a/cui/source/tabpages/tpbitmap.cxx
|
||||
+++ b/cui/source/tabpages/tpbitmap.cxx
|
||||
@@ -795,7 +795,16 @@ IMPL_LINK_NOARG(SvxBitmapTabPage, ClickLoadHdl_Impl)
|
||||
::sfx2::FileDialogHelper aDlg( com::sun::star::ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, 0 );
|
||||
OUString aStrFilterType( "*.sob" );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
aDlg.SetDisplayDirectory( aFile.GetMainURL( INetURLObject::NO_DECODE ) );
|
||||
|
||||
if ( aDlg.Execute() == ERRCODE_NONE )
|
||||
@@ -875,7 +884,16 @@ IMPL_LINK_NOARG(SvxBitmapTabPage, ClickSaveHdl_Impl)
|
||||
OUString aStrFilterType( "*.sob" );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
DBG_ASSERT( aFile.GetProtocol() != INetProtocol::NotValid, "invalid URL" );
|
||||
|
||||
if( !pBitmapList->GetName().isEmpty() )
|
||||
diff --git a/cui/source/tabpages/tpcolor.cxx b/cui/source/tabpages/tpcolor.cxx
|
||||
index 94231c5..50b74de 100644
|
||||
--- a/cui/source/tabpages/tpcolor.cxx
|
||||
+++ b/cui/source/tabpages/tpcolor.cxx
|
||||
@@ -142,7 +142,16 @@ IMPL_LINK_NOARG(SvxColorTabPage, ClickLoadHdl_Impl)
|
||||
OUString aStrFilterType( XPropertyList::GetDefaultExtFilter( meType ) );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
aDlg.SetDisplayDirectory( aFile.GetMainURL( INetURLObject::NO_DECODE ) );
|
||||
|
||||
if ( aDlg.Execute() == ERRCODE_NONE )
|
||||
@@ -202,7 +211,16 @@ IMPL_LINK_NOARG(SvxColorTabPage, ClickSaveHdl_Impl)
|
||||
OUString aStrFilterType( XPropertyList::GetDefaultExtFilter( meType ) );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
DBG_ASSERT( aFile.GetProtocol() != INetProtocol::NotValid, "invalid URL" );
|
||||
|
||||
XPropertyListRef pList = GetList();
|
||||
diff --git a/cui/source/tabpages/tpgradnt.cxx b/cui/source/tabpages/tpgradnt.cxx
|
||||
index e737410..380f36a 100644
|
||||
--- a/cui/source/tabpages/tpgradnt.cxx
|
||||
+++ b/cui/source/tabpages/tpgradnt.cxx
|
||||
@@ -655,7 +655,16 @@ IMPL_LINK_NOARG(SvxGradientTabPage, ClickLoadHdl_Impl)
|
||||
::sfx2::FileDialogHelper aDlg( com::sun::star::ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, 0 );
|
||||
OUString aStrFilterType( "*.sog" );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
aDlg.SetDisplayDirectory( aFile.GetMainURL( INetURLObject::NO_DECODE ) );
|
||||
|
||||
if( aDlg.Execute() == ERRCODE_NONE )
|
||||
@@ -739,7 +748,16 @@ IMPL_LINK_NOARG(SvxGradientTabPage, ClickSaveHdl_Impl)
|
||||
OUString aStrFilterType( "*.sog" );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
DBG_ASSERT( aFile.GetProtocol() != INetProtocol::NotValid, "invalid URL" );
|
||||
|
||||
if( !pGradientList->GetName().isEmpty() )
|
||||
diff --git a/cui/source/tabpages/tphatch.cxx b/cui/source/tabpages/tphatch.cxx
|
||||
index bad1e71..0060b36 100644
|
||||
--- a/cui/source/tabpages/tphatch.cxx
|
||||
+++ b/cui/source/tabpages/tphatch.cxx
|
||||
@@ -692,7 +692,16 @@ IMPL_LINK_NOARG(SvxHatchTabPage, ClickLoadHdl_Impl)
|
||||
::sfx2::FileDialogHelper aDlg( com::sun::star::ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, 0 );
|
||||
OUString aStrFilterType( "*.soh" );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
aDlg.SetDisplayDirectory( aFile.GetMainURL( INetURLObject::NO_DECODE ) );
|
||||
|
||||
if( aDlg.Execute() == ERRCODE_NONE )
|
||||
@@ -765,7 +774,16 @@ IMPL_LINK_NOARG(SvxHatchTabPage, ClickSaveHdl_Impl)
|
||||
OUString aStrFilterType( "*.soh" );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
DBG_ASSERT( aFile.GetProtocol() != INetProtocol::NotValid, "invalid URL" );
|
||||
|
||||
if( !pHatchingList->GetName().isEmpty() )
|
||||
diff --git a/cui/source/tabpages/tplnedef.cxx b/cui/source/tabpages/tplnedef.cxx
|
||||
index 6694a54..38a7c7f 100644
|
||||
--- a/cui/source/tabpages/tplnedef.cxx
|
||||
+++ b/cui/source/tabpages/tplnedef.cxx
|
||||
@@ -761,7 +761,16 @@ IMPL_LINK_NOARG(SvxLineDefTabPage, ClickLoadHdl_Impl)
|
||||
::sfx2::FileDialogHelper aDlg( com::sun::star::ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, 0 );
|
||||
OUString aStrFilterType( "*.sod" );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
aDlg.SetDisplayDirectory( aFile.GetMainURL( INetURLObject::NO_DECODE ) );
|
||||
|
||||
if( aDlg.Execute() == ERRCODE_NONE )
|
||||
@@ -821,7 +830,16 @@ IMPL_LINK_NOARG(SvxLineDefTabPage, ClickSaveHdl_Impl)
|
||||
OUString aStrFilterType( "*.sod" );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
DBG_ASSERT( aFile.GetProtocol() != INetProtocol::NotValid, "invalid URL" );
|
||||
|
||||
if( !pDashList->GetName().isEmpty() )
|
||||
diff --git a/cui/source/tabpages/tplneend.cxx b/cui/source/tabpages/tplneend.cxx
|
||||
index aff55b9..478ab46 100644
|
||||
--- a/cui/source/tabpages/tplneend.cxx
|
||||
+++ b/cui/source/tabpages/tplneend.cxx
|
||||
@@ -573,7 +573,17 @@ IMPL_LINK_NOARG(SvxLineEndDefTabPage, ClickLoadHdl_Impl)
|
||||
::sfx2::FileDialogHelper aDlg(com::sun::star::ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, 0 );
|
||||
OUString aStrFilterType( "*.soe" );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
aDlg.SetDisplayDirectory( aFile.GetMainURL( INetURLObject::NO_DECODE ) );
|
||||
|
||||
if( aDlg.Execute() == ERRCODE_NONE )
|
||||
@@ -633,7 +643,16 @@ IMPL_LINK_NOARG(SvxLineEndDefTabPage, ClickSaveHdl_Impl)
|
||||
OUString aStrFilterType( "*.soe" );
|
||||
aDlg.AddFilter( aStrFilterType, aStrFilterType );
|
||||
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ OUString aPalettePath(SvtPathOptions().GetPalettePath());
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = aPalettePath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aFile(aLastDir);
|
||||
DBG_ASSERT( aFile.GetProtocol() != INetProtocol::NotValid, "invalid URL" );
|
||||
|
||||
if( !pLineEndList->GetName().isEmpty() )
|
||||
diff --git a/extras/Package_palettes.mk b/extras/Package_palettes.mk
|
||||
index bc317e2..5cf4c61 100644
|
||||
--- a/extras/Package_palettes.mk
|
||||
+++ b/extras/Package_palettes.mk
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
$(eval $(call gb_Package_Package,extras_palettes,$(SRCDIR)/extras/source/palettes))
|
||||
|
||||
-$(eval $(call gb_Package_add_files,extras_palettes,$(LIBO_SHARE_PRESETS_FOLDER)/config,\
|
||||
+$(eval $(call gb_Package_add_files,extras_palettes,$(LIBO_SHARE_FOLDER)/palette,\
|
||||
arrowhd.soe \
|
||||
classic.sog \
|
||||
cmyk.soc \
|
||||
diff --git a/offapi/com/sun/star/util/XPathSettings.idl b/offapi/com/sun/star/util/XPathSettings.idl
|
||||
index 5f202a3..d54c122 100644
|
||||
--- a/offapi/com/sun/star/util/XPathSettings.idl
|
||||
+++ b/offapi/com/sun/star/util/XPathSettings.idl
|
||||
@@ -89,7 +89,8 @@ published interface XPathSettings
|
||||
[attribute] string Module;
|
||||
|
||||
/** This is the path to the palette files *.SOB to *.SOF containing
|
||||
- user-defined colors and patterns. */
|
||||
+ user-defined colors and patterns. The value can be more than
|
||||
+ one path separated by a semicolon.*/
|
||||
[attribute] string Palette;
|
||||
|
||||
/** Plugins are saved in these directories. The value can be more than
|
||||
diff --git a/officecfg/registry/data/org/openoffice/Office/Paths.xcu b/officecfg/registry/data/org/openoffice/Office/Paths.xcu
|
||||
index 6d739e6..965a629 100644
|
||||
--- a/officecfg/registry/data/org/openoffice/Office/Paths.xcu
|
||||
+++ b/officecfg/registry/data/org/openoffice/Office/Paths.xcu
|
||||
@@ -124,6 +124,9 @@
|
||||
</node>
|
||||
</node>
|
||||
<node oor:name="Palette" oor:op="fuse" oor:mandatory="true">
|
||||
+ <node oor:name="InternalPaths">
|
||||
+ <node oor:name="$(insturl)/@LIBO_SHARE_FOLDER@/palette" oor:op="fuse"/>
|
||||
+ </node>
|
||||
<prop oor:name="WritePath">
|
||||
<value>$(userurl)/config</value>
|
||||
</prop>
|
||||
diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
|
||||
index 0bc0dc8..8922889 100644
|
||||
--- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs
|
||||
+++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
|
||||
@@ -1642,12 +1642,15 @@
|
||||
</info>
|
||||
<value>$(progpath)</value>
|
||||
</prop>
|
||||
- <prop oor:name="Palette" oor:type="xs:string" oor:nillable="false">
|
||||
+ <prop oor:name="Palette" oor:type="oor:string-list" oor:nillable="false">
|
||||
<info>
|
||||
<desc>Specifies the path to the palette files *.SOB to *.SOF
|
||||
containing user-defined colors and patterns.</desc>
|
||||
</info>
|
||||
- <value>$(userurl)/config</value>
|
||||
+ <value>
|
||||
+ <it>$(insturl)/@LIBO_SHARE_FOLDER@/palette</it>
|
||||
+ <it>$(userurl)/config</it>
|
||||
+ </value>
|
||||
</prop>
|
||||
<prop oor:name="Plugin" oor:type="oor:string-list" oor:nillable="false">
|
||||
<info>
|
||||
diff --git a/sd/source/ui/dlg/PhotoAlbumDialog.cxx b/sd/source/ui/dlg/PhotoAlbumDialog.cxx
|
||||
index d5dcd09..b29ea21 100644
|
||||
--- a/sd/source/ui/dlg/PhotoAlbumDialog.cxx
|
||||
+++ b/sd/source/ui/dlg/PhotoAlbumDialog.cxx
|
||||
@@ -480,7 +480,7 @@ IMPL_LINK_NOARG(SdPhotoAlbumDialog, FileHdl)
|
||||
// Read configuration
|
||||
OUString sUrl(officecfg::Office::Impress::Pictures::Path::get());
|
||||
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ INetURLObject aFile( SvtPathOptions().GetUserConfigPath() );
|
||||
if (!sUrl.isEmpty())
|
||||
aDlg.SetDisplayDirectory(sUrl);
|
||||
else
|
||||
diff --git a/svx/source/sidebar/nbdtmg.cxx b/svx/source/sidebar/nbdtmg.cxx
|
||||
index 7c7e2c4..9570c2b 100644
|
||||
--- a/svx/source/sidebar/nbdtmg.cxx
|
||||
+++ b/svx/source/sidebar/nbdtmg.cxx
|
||||
@@ -157,7 +157,7 @@ void NBOTypeMgrBase::ImplLoad(const OUString& filename)
|
||||
bIsLoading = true;
|
||||
SfxMapUnit eOldCoreUnit=eCoreUnit;
|
||||
eCoreUnit = SFX_MAPUNIT_100TH_MM;
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ INetURLObject aFile( SvtPathOptions().GetUserConfigPath() );
|
||||
aFile.Append( filename);
|
||||
std::unique_ptr<SvStream> xIStm(::utl::UcbStreamHelper::CreateStream( aFile.GetMainURL( INetURLObject::NO_DECODE ), StreamMode::READ ));
|
||||
if( xIStm ) {
|
||||
@@ -196,7 +196,7 @@ void NBOTypeMgrBase::ImplStore(const OUString& filename)
|
||||
if (bIsLoading) return;
|
||||
SfxMapUnit eOldCoreUnit=eCoreUnit;
|
||||
eCoreUnit = SFX_MAPUNIT_100TH_MM;
|
||||
- INetURLObject aFile( SvtPathOptions().GetPalettePath() );
|
||||
+ INetURLObject aFile( SvtPathOptions().GetUserConfigPath() );
|
||||
aFile.Append( filename);
|
||||
std::unique_ptr<SvStream> xOStm(::utl::UcbStreamHelper::CreateStream( aFile.GetMainURL( INetURLObject::NO_DECODE ), StreamMode::WRITE ));
|
||||
if( xOStm ) {
|
||||
diff --git a/svx/source/tbxctrls/PaletteManager.cxx b/svx/source/tbxctrls/PaletteManager.cxx
|
||||
index 109f934..3334afc 100644
|
||||
--- a/svx/source/tbxctrls/PaletteManager.cxx
|
||||
+++ b/svx/source/tbxctrls/PaletteManager.cxx
|
||||
@@ -27,6 +27,8 @@
|
||||
#include <svtools/colrdlg.hxx>
|
||||
#include <vcl/svapp.hxx>
|
||||
#include <vcl/settings.hxx>
|
||||
+#include <stack>
|
||||
+#include <set>
|
||||
|
||||
PaletteManager::PaletteManager() :
|
||||
mnMaxRecentColors(Application::GetSettings().GetStyleSettings().GetColorValueSetColumnCount()),
|
||||
@@ -47,31 +49,52 @@ PaletteManager::~PaletteManager()
|
||||
void PaletteManager::LoadPalettes()
|
||||
{
|
||||
maPalettes.clear();
|
||||
- OUString aPalPath = SvtPathOptions().GetPalettePath();
|
||||
-
|
||||
- osl::Directory aDir(aPalPath);
|
||||
- osl::DirectoryItem aDirItem;
|
||||
- osl::FileStatus aFileStat( osl_FileStatus_Mask_FileName |
|
||||
- osl_FileStatus_Mask_FileURL |
|
||||
- osl_FileStatus_Mask_Type );
|
||||
- if( aDir.open() == osl::FileBase::E_None )
|
||||
+ OUString aPalPaths = SvtPathOptions().GetPalettePath();
|
||||
+
|
||||
+ std::stack<OUString> aDirs;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aDirs.push(aPalPaths.getToken(0, ';', nIndex));
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ std::set<OUString> aNames;
|
||||
+ //try all entries palette path list user first, then
|
||||
+ //system, ignoring duplicate file names
|
||||
+ while (!aDirs.empty())
|
||||
{
|
||||
- while( aDir.getNextItem(aDirItem) == osl::FileBase::E_None )
|
||||
+ OUString aPalPath = aDirs.top();
|
||||
+ aDirs.pop();
|
||||
+
|
||||
+ osl::Directory aDir(aPalPath);
|
||||
+ osl::DirectoryItem aDirItem;
|
||||
+ osl::FileStatus aFileStat( osl_FileStatus_Mask_FileName |
|
||||
+ osl_FileStatus_Mask_FileURL |
|
||||
+ osl_FileStatus_Mask_Type );
|
||||
+ if( aDir.open() == osl::FileBase::E_None )
|
||||
{
|
||||
- aDirItem.getFileStatus(aFileStat);
|
||||
- if(aFileStat.isRegular() || aFileStat.isLink())
|
||||
+ while( aDir.getNextItem(aDirItem) == osl::FileBase::E_None )
|
||||
{
|
||||
- OUString aFName = aFileStat.getFileName();
|
||||
- Palette* pPalette = 0;
|
||||
- if( aFName.endsWithIgnoreAsciiCase(".gpl") )
|
||||
- pPalette = new PaletteGPL( aFileStat.getFileURL(), aFName );
|
||||
- else if( aFName.endsWithIgnoreAsciiCase(".soc") )
|
||||
- pPalette = new PaletteSOC( aFileStat.getFileURL(), aFName );
|
||||
- else if ( aFName.endsWithIgnoreAsciiCase(".ase") )
|
||||
- pPalette = new PaletteASE( aFileStat.getFileURL(), aFName );
|
||||
-
|
||||
- if( pPalette && pPalette->IsValid() )
|
||||
- maPalettes.push_back( pPalette );
|
||||
+ aDirItem.getFileStatus(aFileStat);
|
||||
+ if(aFileStat.isRegular() || aFileStat.isLink())
|
||||
+ {
|
||||
+ OUString aFName = aFileStat.getFileName();
|
||||
+ if (aNames.find(aFName) == aNames.end())
|
||||
+ {
|
||||
+ Palette* pPalette = 0;
|
||||
+ if( aFName.endsWithIgnoreAsciiCase(".gpl") )
|
||||
+ pPalette = new PaletteGPL( aFileStat.getFileURL(), aFName );
|
||||
+ else if( aFName.endsWithIgnoreAsciiCase(".soc") )
|
||||
+ pPalette = new PaletteSOC( aFileStat.getFileURL(), aFName );
|
||||
+ else if ( aFName.endsWithIgnoreAsciiCase(".ase") )
|
||||
+ pPalette = new PaletteASE( aFileStat.getFileURL(), aFName );
|
||||
+
|
||||
+ if( pPalette && pPalette->IsValid() )
|
||||
+ maPalettes.push_back( pPalette );
|
||||
+ aNames.insert(aFName);
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
}
|
||||
}
|
||||
diff --git a/svx/source/xoutdev/xtable.cxx b/svx/source/xoutdev/xtable.cxx
|
||||
index 5e35be9..b3f1416d 100644
|
||||
--- a/svx/source/xoutdev/xtable.cxx
|
||||
+++ b/svx/source/xoutdev/xtable.cxx
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <svx/xpool.hxx>
|
||||
#include <svx/svdobj.hxx>
|
||||
#include <svx/svdpool.hxx>
|
||||
+#include <stack>
|
||||
|
||||
using namespace com::sun::star;
|
||||
|
||||
@@ -224,23 +225,41 @@ bool XPropertyList::Load()
|
||||
if( mbListDirty )
|
||||
{
|
||||
mbListDirty = false;
|
||||
+ std::stack<OUString> aDirs;
|
||||
|
||||
- INetURLObject aURL( maPath );
|
||||
-
|
||||
- if( INetProtocol::NotValid == aURL.GetProtocol() )
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
{
|
||||
- DBG_ASSERT( maPath.isEmpty(), "invalid URL" );
|
||||
- return false;
|
||||
+ aDirs.push(maPath.getToken(0, ';', nIndex));
|
||||
}
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ //try all entries palette path list working back to front until one
|
||||
+ //succeeds
|
||||
+ while (!aDirs.empty())
|
||||
+ {
|
||||
+ OUString aPath(aDirs.top());
|
||||
+ aDirs.pop();
|
||||
+
|
||||
+ INetURLObject aURL(aPath);
|
||||
+
|
||||
+ if( INetProtocol::NotValid == aURL.GetProtocol() )
|
||||
+ {
|
||||
+ DBG_ASSERT( aPath.isEmpty(), "invalid URL" );
|
||||
+ return false;
|
||||
+ }
|
||||
|
||||
- aURL.Append( maName );
|
||||
+ aURL.Append( maName );
|
||||
|
||||
- if( aURL.getExtension().isEmpty() )
|
||||
- aURL.setExtension( GetDefaultExt() );
|
||||
+ if( aURL.getExtension().isEmpty() )
|
||||
+ aURL.setExtension( GetDefaultExt() );
|
||||
|
||||
- return SvxXMLXTableImport::load( aURL.GetMainURL( INetURLObject::NO_DECODE ), maReferer,
|
||||
- uno::Reference < embed::XStorage >(),
|
||||
- createInstance(), NULL );
|
||||
+ bool bRet = SvxXMLXTableImport::load(aURL.GetMainURL(INetURLObject::NO_DECODE),
|
||||
+ maReferer, uno::Reference < embed::XStorage >(),
|
||||
+ createInstance(), NULL );
|
||||
+ if (bRet)
|
||||
+ return bRet;
|
||||
+ }
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -256,11 +275,20 @@ bool XPropertyList::LoadFrom( const uno::Reference < embed::XStorage > &xStorage
|
||||
|
||||
bool XPropertyList::Save()
|
||||
{
|
||||
- INetURLObject aURL( maPath );
|
||||
+ //save to the last path in the palette path list
|
||||
+ OUString aLastDir;
|
||||
+ sal_Int32 nIndex = 0;
|
||||
+ do
|
||||
+ {
|
||||
+ aLastDir = maPath.getToken(0, ';', nIndex);
|
||||
+ }
|
||||
+ while (nIndex >= 0);
|
||||
+
|
||||
+ INetURLObject aURL(aLastDir);
|
||||
|
||||
if( INetProtocol::NotValid == aURL.GetProtocol() )
|
||||
{
|
||||
- DBG_ASSERT( maPath.isEmpty(), "invalid URL" );
|
||||
+ DBG_ASSERT( aLastDir.isEmpty(), "invalid URL" );
|
||||
return false;
|
||||
}
|
||||
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,178 +0,0 @@
|
||||
From f7ed8b99b628625851fb28ec1a3dead710c8871c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Tue, 23 Jun 2015 16:54:52 +0100
|
||||
Subject: [PATCH] allow slide design to affect multiple standard pages
|
||||
|
||||
modify this minimally and select all standard pages
|
||||
selected in the slidesorted, unselect them afterwards
|
||||
and loop over the selected ones.
|
||||
|
||||
This looks like it could do with a rework to disentangle
|
||||
the master/standard pages stuff, but leave it as is in
|
||||
this commit
|
||||
|
||||
Change-Id: Ifd01fe21c91e5e6b07b2d8bba0d85facadc25998
|
||||
---
|
||||
sd/source/ui/func/fuprlout.cxx | 94 +++++++++++++++++++++++++++++-------------
|
||||
1 file changed, 66 insertions(+), 28 deletions(-)
|
||||
|
||||
diff --git a/sd/source/ui/func/fuprlout.cxx b/sd/source/ui/func/fuprlout.cxx
|
||||
index 6ce661f..f087ad9 100644
|
||||
--- a/sd/source/ui/func/fuprlout.cxx
|
||||
+++ b/sd/source/ui/func/fuprlout.cxx
|
||||
@@ -42,6 +42,7 @@
|
||||
#include "strmname.h"
|
||||
#include "app.hrc"
|
||||
#include "DrawDocShell.hxx"
|
||||
+#include "SlideSorterViewShell.hxx"
|
||||
#include "unprlout.hxx"
|
||||
#include "unchss.hxx"
|
||||
#include "unmovss.hxx"
|
||||
@@ -89,24 +90,6 @@ void FuPresentationLayout::DoExecute( SfxRequest& rReq )
|
||||
|
||||
bool bError = false;
|
||||
|
||||
- // determine the active page
|
||||
- sal_uInt16 nSelectedPage = SDRPAGE_NOTFOUND;
|
||||
- for (sal_uInt16 nPage = 0; nPage < mpDoc->GetSdPageCount(PK_STANDARD); nPage++)
|
||||
- {
|
||||
- if (mpDoc->GetSdPage(nPage, PK_STANDARD)->IsSelected())
|
||||
- {
|
||||
- nSelectedPage = nPage;
|
||||
- break;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- DBG_ASSERT(nSelectedPage != SDRPAGE_NOTFOUND, "no selected page");
|
||||
- SdPage* pSelectedPage = mpDoc->GetSdPage(nSelectedPage, PK_STANDARD);
|
||||
- OUString aOldLayoutName(pSelectedPage->GetLayoutName());
|
||||
- sal_Int32 nPos = aOldLayoutName.indexOf(SD_LT_SEPARATOR);
|
||||
- if (nPos != -1)
|
||||
- aOldLayoutName = aOldLayoutName.copy(0, nPos);
|
||||
-
|
||||
/* if we are on a master page, the changes apply for all pages and notes-
|
||||
pages who are using the relevant layout */
|
||||
bool bOnMaster = false;
|
||||
@@ -117,6 +100,51 @@ void FuPresentationLayout::DoExecute( SfxRequest& rReq )
|
||||
if (eEditMode == EM_MASTERPAGE)
|
||||
bOnMaster = true;
|
||||
}
|
||||
+
|
||||
+ std::vector<SdPage*> aUnselect;
|
||||
+ if (!bOnMaster)
|
||||
+ {
|
||||
+ //We later rely on IsSelected, so transfer the selection here
|
||||
+ //into the document
|
||||
+ slidesorter::SlideSorterViewShell* pSlideSorterViewShell
|
||||
+ = slidesorter::SlideSorterViewShell::GetSlideSorter(mpViewShell->GetViewShellBase());
|
||||
+ if (pSlideSorterViewShell)
|
||||
+ {
|
||||
+ boost::shared_ptr<slidesorter::SlideSorterViewShell::PageSelection> xSelection(
|
||||
+ pSlideSorterViewShell->GetPageSelection());
|
||||
+ if (xSelection)
|
||||
+ {
|
||||
+ for (auto it = xSelection->begin(); it != xSelection->end(); ++it)
|
||||
+ {
|
||||
+ SdPage *pPage = *it;
|
||||
+ if (pPage->IsSelected() || pPage->GetPageKind() != PK_STANDARD)
|
||||
+ continue;
|
||||
+ mpDoc->SetSelected(pPage, true);
|
||||
+ aUnselect.push_back(pPage);
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ std::vector<SdPage*> aSelectedPages;
|
||||
+ std::vector<sal_uInt16> aSelectedPageNums;
|
||||
+ // determine the active pages
|
||||
+ for (sal_uInt16 nPage = 0; nPage < mpDoc->GetSdPageCount(PK_STANDARD); nPage++)
|
||||
+ {
|
||||
+ SdPage* pPage = mpDoc->GetSdPage(nPage, PK_STANDARD);
|
||||
+ if (pPage->IsSelected())
|
||||
+ {
|
||||
+ aSelectedPages.push_back(pPage);
|
||||
+ aSelectedPageNums.push_back(nPage);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ assert(!aSelectedPages.empty() && "no selected page");
|
||||
+ OUString aOldLayoutName(aSelectedPages.back()->GetLayoutName());
|
||||
+ sal_Int32 nPos = aOldLayoutName.indexOf(SD_LT_SEPARATOR);
|
||||
+ if (nPos != -1)
|
||||
+ aOldLayoutName = aOldLayoutName.copy(0, nPos);
|
||||
+
|
||||
bool bMasterPage = bOnMaster;
|
||||
bool bCheckMasters = false;
|
||||
|
||||
@@ -196,14 +224,15 @@ void FuPresentationLayout::DoExecute( SfxRequest& rReq )
|
||||
OUString aLayoutName;
|
||||
if( pTempDoc )
|
||||
aLayoutName = aFile.getToken(1, DOCUMENT_TOKEN);
|
||||
-
|
||||
- mpDoc->SetMasterPage(nSelectedPage, aLayoutName, pTempDoc, bMasterPage, bCheckMasters);
|
||||
+ for (auto nSelectedPage : aSelectedPageNums)
|
||||
+ mpDoc->SetMasterPage(nSelectedPage, aLayoutName, pTempDoc, bMasterPage, bCheckMasters);
|
||||
mpDoc->CloseBookmarkDoc();
|
||||
}
|
||||
else
|
||||
{
|
||||
// use master page with the layout name aFile from current Doc
|
||||
- mpDoc->SetMasterPage(nSelectedPage, aFile, mpDoc, bMasterPage, bCheckMasters);
|
||||
+ for (auto nSelectedPage : aSelectedPageNums)
|
||||
+ mpDoc->SetMasterPage(nSelectedPage, aFile, mpDoc, bMasterPage, bCheckMasters);
|
||||
}
|
||||
|
||||
// remove blocking
|
||||
@@ -211,7 +240,7 @@ void FuPresentationLayout::DoExecute( SfxRequest& rReq )
|
||||
static_cast<DrawView*>(mpView)->BlockPageOrderChangedHint(false);
|
||||
|
||||
// if the master page was visible, show it again
|
||||
- if (!bError && nSelectedPage != SDRPAGE_NOTFOUND)
|
||||
+ if (!bError)
|
||||
{
|
||||
if (bOnMaster)
|
||||
{
|
||||
@@ -219,13 +248,16 @@ void FuPresentationLayout::DoExecute( SfxRequest& rReq )
|
||||
{
|
||||
::sd::View* pView =
|
||||
static_cast<DrawViewShell*>(mpViewShell)->GetView();
|
||||
- sal_uInt16 nPgNum = pSelectedPage->TRG_GetMasterPage().GetPageNum();
|
||||
+ for (auto pSelectedPage : aSelectedPages)
|
||||
+ {
|
||||
+ sal_uInt16 nPgNum = pSelectedPage->TRG_GetMasterPage().GetPageNum();
|
||||
|
||||
- if (static_cast<DrawViewShell*>(mpViewShell)->GetPageKind() == PK_NOTES)
|
||||
- nPgNum++;
|
||||
+ if (static_cast<DrawViewShell*>(mpViewShell)->GetPageKind() == PK_NOTES)
|
||||
+ nPgNum++;
|
||||
|
||||
- pView->HideSdrPage();
|
||||
- pView->ShowSdrPage(pView->GetModel()->GetMasterPage(nPgNum));
|
||||
+ pView->HideSdrPage();
|
||||
+ pView->ShowSdrPage(pView->GetModel()->GetMasterPage(nPgNum));
|
||||
+ }
|
||||
}
|
||||
|
||||
// force update of TabBar
|
||||
@@ -233,10 +265,16 @@ void FuPresentationLayout::DoExecute( SfxRequest& rReq )
|
||||
}
|
||||
else
|
||||
{
|
||||
- pSelectedPage->SetAutoLayout(pSelectedPage->GetAutoLayout());
|
||||
+ for (auto pSelectedPage : aSelectedPages)
|
||||
+ pSelectedPage->SetAutoLayout(pSelectedPage->GetAutoLayout());
|
||||
}
|
||||
}
|
||||
|
||||
+ //Undo transfer to document selection
|
||||
+ for (auto pPage : aUnselect)
|
||||
+ mpDoc->SetSelected(pPage, false);
|
||||
+
|
||||
+
|
||||
// fake a mode change to repaint the page tab bar
|
||||
if( mpViewShell && mpViewShell->ISA( DrawViewShell ) )
|
||||
{
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,817 +0,0 @@
|
||||
From 91739f2ca569b30383fe2f1cef8816fa8bf0554a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Thu, 10 Sep 2015 11:07:55 +0100
|
||||
Subject: [PATCH] default to as-character caption contents
|
||||
|
||||
this FindFlyFrm variant returns the Selected FlyFrm
|
||||
|
||||
the other one actively searches for the FlyFrm that
|
||||
matches the XEmbeddedObject argument
|
||||
|
||||
Change-Id: I2f9271c01337b4a32d7b644f82d16d85c2dc5b51
|
||||
(cherry picked from commit d9729bc06d676a36120f3da252d1a4fa39d103d8)
|
||||
|
||||
GetCurrFlyFrm just forwards to GetSelectedFlyFrm
|
||||
|
||||
Change-Id: Ia0b83a3aad71a72ae2135c5d7f6ddb6d9644b10b
|
||||
(cherry picked from commit 8df51f799bb830db52c7be2d04b575b0443b76ec)
|
||||
|
||||
bundle duplicate pattern into a GetCurrFlyFrm method
|
||||
|
||||
Change-Id: Ib12b825ef9cc6e2b57e9320d435e3863d319cf0f
|
||||
(cherry picked from commit 7473aacc73f8572e20f6f2a3a1d10001c5cc477d)
|
||||
|
||||
GetSelectedFlyFrm+GetCurrFlyFrm -> GetSelectedOrCurrFlyFrm
|
||||
|
||||
Change-Id: I4348c4cf54dcd5504c52cf8ab550572257eef50b
|
||||
(cherry picked from commit a5aab0cce45309afae81b3ec0be8ace1ca0ca17d)
|
||||
|
||||
GetCurFrameFormat->GetSelectedFrameFormat
|
||||
|
||||
Change-Id: I2f1eb4567b6e073991d95dbcecdc79b24010f2c1
|
||||
(cherry picked from commit 4e6194fe8357efc5afa8d094e209ea94335b5923)
|
||||
|
||||
split out useful code as standalone makeItemSetFromFormatAnchor
|
||||
|
||||
Change-Id: I385549b4841dfc715aa984bcc257d78c9f1c3ed4
|
||||
(cherry picked from commit d961c9273104f552a8207e63c33e33f1e265565d)
|
||||
|
||||
Related: tdf#93676 default to as-char inside captions
|
||||
|
||||
This will (hopefull) improve round-tripping to doc[x] for new documents because
|
||||
word can only have as-char elements inside frames so we get a like-for-like
|
||||
conversion if the defaults are used.
|
||||
|
||||
Change-Id: I3913b9b624dd5ba57ed07140bced8e3dca289cf5
|
||||
(cherry picked from commit 93ab0ff24cb71c36c9e7958046e96d7472b5af90)
|
||||
---
|
||||
sw/inc/fesh.hxx | 14 +++-
|
||||
sw/source/core/access/accframebase.cxx | 2 +-
|
||||
sw/source/core/access/accmap.cxx | 2 +-
|
||||
sw/source/core/access/accselectionhelper.cxx | 10 +--
|
||||
sw/source/core/frmedt/fecopy.cxx | 8 +-
|
||||
sw/source/core/frmedt/fefly1.cxx | 118 ++++++++++++---------------
|
||||
sw/source/core/frmedt/feflyole.cxx | 2 +-
|
||||
sw/source/core/frmedt/feshview.cxx | 6 +-
|
||||
sw/source/core/frmedt/fews.cxx | 60 +++++++++++---
|
||||
sw/source/core/inc/UndoInsert.hxx | 1 +
|
||||
sw/source/core/undo/unins.cxx | 16 +++-
|
||||
sw/source/uibase/app/docst.cxx | 8 +-
|
||||
sw/source/uibase/ribbar/drawbase.cxx | 2 +-
|
||||
sw/source/uibase/shells/basesh.cxx | 18 ++--
|
||||
sw/source/uibase/shells/frmsh.cxx | 8 +-
|
||||
sw/source/uibase/shells/grfsh.cxx | 2 +-
|
||||
sw/source/uibase/wrtsh/wrtsh1.cxx | 2 +-
|
||||
17 files changed, 159 insertions(+), 120 deletions(-)
|
||||
|
||||
diff --git a/sw/inc/fesh.hxx b/sw/inc/fesh.hxx
|
||||
index b3bbfcd..efc9b3d 100644
|
||||
--- a/sw/inc/fesh.hxx
|
||||
+++ b/sw/inc/fesh.hxx
|
||||
@@ -187,7 +187,6 @@ private:
|
||||
std::unique_ptr<SdrDropMarkerOverlay> m_pChainFrom;
|
||||
bool m_bCheckForOLEInCaption;
|
||||
|
||||
- SAL_DLLPRIVATE SwFlyFrm *FindFlyFrm() const;
|
||||
SAL_DLLPRIVATE SwFlyFrm *FindFlyFrm( const ::com::sun::star::uno::Reference < ::com::sun::star::embed::XEmbeddedObject >& ) const;
|
||||
|
||||
/// Terminate actions for all shells and call ChangeLink.
|
||||
@@ -362,6 +361,7 @@ public:
|
||||
bool IsFrmSelected() const;
|
||||
bool GetFlyFrmAttr( SfxItemSet &rSet ) const;
|
||||
bool SetFlyFrmAttr( SfxItemSet &rSet );
|
||||
+ SfxItemSet makeItemSetFromFormatAnchor(SfxItemPool& rPool, const SwFormatAnchor &rAnchor) const;
|
||||
bool ResetFlyFrmAttr( sal_uInt16 nWhich, const SfxItemSet* pSet = 0 );
|
||||
const SwFrameFormat *NewFlyFrm( const SfxItemSet &rSet, bool bAnchValid = false,
|
||||
SwFrameFormat *pParent = 0 );
|
||||
@@ -373,9 +373,17 @@ public:
|
||||
- add output parameter <bVertL2R> */
|
||||
bool IsFrmVertical(const bool bEnvironment, bool& bRightToLeft, bool& bVertL2R) const;
|
||||
|
||||
- SwFrameFormat* GetCurFrameFormat() const; ///< If frame then frame style, else 0.
|
||||
+ SwFrameFormat* GetSelectedFrameFormat() const; ///< If frame then frame style, else 0.
|
||||
void SetFrameFormat( SwFrameFormat *pFormat, bool bKeepOrient = false, Point* pDocPos = 0 ); ///< If frame then set frame style.
|
||||
- const SwFlyFrm *GetCurrFlyFrm() const { return FindFlyFrm(); }
|
||||
+
|
||||
+ // Get selected fly
|
||||
+ SwFlyFrm* GetSelectedFlyFrm() const;
|
||||
+
|
||||
+ // Get current fly in which the cursor is positioned
|
||||
+ SwFlyFrm* GetCurrFlyFrm(const bool bCalcFrm = true) const;
|
||||
+
|
||||
+ // Get selected fly, but if none Get current fly in which the cursor is positioned
|
||||
+ SwFlyFrm* GetSelectedOrCurrFlyFrm(const bool bCalcFrm = true) const;
|
||||
|
||||
/// Find/delete fly containing the cursor.
|
||||
SwFrameFormat* WizzardGetFly();
|
||||
diff --git a/sw/source/core/access/accframebase.cxx b/sw/source/core/access/accframebase.cxx
|
||||
index bfffd2d..bfe07b4 100644
|
||||
--- a/sw/source/core/access/accframebase.cxx
|
||||
+++ b/sw/source/core/access/accframebase.cxx
|
||||
@@ -53,7 +53,7 @@ bool SwAccessibleFrameBase::IsSelected()
|
||||
if( pVSh->ISA( SwFEShell ) )
|
||||
{
|
||||
const SwFEShell *pFESh = static_cast< const SwFEShell * >( pVSh );
|
||||
- const SwFrm *pFlyFrm = pFESh->GetCurrFlyFrm();
|
||||
+ const SwFrm *pFlyFrm = pFESh->GetSelectedFlyFrm();
|
||||
if( pFlyFrm == GetFrm() )
|
||||
bRet = true;
|
||||
}
|
||||
diff --git a/sw/source/core/access/accmap.cxx b/sw/source/core/access/accmap.cxx
|
||||
index 7e47ad3..18d9ce5 100644
|
||||
--- a/sw/source/core/access/accmap.cxx
|
||||
+++ b/sw/source/core/access/accmap.cxx
|
||||
@@ -2598,7 +2598,7 @@ void SwAccessibleMap::InvalidateCursorPosition( const SwFrm *pFrm )
|
||||
else if( pVSh->ISA( SwFEShell ) )
|
||||
{
|
||||
const SwFEShell *pFESh = static_cast< const SwFEShell * >( pVSh );
|
||||
- const SwFrm *pFlyFrm = pFESh->GetCurrFlyFrm();
|
||||
+ const SwFrm *pFlyFrm = pFESh->GetSelectedFlyFrm();
|
||||
if( pFlyFrm )
|
||||
{
|
||||
OSL_ENSURE( !pFrm || pFrm->FindFlyFrm() == pFlyFrm,
|
||||
diff --git a/sw/source/core/access/accselectionhelper.cxx b/sw/source/core/access/accselectionhelper.cxx
|
||||
index cec0612..5269503 100644
|
||||
--- a/sw/source/core/access/accselectionhelper.cxx
|
||||
+++ b/sw/source/core/access/accselectionhelper.cxx
|
||||
@@ -156,12 +156,12 @@ bool SwAccessibleSelectionHelper::isAccessibleChildSelected(
|
||||
|
||||
// ... and compare to the currently selected frame
|
||||
bool bRet = false;
|
||||
- SwFEShell* pFEShell = GetFEShell();
|
||||
+ const SwFEShell* pFEShell = GetFEShell();
|
||||
if( pFEShell )
|
||||
{
|
||||
if ( aChild.GetSwFrm() != 0 )
|
||||
{
|
||||
- bRet = (pFEShell->GetCurrFlyFrm() == aChild.GetSwFrm());
|
||||
+ bRet = (pFEShell->GetSelectedFlyFrm() == aChild.GetSwFrm());
|
||||
}
|
||||
else if ( aChild.GetDrawObject() )
|
||||
{
|
||||
@@ -218,10 +218,10 @@ sal_Int32 SwAccessibleSelectionHelper::getSelectedAccessibleChildCount( )
|
||||
sal_Int32 nCount = 0;
|
||||
// Only one frame can be selected at a time, and we only frames
|
||||
// for selectable children.
|
||||
- SwFEShell* pFEShell = GetFEShell();
|
||||
+ const SwFEShell* pFEShell = GetFEShell();
|
||||
if( pFEShell != 0 )
|
||||
{
|
||||
- const SwFlyFrm* pFlyFrm = pFEShell->GetCurrFlyFrm();
|
||||
+ const SwFlyFrm* pFlyFrm = pFEShell->GetSelectedFlyFrm();
|
||||
if( pFlyFrm )
|
||||
{
|
||||
nCount = 1;
|
||||
@@ -290,7 +290,7 @@ Reference<XAccessible> SwAccessibleSelectionHelper::getSelectedAccessibleChild(
|
||||
throwIndexOutOfBoundsException();
|
||||
|
||||
SwAccessibleChild aChild;
|
||||
- const SwFlyFrm *pFlyFrm = pFEShell->GetCurrFlyFrm();
|
||||
+ const SwFlyFrm *pFlyFrm = pFEShell->GetSelectedFlyFrm();
|
||||
if( pFlyFrm )
|
||||
{
|
||||
if( 0 == nSelectedChildIndex )
|
||||
diff --git a/sw/source/core/frmedt/fecopy.cxx b/sw/source/core/frmedt/fecopy.cxx
|
||||
index 987625d..ab55d84 100644
|
||||
--- a/sw/source/core/frmedt/fecopy.cxx
|
||||
+++ b/sw/source/core/frmedt/fecopy.cxx
|
||||
@@ -126,7 +126,7 @@ bool SwFEShell::Copy( SwDoc* pClpDoc, const OUString* pNewClpText )
|
||||
if( IsFrmSelected() )
|
||||
{
|
||||
// get the FlyFormat
|
||||
- SwFlyFrm* pFly = FindFlyFrm();
|
||||
+ SwFlyFrm* pFly = GetSelectedFlyFrm();
|
||||
SwFrameFormat* pFlyFormat = pFly->GetFormat();
|
||||
SwFormatAnchor aAnchor( pFlyFormat->GetAnchor() );
|
||||
|
||||
@@ -467,7 +467,7 @@ bool SwFEShell::Copy( SwFEShell* pDestShell, const Point& rSttPt,
|
||||
|
||||
if( IsFrmSelected() )
|
||||
{
|
||||
- SwFlyFrm* pFly = FindFlyFrm();
|
||||
+ SwFlyFrm* pFly = GetSelectedFlyFrm();
|
||||
SwFrameFormat* pFlyFormat = pFly->GetFormat();
|
||||
SwFormatAnchor aAnchor( pFlyFormat->GetAnchor() );
|
||||
bRet = true;
|
||||
@@ -1264,10 +1264,10 @@ bool SwFEShell::GetDrawObjGraphic( SotClipboardFormatId nFormat, Graphic& rGrf )
|
||||
}
|
||||
else
|
||||
{
|
||||
- // fix(23806): not the origial size, but the current one.
|
||||
+ // Not the original size, but the current one.
|
||||
// Otherwise it could happen that for vector graphics
|
||||
// many MB's of memory are allocated.
|
||||
- const Size aSz( FindFlyFrm()->Prt().SSize() );
|
||||
+ const Size aSz( GetSelectedFlyFrm()->Prt().SSize() );
|
||||
ScopedVclPtrInstance< VirtualDevice > pVirtDev(*GetWin());
|
||||
|
||||
MapMode aTmp( MAP_TWIP );
|
||||
diff --git a/sw/source/core/frmedt/fefly1.cxx b/sw/source/core/frmedt/fefly1.cxx
|
||||
index 2937f04..e35b98e 100644
|
||||
--- a/sw/source/core/frmedt/fefly1.cxx
|
||||
+++ b/sw/source/core/frmedt/fefly1.cxx
|
||||
@@ -236,7 +236,7 @@ void SwFEShell::SelectFlyFrm( SwFlyFrm& rFrm, bool bNew )
|
||||
OSL_ENSURE( rFrm.IsFlyFrm(), "SelectFlyFrm will einen Fly" );
|
||||
|
||||
// nothing to be done if the Fly already was selected
|
||||
- if ( FindFlyFrm() == &rFrm )
|
||||
+ if (GetSelectedFlyFrm() == &rFrm)
|
||||
return;
|
||||
|
||||
// assure the anchor is drawn
|
||||
@@ -254,8 +254,8 @@ void SwFEShell::SelectFlyFrm( SwFlyFrm& rFrm, bool bNew )
|
||||
}
|
||||
}
|
||||
|
||||
-// returns a Fly if one is selected
|
||||
-SwFlyFrm *SwFEShell::FindFlyFrm() const
|
||||
+// Get selected fly
|
||||
+SwFlyFrm* SwFEShell::GetSelectedFlyFrm() const
|
||||
{
|
||||
if ( Imp()->HasDrawView() )
|
||||
{
|
||||
@@ -270,6 +270,22 @@ SwFlyFrm *SwFEShell::FindFlyFrm() const
|
||||
return 0;
|
||||
}
|
||||
|
||||
+// Get current fly in which the cursor is positioned
|
||||
+SwFlyFrm* SwFEShell::GetCurrFlyFrm(const bool bCalcFrm) const
|
||||
+{
|
||||
+ SwContentFrm *pContent = GetCurrFrm(bCalcFrm);
|
||||
+ return pContent ? pContent->FindFlyFrm() : 0;
|
||||
+}
|
||||
+
|
||||
+// Get selected fly, but if none Get current fly in which the cursor is positioned
|
||||
+SwFlyFrm* SwFEShell::GetSelectedOrCurrFlyFrm(const bool bCalcFrm) const
|
||||
+{
|
||||
+ SwFlyFrm *pFly = GetSelectedFlyFrm();
|
||||
+ if (pFly)
|
||||
+ return pFly;
|
||||
+ return GetCurrFlyFrm(bCalcFrm);
|
||||
+}
|
||||
+
|
||||
// Returns non-null pointer, if the current Fly could be anchored to another one (so it is inside)
|
||||
const SwFrameFormat* SwFEShell::IsFlyInFly()
|
||||
{
|
||||
@@ -281,11 +297,8 @@ const SwFrameFormat* SwFEShell::IsFlyInFly()
|
||||
const SdrMarkList &rMrkList = Imp()->GetDrawView()->GetMarkedObjectList();
|
||||
if ( !rMrkList.GetMarkCount() )
|
||||
{
|
||||
- SwContentFrm *pContent = GetCurrFrm( false );
|
||||
- if( !pContent )
|
||||
- return NULL;
|
||||
- SwFlyFrm *pFly = pContent->FindFlyFrm();
|
||||
- if ( !pFly )
|
||||
+ SwFlyFrm *pFly = GetCurrFlyFrm(false);
|
||||
+ if (!pFly)
|
||||
return NULL;
|
||||
return pFly->GetFormat();
|
||||
}
|
||||
@@ -332,11 +345,8 @@ void SwFEShell::SetFlyPos( const Point& rAbsPos )
|
||||
SET_CURR_SHELL( this );
|
||||
|
||||
// Determine reference point in document coordinates
|
||||
- SwContentFrm *pContent = GetCurrFrm( false );
|
||||
- if( !pContent )
|
||||
- return;
|
||||
- SwFlyFrm *pFly = pContent->FindFlyFrm();
|
||||
- if ( !pFly )
|
||||
+ SwFlyFrm *pFly = GetCurrFlyFrm(false);
|
||||
+ if (!pFly)
|
||||
return;
|
||||
|
||||
//SwSaveHdl aSaveX( Imp() );
|
||||
@@ -968,21 +978,11 @@ void SwFEShell::SetPageObjsNewPage( std::vector<SwFrameFormat*>& rFillArr, int n
|
||||
// wrong place or which are ambiguous (multiple selections) will be removed.
|
||||
bool SwFEShell::GetFlyFrmAttr( SfxItemSet &rSet ) const
|
||||
{
|
||||
- SwFlyFrm *pFly = FindFlyFrm();
|
||||
- if ( !pFly )
|
||||
+ SwFlyFrm *pFly = GetSelectedOrCurrFlyFrm();
|
||||
+ if (!pFly)
|
||||
{
|
||||
- SwFrm* pCurrFrm( GetCurrFrm() );
|
||||
- if ( !pCurrFrm )
|
||||
- {
|
||||
- OSL_FAIL( "<SwFEShell::GetFlyFrmAttr(..)> - missing current frame. This is a serious defect, please inform OD." );
|
||||
- return false;
|
||||
- }
|
||||
- pFly = GetCurrFrm()->FindFlyFrm();
|
||||
- if ( !pFly )
|
||||
- {
|
||||
- OSL_ENSURE( false, "GetFlyFrmAttr, no Fly selected." );
|
||||
- return false;
|
||||
- }
|
||||
+ OSL_ENSURE( false, "GetFlyFrmAttr, no Fly selected." );
|
||||
+ return false;
|
||||
}
|
||||
|
||||
SET_CURR_SHELL( (SwViewShell*)this );
|
||||
@@ -1026,13 +1026,8 @@ bool SwFEShell::SetFlyFrmAttr( SfxItemSet& rSet )
|
||||
|
||||
if( rSet.Count() )
|
||||
{
|
||||
- SwFlyFrm *pFly = FindFlyFrm();
|
||||
- if( !pFly )
|
||||
- {
|
||||
- OSL_ENSURE( GetCurrFrm(), "Crsr in parking zone" );
|
||||
- pFly = GetCurrFrm()->FindFlyFrm();
|
||||
- OSL_ENSURE( pFly, "SetFlyFrmAttr, no Fly selected." );
|
||||
- }
|
||||
+ SwFlyFrm *pFly = GetSelectedOrCurrFlyFrm();
|
||||
+ OSL_ENSURE( pFly, "SetFlyFrmAttr, no Fly selected." );
|
||||
if( pFly )
|
||||
{
|
||||
StartAllAction();
|
||||
@@ -1058,6 +1053,16 @@ bool SwFEShell::SetFlyFrmAttr( SfxItemSet& rSet )
|
||||
return bRet;
|
||||
}
|
||||
|
||||
+SfxItemSet SwFEShell::makeItemSetFromFormatAnchor(SfxItemPool& rPool, const SwFormatAnchor &rAnchor) const
|
||||
+{
|
||||
+ // The set also includes VERT/HORI_ORIENT, because the align
|
||||
+ // shall be changed in FEShell::SetFlyFrmAttr/SetFlyFrmAnchor,
|
||||
+ // possibly as a result of the anchor change.
|
||||
+ SfxItemSet aSet(rPool, RES_VERT_ORIENT, RES_ANCHOR);
|
||||
+ aSet.Put(rAnchor);
|
||||
+ return aSet;
|
||||
+}
|
||||
+
|
||||
bool SwFEShell::SetDrawingAttr( SfxItemSet& rSet )
|
||||
{
|
||||
bool bRet = false;
|
||||
@@ -1106,14 +1111,8 @@ bool SwFEShell::ResetFlyFrmAttr( sal_uInt16 nWhich, const SfxItemSet* pSet )
|
||||
{
|
||||
SET_CURR_SHELL( this );
|
||||
|
||||
- SwFlyFrm *pFly = FindFlyFrm();
|
||||
- if( !pFly )
|
||||
- {
|
||||
- OSL_ENSURE( GetCurrFrm(), "Crsr in parking zone" );
|
||||
- pFly = GetCurrFrm()->FindFlyFrm();
|
||||
- OSL_ENSURE( pFly, "SetFlyFrmAttr, no Fly selected." );
|
||||
- }
|
||||
-
|
||||
+ SwFlyFrm *pFly = GetSelectedOrCurrFlyFrm();
|
||||
+ OSL_ENSURE( pFly, "SetFlyFrmAttr, no Fly selected." );
|
||||
if( pFly )
|
||||
{
|
||||
StartAllAction();
|
||||
@@ -1143,10 +1142,10 @@ bool SwFEShell::ResetFlyFrmAttr( sal_uInt16 nWhich, const SfxItemSet* pSet )
|
||||
}
|
||||
|
||||
// Returns frame-format if frame, otherwise 0
|
||||
-SwFrameFormat* SwFEShell::GetCurFrameFormat() const
|
||||
+SwFrameFormat* SwFEShell::GetSelectedFrameFormat() const
|
||||
{
|
||||
SwFrameFormat* pRet = 0;
|
||||
- SwLayoutFrm *pFly = FindFlyFrm();
|
||||
+ SwLayoutFrm *pFly = GetSelectedFlyFrm();
|
||||
if( pFly && ( pRet = static_cast<SwFrameFormat*>(pFly->GetFormat()->DerivedFrom()) ) ==
|
||||
GetDoc()->GetDfltFrameFormat() )
|
||||
pRet = 0;
|
||||
@@ -1164,7 +1163,7 @@ void SwFEShell::SetFrameFormat( SwFrameFormat *pNewFormat, bool bKeepOrient, Poi
|
||||
pFly = static_cast<const SwFlyFrameFormat*>(pFormat)->GetFrm();
|
||||
}
|
||||
else
|
||||
- pFly = FindFlyFrm();
|
||||
+ pFly = GetSelectedFlyFrm();
|
||||
OSL_ENSURE( pFly, "SetFrameFormat: no frame" );
|
||||
if( pFly )
|
||||
{
|
||||
@@ -1200,35 +1199,24 @@ void SwFEShell::SetFrameFormat( SwFrameFormat *pNewFormat, bool bKeepOrient, Poi
|
||||
|
||||
const SwFrameFormat* SwFEShell::GetFlyFrameFormat() const
|
||||
{
|
||||
- const SwFlyFrm* pFly = FindFlyFrm();
|
||||
- if ( !pFly )
|
||||
- {
|
||||
- SwFrm* pCurrFrm = GetCurrFrm();
|
||||
- pFly = pCurrFrm ? pCurrFrm->FindFlyFrm() : 0;
|
||||
- }
|
||||
- if( pFly )
|
||||
+ const SwFlyFrm* pFly = GetSelectedOrCurrFlyFrm();
|
||||
+ if (pFly)
|
||||
return pFly->GetFormat();
|
||||
return 0;
|
||||
}
|
||||
|
||||
SwFrameFormat* SwFEShell::GetFlyFrameFormat()
|
||||
{
|
||||
- SwFlyFrm* pFly = FindFlyFrm();
|
||||
- if ( !pFly )
|
||||
- {
|
||||
- SwFrm* pCurrFrm = GetCurrFrm();
|
||||
- pFly = pCurrFrm ? pCurrFrm->FindFlyFrm() : 0;
|
||||
- }
|
||||
- if( pFly )
|
||||
+ SwFlyFrm* pFly = GetSelectedOrCurrFlyFrm();
|
||||
+ if (pFly)
|
||||
return pFly->GetFormat();
|
||||
return 0;
|
||||
}
|
||||
|
||||
SwRect SwFEShell::GetFlyRect() const
|
||||
{
|
||||
- SwContentFrm *pContent = GetCurrFrm( false );
|
||||
- SwFlyFrm *pFly = pContent ? pContent->FindFlyFrm() : 0;
|
||||
- if ( !pFly )
|
||||
+ SwFlyFrm *pFly = GetCurrFlyFrm(false);
|
||||
+ if (!pFly)
|
||||
{
|
||||
SwRect aRect;
|
||||
return aRect;
|
||||
@@ -1416,7 +1404,7 @@ SwFrameFormat* SwFEShell::WizzardGetFly()
|
||||
|
||||
void SwFEShell::SetFlyName( const OUString& rName )
|
||||
{
|
||||
- SwLayoutFrm *pFly = FindFlyFrm();
|
||||
+ SwLayoutFrm *pFly = GetSelectedFlyFrm();
|
||||
if( pFly )
|
||||
GetDoc()->SetFlyName( *static_cast<SwFlyFrameFormat*>(pFly->GetFormat()), rName );
|
||||
else {
|
||||
@@ -1426,7 +1414,7 @@ void SwFEShell::SetFlyName( const OUString& rName )
|
||||
|
||||
OUString SwFEShell::GetFlyName() const
|
||||
{
|
||||
- SwLayoutFrm *pFly = FindFlyFrm();
|
||||
+ SwLayoutFrm *pFly = GetSelectedFlyFrm();
|
||||
if( pFly )
|
||||
return pFly->GetFormat()->GetName();
|
||||
|
||||
@@ -1437,7 +1425,7 @@ OUString SwFEShell::GetFlyName() const
|
||||
const uno::Reference < embed::XEmbeddedObject > SwFEShell::GetOleRef() const
|
||||
{
|
||||
uno::Reference < embed::XEmbeddedObject > xObj;
|
||||
- SwFlyFrm * pFly = FindFlyFrm();
|
||||
+ SwFlyFrm * pFly = GetSelectedFlyFrm();
|
||||
if (pFly && pFly->Lower() && pFly->Lower()->IsNoTextFrm())
|
||||
{
|
||||
SwOLENode *pNd = static_cast<SwNoTextFrm*>(pFly->Lower())->GetNode()->GetOLENode();
|
||||
diff --git a/sw/source/core/frmedt/feflyole.cxx b/sw/source/core/frmedt/feflyole.cxx
|
||||
index cd9804a..4d17b2a 100644
|
||||
--- a/sw/source/core/frmedt/feflyole.cxx
|
||||
+++ b/sw/source/core/frmedt/feflyole.cxx
|
||||
@@ -43,7 +43,7 @@ using namespace com::sun::star;
|
||||
|
||||
SwFlyFrm *SwFEShell::FindFlyFrm( const uno::Reference < embed::XEmbeddedObject >& xObj ) const
|
||||
{
|
||||
- SwFlyFrm *pFly = FindFlyFrm();
|
||||
+ SwFlyFrm *pFly = GetSelectedFlyFrm();
|
||||
if ( pFly && pFly->Lower() && pFly->Lower()->IsNoTextFrm() )
|
||||
{
|
||||
SwOLENode *pNd = static_cast<SwNoTextFrm*>(pFly->Lower())->GetNode()->GetOLENode();
|
||||
diff --git a/sw/source/core/frmedt/feshview.cxx b/sw/source/core/frmedt/feshview.cxx
|
||||
index fe38a22..54d79fb 100644
|
||||
--- a/sw/source/core/frmedt/feshview.cxx
|
||||
+++ b/sw/source/core/frmedt/feshview.cxx
|
||||
@@ -1772,7 +1772,7 @@ bool SwFEShell::ImpEndCreate()
|
||||
SwFlyFrm* pFlyFrm;
|
||||
if( NewFlyFrm( aSet, true ) &&
|
||||
::GetHtmlMode( GetDoc()->GetDocShell() ) &&
|
||||
- 0 != ( pFlyFrm = FindFlyFrm() ))
|
||||
+ 0 != ( pFlyFrm = GetSelectedFlyFrm() ))
|
||||
{
|
||||
SfxItemSet aHtmlSet( GetDoc()->GetAttrPool(), RES_VERT_ORIENT, RES_HORI_ORIENT );
|
||||
// horizontal orientation:
|
||||
@@ -2083,7 +2083,7 @@ Point SwFEShell::GetAnchorObjDiff() const
|
||||
|
||||
if ( IsFrmSelected() )
|
||||
{
|
||||
- SwFlyFrm *pFly = FindFlyFrm();
|
||||
+ SwFlyFrm *pFly = GetSelectedFlyFrm();
|
||||
aRet -= pFly->GetAnchorFrm()->Frm().Pos();
|
||||
}
|
||||
else
|
||||
@@ -2631,7 +2631,7 @@ void SwFEShell::SetChainMarker()
|
||||
bDelTo = true;
|
||||
if ( IsFrmSelected() )
|
||||
{
|
||||
- SwFlyFrm *pFly = FindFlyFrm();
|
||||
+ SwFlyFrm *pFly = GetSelectedFlyFrm();
|
||||
|
||||
if ( pFly->GetPrevLink() )
|
||||
{
|
||||
diff --git a/sw/source/core/frmedt/fews.cxx b/sw/source/core/frmedt/fews.cxx
|
||||
index db791c8..a850f62 100644
|
||||
--- a/sw/source/core/frmedt/fews.cxx
|
||||
+++ b/sw/source/core/frmedt/fews.cxx
|
||||
@@ -48,6 +48,7 @@
|
||||
#include <ndtxt.hxx>
|
||||
#include <dflyobj.hxx>
|
||||
#include <dcontact.hxx>
|
||||
+#include <UndoInsert.hxx>
|
||||
|
||||
using namespace com::sun::star;
|
||||
|
||||
@@ -395,14 +396,18 @@ void SwFEShell::InsertLabel( const SwLabelType eType, const OUString &rText, con
|
||||
if( LTYPE_DRAW==eType || pCnt )
|
||||
{
|
||||
StartAllAction();
|
||||
+ SwRewriter aRewriter(SwUndoInsertLabel::CreateRewriter(rText));
|
||||
+ StartUndo(UNDO_INSERTLABEL, &aRewriter);
|
||||
|
||||
sal_uLong nIdx = 0;
|
||||
+ bool bInnerCntIsFly = false;
|
||||
SwFlyFrameFormat* pFlyFormat = 0;
|
||||
switch( eType )
|
||||
{
|
||||
case LTYPE_OBJECT:
|
||||
case LTYPE_FLY:
|
||||
- if( pCnt->IsInFly() )
|
||||
+ bInnerCntIsFly = pCnt->IsInFly();
|
||||
+ if (bInnerCntIsFly)
|
||||
{
|
||||
// pass down index to the startnode for flys
|
||||
nIdx = pCnt->FindFlyFrm()->
|
||||
@@ -423,7 +428,6 @@ void SwFEShell::InsertLabel( const SwLabelType eType, const OUString &rText, con
|
||||
{
|
||||
SwDrawView *pDView = Imp()->GetDrawView();
|
||||
const SdrMarkList& rMrkList = pDView->GetMarkedObjectList();
|
||||
- StartUndo();
|
||||
|
||||
// copy marked drawing objects to
|
||||
// local list to perform the corresponding action for each object
|
||||
@@ -452,7 +456,6 @@ void SwFEShell::InsertLabel( const SwLabelType eType, const OUString &rText, con
|
||||
aDrawObjs.pop_back();
|
||||
}
|
||||
|
||||
- EndUndo();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
@@ -460,14 +463,49 @@ void SwFEShell::InsertLabel( const SwLabelType eType, const OUString &rText, con
|
||||
}
|
||||
|
||||
if( nIdx )
|
||||
- pFlyFormat = GetDoc()->InsertLabel( eType, rText, rSeparator, rNumberSeparator, bBefore, nId,
|
||||
- nIdx, rCharacterStyle, bCpyBrd );
|
||||
+ {
|
||||
+ pFlyFormat = GetDoc()->InsertLabel(eType, rText, rSeparator,
|
||||
+ rNumberSeparator, bBefore, nId,
|
||||
+ nIdx, rCharacterStyle, bCpyBrd);
|
||||
+
|
||||
+ //if we succeeded in putting a caption on the content, and the
|
||||
+ //content was a frame/graphic, then set the contained element
|
||||
+ //to as-char anchoring because that's all msword is able to
|
||||
+ //do when inside a frame, and in writer for freshly captioned
|
||||
+ //elements it's largely irrelevent what the anchor of the contained
|
||||
+ //type is but making it as-char by default results in very
|
||||
+ //good roundtripping
|
||||
+ if (pFlyFormat && bInnerCntIsFly)
|
||||
+ {
|
||||
+ SwNodeIndex aAnchIdx(*pFlyFormat->GetContent().GetContentIdx(), 1);
|
||||
+ SwTextNode *pTxtNode = aAnchIdx.GetNode().GetTextNode();
|
||||
+
|
||||
+ SwFormatAnchor aAnc(FLY_AS_CHAR);
|
||||
+ sal_Int32 nInsertPos = bBefore ? pTxtNode->Len() : 0;
|
||||
+ SwPosition aPos(*pTxtNode, nInsertPos);
|
||||
+
|
||||
+ aAnc.SetAnchor(&aPos);
|
||||
+
|
||||
+ SfxItemSet aSet(makeItemSetFromFormatAnchor(GetDoc()->GetAttrPool(), aAnc));
|
||||
|
||||
- SwFlyFrm* pFrm;
|
||||
- const Point aPt( GetCrsrDocPos() );
|
||||
- if( pFlyFormat && 0 != ( pFrm = pFlyFormat->GetFrm( &aPt )))
|
||||
- SelectFlyFrm( *pFrm, true );
|
||||
+ SwFlyFrm *pFly = GetSelectedOrCurrFlyFrm();
|
||||
+ SwFlyFrameFormat* pInnerFlyFormat = pFly->GetFormat();
|
||||
+ GetDoc()->SetFlyFrmAttr(*pInnerFlyFormat, aSet);
|
||||
|
||||
+ //put a hard-break after the graphic to keep it separated
|
||||
+ //from the caption text if the outer frame is resized
|
||||
+ SwIndex aIdx(pTxtNode, bBefore ? nInsertPos : 1);
|
||||
+ pTxtNode->InsertText(OUString("\n"), aIdx);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (pFlyFormat)
|
||||
+ {
|
||||
+ const Point aPt(GetCrsrDocPos());
|
||||
+ if (SwFlyFrm* pFrm = pFlyFormat->GetFrm(&aPt))
|
||||
+ SelectFlyFrm(*pFrm, true);
|
||||
+ }
|
||||
+ EndUndo();
|
||||
EndAllActionAndCall();
|
||||
}
|
||||
}
|
||||
@@ -649,7 +687,7 @@ void SwFEShell::CalcBoundRect( SwRect& _orRect,
|
||||
}
|
||||
else
|
||||
{
|
||||
- pFly = FindFlyFrm();
|
||||
+ pFly = GetSelectedFlyFrm();
|
||||
pFrm = pFly ? pFly->GetAnchorFrm() : GetCurrFrm();
|
||||
}
|
||||
|
||||
@@ -1167,7 +1205,7 @@ void SwFEShell::CalcBoundRect( SwRect& _orRect,
|
||||
Size SwFEShell::GetGraphicDefaultSize() const
|
||||
{
|
||||
Size aRet;
|
||||
- SwFlyFrm *pFly = FindFlyFrm();
|
||||
+ SwFlyFrm *pFly = GetSelectedFlyFrm();
|
||||
if ( pFly )
|
||||
{
|
||||
// #i32951# - due to issue #i28701# no format of a
|
||||
diff --git a/sw/source/core/inc/UndoInsert.hxx b/sw/source/core/inc/UndoInsert.hxx
|
||||
index 8ef9263..f99783a 100644
|
||||
--- a/sw/source/core/inc/UndoInsert.hxx
|
||||
+++ b/sw/source/core/inc/UndoInsert.hxx
|
||||
@@ -203,6 +203,7 @@ public:
|
||||
@return the rewriter of this undo object
|
||||
*/
|
||||
virtual SwRewriter GetRewriter() const SAL_OVERRIDE;
|
||||
+ static SwRewriter CreateRewriter(const OUString &rStr);
|
||||
|
||||
void SetNodePos( sal_uLong nNd )
|
||||
{ if( LTYPE_OBJECT != eType ) NODE.nNode = nNd; }
|
||||
diff --git a/sw/source/core/undo/unins.cxx b/sw/source/core/undo/unins.cxx
|
||||
index 58bdcf4..64541bd 100644
|
||||
--- a/sw/source/core/undo/unins.cxx
|
||||
+++ b/sw/source/core/undo/unins.cxx
|
||||
@@ -1014,14 +1014,22 @@ void SwUndoInsertLabel::RepeatImpl(::sw::RepeatContext & rContext)
|
||||
// #111827#
|
||||
SwRewriter SwUndoInsertLabel::GetRewriter() const
|
||||
{
|
||||
+ return CreateRewriter(sText);
|
||||
+}
|
||||
+
|
||||
+SwRewriter SwUndoInsertLabel::CreateRewriter(const OUString &rStr)
|
||||
+{
|
||||
SwRewriter aRewriter;
|
||||
|
||||
OUString aTmpStr;
|
||||
|
||||
- aTmpStr += SW_RES(STR_START_QUOTE);
|
||||
- aTmpStr += ShortenString(sText, nUndoStringLength,
|
||||
- OUString(SW_RES(STR_LDOTS)));
|
||||
- aTmpStr += SW_RES(STR_END_QUOTE);
|
||||
+ if (!rStr.isEmpty())
|
||||
+ {
|
||||
+ aTmpStr += SW_RES(STR_START_QUOTE);
|
||||
+ aTmpStr += ShortenString(rStr, nUndoStringLength,
|
||||
+ OUString(SW_RES(STR_LDOTS)));
|
||||
+ aTmpStr += SW_RES(STR_END_QUOTE);
|
||||
+ }
|
||||
|
||||
aRewriter.AddRule(UndoArg1, aTmpStr);
|
||||
|
||||
diff --git a/sw/source/uibase/app/docst.cxx b/sw/source/uibase/app/docst.cxx
|
||||
index 77e79af..381fe8b 100644
|
||||
--- a/sw/source/uibase/app/docst.cxx
|
||||
+++ b/sw/source/uibase/app/docst.cxx
|
||||
@@ -129,7 +129,7 @@ void SwDocShell::StateStyleSheet(SfxItemSet& rSet, SwWrtShell* pSh)
|
||||
// so that this family is being showed
|
||||
if(pShell->IsFrmSelected())
|
||||
{
|
||||
- SwFrameFormat* pFormat = pShell->GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFormat = pShell->GetSelectedFrameFormat();
|
||||
if( pFormat )
|
||||
aName = pFormat->GetName();
|
||||
}
|
||||
@@ -195,7 +195,7 @@ void SwDocShell::StateStyleSheet(SfxItemSet& rSet, SwWrtShell* pSh)
|
||||
rSet.DisableItem( nWhich );
|
||||
else
|
||||
{
|
||||
- SwFrameFormat* pFormat = pShell->GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFormat = pShell->GetSelectedFrameFormat();
|
||||
if(pFormat && pShell->IsFrmSelected())
|
||||
{
|
||||
aName = pFormat->GetName();
|
||||
@@ -429,7 +429,7 @@ void SwDocShell::ExecStyleSheet( SfxRequest& rReq )
|
||||
break;
|
||||
case SFX_STYLE_FAMILY_FRAME:
|
||||
{
|
||||
- SwFrameFormat* pFrm = m_pWrtShell->GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFrm = m_pWrtShell->GetSelectedFrameFormat();
|
||||
if( pFrm )
|
||||
aParam = pFrm->GetName();
|
||||
}
|
||||
@@ -1177,7 +1177,7 @@ sal_uInt16 SwDocShell::MakeByExample( const OUString &rName, sal_uInt16 nFamily,
|
||||
SfxItemSet aSet(GetPool(), aFrameFormatSetRange );
|
||||
pCurrWrtShell->GetFlyFrmAttr( aSet );
|
||||
|
||||
- SwFrameFormat* pFFormat = pCurrWrtShell->GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFFormat = pCurrWrtShell->GetSelectedFrameFormat();
|
||||
pFrm->SetDerivedFrom( pFFormat );
|
||||
|
||||
pFrm->SetFormatAttr( aSet );
|
||||
diff --git a/sw/source/uibase/ribbar/drawbase.cxx b/sw/source/uibase/ribbar/drawbase.cxx
|
||||
index 0cbea13..55b6d44 100644
|
||||
--- a/sw/source/uibase/ribbar/drawbase.cxx
|
||||
+++ b/sw/source/uibase/ribbar/drawbase.cxx
|
||||
@@ -287,7 +287,7 @@ bool SwDrawBase::MouseButtonUp(const MouseEvent& rMEvt)
|
||||
aCol.Init(m_pWin->GetFrmColCount(), aCol.GetGutterWidth(), aCol.GetWishWidth());
|
||||
aSet.Put(aCol);
|
||||
// Template AutoUpdate
|
||||
- SwFrameFormat* pFormat = m_pSh->GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFormat = m_pSh->GetSelectedFrameFormat();
|
||||
if(pFormat && pFormat->IsAutoUpdateFormat())
|
||||
m_pSh->AutoUpdateFrame(pFormat, aSet);
|
||||
else
|
||||
diff --git a/sw/source/uibase/shells/basesh.cxx b/sw/source/uibase/shells/basesh.cxx
|
||||
index 0a9c64f..360d7c3 100644
|
||||
--- a/sw/source/uibase/shells/basesh.cxx
|
||||
+++ b/sw/source/uibase/shells/basesh.cxx
|
||||
@@ -1008,16 +1008,12 @@ void SwBaseShell::Execute(SfxRequest &rReq)
|
||||
? FLY_AS_CHAR
|
||||
: FLY_AT_CHAR;
|
||||
rSh.StartUndo();
|
||||
- if( rSh.IsObjSelected() )
|
||||
- rSh.ChgAnchor( eSet );
|
||||
- else if( rSh.IsFrmSelected() )
|
||||
- {
|
||||
- // The set also includes VERT/HORI_ORIENT, because the align
|
||||
- // shall be changed in FEShell::SetFlyFrmAttr/SetFlyFrmAnchor,
|
||||
- // possibly as a result of the anchor change.
|
||||
- SfxItemSet aSet( GetPool(), RES_VERT_ORIENT, RES_ANCHOR );
|
||||
- SwFormatAnchor aAnc( eSet, rSh.GetPhyPageNum() );
|
||||
- aSet.Put( aAnc );
|
||||
+ if (rSh.IsObjSelected())
|
||||
+ rSh.ChgAnchor(eSet);
|
||||
+ else if (rSh.IsFrmSelected())
|
||||
+ {
|
||||
+ SwFormatAnchor aAnc(eSet, rSh.GetPhyPageNum());
|
||||
+ SfxItemSet aSet(rSh.makeItemSetFromFormatAnchor(GetPool(), aAnc));
|
||||
rSh.SetFlyFrmAttr(aSet);
|
||||
}
|
||||
// if new anchor is 'as char' and it is a Math object and the usual
|
||||
@@ -2284,7 +2280,7 @@ void SwBaseShell::ExecBckCol(SfxRequest& rReq)
|
||||
if((nsSelectionType::SEL_FRM & nSelType) || (nsSelectionType::SEL_GRF & nSelType))
|
||||
{
|
||||
// Template autoupdate
|
||||
- SwFrameFormat* pFormat = rSh.GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFormat = rSh.GetSelectedFrameFormat();
|
||||
|
||||
if(pFormat && pFormat->IsAutoUpdateFormat())
|
||||
{
|
||||
diff --git a/sw/source/uibase/shells/frmsh.cxx b/sw/source/uibase/shells/frmsh.cxx
|
||||
index 4868fdf..3a4e956 100644
|
||||
--- a/sw/source/uibase/shells/frmsh.cxx
|
||||
+++ b/sw/source/uibase/shells/frmsh.cxx
|
||||
@@ -176,7 +176,7 @@ void SwFrameShell::Execute(SfxRequest &rReq)
|
||||
aCol.Init(nCols, nGutterWidth, aCol.GetWishWidth());
|
||||
aSet.Put(aCol);
|
||||
// Template AutoUpdate
|
||||
- SwFrameFormat* pFormat = rSh.GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFormat = rSh.GetSelectedFrameFormat();
|
||||
if(pFormat && pFormat->IsAutoUpdateFormat())
|
||||
{
|
||||
rSh.AutoUpdateFrame(pFormat, aSet);
|
||||
@@ -498,7 +498,7 @@ void SwFrameShell::Execute(SfxRequest &rReq)
|
||||
rSh.SetObjTitle(static_cast<const SfxStringItem*>(pItem)->GetValue());
|
||||
}
|
||||
// Template AutoUpdate
|
||||
- SwFrameFormat* pFormat = rSh.GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFormat = rSh.GetSelectedFrameFormat();
|
||||
if(pFormat && pFormat->IsAutoUpdateFormat())
|
||||
{
|
||||
rSh.AutoUpdateFrame(pFormat, *pOutSet);
|
||||
@@ -644,7 +644,7 @@ void SwFrameShell::Execute(SfxRequest &rReq)
|
||||
}
|
||||
if ( bUpdateMgr )
|
||||
{
|
||||
- SwFrameFormat* pFormat = rSh.GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFormat = rSh.GetSelectedFrameFormat();
|
||||
if ( bCopyToFormat && pFormat && pFormat->IsAutoUpdateFormat() )
|
||||
{
|
||||
rSh.AutoUpdateFrame(pFormat, aMgr.GetAttrSet());
|
||||
@@ -1111,7 +1111,7 @@ void SwFrameShell::ExecFrameStyle(SfxRequest& rReq)
|
||||
}
|
||||
aFrameSet.Put( aBoxItem );
|
||||
// Template AutoUpdate
|
||||
- SwFrameFormat* pFormat = rSh.GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFormat = rSh.GetSelectedFrameFormat();
|
||||
if(pFormat && pFormat->IsAutoUpdateFormat())
|
||||
{
|
||||
rSh.AutoUpdateFrame(pFormat, aFrameSet);
|
||||
diff --git a/sw/source/uibase/shells/grfsh.cxx b/sw/source/uibase/shells/grfsh.cxx
|
||||
index 39e18fd..60e95f3 100644
|
||||
--- a/sw/source/uibase/shells/grfsh.cxx
|
||||
+++ b/sw/source/uibase/shells/grfsh.cxx
|
||||
@@ -381,7 +381,7 @@ void SwGrfShell::Execute(SfxRequest &rReq)
|
||||
}
|
||||
|
||||
// Templates AutoUpdate
|
||||
- SwFrameFormat* pFormat = rSh.GetCurFrameFormat();
|
||||
+ SwFrameFormat* pFormat = rSh.GetSelectedFrameFormat();
|
||||
if(pFormat && pFormat->IsAutoUpdateFormat())
|
||||
{
|
||||
pFormat->SetFormatAttr(*pSet);
|
||||
diff --git a/sw/source/uibase/wrtsh/wrtsh1.cxx b/sw/source/uibase/wrtsh/wrtsh1.cxx
|
||||
index 37f0553..ead7e47 100644
|
||||
--- a/sw/source/uibase/wrtsh/wrtsh1.cxx
|
||||
+++ b/sw/source/uibase/wrtsh/wrtsh1.cxx
|
||||
@@ -1709,7 +1709,7 @@ OUString SwWrtShell::GetSelDescr() const
|
||||
break;
|
||||
case nsSelectionType::SEL_FRM:
|
||||
{
|
||||
- const SwFrameFormat * pFrameFormat = GetCurFrameFormat();
|
||||
+ const SwFrameFormat * pFrameFormat = GetSelectedFrameFormat();
|
||||
|
||||
if (pFrameFormat)
|
||||
aResult = pFrameFormat->GetDescription();
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,27 +0,0 @@
|
||||
From e13b0657a3a05139f751124145aa10758c59d1dd Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Wed, 1 Jul 2015 08:34:58 +0100
|
||||
Subject: [PATCH] f22 openjdk for ppc64le has both these dirs, but jawt is only
|
||||
on one
|
||||
|
||||
Change-Id: Ie770ecceb8c8f5a6fa882a9f5d5a26806b029589
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index aecbe8f..8964c96 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -7058,7 +7058,7 @@ then
|
||||
my_java_arch=ppc64
|
||||
;;
|
||||
powerpc64le)
|
||||
- AS_IF([test -d "$JAVA_HOME/jre/lib/ppc64le"], [my_java_arch=ppc64le], [my_java_arch=ppc64])
|
||||
+ AS_IF([test -e "$JAVA_HOME/jre/lib/ppc64le/libjawt.so"], [my_java_arch=ppc64le], [my_java_arch=ppc64])
|
||||
JAVA_ARCH=$my_java_arch
|
||||
;;
|
||||
x86_64)
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,663 +0,0 @@
|
||||
From e9680d99c4403bd07ab4d50939a5d7791bceb98c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Tue, 13 Oct 2015 13:16:31 +0100
|
||||
Subject: [PATCH] implement dialog control over enhanced shape control points
|
||||
|
||||
use case is a desire to enable viewing and setting rounded rectangle radiuses
|
||||
to an exact known value
|
||||
|
||||
Change-Id: I7e6a4db0699076950adf5869a61825159766c46a
|
||||
(cherry picked from commit b859d84e471fdb70b61607d2d919a7907d074bd0)
|
||||
---
|
||||
cui/source/inc/transfrm.hxx | 6 +
|
||||
cui/source/tabpages/transfrm.cxx | 137 ++++++++++++++-
|
||||
cui/uiconfig/ui/slantcornertabpage.ui | 310 ++++++++++++++++++++++++++++++----
|
||||
include/svx/EnhancedCustomShape2d.hxx | 1 +
|
||||
4 files changed, 416 insertions(+), 38 deletions(-)
|
||||
|
||||
diff --git a/cui/source/inc/transfrm.hxx b/cui/source/inc/transfrm.hxx
|
||||
index 2945d28..2fe2524 100644
|
||||
--- a/cui/source/inc/transfrm.hxx
|
||||
+++ b/cui/source/inc/transfrm.hxx
|
||||
@@ -239,6 +239,12 @@ private:
|
||||
VclPtr<VclFrame> m_pFlAngle;
|
||||
VclPtr<MetricField> m_pMtrAngle;
|
||||
|
||||
+ VclPtr<VclFrame> m_aControlGroups[2];
|
||||
+ VclPtr<VclContainer> m_aControlGroupX[2];
|
||||
+ VclPtr<MetricField> m_aControlX[2];
|
||||
+ VclPtr<VclContainer> m_aControlGroupY[2];
|
||||
+ VclPtr<MetricField> m_aControlY[2];
|
||||
+
|
||||
const SfxItemSet& rOutAttrs;
|
||||
|
||||
const SdrView* pView;
|
||||
diff --git a/cui/source/tabpages/transfrm.cxx b/cui/source/tabpages/transfrm.cxx
|
||||
index 950a4b2..43375c2 100644
|
||||
--- a/cui/source/tabpages/transfrm.cxx
|
||||
+++ b/cui/source/tabpages/transfrm.cxx
|
||||
@@ -18,6 +18,8 @@
|
||||
*/
|
||||
|
||||
#include <sfx2/app.hxx>
|
||||
+#include <svx/EnhancedCustomShape2d.hxx>
|
||||
+#include <svx/svdundo.hxx>
|
||||
#include <svx/svdview.hxx>
|
||||
#include <svx/svdobj.hxx>
|
||||
#include <svx/svdpagv.hxx>
|
||||
@@ -430,6 +432,15 @@ SvxSlantTabPage::SvxSlantTabPage(vcl::Window* pParent, const SfxItemSet& rInAttr
|
||||
get(m_pFlAngle, "FL_SLANT");
|
||||
get(m_pMtrAngle, "MTR_FLD_ANGLE");
|
||||
|
||||
+ for (int i = 0; i < 2; ++i)
|
||||
+ {
|
||||
+ get(m_aControlGroups[i], "controlgroups" + OString::number(i+1));
|
||||
+ get(m_aControlGroupX[i], "controlgroupx" + OString::number(i+1));
|
||||
+ get(m_aControlX[i], "controlx" + OString::number(i+1));
|
||||
+ get(m_aControlGroupY[i], "controlgroupy" + OString::number(i+1));
|
||||
+ get(m_aControlY[i], "controly" + OString::number(i+1));
|
||||
+ }
|
||||
+
|
||||
// this page needs ExchangeSupport
|
||||
SetExchangeSupport();
|
||||
|
||||
@@ -450,6 +461,14 @@ void SvxSlantTabPage::dispose()
|
||||
m_pMtrRadius.clear();
|
||||
m_pFlAngle.clear();
|
||||
m_pMtrAngle.clear();
|
||||
+ for (int i = 0; i < 2; ++i)
|
||||
+ {
|
||||
+ m_aControlGroups[i].clear();
|
||||
+ m_aControlGroupX[i].clear();
|
||||
+ m_aControlX[i].clear();
|
||||
+ m_aControlGroupY[i].clear();
|
||||
+ m_aControlY[i].clear();
|
||||
+ }
|
||||
SvxTabPage::dispose();
|
||||
}
|
||||
|
||||
@@ -506,10 +525,56 @@ bool SvxSlantTabPage::FillItemSet(SfxItemSet* rAttrs)
|
||||
rAttrs->Put( SfxBoolItem( SID_ATTR_TRANSFORM_SHEAR_VERTICAL, false ) );
|
||||
}
|
||||
|
||||
- return bModified;
|
||||
-}
|
||||
+ bool bControlPointsChanged = false;
|
||||
+ for (int i = 0; i < 2; ++i)
|
||||
+ {
|
||||
+ bControlPointsChanged |= (m_aControlX[i]->IsValueChangedFromSaved() ||
|
||||
+ m_aControlY[i]->IsValueChangedFromSaved());
|
||||
+ }
|
||||
+
|
||||
+ if (!bControlPointsChanged)
|
||||
+ return bModified;
|
||||
+
|
||||
+ SdrObject* pObj = pView->GetMarkedObjectList().GetMark(0)->GetMarkedSdrObj();
|
||||
+ SdrModel* pModel = pObj->GetModel();
|
||||
+ SdrUndoAction* pUndo = pModel->IsUndoEnabled() ?
|
||||
+ pModel->GetSdrUndoFactory().CreateUndoAttrObject(*pObj) :
|
||||
+ nullptr;
|
||||
|
||||
+ if (pUndo)
|
||||
+ pModel->BegUndo(pUndo->GetComment());
|
||||
+
|
||||
+ EnhancedCustomShape2d aShape(pObj);
|
||||
+ Rectangle aLogicRect = aShape.GetLogicRect();
|
||||
+
|
||||
+ for (int i = 0; i < 2; ++i)
|
||||
+ {
|
||||
+ if (m_aControlX[i]->IsValueChangedFromSaved() || m_aControlY[i]->IsValueChangedFromSaved())
|
||||
+ {
|
||||
+ Point aNewPosition(GetCoreValue(*m_aControlX[i], ePoolUnit),
|
||||
+ GetCoreValue(*m_aControlY[i], ePoolUnit));
|
||||
+ aNewPosition.Move(aLogicRect.Left(), aLogicRect.Top());
|
||||
+
|
||||
+ css::awt::Point aPosition;
|
||||
+ aPosition.X = aNewPosition.X();
|
||||
+ aPosition.Y = aNewPosition.Y();
|
||||
+
|
||||
+ aShape.SetHandleControllerPosition(i, aPosition);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ pObj->SetChanged();
|
||||
+ pObj->BroadcastObjectChange();
|
||||
+ bModified = true;
|
||||
+
|
||||
+ if (pUndo)
|
||||
+ {
|
||||
+ pModel->AddUndo(pUndo);
|
||||
+ pModel->EndUndo();
|
||||
+ }
|
||||
|
||||
+ return bModified;
|
||||
+}
|
||||
|
||||
void SvxSlantTabPage::Reset(const SfxItemSet* rAttrs)
|
||||
{
|
||||
@@ -561,17 +626,76 @@ void SvxSlantTabPage::Reset(const SfxItemSet* rAttrs)
|
||||
}
|
||||
|
||||
m_pMtrAngle->SaveValue();
|
||||
-}
|
||||
-
|
||||
|
||||
+ const SdrMarkList& rMarkList = pView->GetMarkedObjectList();
|
||||
+ if (rMarkList.GetMarkCount() == 1)
|
||||
+ {
|
||||
+ SdrObject* pObj = rMarkList.GetMark(0)->GetMarkedSdrObj();
|
||||
+ SdrObjKind eKind = (SdrObjKind) pObj->GetObjIdentifier();
|
||||
+ if (eKind == OBJ_CUSTOMSHAPE)
|
||||
+ {
|
||||
+ EnhancedCustomShape2d aShape(pObj);
|
||||
+ Point aInitialPosition;
|
||||
+ for (int i = 0; i < 2; ++i)
|
||||
+ {
|
||||
+ if (!aShape.GetHandlePosition(i, aInitialPosition))
|
||||
+ break;
|
||||
+ m_aControlGroups[i]->Enable();
|
||||
+ css::awt::Point aPosition;
|
||||
+
|
||||
+ aPosition.X = SAL_MAX_INT32;
|
||||
+ aPosition.Y = SAL_MAX_INT32;
|
||||
+ aShape.SetHandleControllerPosition(i, aPosition);
|
||||
+ Point aMaxPosition;
|
||||
+ aShape.GetHandlePosition(i, aMaxPosition);
|
||||
+
|
||||
+ aPosition.X = SAL_MIN_INT32;
|
||||
+ aPosition.Y = SAL_MIN_INT32;
|
||||
+ aShape.SetHandleControllerPosition(i, aPosition);
|
||||
+ Point aMinPosition;
|
||||
+ aShape.GetHandlePosition(i, aMinPosition);
|
||||
+
|
||||
+ Rectangle aLogicRect = aShape.GetLogicRect();
|
||||
+ aMaxPosition.Move(-aLogicRect.Left(), -aLogicRect.Top());
|
||||
+ aMinPosition.Move(-aLogicRect.Left(), -aLogicRect.Top());
|
||||
+
|
||||
+ aPosition.X = aInitialPosition.X();
|
||||
+ aPosition.Y = aInitialPosition.Y();
|
||||
+ aInitialPosition.Move(-aLogicRect.Left(), -aLogicRect.Top());
|
||||
+ aShape.SetHandleControllerPosition(i, aPosition);
|
||||
+
|
||||
+ SetMetricValue(*m_aControlX[i], aInitialPosition.X(), ePoolUnit);
|
||||
+ SetMetricValue(*m_aControlY[i], aInitialPosition.Y(), ePoolUnit);
|
||||
+
|
||||
+ if (aMaxPosition.X() == aMinPosition.X())
|
||||
+ m_aControlGroupX[i]->Disable();
|
||||
+ else
|
||||
+ {
|
||||
+ m_aControlX[i]->SetMin(aMinPosition.X(), FUNIT_MM);
|
||||
+ m_aControlX[i]->SetMax(aMaxPosition.X(), FUNIT_MM);
|
||||
+ }
|
||||
+ if (aMaxPosition.Y() == aMinPosition.Y())
|
||||
+ m_aControlGroupY[i]->Disable();
|
||||
+ else
|
||||
+ {
|
||||
+ m_aControlY[i]->SetMin(aMinPosition.Y(), FUNIT_MM);
|
||||
+ m_aControlY[i]->SetMax(aMaxPosition.Y(), FUNIT_MM);
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ for (int i = 0; i < 2; ++i)
|
||||
+ {
|
||||
+ m_aControlX[i]->SaveValue();
|
||||
+ m_aControlY[i]->SaveValue();
|
||||
+ }
|
||||
+}
|
||||
|
||||
VclPtr<SfxTabPage> SvxSlantTabPage::Create( vcl::Window* pWindow, const SfxItemSet* rOutAttrs )
|
||||
{
|
||||
return VclPtr<SvxSlantTabPage>::Create( pWindow, *rOutAttrs );
|
||||
}
|
||||
|
||||
-
|
||||
-
|
||||
void SvxSlantTabPage::ActivatePage( const SfxItemSet& rSet )
|
||||
{
|
||||
SfxRectangleItem const * pRectItem = NULL;
|
||||
@@ -620,7 +744,6 @@ SvxPositionSizeTabPage::SvxPositionSizeTabPage(vcl::Window* pParent, const SfxIt
|
||||
, mfOldWidth(0.0)
|
||||
, mfOldHeight(0.0)
|
||||
{
|
||||
-
|
||||
get(m_pFlPosition, "FL_POSITION");
|
||||
get(m_pMtrPosX, "MTR_FLD_POS_X");
|
||||
get(m_pMtrPosY, "MTR_FLD_POS_Y");
|
||||
diff --git a/cui/uiconfig/ui/slantcornertabpage.ui b/cui/uiconfig/ui/slantcornertabpage.ui
|
||||
index 37b7b0e..b3ce646 100644
|
||||
--- a/cui/uiconfig/ui/slantcornertabpage.ui
|
||||
+++ b/cui/uiconfig/ui/slantcornertabpage.ui
|
||||
@@ -13,12 +13,132 @@
|
||||
<property name="step_increment">1</property>
|
||||
<property name="page_increment">10</property>
|
||||
</object>
|
||||
- <object class="GtkBox" id="SlantAndCornerRadius">
|
||||
+ <object class="GtkGrid" id="SlantAndCornerRadius">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="border_width">6</property>
|
||||
- <property name="orientation">vertical</property>
|
||||
- <property name="spacing">12</property>
|
||||
+ <property name="row_spacing">24</property>
|
||||
+ <property name="column_spacing">12</property>
|
||||
+ <child>
|
||||
+ <object class="GtkFrame" id="controlgroups1">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="sensitive">False</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label_xalign">0</property>
|
||||
+ <property name="shadow_type">none</property>
|
||||
+ <child>
|
||||
+ <object class="GtkAlignment" id="alignment3">
|
||||
+ <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="GtkGrid" id="grid1">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="row_spacing">12</property>
|
||||
+ <property name="column_spacing">6</property>
|
||||
+ <child>
|
||||
+ <object class="GtkBox" id="controlgroupx1">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="spacing">12</property>
|
||||
+ <child>
|
||||
+ <object class="GtkLabel" id="label5">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label" translatable="yes">_X:</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="mnemonic_widget">controlx1:0.00cm</property>
|
||||
+ <property name="xalign">0</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="controlx1:0.00cm">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">True</property>
|
||||
+ <property name="invisible_char">•</property>
|
||||
+ <property name="text" translatable="yes">0.00</property>
|
||||
+ <property name="digits">2</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">1</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="left_attach">0</property>
|
||||
+ <property name="top_attach">0</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkBox" id="controlgroupy1">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="spacing">12</property>
|
||||
+ <child>
|
||||
+ <object class="GtkLabel" id="label6">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label" translatable="yes">_Y:</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="mnemonic_widget">controly1:0.00cm</property>
|
||||
+ <property name="xalign">0</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="controly1:0.00cm">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">True</property>
|
||||
+ <property name="invisible_char">•</property>
|
||||
+ <property name="text" translatable="yes">0.00</property>
|
||||
+ <property name="digits">2</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">1</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="left_attach">0</property>
|
||||
+ <property name="top_attach">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="label" translatable="yes">Control Point 1</property>
|
||||
+ <property name="xalign">0</property>
|
||||
+ <attributes>
|
||||
+ <attribute name="weight" value="bold"/>
|
||||
+ </attributes>
|
||||
+ </object>
|
||||
+ </child>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="left_attach">0</property>
|
||||
+ <property name="top_attach">1</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
<child>
|
||||
<object class="GtkFrame" id="FL_RADIUS">
|
||||
<property name="visible">True</property>
|
||||
@@ -32,37 +152,36 @@
|
||||
<property name="top_padding">6</property>
|
||||
<property name="left_padding">12</property>
|
||||
<child>
|
||||
- <object class="GtkBox" id="box2">
|
||||
+ <object class="GtkGrid" id="grid2">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="spacing">12</property>
|
||||
+ <property name="column_spacing">12</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="FT_RADIUS">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">_Radius:</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="mnemonic_widget">MTR_FLD_RADIUS:0.00cm</property>
|
||||
+ <property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
- <property name="position">0</property>
|
||||
+ <property name="left_attach">0</property>
|
||||
+ <property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkSpinButton" id="MTR_FLD_RADIUS:0.00cm">
|
||||
<property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
+ <property name="can_focus">True</property>
|
||||
<property name="invisible_char">•</property>
|
||||
+ <property name="text" translatable="yes">0.00</property>
|
||||
<property name="adjustment">adjustmentRADIUS</property>
|
||||
<property name="digits">2</property>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
- <property name="position">1</property>
|
||||
+ <property name="left_attach">1</property>
|
||||
+ <property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
@@ -73,8 +192,8 @@
|
||||
<object class="GtkLabel" id="label1">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Corner Radius</property>
|
||||
+ <property name="xalign">0</property>
|
||||
<attributes>
|
||||
<attribute name="weight" value="bold"/>
|
||||
</attributes>
|
||||
@@ -82,9 +201,8 @@
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
- <property name="position">0</property>
|
||||
+ <property name="left_attach">0</property>
|
||||
+ <property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
@@ -100,37 +218,36 @@
|
||||
<property name="top_padding">6</property>
|
||||
<property name="left_padding">12</property>
|
||||
<child>
|
||||
- <object class="GtkBox" id="box3">
|
||||
+ <object class="GtkGrid" id="grid3">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="spacing">12</property>
|
||||
+ <property name="column_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">_Angle:</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="mnemonic_widget">MTR_FLD_ANGLE:0.00degrees</property>
|
||||
+ <property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
- <property name="position">0</property>
|
||||
+ <property name="left_attach">0</property>
|
||||
+ <property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkSpinButton" id="MTR_FLD_ANGLE:0.00degrees">
|
||||
<property name="visible">True</property>
|
||||
- <property name="can_focus">False</property>
|
||||
+ <property name="can_focus">True</property>
|
||||
<property name="invisible_char">•</property>
|
||||
+ <property name="text" translatable="yes">0.00</property>
|
||||
<property name="adjustment">adjustmentSLANT</property>
|
||||
<property name="digits">2</property>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
- <property name="position">1</property>
|
||||
+ <property name="left_attach">1</property>
|
||||
+ <property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
@@ -141,8 +258,128 @@
|
||||
<object class="GtkLabel" id="label2">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
- <property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Slant</property>
|
||||
+ <property name="xalign">0</property>
|
||||
+ <attributes>
|
||||
+ <attribute name="weight" value="bold"/>
|
||||
+ </attributes>
|
||||
+ </object>
|
||||
+ </child>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="left_attach">1</property>
|
||||
+ <property name="top_attach">0</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkFrame" id="controlgroups2">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="sensitive">False</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label_xalign">0</property>
|
||||
+ <property name="shadow_type">none</property>
|
||||
+ <child>
|
||||
+ <object class="GtkAlignment" id="alignment4">
|
||||
+ <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="GtkGrid" id="grid4">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="row_spacing">12</property>
|
||||
+ <property name="column_spacing">6</property>
|
||||
+ <child>
|
||||
+ <object class="GtkBox" id="controlgroupx2">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="spacing">12</property>
|
||||
+ <child>
|
||||
+ <object class="GtkLabel" id="label4">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label" translatable="yes">_X:</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="mnemonic_widget">controlx2:0.00cm</property>
|
||||
+ <property name="xalign">0</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="controlx2:0.00cm">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">True</property>
|
||||
+ <property name="invisible_char">•</property>
|
||||
+ <property name="text" translatable="yes">0.00</property>
|
||||
+ <property name="digits">2</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">1</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="left_attach">0</property>
|
||||
+ <property name="top_attach">0</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkBox" id="controlgroupy2">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="spacing">12</property>
|
||||
+ <child>
|
||||
+ <object class="GtkLabel" id="label7">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label" translatable="yes">_Y:</property>
|
||||
+ <property name="use_underline">True</property>
|
||||
+ <property name="mnemonic_widget">controly2:0.00cm</property>
|
||||
+ <property name="xalign">0</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="controly2:0.00cm">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">True</property>
|
||||
+ <property name="invisible_char">•</property>
|
||||
+ <property name="text" translatable="yes">0.00</property>
|
||||
+ <property name="digits">2</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="expand">False</property>
|
||||
+ <property name="fill">True</property>
|
||||
+ <property name="position">1</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="left_attach">0</property>
|
||||
+ <property name="top_attach">1</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ </object>
|
||||
+ </child>
|
||||
+ </object>
|
||||
+ </child>
|
||||
+ <child type="label">
|
||||
+ <object class="GtkLabel" id="label8">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can_focus">False</property>
|
||||
+ <property name="label" translatable="yes">Control Point 2</property>
|
||||
+ <property name="xalign">0</property>
|
||||
<attributes>
|
||||
<attribute name="weight" value="bold"/>
|
||||
</attributes>
|
||||
@@ -150,16 +387,19 @@
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
- <property name="expand">False</property>
|
||||
- <property name="fill">True</property>
|
||||
- <property name="position">1</property>
|
||||
+ <property name="left_attach">1</property>
|
||||
+ <property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<object class="GtkSizeGroup" id="sizegroup1">
|
||||
<widgets>
|
||||
+ <widget name="label5"/>
|
||||
+ <widget name="label6"/>
|
||||
<widget name="FT_RADIUS"/>
|
||||
<widget name="FT_ANGLE"/>
|
||||
+ <widget name="label4"/>
|
||||
+ <widget name="label7"/>
|
||||
</widgets>
|
||||
</object>
|
||||
<object class="GtkSizeGroup" id="sizegroup2">
|
||||
@@ -168,4 +408,12 @@
|
||||
<widget name="MTR_FLD_ANGLE:0.00degrees"/>
|
||||
</widgets>
|
||||
</object>
|
||||
+ <object class="GtkSizeGroup" id="sizegroup5">
|
||||
+ <widgets>
|
||||
+ <widget name="controlx1:0.00cm"/>
|
||||
+ <widget name="controly1:0.00cm"/>
|
||||
+ <widget name="controlx2:0.00cm"/>
|
||||
+ <widget name="controly2:0.00cm"/>
|
||||
+ </widgets>
|
||||
+ </object>
|
||||
</interface>
|
||||
diff --git a/include/svx/EnhancedCustomShape2d.hxx b/include/svx/EnhancedCustomShape2d.hxx
|
||||
index b9ed6f2..b1cc1b7 100644
|
||||
--- a/include/svx/EnhancedCustomShape2d.hxx
|
||||
+++ b/include/svx/EnhancedCustomShape2d.hxx
|
||||
@@ -191,6 +191,7 @@ class SVX_DLLPUBLIC EnhancedCustomShape2d : public SfxItemSet
|
||||
SdrObject* CreateObject( bool bLineGeometryNeededOnly );
|
||||
void ApplyGluePoints( SdrObject* pObj );
|
||||
Rectangle GetTextRect() const;
|
||||
+ Rectangle GetLogicRect() const { return aLogicRect; }
|
||||
|
||||
sal_uInt32 GetHdlCount() const;
|
||||
bool GetHandlePosition( const sal_uInt32 nIndex, Point& rReturnPosition ) const;
|
||||
--
|
||||
2.4.3
|
||||
|
@ -1,370 +0,0 @@
|
||||
From bdd33fda337d37431e6bffb99fb90416884981c9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Thu, 25 Jun 2015 10:33:06 +0100
|
||||
Subject: [PATCH] implement equalize width and height for impress/draw
|
||||
|
||||
Equalize width/height adjusts width/height of selected objects to the
|
||||
width/height of the last selected object.
|
||||
|
||||
Change-Id: I7c222a6591112cb674322d310ebd87f04a9198bd
|
||||
---
|
||||
include/svx/svdedtv.hxx | 5 +++
|
||||
include/svx/svdstr.hrc | 4 +-
|
||||
include/svx/svxids.hrc | 2 +
|
||||
.../org/openoffice/Office/UI/GenericCommands.xcu | 10 +++++
|
||||
sd/sdi/_drvwsh.sdi | 10 +++++
|
||||
sd/source/ui/view/drviews2.cxx | 13 ++++++
|
||||
sd/source/ui/view/drviewsj.cxx | 16 ++++++--
|
||||
sd/uiconfig/sdraw/menubar/menubar.xml | 3 ++
|
||||
svx/inc/globlmn_tmpl.hrc | 20 +++++++++
|
||||
svx/sdi/svx.sdi | 47 ++++++++++++++++++++++
|
||||
svx/source/svdraw/svdedtv2.cxx | 38 +++++++++++++++++
|
||||
svx/source/svdraw/svdstr.src | 8 ++++
|
||||
12 files changed, 171 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/include/svx/svdedtv.hxx b/include/svx/svdedtv.hxx
|
||||
index cdc2308..b109e0c 100644
|
||||
--- a/include/svx/svdedtv.hxx
|
||||
+++ b/include/svx/svdedtv.hxx
|
||||
@@ -272,6 +272,11 @@ public:
|
||||
// for distribution dialog function
|
||||
void DistributeMarkedObjects();
|
||||
|
||||
+ // for setting either the width or height of all selected
|
||||
+ // objects to the width/height of the last selected object
|
||||
+ // of the selection
|
||||
+ void EqualizeMarkedObjects(bool bWidth);
|
||||
+
|
||||
// Decompose marked polypolygon objects into polygons.
|
||||
// Grouped objects are searched and decomposed, if all member objects are PathObjs.
|
||||
// bMakeLines=TRUE: all polygones are decomposed into single lines resp. bezier segments
|
||||
diff --git a/include/svx/svdstr.hrc b/include/svx/svdstr.hrc
|
||||
index 90ef697..36e8719 100644
|
||||
--- a/include/svx/svdstr.hrc
|
||||
+++ b/include/svx/svdstr.hrc
|
||||
@@ -241,7 +241,9 @@
|
||||
#define STR_EditMergeSubstractPoly (STR_EditBegin + 55)
|
||||
#define STR_EditMergeIntersectPoly (STR_EditBegin + 56)
|
||||
#define STR_DistributeMarkedObjects (STR_EditBegin + 57)
|
||||
-#define STR_EditEnd (STR_DistributeMarkedObjects)
|
||||
+#define STR_EqualizeWidthMarkedObjects (STR_EditBegin + 58)
|
||||
+#define STR_EqualizeHeightMarkedObjects (STR_EditBegin + 59)
|
||||
+#define STR_EditEnd (STR_EqualizeHeightMarkedObjects)
|
||||
|
||||
#define STR_ExchangeBegin (STR_EditEnd+1)
|
||||
#define STR_ExchangePaste (STR_ExchangeBegin +0)
|
||||
diff --git a/include/svx/svxids.hrc b/include/svx/svxids.hrc
|
||||
index 5b8efbc..67ee3da 100644
|
||||
--- a/include/svx/svxids.hrc
|
||||
+++ b/include/svx/svxids.hrc
|
||||
@@ -113,6 +113,8 @@
|
||||
#define SID_POLY_INTERSECT (SID_SFX_START + 681)
|
||||
#define SID_POLY_FORMEN (SID_SFX_START + 682)
|
||||
#define SID_DISTRIBUTE_DLG (SID_SFX_START + 683)
|
||||
+#define SID_EQUALIZEWIDTH (SID_SFX_START + 684)
|
||||
+#define SID_EQUALIZEHEIGHT (SID_SFX_START + 685)
|
||||
|
||||
// Basic IDE-Id's
|
||||
|
||||
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
|
||||
index 1c679bd..d221d56 100644
|
||||
--- a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
|
||||
+++ b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
|
||||
@@ -3472,6 +3472,16 @@
|
||||
<value xml:lang="en-US">~Subtract</value>
|
||||
</prop>
|
||||
</node>
|
||||
+ <node oor:name=".uno:EqualizeWidth" oor:op="replace">
|
||||
+ <prop oor:name="Label" oor:type="xs:string">
|
||||
+ <value xml:lang="en-US">Equalize ~Width</value>
|
||||
+ </prop>
|
||||
+ </node>
|
||||
+ <node oor:name=".uno:EqualizeHeight" oor:op="replace">
|
||||
+ <prop oor:name="Label" oor:type="xs:string">
|
||||
+ <value xml:lang="en-US">Equalize ~Height</value>
|
||||
+ </prop>
|
||||
+ </node>
|
||||
<node oor:name=".uno:SuperScript" oor:op="replace">
|
||||
<prop oor:name="Label" oor:type="xs:string">
|
||||
<value xml:lang="en-US">Superscript</value>
|
||||
diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi
|
||||
index 0b5469bf..6b2f17c 100644
|
||||
--- a/sd/sdi/_drvwsh.sdi
|
||||
+++ b/sd/sdi/_drvwsh.sdi
|
||||
@@ -507,6 +507,16 @@ interface DrawView
|
||||
ExecMethod = FuTemporary ;
|
||||
StateMethod = GetMenuState ;
|
||||
]
|
||||
+ SID_EQUALIZEWIDTH // ole : no, status : ?
|
||||
+ [
|
||||
+ ExecMethod = FuTemporary ;
|
||||
+ StateMethod = GetMenuState ;
|
||||
+ ]
|
||||
+ SID_EQUALIZEHEIGHT // ole : no, status : ?
|
||||
+ [
|
||||
+ ExecMethod = FuTemporary ;
|
||||
+ StateMethod = GetMenuState ;
|
||||
+ ]
|
||||
SID_CONNECT // ole : no, status : ?
|
||||
[
|
||||
ExecMethod = FuTemporary ;
|
||||
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
|
||||
index ffbb503..90c3d59 100644
|
||||
--- a/sd/source/ui/view/drviews2.cxx
|
||||
+++ b/sd/source/ui/view/drviews2.cxx
|
||||
@@ -2272,6 +2272,19 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
|
||||
}
|
||||
break;
|
||||
|
||||
+ case SID_EQUALIZEWIDTH:
|
||||
+ case SID_EQUALIZEHEIGHT:
|
||||
+ {
|
||||
+ // End text edit to avoid conflicts
|
||||
+ if(mpDrawView->IsTextEdit())
|
||||
+ mpDrawView->SdrEndTextEdit();
|
||||
+
|
||||
+ mpDrawView->EqualizeMarkedObjects(nSId == SID_EQUALIZEWIDTH);
|
||||
+ Cancel();
|
||||
+ rReq.Done ();
|
||||
+ }
|
||||
+ break;
|
||||
+
|
||||
case SID_DISMANTLE: // BASIC
|
||||
{
|
||||
if ( mpDrawView->IsDismantlePossible(false) )
|
||||
diff --git a/sd/source/ui/view/drviewsj.cxx b/sd/source/ui/view/drviewsj.cxx
|
||||
index 857601f..10a3f5a 100644
|
||||
--- a/sd/source/ui/view/drviewsj.cxx
|
||||
+++ b/sd/source/ui/view/drviewsj.cxx
|
||||
@@ -284,13 +284,15 @@ void DrawViewShell::GetMenuStateSel( SfxItemSet &rSet )
|
||||
rSet.Put(SfxBoolItem(SID_OUTLINE_TEXT_AUTOFIT, bSet));
|
||||
}
|
||||
|
||||
- rSet.DisableItem( SID_GROUP );
|
||||
- rSet.DisableItem( SID_COMBINE );
|
||||
+ rSet.DisableItem(SID_GROUP);
|
||||
+ rSet.DisableItem(SID_COMBINE);
|
||||
rSet.DisableItem(SID_DISTRIBUTE_DLG);
|
||||
rSet.DisableItem(SID_POLY_MERGE);
|
||||
rSet.DisableItem(SID_POLY_SUBSTRACT);
|
||||
rSet.DisableItem(SID_POLY_INTERSECT);
|
||||
- rSet.DisableItem( SID_CONNECT );
|
||||
+ rSet.DisableItem(SID_EQUALIZEWIDTH);
|
||||
+ rSet.DisableItem(SID_EQUALIZEHEIGHT);
|
||||
+ rSet.DisableItem(SID_CONNECT);
|
||||
}
|
||||
// multi-selection
|
||||
else if( nMarkCount > 1 )
|
||||
@@ -377,6 +379,8 @@ void DrawViewShell::GetMenuStateSel( SfxItemSet &rSet )
|
||||
rSet.DisableItem(SID_POLY_MERGE);
|
||||
rSet.DisableItem(SID_POLY_SUBSTRACT);
|
||||
rSet.DisableItem(SID_POLY_INTERSECT);
|
||||
+ rSet.DisableItem(SID_EQUALIZEWIDTH);
|
||||
+ rSet.DisableItem(SID_EQUALIZEHEIGHT);
|
||||
}
|
||||
|
||||
if (b3dObj ||
|
||||
@@ -438,10 +442,12 @@ void DrawViewShell::GetMenuStateSel( SfxItemSet &rSet )
|
||||
}
|
||||
if ( !mpDrawView->IsCombinePossible(false) )
|
||||
{
|
||||
- rSet.DisableItem( SID_COMBINE );
|
||||
+ rSet.DisableItem(SID_COMBINE);
|
||||
rSet.DisableItem(SID_POLY_MERGE);
|
||||
rSet.DisableItem(SID_POLY_SUBSTRACT);
|
||||
rSet.DisableItem(SID_POLY_INTERSECT);
|
||||
+ rSet.DisableItem(SID_EQUALIZEWIDTH);
|
||||
+ rSet.DisableItem(SID_EQUALIZEHEIGHT);
|
||||
}
|
||||
if ( !mpDrawView->IsCombinePossible(true) )
|
||||
{
|
||||
@@ -501,6 +507,8 @@ void DrawViewShell::GetMenuStateSel( SfxItemSet &rSet )
|
||||
rSet.DisableItem(SID_POLY_MERGE);
|
||||
rSet.DisableItem(SID_POLY_SUBSTRACT);
|
||||
rSet.DisableItem(SID_POLY_INTERSECT);
|
||||
+ rSet.DisableItem(SID_EQUALIZEWIDTH);
|
||||
+ rSet.DisableItem(SID_EQUALIZEHEIGHT);
|
||||
rSet.DisableItem( SID_CONNECT );
|
||||
rSet.DisableItem( SID_ANIMATION_EFFECTS );
|
||||
rSet.DisableItem( SID_MODIFY_FIELD );
|
||||
diff --git a/sd/uiconfig/sdraw/menubar/menubar.xml b/sd/uiconfig/sdraw/menubar/menubar.xml
|
||||
index f12287b..bc8cfee 100644
|
||||
--- a/sd/uiconfig/sdraw/menubar/menubar.xml
|
||||
+++ b/sd/uiconfig/sdraw/menubar/menubar.xml
|
||||
@@ -346,6 +346,9 @@
|
||||
<menu:menuitem menu:id=".uno:Merge"/>
|
||||
<menu:menuitem menu:id=".uno:Substract"/>
|
||||
<menu:menuitem menu:id=".uno:Intersect"/>
|
||||
+ <menu:menuseparator/>
|
||||
+ <menu:menuitem menu:id=".uno:EqualizeWidth"/>
|
||||
+ <menu:menuitem menu:id=".uno:EqualizeHeight"/>
|
||||
</menu:menupopup>
|
||||
</menu:menu>
|
||||
<menu:menuseparator/>
|
||||
diff --git a/svx/inc/globlmn_tmpl.hrc b/svx/inc/globlmn_tmpl.hrc
|
||||
index 9d511c8..8d82489 100644
|
||||
--- a/svx/inc/globlmn_tmpl.hrc
|
||||
+++ b/svx/inc/globlmn_tmpl.hrc
|
||||
@@ -306,6 +306,20 @@
|
||||
Command = ".uno:Intersect" ; \
|
||||
Text [ en-US ] = "I~ntersect" ; \
|
||||
};
|
||||
+#define ITEM_EQUALIZEWIDTH \
|
||||
+ MenuItem\
|
||||
+ {\
|
||||
+ Identifier = SID_EQUALIZEWIDTH ; \
|
||||
+ Command = ".uno:EqualizeWidth" ; \
|
||||
+ Text [ en-US ] = "Equalize ~Width" ; \
|
||||
+ };
|
||||
+#define ITEM_EQUALIZEHEIGHT \
|
||||
+ MenuItem\
|
||||
+ {\
|
||||
+ Identifier = SID_EQUALIZEHEIGHT ; \
|
||||
+ Command = ".uno:EqualizeHeight" ; \
|
||||
+ Text [ en-US ] = "Equalize ~Height" ; \
|
||||
+ };
|
||||
|
||||
#define MNSUB_FORMEN \
|
||||
MenuItem \
|
||||
@@ -320,6 +334,12 @@
|
||||
ITEM_POLY_MERGE \
|
||||
ITEM_POLY_SUBSTRACT \
|
||||
ITEM_POLY_INTERSECT \
|
||||
+ MenuItem \
|
||||
+ { \
|
||||
+ Separator = TRUE; \
|
||||
+ }; \
|
||||
+ ITEM_EQUALIZEWIDTH \
|
||||
+ ITEM_EQUALIZEHEIGHT \
|
||||
};\
|
||||
};\
|
||||
};
|
||||
diff --git a/svx/sdi/svx.sdi b/svx/sdi/svx.sdi
|
||||
index 941f3e8..b301c58 100644
|
||||
--- a/svx/sdi/svx.sdi
|
||||
+++ b/svx/sdi/svx.sdi
|
||||
@@ -11100,6 +11100,53 @@ SfxVoidItem Substract SID_POLY_SUBSTRACT
|
||||
GroupId = GID_MODIFY;
|
||||
]
|
||||
|
||||
+SfxVoidItem EqualizeWidth SID_EQUALIZEWIDTH
|
||||
+()
|
||||
+[
|
||||
+ /* flags: */
|
||||
+ AutoUpdate = FALSE,
|
||||
+ Cachable = Cachable,
|
||||
+ FastCall = FALSE,
|
||||
+ HasCoreId = FALSE,
|
||||
+ HasDialog = FALSE,
|
||||
+ ReadOnlyDoc = FALSE,
|
||||
+ Toggle = FALSE,
|
||||
+ Container = FALSE,
|
||||
+ RecordAbsolute = FALSE,
|
||||
+ RecordPerSet;
|
||||
+ Synchron;
|
||||
+
|
||||
+ /* config: */
|
||||
+ AccelConfig = TRUE,
|
||||
+ MenuConfig = TRUE,
|
||||
+ StatusBarConfig = FALSE,
|
||||
+ ToolBoxConfig = TRUE,
|
||||
+ GroupId = GID_MODIFY;
|
||||
+]
|
||||
+
|
||||
+SfxVoidItem EqualizeHeight SID_EQUALIZEHEIGHT
|
||||
+()
|
||||
+[
|
||||
+ /* flags: */
|
||||
+ AutoUpdate = FALSE,
|
||||
+ Cachable = Cachable,
|
||||
+ FastCall = FALSE,
|
||||
+ HasCoreId = FALSE,
|
||||
+ HasDialog = FALSE,
|
||||
+ ReadOnlyDoc = FALSE,
|
||||
+ Toggle = FALSE,
|
||||
+ Container = FALSE,
|
||||
+ RecordAbsolute = FALSE,
|
||||
+ RecordPerSet;
|
||||
+ Synchron;
|
||||
+
|
||||
+ /* config: */
|
||||
+ AccelConfig = TRUE,
|
||||
+ MenuConfig = TRUE,
|
||||
+ StatusBarConfig = FALSE,
|
||||
+ ToolBoxConfig = TRUE,
|
||||
+ GroupId = GID_MODIFY;
|
||||
+]
|
||||
|
||||
SfxBoolItem SuperScript SID_SET_SUPER_SCRIPT
|
||||
|
||||
diff --git a/svx/source/svdraw/svdedtv2.cxx b/svx/source/svdraw/svdedtv2.cxx
|
||||
index 0a60082..ad7dd3f 100644
|
||||
--- a/svx/source/svdraw/svdedtv2.cxx
|
||||
+++ b/svx/source/svdraw/svdedtv2.cxx
|
||||
@@ -1173,6 +1173,44 @@ void SdrEditView::MergeMarkedObjects(SdrMergeMode eMode)
|
||||
}
|
||||
}
|
||||
|
||||
+void SdrEditView::EqualizeMarkedObjects(bool bWidth)
|
||||
+{
|
||||
+ const SdrMarkList& rMarkList = GetMarkedObjectList();
|
||||
+ size_t nMarked = rMarkList.GetMarkCount();
|
||||
+
|
||||
+ if (nMarked < 2)
|
||||
+ return;
|
||||
+
|
||||
+ SdrObject* pLastSelectedObj = rMarkList.GetMark(nMarked-1)->GetMarkedSdrObj();
|
||||
+ Size aLastRectSize(pLastSelectedObj->GetLogicRect().GetSize());
|
||||
+
|
||||
+ const bool bUndo = IsUndoEnabled();
|
||||
+
|
||||
+ if (bUndo)
|
||||
+ BegUndo();
|
||||
+
|
||||
+ for (size_t a = 0; a < nMarked-1; ++a)
|
||||
+ {
|
||||
+ SdrMark* pM = rMarkList.GetMark(a);
|
||||
+ SdrObject* pObj = pM->GetMarkedSdrObj();
|
||||
+ Rectangle aLogicRect(pObj->GetLogicRect());
|
||||
+ Size aLogicRectSize(aLogicRect.GetSize());
|
||||
+ if (bWidth)
|
||||
+ aLogicRectSize.Width() = aLastRectSize.Width();
|
||||
+ else
|
||||
+ aLogicRectSize.Height() = aLastRectSize.Height();
|
||||
+ aLogicRect.SetSize(aLogicRectSize);
|
||||
+ pObj->SetLogicRect(aLogicRect);
|
||||
+ }
|
||||
+
|
||||
+ SetUndoComment(
|
||||
+ ImpGetResStr(bWidth ? STR_EqualizeWidthMarkedObjects : STR_EqualizeHeightMarkedObjects),
|
||||
+ rMarkList.GetMarkDescription());
|
||||
+
|
||||
+ if (bUndo)
|
||||
+ EndUndo();
|
||||
+}
|
||||
+
|
||||
void SdrEditView::CombineMarkedObjects(bool bNoPolyPoly)
|
||||
{
|
||||
// #105899# Start of Combine-Undo put to front, else ConvertMarkedToPolyObj would
|
||||
diff --git a/svx/source/svdraw/svdstr.src b/svx/source/svdraw/svdstr.src
|
||||
index 364749a..6dc4420 100644
|
||||
--- a/svx/source/svdraw/svdstr.src
|
||||
+++ b/svx/source/svdraw/svdstr.src
|
||||
@@ -823,6 +823,14 @@ String STR_DistributeMarkedObjects
|
||||
{
|
||||
Text [ en-US ] = "Distribute selected objects";
|
||||
};
|
||||
+String STR_EqualizeWidthMarkedObjects
|
||||
+{
|
||||
+ Text [ en-US ] = "Equalize Width %1";
|
||||
+};
|
||||
+String STR_EqualizeHeightMarkedObjects
|
||||
+{
|
||||
+ Text [ en-US ] = "Equalize Height %1";
|
||||
+};
|
||||
String STR_EditCombine_OnePoly
|
||||
{
|
||||
Text [ en-US ] = "Combine %1" ;
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,359 +0,0 @@
|
||||
From 402f64fc8464366015259d44e238a77cb7d9d776 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Wed, 30 Sep 2015 13:30:36 +0100
|
||||
Subject: [PATCH] implement save slide background for impress
|
||||
|
||||
to go along with the existing "set background",
|
||||
same sort of thing as the competitor's effort
|
||||
|
||||
(cherry picked from commit ed25a000ab67324075e68d9a7f3ca657b4e6a573)
|
||||
|
||||
Change-Id: I2a1106771ead2cd926f3d631850447499340697c
|
||||
---
|
||||
sd/inc/app.hrc | 3 +-
|
||||
sd/inc/sdcommands.h | 1 +
|
||||
sd/sdi/_drvwsh.sdi | 5 +++
|
||||
sd/sdi/sdraw.sdi | 24 +++++++++++
|
||||
sd/source/ui/app/menuids_tmpl.src | 11 ++++-
|
||||
sd/source/ui/func/fupage.cxx | 85 +++++++++++++++++++++++---------------
|
||||
sd/source/ui/inc/DrawViewShell.hxx | 4 ++
|
||||
sd/source/ui/view/drviews2.cxx | 1 +
|
||||
sd/source/ui/view/drviews7.cxx | 25 ++++++++++-
|
||||
9 files changed, 122 insertions(+), 37 deletions(-)
|
||||
|
||||
diff --git a/sd/inc/app.hrc b/sd/inc/app.hrc
|
||||
index 4f3d82e..956c7d4 100644
|
||||
--- a/sd/inc/app.hrc
|
||||
+++ b/sd/inc/app.hrc
|
||||
@@ -421,7 +421,8 @@
|
||||
#define SID_SLIDE_SORTER_MULTI_PANE_GUI (SID_SD_START+421)
|
||||
|
||||
#define SID_SELECT_BACKGROUND (SID_SD_START+422)
|
||||
-
|
||||
+#define SID_SAVE_BACKGROUND (SID_SD_START+423)
|
||||
+ // FREE
|
||||
// Slots for the tool pane popup
|
||||
#define SID_TP_APPLY_TO_ALL_SLIDES (SID_SD_START+425)
|
||||
#define SID_TP_APPLY_TO_SELECTED_SLIDES (SID_SD_START+426)
|
||||
diff --git a/sd/inc/sdcommands.h b/sd/inc/sdcommands.h
|
||||
index 2f4bf56..1d3502f 100644
|
||||
--- a/sd/inc/sdcommands.h
|
||||
+++ b/sd/inc/sdcommands.h
|
||||
@@ -90,6 +90,7 @@
|
||||
#define CMD_SID_DELETE_MASTER_PAGE ".uno:DeleteMasterPage"
|
||||
#define CMD_SID_RENAME_MASTER_PAGE ".uno:RenameMasterPage"
|
||||
#define CMD_SID_SELECT_BACKGROUND ".uno:SelectBackground"
|
||||
+#define CMD_SID_SAVE_BACKGROUND ".uno:SaveBackground"
|
||||
#define CMD_SID_DISPLAY_MASTER_BACKGROUND ".uno:DisplayMasterBackground"
|
||||
#define CMD_SID_DISPLAY_MASTER_OBJECTS ".uno:DisplayMasterObjects"
|
||||
#define CMD_SID_TABLE_DISTRIBUTE_COLUMNS ".uno:DistributeColumns"
|
||||
diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi
|
||||
index 263a8ed..28ee22c 100644
|
||||
--- a/sd/sdi/_drvwsh.sdi
|
||||
+++ b/sd/sdi/_drvwsh.sdi
|
||||
@@ -2662,6 +2662,11 @@ interface DrawView
|
||||
ExecMethod = FuTemporary ;
|
||||
StateMethod = GetMenuState ;
|
||||
]
|
||||
+ SID_SAVE_BACKGROUND
|
||||
+ [
|
||||
+ ExecMethod = FuTemporary ;
|
||||
+ StateMethod = GetMenuState ;
|
||||
+ ]
|
||||
SID_DISPLAY_MASTER_BACKGROUND
|
||||
[
|
||||
ExecMethod = FuTemporary ;
|
||||
diff --git a/sd/sdi/sdraw.sdi b/sd/sdi/sdraw.sdi
|
||||
index 7297c1f..d2d5d28 100644
|
||||
--- a/sd/sdi/sdraw.sdi
|
||||
+++ b/sd/sdi/sdraw.sdi
|
||||
@@ -6439,6 +6439,30 @@ SfxVoidItem SelectBackground SID_SELECT_BACKGROUND
|
||||
GroupId = GID_OPTIONS;
|
||||
]
|
||||
|
||||
+SfxVoidItem SaveBackground SID_SAVE_BACKGROUND
|
||||
+()
|
||||
+[
|
||||
+ /* flags: */
|
||||
+ AutoUpdate = FALSE,
|
||||
+ Cachable = Cachable,
|
||||
+ FastCall = FALSE,
|
||||
+ HasCoreId = FALSE,
|
||||
+ HasDialog = TRUE,
|
||||
+ ReadOnlyDoc = TRUE,
|
||||
+ Toggle = FALSE,
|
||||
+ Container = FALSE,
|
||||
+ RecordAbsolute = FALSE,
|
||||
+ RecordPerSet;
|
||||
+ Synchron;
|
||||
+
|
||||
+ /* config: */
|
||||
+ AccelConfig = FALSE,
|
||||
+ MenuConfig = FALSE,
|
||||
+ StatusBarConfig = FALSE,
|
||||
+ ToolBoxConfig = FALSE,
|
||||
+ GroupId = GID_OPTIONS;
|
||||
+]
|
||||
+
|
||||
SfxBoolItem DisplayMasterBackground SID_DISPLAY_MASTER_BACKGROUND
|
||||
[
|
||||
/* flags: */
|
||||
diff --git a/sd/source/ui/app/menuids_tmpl.src b/sd/source/ui/app/menuids_tmpl.src
|
||||
index bf30830..6917de2 100644
|
||||
--- a/sd/source/ui/app/menuids_tmpl.src
|
||||
+++ b/sd/source/ui/app/menuids_tmpl.src
|
||||
@@ -138,6 +138,13 @@
|
||||
HelpId = CMD_SID_SELECT_BACKGROUND ; \
|
||||
Text [ en-US ] = "Set Background Image..." ; \
|
||||
};
|
||||
+#define MN_SAVE_BACKGROUND \
|
||||
+ MenuItem\
|
||||
+ {\
|
||||
+ Identifier = SID_SAVE_BACKGROUND ; \
|
||||
+ HelpId = CMD_SID_SAVE_BACKGROUND ; \
|
||||
+ Text [ en-US ] = "Save Background Image..." ; \
|
||||
+ };
|
||||
#define MN_DISPLAY_MASTER_BACKGROUND \
|
||||
MenuItem\
|
||||
{\
|
||||
@@ -169,6 +176,7 @@
|
||||
MN_SELECT_BACKGROUND\
|
||||
MN_PAGE_DESIGN\
|
||||
MN_RENAME_PAGE\
|
||||
+ MN_SAVE_BACKGROUND\
|
||||
};\
|
||||
};\
|
||||
Text [ en-US ] = "Pag~e" ; \
|
||||
@@ -200,7 +208,8 @@
|
||||
MN_DISPLAY_MASTER_OBJECTS\
|
||||
};\
|
||||
};\
|
||||
- };
|
||||
+ }; \
|
||||
+ MN_SAVE_BACKGROUND
|
||||
|
||||
// Layer
|
||||
#define MN_RENAME_LAYER \
|
||||
diff --git a/sd/source/ui/func/fupage.cxx b/sd/source/ui/func/fupage.cxx
|
||||
index 83146e4..d3a053f 100644
|
||||
--- a/sd/source/ui/func/fupage.cxx
|
||||
+++ b/sd/source/ui/func/fupage.cxx
|
||||
@@ -36,6 +36,7 @@
|
||||
#include <svx/svdundo.hxx>
|
||||
#include <editeng/eeitem.hxx>
|
||||
#include <editeng/frmdiritem.hxx>
|
||||
+#include <svx/graphichelper.hxx>
|
||||
#include <svx/xbtmpit.hxx>
|
||||
#include <svx/xsetit.hxx>
|
||||
#include <editeng/ulspitem.hxx>
|
||||
@@ -164,6 +165,41 @@ void FuPage::Deactivate()
|
||||
{
|
||||
}
|
||||
|
||||
+void MergePageBackgroundFilling(SdPage *pPage, SdStyleSheet *pStyleSheet, bool bMasterPage, SfxItemSet& rMergedAttr)
|
||||
+{
|
||||
+ if (bMasterPage)
|
||||
+ {
|
||||
+ if (pStyleSheet)
|
||||
+ mergeItemSetsImpl(rMergedAttr, pStyleSheet->GetItemSet());
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ // Only this page, get attributes for background fill
|
||||
+ const SfxItemSet& rBackgroundAttributes = pPage->getSdrPageProperties().GetItemSet();
|
||||
+
|
||||
+ if(drawing::FillStyle_NONE != static_cast<const XFillStyleItem&>(rBackgroundAttributes.Get(XATTR_FILLSTYLE)).GetValue())
|
||||
+ {
|
||||
+ // page attributes are used, take them
|
||||
+ rMergedAttr.Put(rBackgroundAttributes);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ if(pStyleSheet
|
||||
+ && drawing::FillStyle_NONE != static_cast<const XFillStyleItem&>(pStyleSheet->GetItemSet().Get(XATTR_FILLSTYLE)).GetValue())
|
||||
+ {
|
||||
+ // if the page has no fill style, use the settings from the
|
||||
+ // background stylesheet (if used)
|
||||
+ mergeItemSetsImpl(rMergedAttr, pStyleSheet->GetItemSet());
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ // no fill style from page, start with no fill style
|
||||
+ rMergedAttr.Put(XFillStyleItem(drawing::FillStyle_NONE));
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
const SfxItemSet* FuPage::ExecuteDialog( vcl::Window* pParent )
|
||||
{
|
||||
if (!mpDrawViewShell)
|
||||
@@ -247,44 +283,27 @@ const SfxItemSet* FuPage::ExecuteDialog( vcl::Window* pParent )
|
||||
// merge page background filling to the dialogs input set
|
||||
if( mbDisplayBackgroundTabPage )
|
||||
{
|
||||
- if( mbMasterPage )
|
||||
- {
|
||||
- if(pStyleSheet)
|
||||
- mergeItemSetsImpl( aMergedAttr, pStyleSheet->GetItemSet() );
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- // Only this page, get attributes for background fill
|
||||
- const SfxItemSet& rBackgroundAttributes = mpPage->getSdrPageProperties().GetItemSet();
|
||||
-
|
||||
- if(drawing::FillStyle_NONE != static_cast<const XFillStyleItem&>(rBackgroundAttributes.Get(XATTR_FILLSTYLE)).GetValue())
|
||||
- {
|
||||
- // page attributes are used, take them
|
||||
- aMergedAttr.Put(rBackgroundAttributes);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- if(pStyleSheet
|
||||
- && drawing::FillStyle_NONE != static_cast<const XFillStyleItem&>(pStyleSheet->GetItemSet().Get(XATTR_FILLSTYLE)).GetValue())
|
||||
- {
|
||||
- // if the page has no fill style, use the settings from the
|
||||
- // background stylesheet (if used)
|
||||
- mergeItemSetsImpl(aMergedAttr, pStyleSheet->GetItemSet());
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- // no fill style from page, start with no fill style
|
||||
- aMergedAttr.Put(XFillStyleItem(drawing::FillStyle_NONE));
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
+ MergePageBackgroundFilling(mpPage, pStyleSheet, mbMasterPage, aMergedAttr);
|
||||
}
|
||||
|
||||
boost::scoped_ptr< SfxItemSet > pTempSet;
|
||||
|
||||
- if( GetSlotID() == SID_SELECT_BACKGROUND )
|
||||
+ const sal_uInt16 nId = GetSlotID();
|
||||
+ if (nId == SID_SAVE_BACKGROUND)
|
||||
+ {
|
||||
+ const XFillStyleItem& rStyleItem =
|
||||
+ static_cast<const XFillStyleItem&>(aMergedAttr.Get(XATTR_FILLSTYLE));
|
||||
+ if (drawing::FillStyle_BITMAP == (drawing::FillStyle)rStyleItem.GetValue())
|
||||
+ {
|
||||
+ const XFillBitmapItem& rBitmap =
|
||||
+ static_cast<const XFillBitmapItem&>(aMergedAttr.Get(XATTR_FILLBITMAP));
|
||||
+ const GraphicObject& rGraphicObj = rBitmap.GetGraphicObject();
|
||||
+ GraphicHelper::ExportGraphic(rGraphicObj.GetGraphic(), "");
|
||||
+ }
|
||||
+ }
|
||||
+ else if (nId == SID_SELECT_BACKGROUND)
|
||||
{
|
||||
- SvxOpenGraphicDialog aDlg(SdResId(STR_SET_BACKGROUND_PICTURE));
|
||||
+ SvxOpenGraphicDialog aDlg(SdResId(STR_SET_BACKGROUND_PICTURE));
|
||||
|
||||
if( aDlg.Execute() == GRFILTER_OK )
|
||||
{
|
||||
diff --git a/sd/source/ui/inc/DrawViewShell.hxx b/sd/source/ui/inc/DrawViewShell.hxx
|
||||
index 405e7af..5ec628c 100644
|
||||
--- a/sd/source/ui/inc/DrawViewShell.hxx
|
||||
+++ b/sd/source/ui/inc/DrawViewShell.hxx
|
||||
@@ -33,6 +33,7 @@
|
||||
|
||||
class Outliner;
|
||||
class SdPage;
|
||||
+class SdStyleSheet;
|
||||
class SdrExternalToolEdit;
|
||||
class DrawDocShell;
|
||||
class TabBar;
|
||||
@@ -509,6 +510,9 @@ private:
|
||||
std::vector<std::unique_ptr<SdrExternalToolEdit>> m_ExternalEdits;
|
||||
};
|
||||
|
||||
+ /// Merge the background properties together and deposit the result in rMergeAttr
|
||||
+ void MergePageBackgroundFilling(SdPage *pPage, SdStyleSheet *pStyleSheet, bool bMasterPage, SfxItemSet& rMergedAttr);
|
||||
+
|
||||
} // end of namespace sd
|
||||
|
||||
#endif
|
||||
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
|
||||
index e9c5f00..5c26c55 100644
|
||||
--- a/sd/source/ui/view/drviews2.cxx
|
||||
+++ b/sd/source/ui/view/drviews2.cxx
|
||||
@@ -1190,6 +1190,7 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
|
||||
break;
|
||||
|
||||
case SID_SELECT_BACKGROUND:
|
||||
+ case SID_SAVE_BACKGROUND:
|
||||
case SID_PAGESETUP: // BASIC ??
|
||||
{
|
||||
SetCurrentFunction( FuPage::Create( this, GetActiveWindow(), mpDrawView, GetDoc(), rReq ) );
|
||||
diff --git a/sd/source/ui/view/drviews7.cxx b/sd/source/ui/view/drviews7.cxx
|
||||
index 8b6d968..fba8bc1 100644
|
||||
--- a/sd/source/ui/view/drviews7.cxx
|
||||
+++ b/sd/source/ui/view/drviews7.cxx
|
||||
@@ -83,6 +83,7 @@
|
||||
#include "fuediglu.hxx"
|
||||
#include "fubullet.hxx"
|
||||
#include "fuformatpaintbrush.hxx"
|
||||
+#include "stlsheet.hxx"
|
||||
|
||||
#include <config_features.h>
|
||||
|
||||
@@ -714,6 +715,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
|
||||
{
|
||||
rSet.DisableItem(SID_PRESENTATION_LAYOUT);
|
||||
rSet.DisableItem(SID_SELECT_BACKGROUND);
|
||||
+ rSet.DisableItem(SID_SAVE_BACKGROUND);
|
||||
}
|
||||
|
||||
if (mePageKind == PK_NOTES)
|
||||
@@ -730,6 +732,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
|
||||
rSet.DisableItem(SID_MODIFYPAGE);
|
||||
|
||||
rSet.DisableItem(SID_SELECT_BACKGROUND);
|
||||
+ rSet.DisableItem(SID_SAVE_BACKGROUND);
|
||||
rSet.DisableItem(SID_INSERTLAYER);
|
||||
rSet.DisableItem(SID_LAYERMODE);
|
||||
rSet.DisableItem(SID_INSERTFILE);
|
||||
@@ -750,6 +753,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
|
||||
rSet.DisableItem(SID_INSERTFILE);
|
||||
rSet.DisableItem(SID_PAGEMODE);
|
||||
rSet.DisableItem(SID_SELECT_BACKGROUND);
|
||||
+ rSet.DisableItem(SID_SAVE_BACKGROUND);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1646,8 +1650,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
|
||||
|| rSet.GetItemState(SID_DISPLAY_MASTER_OBJECTS) == SfxItemState::DEFAULT)
|
||||
{
|
||||
SdPage* pPage = GetActualPage();
|
||||
- if (pPage != NULL
|
||||
- && GetDoc() != NULL)
|
||||
+ if (pPage != NULL && GetDoc() != NULL)
|
||||
{
|
||||
SetOfByte aVisibleLayers = pPage->TRG_GetMasterPageVisibleLayers();
|
||||
SdrLayerAdmin& rLayerAdmin = GetDoc()->GetLayerAdmin();
|
||||
@@ -1668,6 +1671,24 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
|
||||
}
|
||||
#endif
|
||||
|
||||
+ if (rSet.GetItemState(SID_SAVE_BACKGROUND) == SfxItemState::DEFAULT)
|
||||
+ {
|
||||
+ bool bDisableSaveBackground = true;
|
||||
+ SdPage* pPage = GetActualPage();
|
||||
+ if (pPage != NULL && GetDoc() != NULL)
|
||||
+ {
|
||||
+ SfxItemSet aMergedAttr(GetDoc()->GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST, 0);
|
||||
+ SdStyleSheet* pStyleSheet = pPage->getPresentationStyle(HID_PSEUDOSHEET_BACKGROUND);
|
||||
+ MergePageBackgroundFilling(pPage, pStyleSheet, meEditMode == EM_MASTERPAGE, aMergedAttr);
|
||||
+ if (drawing::FillStyle_BITMAP == static_cast<const XFillStyleItem&>(aMergedAttr.Get(XATTR_FILLSTYLE)).GetValue())
|
||||
+ {
|
||||
+ bDisableSaveBackground = false;
|
||||
+ }
|
||||
+ }
|
||||
+ if (bDisableSaveBackground)
|
||||
+ rSet.DisableItem(SID_SAVE_BACKGROUND);
|
||||
+ }
|
||||
+
|
||||
GetModeSwitchingMenuState (rSet);
|
||||
}
|
||||
|
||||
--
|
||||
2.4.3
|
||||
|
@ -1,26 +0,0 @@
|
||||
From 4c8197bc270ec65c147af3388e35403aa77fd02f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Fri, 28 Aug 2015 13:08:44 +0100
|
||||
Subject: [PATCH] implement undo for equalize-marked-objects
|
||||
|
||||
Change-Id: I245e08674b52c2a5648e9d7762101b8057fd30e9
|
||||
---
|
||||
svx/source/svdraw/svdedtv2.cxx | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/svx/source/svdraw/svdedtv2.cxx b/svx/source/svdraw/svdedtv2.cxx
|
||||
index 75c884c..719355d 100644
|
||||
--- a/svx/source/svdraw/svdedtv2.cxx
|
||||
+++ b/svx/source/svdraw/svdedtv2.cxx
|
||||
@@ -1200,6 +1200,8 @@ void SdrEditView::EqualizeMarkedObjects(bool bWidth)
|
||||
else
|
||||
aLogicRectSize.Height() = aLastRectSize.Height();
|
||||
aLogicRect.SetSize(aLogicRectSize);
|
||||
+ if (bUndo)
|
||||
+ AddUndo(GetModel()->GetSdrUndoFactory().CreateUndoGeoObject(*pObj));
|
||||
pObj->SetLogicRect(aLogicRect);
|
||||
}
|
||||
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,79 +0,0 @@
|
||||
From 35a3fb2ca34b30a1bdaf64f0091fcd42af6bfd2c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Tue, 1 Sep 2015 16:32:15 +0100
|
||||
Subject: [PATCH] implement undo of delete impress cell contents
|
||||
|
||||
Change-Id: I7aa99f3a6668e66b8d02e20b7ea1cf0862e5d760
|
||||
(cherry picked from commit d38e4b2ee73ad38881465f9f97eb8d8397ee98ff)
|
||||
---
|
||||
include/svx/svdstr.hrc | 1 +
|
||||
svx/source/svdraw/svdstr.src | 5 +++++
|
||||
svx/source/table/tablecontroller.cxx | 15 +++++++++++++--
|
||||
3 files changed, 19 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/include/svx/svdstr.hrc b/include/svx/svdstr.hrc
|
||||
index 90ef697..f45b55f 100644
|
||||
--- a/include/svx/svdstr.hrc
|
||||
+++ b/include/svx/svdstr.hrc
|
||||
@@ -711,5 +711,6 @@
|
||||
#define STR_TABLE_STYLE (SIP_Begin + 274)
|
||||
#define STR_TABLE_STYLE_SETTINGS (SIP_Begin + 275)
|
||||
#define SIP_SA_CROP_MARKERS (SIP_Begin + 276)
|
||||
+#define STR_TABLE_DELETE_CELL_CONTENTS (SIP_Begin + 277)
|
||||
|
||||
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|
||||
diff --git a/svx/source/svdraw/svdstr.src b/svx/source/svdraw/svdstr.src
|
||||
index 364749a..c7977c1 100644
|
||||
--- a/svx/source/svdraw/svdstr.src
|
||||
+++ b/svx/source/svdraw/svdstr.src
|
||||
@@ -2770,6 +2770,11 @@ String STR_TABLE_DISTRIBUTE_COLUMNS
|
||||
Text [ en-US ] = "Distribute columns" ;
|
||||
};
|
||||
|
||||
+String STR_TABLE_DELETE_CELL_CONTENTS
|
||||
+{
|
||||
+ Text [ en-US ] = "Delete cell contents" ;
|
||||
+};
|
||||
+
|
||||
String STR_TABLE_STYLE
|
||||
{
|
||||
Text [ en-US ] = "Table style" ;
|
||||
diff --git a/svx/source/table/tablecontroller.cxx b/svx/source/table/tablecontroller.cxx
|
||||
index 64b40da..6a8bd3f 100644
|
||||
--- a/svx/source/table/tablecontroller.cxx
|
||||
+++ b/svx/source/table/tablecontroller.cxx
|
||||
@@ -1331,6 +1331,10 @@ bool SvxTableController::DeleteMarked()
|
||||
{
|
||||
if( mxTable.is() )
|
||||
{
|
||||
+ const bool bUndo = mpModel && mpModel->IsUndoEnabled();
|
||||
+ if (bUndo)
|
||||
+ mpModel->BegUndo(ImpGetResStr(STR_TABLE_DELETE_CELL_CONTENTS));
|
||||
+
|
||||
CellPos aStart, aEnd;
|
||||
getSelectedCells( aStart, aEnd );
|
||||
for( sal_Int32 nRow = aStart.mnRow; nRow <= aEnd.mnRow; nRow++ )
|
||||
@@ -1338,11 +1342,18 @@ bool SvxTableController::DeleteMarked()
|
||||
for( sal_Int32 nCol = aStart.mnCol; nCol <= aEnd.mnCol; nCol++ )
|
||||
{
|
||||
CellRef xCell( dynamic_cast< Cell* >( mxTable->getCellByPosition( nCol, nRow ).get() ) );
|
||||
- if( xCell.is() )
|
||||
- xCell->SetOutlinerParaObject( 0 );
|
||||
+ if (xCell.is() && xCell->hasText())
|
||||
+ {
|
||||
+ if (bUndo)
|
||||
+ xCell->AddUndo();
|
||||
+ xCell->SetOutlinerParaObject(0);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
+ if (bUndo)
|
||||
+ mpModel->EndUndo();
|
||||
+
|
||||
UpdateTableShape();
|
||||
return true;
|
||||
}
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,97 +0,0 @@
|
||||
From b12cd99fd46e81e710479e2530e80c75404f3443 Mon Sep 17 00:00:00 2001
|
||||
From: David Tardon <dtardon@redhat.com>
|
||||
Date: Fri, 19 Jun 2015 13:52:49 +0200
|
||||
Subject: [PATCH] rhbz#1233420 handle inexistent cond. format
|
||||
|
||||
Change-Id: I3fbbd0f3b42a3be1c2a9c54eb8f35dd18f550b16
|
||||
---
|
||||
sc/source/core/data/table4.cxx | 45 ++++++++++++++++++++++++++++--------------
|
||||
1 file changed, 30 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/sc/source/core/data/table4.cxx b/sc/source/core/data/table4.cxx
|
||||
index a1bc8ee5..bc8e40e 100644
|
||||
--- a/sc/source/core/data/table4.cxx
|
||||
+++ b/sc/source/core/data/table4.cxx
|
||||
@@ -618,9 +618,12 @@ void ScTable::FillAuto( SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2,
|
||||
itr != itrEnd; ++itr)
|
||||
{
|
||||
ScConditionalFormat* pCondFormat = mpCondFormatList->GetFormat(*itr);
|
||||
- ScRangeList aRange = pCondFormat->GetRange();
|
||||
- aRange.Join(ScRange(nCol, nY1, nTab, nCol, nY2, nTab));
|
||||
- pCondFormat->SetRange(aRange);
|
||||
+ if (pCondFormat)
|
||||
+ {
|
||||
+ ScRangeList aRange = pCondFormat->GetRange();
|
||||
+ aRange.Join(ScRange(nCol, nY1, nTab, nCol, nY2, nTab));
|
||||
+ pCondFormat->SetRange(aRange);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -648,9 +651,12 @@ void ScTable::FillAuto( SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2,
|
||||
itr != itrEnd; ++itr)
|
||||
{
|
||||
ScConditionalFormat* pCondFormat = mpCondFormatList->GetFormat(*itr);
|
||||
- ScRangeList aRange = pCondFormat->GetRange();
|
||||
- aRange.Join(ScRange(nCol, nRow, nTab, nCol, nRow, nTab));
|
||||
- pCondFormat->SetRange(aRange);
|
||||
+ if (pCondFormat)
|
||||
+ {
|
||||
+ ScRangeList aRange = pCondFormat->GetRange();
|
||||
+ aRange.Join(ScRange(nCol, nRow, nTab, nCol, nRow, nTab));
|
||||
+ pCondFormat->SetRange(aRange);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1568,9 +1574,12 @@ void ScTable::FillSeries( SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2,
|
||||
itr != itrEnd; ++itr)
|
||||
{
|
||||
ScConditionalFormat* pCondFormat = mpCondFormatList->GetFormat(*itr);
|
||||
- ScRangeList aRange = pCondFormat->GetRange();
|
||||
- aRange.Join(ScRange(nCol, nIMin, nTab, nCol, nIMax, nTab));
|
||||
- pCondFormat->SetRange(aRange);
|
||||
+ if (pCondFormat)
|
||||
+ {
|
||||
+ ScRangeList aRange = pCondFormat->GetRange();
|
||||
+ aRange.Join(ScRange(nCol, nIMin, nTab, nCol, nIMax, nTab));
|
||||
+ pCondFormat->SetRange(aRange);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -1585,9 +1594,12 @@ void ScTable::FillSeries( SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2,
|
||||
itr != itrEnd; ++itr)
|
||||
{
|
||||
ScConditionalFormat* pCondFormat = mpCondFormatList->GetFormat(*itr);
|
||||
- ScRangeList aRange = pCondFormat->GetRange();
|
||||
- aRange.Join(ScRange(nCol, nAtRow, nTab, nCol, nAtRow, nTab));
|
||||
- pCondFormat->SetRange(aRange);
|
||||
+ if (pCondFormat)
|
||||
+ {
|
||||
+ ScRangeList aRange = pCondFormat->GetRange();
|
||||
+ aRange.Join(ScRange(nCol, nAtRow, nTab, nCol, nAtRow, nTab));
|
||||
+ pCondFormat->SetRange(aRange);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1603,9 +1615,12 @@ void ScTable::FillSeries( SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2,
|
||||
itr != itrEnd; ++itr)
|
||||
{
|
||||
ScConditionalFormat* pCondFormat = mpCondFormatList->GetFormat(*itr);
|
||||
- ScRangeList aRange = pCondFormat->GetRange();
|
||||
- aRange.Join(ScRange(nAtCol, static_cast<SCROW>(nRow), nTab, nAtCol, static_cast<SCROW>(nRow), nTab));
|
||||
- pCondFormat->SetRange(aRange);
|
||||
+ if (pCondFormat)
|
||||
+ {
|
||||
+ ScRangeList aRange = pCondFormat->GetRange();
|
||||
+ aRange.Join(ScRange(nAtCol, static_cast<SCROW>(nRow), nTab, nAtCol, static_cast<SCROW>(nRow), nTab));
|
||||
+ pCondFormat->SetRange(aRange);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
}
|
||||
--
|
||||
2.4.2
|
||||
|
@ -1,124 +0,0 @@
|
||||
From aff2d164a982917c57be5e8a18c6c1366b836c09 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Fri, 28 Aug 2015 15:13:41 +0100
|
||||
Subject: [PATCH] time stamp object selections and use newest as ref for
|
||||
equalization
|
||||
|
||||
Change-Id: I1bf22ddbaf263b240288f70d03d6949611f86b69
|
||||
---
|
||||
include/svx/svdmark.hxx | 8 ++++++++
|
||||
svx/source/svdraw/svdedtv2.cxx | 18 ++++++++++++++++--
|
||||
svx/source/svdraw/svdmark.cxx | 12 +++++++++---
|
||||
3 files changed, 33 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/include/svx/svdmark.hxx b/include/svx/svdmark.hxx
|
||||
index cba0a75..aee9dd7 100644
|
||||
--- a/include/svx/svdmark.hxx
|
||||
+++ b/include/svx/svdmark.hxx
|
||||
@@ -42,7 +42,10 @@ typedef std::set<sal_uInt16> SdrUShortCont;
|
||||
// Everything a View needs to know about a selected object
|
||||
class SVX_DLLPUBLIC SdrMark : public sdr::ObjectUser
|
||||
{
|
||||
+private:
|
||||
+ void setTime();
|
||||
protected:
|
||||
+ sal_Int64 mnTimeStamp;
|
||||
SdrObject* mpSelectedSdrObject; // the selected object
|
||||
SdrPageView* mpPageView;
|
||||
SdrUShortCont* mpPoints; // Selected Points
|
||||
@@ -145,6 +148,11 @@ public:
|
||||
|
||||
return mpGluePoints;
|
||||
}
|
||||
+
|
||||
+ sal_Int64 getTimeStamp() const
|
||||
+ {
|
||||
+ return mnTimeStamp;
|
||||
+ }
|
||||
};
|
||||
|
||||
class SVX_DLLPUBLIC SdrMarkList
|
||||
diff --git a/svx/source/svdraw/svdedtv2.cxx b/svx/source/svdraw/svdedtv2.cxx
|
||||
index 719355d..090efa7 100644
|
||||
--- a/svx/source/svdraw/svdedtv2.cxx
|
||||
+++ b/svx/source/svdraw/svdedtv2.cxx
|
||||
@@ -1181,7 +1181,19 @@ void SdrEditView::EqualizeMarkedObjects(bool bWidth)
|
||||
if (nMarked < 2)
|
||||
return;
|
||||
|
||||
- SdrObject* pLastSelectedObj = rMarkList.GetMark(nMarked-1)->GetMarkedSdrObj();
|
||||
+ size_t nLastSelected = 0;
|
||||
+ sal_Int64 nLastSelectedTime = rMarkList.GetMark(0)->getTimeStamp();
|
||||
+ for (size_t a = 1; a < nMarked; ++a)
|
||||
+ {
|
||||
+ sal_Int64 nCandidateTime = rMarkList.GetMark(a)->getTimeStamp();
|
||||
+ if (nCandidateTime > nLastSelectedTime)
|
||||
+ {
|
||||
+ nLastSelectedTime = nCandidateTime;
|
||||
+ nLastSelected = a;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ SdrObject* pLastSelectedObj = rMarkList.GetMark(nLastSelected)->GetMarkedSdrObj();
|
||||
Size aLastRectSize(pLastSelectedObj->GetLogicRect().GetSize());
|
||||
|
||||
const bool bUndo = IsUndoEnabled();
|
||||
@@ -1189,8 +1201,10 @@ void SdrEditView::EqualizeMarkedObjects(bool bWidth)
|
||||
if (bUndo)
|
||||
BegUndo();
|
||||
|
||||
- for (size_t a = 0; a < nMarked-1; ++a)
|
||||
+ for (size_t a = 0; a < nMarked; ++a)
|
||||
{
|
||||
+ if (a == nLastSelected)
|
||||
+ continue;
|
||||
SdrMark* pM = rMarkList.GetMark(a);
|
||||
SdrObject* pObj = pM->GetMarkedSdrObj();
|
||||
Rectangle aLogicRect(pObj->GetLogicRect());
|
||||
diff --git a/svx/source/svdraw/svdmark.cxx b/svx/source/svdraw/svdmark.cxx
|
||||
index 7ddde61..8b7f3e09c 100644
|
||||
--- a/svx/source/svdraw/svdmark.cxx
|
||||
+++ b/svx/source/svdraw/svdmark.cxx
|
||||
@@ -38,8 +38,12 @@
|
||||
#include <svl/SfxBroadcaster.hxx>
|
||||
#include <svx/svdoedge.hxx>
|
||||
|
||||
-
|
||||
-
|
||||
+void SdrMark::setTime()
|
||||
+{
|
||||
+ TimeValue aNow;
|
||||
+ osl_getSystemTime(&aNow);
|
||||
+ mnTimeStamp = sal_Int64(aNow.Seconds) * 1000000000L + aNow.Nanosec;
|
||||
+}
|
||||
|
||||
SdrMark::SdrMark(SdrObject* pNewObj, SdrPageView* pNewPageView)
|
||||
: mpSelectedSdrObject(pNewObj),
|
||||
@@ -55,10 +59,12 @@ SdrMark::SdrMark(SdrObject* pNewObj, SdrPageView* pNewPageView)
|
||||
{
|
||||
mpSelectedSdrObject->AddObjectUser( *this );
|
||||
}
|
||||
+ setTime();
|
||||
}
|
||||
|
||||
SdrMark::SdrMark(const SdrMark& rMark)
|
||||
: ObjectUser(),
|
||||
+ mnTimeStamp(0),
|
||||
mpSelectedSdrObject(0L),
|
||||
mpPageView(0L),
|
||||
mpPoints(0L),
|
||||
@@ -117,10 +123,10 @@ void SdrMark::SetMarkedSdrObj(SdrObject* pNewObj)
|
||||
}
|
||||
}
|
||||
|
||||
-
|
||||
SdrMark& SdrMark::operator=(const SdrMark& rMark)
|
||||
{
|
||||
SetMarkedSdrObj(rMark.mpSelectedSdrObject);
|
||||
+ mnTimeStamp = rMark.mnTimeStamp;
|
||||
mpPageView = rMark.mpPageView;
|
||||
mbCon1 = rMark.mbCon1;
|
||||
mbCon2 = rMark.mbCon2;
|
||||
--
|
||||
2.4.0
|
||||
|
@ -0,0 +1,51 @@
|
||||
From ab6d77264008cb94ff387b4011961f82fcd5754c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Tue, 20 Oct 2015 10:10:16 +0100
|
||||
Subject: [PATCH] use far simpler size group
|
||||
|
||||
Change-Id: I54d658951fb90892d006b265e3d35d91991e73d8
|
||||
---
|
||||
cui/uiconfig/ui/slantcornertabpage.ui | 18 ++++--------------
|
||||
1 file changed, 4 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/cui/uiconfig/ui/slantcornertabpage.ui b/cui/uiconfig/ui/slantcornertabpage.ui
|
||||
index 2751144..b3ce646 100644
|
||||
--- a/cui/uiconfig/ui/slantcornertabpage.ui
|
||||
+++ b/cui/uiconfig/ui/slantcornertabpage.ui
|
||||
@@ -394,8 +394,12 @@
|
||||
</object>
|
||||
<object class="GtkSizeGroup" id="sizegroup1">
|
||||
<widgets>
|
||||
+ <widget name="label5"/>
|
||||
+ <widget name="label6"/>
|
||||
<widget name="FT_RADIUS"/>
|
||||
<widget name="FT_ANGLE"/>
|
||||
+ <widget name="label4"/>
|
||||
+ <widget name="label7"/>
|
||||
</widgets>
|
||||
</object>
|
||||
<object class="GtkSizeGroup" id="sizegroup2">
|
||||
@@ -404,20 +408,6 @@
|
||||
<widget name="MTR_FLD_ANGLE:0.00degrees"/>
|
||||
</widgets>
|
||||
</object>
|
||||
- <object class="GtkSizeGroup" id="sizegroup3">
|
||||
- <widgets>
|
||||
- <widget name="label5"/>
|
||||
- <widget name="label6"/>
|
||||
- <widget name="FT_RADIUS"/>
|
||||
- </widgets>
|
||||
- </object>
|
||||
- <object class="GtkSizeGroup" id="sizegroup4">
|
||||
- <widgets>
|
||||
- <widget name="FT_ANGLE"/>
|
||||
- <widget name="label4"/>
|
||||
- <widget name="label7"/>
|
||||
- </widgets>
|
||||
- </object>
|
||||
<object class="GtkSizeGroup" id="sizegroup5">
|
||||
<widgets>
|
||||
<widget name="controlx1:0.00cm"/>
|
||||
--
|
||||
2.5.0
|
||||
|
@ -1,61 +0,0 @@
|
||||
From d9aed0bc2e741fa02a6ffdf90193aae7ce471e52 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Tue, 8 Sep 2015 09:45:12 +0100
|
||||
Subject: [PATCH] Related: tdf#93676 msword wraps slightly differently than us
|
||||
|
||||
Change-Id: I688d4d193709d9c9829065c87f0d656a94fd9f16
|
||||
---
|
||||
sw/source/filter/ww8/docxsdrexport.cxx | 16 +++++++++++++++-
|
||||
sw/source/filter/ww8/wrtw8esh.cxx | 2 +-
|
||||
2 files changed, 16 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/sw/source/filter/ww8/docxsdrexport.cxx b/sw/source/filter/ww8/docxsdrexport.cxx
|
||||
index 02b134a..71a357e 100644
|
||||
--- a/sw/source/filter/ww8/docxsdrexport.cxx
|
||||
+++ b/sw/source/filter/ww8/docxsdrexport.cxx
|
||||
@@ -516,6 +516,21 @@ void DocxSdrExport::startDMLAnchorInline(const SwFrameFormat* pFrameFormat, cons
|
||||
}
|
||||
m_pImpl->m_pSerializer->endElementNS(XML_wp, XML_positionH);
|
||||
m_pImpl->m_pSerializer->startElementNS(XML_wp, XML_positionV, XML_relativeFrom, relativeFromV, FSEND);
|
||||
+
|
||||
+ sal_Int64 nTwipstoEMU = TwipsToEMU(aPos.Y);
|
||||
+
|
||||
+ // tdf#93675, 0 below line/paragraph and/or top line/paragraph with
|
||||
+ // wrap top+bottom or other wraps is affecting the line directly
|
||||
+ // above the anchor line, which seems odd, but a tiny adjustment
|
||||
+ // here to bring the top down convinces msoffice to wrap like us
|
||||
+ if (nTwipstoEMU == 0 &&
|
||||
+ (strcmp(relativeFromV, "line") == 0 || strcmp(relativeFromV, "paragraph") == 0) &&
|
||||
+ (!alignV || strcmp(alignV, "top") == 0))
|
||||
+ {
|
||||
+ alignV = NULL;
|
||||
+ nTwipstoEMU = 635;
|
||||
+ }
|
||||
+
|
||||
if (alignV != NULL)
|
||||
{
|
||||
m_pImpl->m_pSerializer->startElementNS(XML_wp, XML_align, FSEND);
|
||||
@@ -525,7 +540,6 @@ void DocxSdrExport::startDMLAnchorInline(const SwFrameFormat* pFrameFormat, cons
|
||||
else
|
||||
{
|
||||
m_pImpl->m_pSerializer->startElementNS(XML_wp, XML_posOffset, FSEND);
|
||||
- sal_Int64 nTwipstoEMU = TwipsToEMU(aPos.Y);
|
||||
if (nTwipstoEMU > MAX_INTEGER_VALUE)
|
||||
{
|
||||
nTwipstoEMU = MAX_INTEGER_VALUE;
|
||||
diff --git a/sw/source/filter/ww8/wrtw8esh.cxx b/sw/source/filter/ww8/wrtw8esh.cxx
|
||||
index fd6dfbc..2b7cebe 100644
|
||||
--- a/sw/source/filter/ww8/wrtw8esh.cxx
|
||||
+++ b/sw/source/filter/ww8/wrtw8esh.cxx
|
||||
@@ -810,7 +810,7 @@ void PlcDrawObj::WritePlc( WW8Export& rWrt ) const
|
||||
// wrap top+bottom or other wraps is affecting the line directly
|
||||
// above the anchor line, which seems odd, but a tiny adjustment
|
||||
// here to bring the top down convinces msoffice to wrap like us
|
||||
- if (nTop < 8 && !rFrameFormat.IsInline() &&
|
||||
+ if (nTop == 0 && !rFrameFormat.IsInline() &&
|
||||
rVOr.GetVertOrient() == text::VertOrientation::NONE &&
|
||||
rVOr.GetRelationOrient() == text::RelOrientation::FRAME)
|
||||
{
|
||||
--
|
||||
2.1.0
|
||||
|
Loading…
Reference in new issue