diff options
28 files changed, 311 insertions, 59 deletions
diff --git a/editeng/source/items/frmitems.cxx b/editeng/source/items/frmitems.cxx index d6da0edc1bc6..0813021dd4e3 100644 --- a/editeng/source/items/frmitems.cxx +++ b/editeng/source/items/frmitems.cxx @@ -3314,6 +3314,11 @@ bool SvxBrushItem::QueryValue( uno::Any& rVal, sal_uInt8 nMemberId ) const rVal <<= ( aColor.GetTransparency() == 0xff ); break; + case MID_GRAPHIC_URL: + { + throw uno::RuntimeException("Getting from this property is not unsupported"); + } + break; case MID_GRAPHIC: { uno::Reference<graphic::XGraphic> xGraphic; @@ -3396,13 +3401,24 @@ bool SvxBrushItem::PutValue( const uno::Any& rVal, sal_uInt8 nMemberId ) aColor.SetTransparency( Any2Bool( rVal ) ? 0xff : 0 ); break; + case MID_GRAPHIC_URL: case MID_GRAPHIC: { - if (rVal.getValueType() == cppu::UnoType<graphic::XGraphic>::get()) + Graphic aGraphic; + + if (rVal.getValueType() == ::cppu::UnoType<OUString>::get()) + { + OUString aURL = rVal.get<OUString>(); + aGraphic = vcl::graphic::loadFromURL(aURL); + } + else if (rVal.getValueType() == cppu::UnoType<graphic::XGraphic>::get()) { auto xGraphic = rVal.get<uno::Reference<graphic::XGraphic>>(); + aGraphic = Graphic(xGraphic); + } - Graphic aGraphic(xGraphic); + if (aGraphic) + { maStrLink.clear(); std::unique_ptr<GraphicObject> xOldGrfObj(std::move(xGraphicObject)); diff --git a/include/editeng/memberids.h b/include/editeng/memberids.h index 71de74d3a859..6c1e2d303041 100644 --- a/include/editeng/memberids.h +++ b/include/editeng/memberids.h @@ -158,6 +158,7 @@ #define MID_GRAPHIC_POSITION 1 #define MID_GRAPHIC 2 #define MID_GRAPHIC_TRANSPARENT 3 +#define MID_GRAPHIC_URL 4 #define MID_GRAPHIC_FILTER 5 #define MID_GRAPHIC_REPEAT 6 #define MID_GRAPHIC_TRANSPARENCY 7 diff --git a/offapi/com/sun/star/style/PageProperties.idl b/offapi/com/sun/star/style/PageProperties.idl index 7ae84806e1ba..627aa09cb952 100644 --- a/offapi/com/sun/star/style/PageProperties.idl +++ b/offapi/com/sun/star/style/PageProperties.idl @@ -29,10 +29,9 @@ #include <com/sun/star/text/XTextColumns.idl> #include <com/sun/star/container/XNameContainer.idl> #include <com/sun/star/text/WritingMode2.idl> +#include <com/sun/star/graphic/XGraphic.idl> - - module com { module sun { module star { module style { - +module com { module sun { module star { module style { /** describes the style of pages. */ @@ -42,14 +41,24 @@ published service PageProperties */ [property] com::sun::star::util::Color BackColor; - /** - */ - //[property] BackGraphic; - /** contains the URL of the background graphic. + + @deprecated as of LibreOffice 6.1 - use BackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the BackGraphic + property. */ [property] string BackGraphicURL; + /** contains the graphic of the background. + + @since LibreOffice 6.1 + */ + [property] com::sun::star::graphic::XGraphic BackGraphic; + /** contains the filter name of the background graphic. */ [property] string BackGraphicFilter; @@ -169,14 +178,24 @@ published service PageProperties */ [property, maybevoid] com::sun::star::util::Color HeaderBackColor; - /** - */ - //[property, maybevoid] HeaderBackGraphic; - /** contains the URL of the background graphic of the header. + + @deprecated as of LibreOffice 6.1 - use HeaderBackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the HeaderBackGraphic + property. */ [property, maybevoid] string HeaderBackGraphicURL; + /** contains the graphic of the background of the header. + + @since LibreOffice 6.1 + */ + [property, maybevoid] com::sun::star::graphic::XGraphic HeaderBackGraphic; + /** contains the filter name of the background graphic of the header. */ [property, maybevoid] string HeaderBackGraphicFilter; @@ -279,9 +298,23 @@ published service PageProperties [property, maybevoid] com::sun::star::util::Color FooterBackColor; /** contains the URL of the background graphic in the footer. + + @deprecated as of LibreOffice 6.1 - use FooterBackGraphic + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the FooterBackGraphic + property. */ [property, maybevoid] string FooterBackGraphicURL; + /** contains the graphic of the background of the footer. + + @since LibreOffice 6.1 + */ + [property, maybevoid] com::sun::star::graphic::XGraphic FooterBackGraphic; + /** contains the filter name of the background graphic in the footer. */ [property, maybevoid] string FooterBackGraphicFilter; diff --git a/offapi/com/sun/star/style/ParagraphProperties.idl b/offapi/com/sun/star/style/ParagraphProperties.idl index 2794265c7540..ba7f8b634c80 100644 --- a/offapi/com/sun/star/style/ParagraphProperties.idl +++ b/offapi/com/sun/star/style/ParagraphProperties.idl @@ -31,10 +31,9 @@ #include <com/sun/star/style/BreakType.idl> #include <com/sun/star/container/XNameContainer.idl> #include <com/sun/star/beans/PropertyValue.idl> +#include <com/sun/star/graphic/XGraphic.idl> - - module com { module sun { module star { module style { - +module com { module sun { module star { module style { /** describes the style of paragraphs. */ @@ -63,10 +62,17 @@ published service ParagraphProperties /** contains the value of a link for the background graphic of a paragraph. + + @deprecated as of LibreOffice 6.1 - use ParaBackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the ParaBackGraphic + property. */ [optional, property] string ParaBackGraphicURL; - /** contains the name of the graphic filter for the background graphic of a paragraph. */ [optional, property] string ParaBackGraphicFilter; @@ -379,6 +385,12 @@ published service ParagraphProperties <p>Values [1..10] indicates that the paragraph belongs to the corresponding outline level.</p> */ [optional, property] short OutlineLevel; + + /** contains the graphic for the background of a paragraph. + + @since LibreOffice 6.1 + */ + [optional, property] com::sun::star::graphic::XGraphic ParaBackGraphic; }; diff --git a/offapi/com/sun/star/text/BaseFrameProperties.idl b/offapi/com/sun/star/text/BaseFrameProperties.idl index c441343258f2..677826aec1e7 100644 --- a/offapi/com/sun/star/text/BaseFrameProperties.idl +++ b/offapi/com/sun/star/text/BaseFrameProperties.idl @@ -30,10 +30,9 @@ #include <com/sun/star/drawing/FillStyle.idl> #include <com/sun/star/awt/Gradient.idl> #include <com/sun/star/drawing/TextVerticalAdjust.hpp> +#include <com/sun/star/graphic/XGraphic.idl> - - module com { module sun { module star { module text { - +module com { module sun { module star { module text { /** specifies the properties that are provided by all text frames, graphic objects, embedded objects and frame styles. @@ -56,13 +55,29 @@ published service BaseFrameProperties AnchorType is TextContentAnchorType::AT_FRAME.</p> */ [property] com::sun::star::text::XTextFrame AnchorFrame; + /** contains the color of the background of the object. */ [property] com::sun::star::util::Color BackColor; + /** contains the URL for the background graphic. + + @deprecated as of LibreOffice 6.1 - use BackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the BackGraphic + property. */ [property] string BackGraphicURL; + /** contains the graphic for the background. + + @since LibreOffice 6.1 + */ + [property] com::sun::star::graphic::XGraphic BackGraphic; + /** contains the name of the file filter for the background graphic. */ [property] string BackGraphicFilter; diff --git a/offapi/com/sun/star/text/BaseIndex.idl b/offapi/com/sun/star/text/BaseIndex.idl index 9e75ee555216..39baa42eb935 100644 --- a/offapi/com/sun/star/text/BaseIndex.idl +++ b/offapi/com/sun/star/text/BaseIndex.idl @@ -17,7 +17,6 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ - #ifndef __com_sun_star_text_BaseIndex_idl__ #define __com_sun_star_text_BaseIndex_idl__ @@ -29,9 +28,9 @@ #include <com/sun/star/style/GraphicLocation.idl> #include <com/sun/star/lang/Locale.idl> #include <com/sun/star/text/XTextSection.idl> +#include <com/sun/star/graphic/XGraphic.idl> - - module com { module sun { module star { module text { +module com { module sun { module star { module text { /** specifies the basic service of different indexes within a document.@see com::sun::star::text::DocumentIndex @see com::sun::star::text::ContentIndex @@ -77,8 +76,25 @@ published service BaseIndex [optional, property] string ParaStyleSeparator; /** contains the column interface.*/ [property] XTextColumns TextColumns; - /** contains the URL of a graphic file that is displayed as background graphic*/ + + /** contains the URL of a graphic file that is displayed as background graphic + + @deprecated as of LibreOffice 6.1 - use BackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the BackGraphic + property. + */ [property] string BackGraphicURL; + + /** contains the graphic object that is displayed as background graphic. + + @since LibreOffice 6.1 + */ + [property] com::sun::star::graphic::XGraphic BackGraphic; + /** contains the name of the filter of the graphic file that is displayed as background graphic*/ [property] string BackGraphicFilter; diff --git a/offapi/com/sun/star/text/CellProperties.idl b/offapi/com/sun/star/text/CellProperties.idl index 6144d9fc8530..8e7f0ae35ca0 100644 --- a/offapi/com/sun/star/text/CellProperties.idl +++ b/offapi/com/sun/star/text/CellProperties.idl @@ -16,6 +16,7 @@ * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ + #ifndef __com_sun_star_text_CellProperties_idl__ #define __com_sun_star_text_CellProperties_idl__ @@ -26,11 +27,9 @@ #include <com/sun/star/table/BorderLine.idl> #include <com/sun/star/container/XNameContainer.idl> #include <com/sun/star/xml/UserDefinedAttributesSupplier.idl> +#include <com/sun/star/graphic/XGraphic.idl> - - - module com { module sun { module star { module text { - +module com { module sun { module star { module text { /** service that holds all cell properties of a text table cell in a text document. @@ -58,9 +57,23 @@ published service CellProperties [property] com::sun::star::util::Color BackColor; /** contains the URL to the background graphic. + + @deprecated as of LibreOffice 6.1 - use BackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the BackGraphic + property. */ [property] string BackGraphicURL; + /** contains the graphic object that is displayed as background graphic. + + @since LibreOffice 6.1 + */ + [property] com::sun::star::graphic::XGraphic BackGraphic; + /** contains the name of the graphic filter of the background graphic. */ [property] string BackGraphicFilter; diff --git a/offapi/com/sun/star/text/CellRange.idl b/offapi/com/sun/star/text/CellRange.idl index e99f32b6f14a..161b3452f2f0 100644 --- a/offapi/com/sun/star/text/CellRange.idl +++ b/offapi/com/sun/star/text/CellRange.idl @@ -16,6 +16,7 @@ * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ + #ifndef __com_sun_star_text_CellRange_idl__ #define __com_sun_star_text_CellRange_idl__ @@ -31,11 +32,10 @@ #include <com/sun/star/style/CharacterProperties.idl> #include <com/sun/star/style/GraphicLocation.idl> #include <com/sun/star/chart/XChartDataArray.idl> - +#include <com/sun/star/graphic/XGraphic.idl> module com { module sun { module star { module text { - /** area of cells within a text table. @see com::sun::star::text::TextTable @@ -77,9 +77,22 @@ published service CellRange /** contains the URL of the background graphic. + + @deprecated as of LibreOffice 6.1 - use BackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the BackGraphic + property. */ [property] string BackGraphicURL; + /** contains the graphic of the background. + + @since LibreOffice 6.1 + */ + [property] com::sun::star::graphic::XGraphic BackGraphic; /** determines if the background color is transparent. */ diff --git a/offapi/com/sun/star/text/TextSection.idl b/offapi/com/sun/star/text/TextSection.idl index 5394f7229930..d6baa829c633 100644 --- a/offapi/com/sun/star/text/TextSection.idl +++ b/offapi/com/sun/star/text/TextSection.idl @@ -28,8 +28,7 @@ #include <com/sun/star/style/GraphicLocation.idl> #include <com/sun/star/text/XTextColumns.idl> #include <com/sun/star/xml/UserDefinedAttributesSupplier.idl> - - +#include <com/sun/star/graphic/XGraphic.idl> module com { module sun { module star { module text { @@ -101,10 +100,24 @@ published service TextSection */ [property] string DDECommandElement; - /** contains the URL for the background graphic. + /** contains the URL for the background graphic. + + @deprecated as of LibreOffice 6.1 - use BackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the BackGraphic + property. */ [property] string BackGraphicURL; + /** contains the graphic of the background. + + @since LibreOffice 6.1 + */ + [property] com::sun::star::graphic::XGraphic BackGraphic; + /** contains the name of the file filter for the background graphic. */ [property] string BackGraphicFilter; diff --git a/offapi/com/sun/star/text/TextTable.idl b/offapi/com/sun/star/text/TextTable.idl index e47ad56c4aee..ee6fc85f4eb9 100644 --- a/offapi/com/sun/star/text/TextTable.idl +++ b/offapi/com/sun/star/text/TextTable.idl @@ -16,6 +16,7 @@ * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ + #ifndef __com_sun_star_text_TextTable_idl__ #define __com_sun_star_text_TextTable_idl__ @@ -35,11 +36,9 @@ #include <com/sun/star/util/XSortable.idl> #include <com/sun/star/sheet/XCellRangeData.idl> #include <com/sun/star/xml/UserDefinedAttributesSupplier.idl> +#include <com/sun/star/graphic/XGraphic.idl> - - - module com { module sun { module star { module text { - +module com { module sun { module star { module text { /** is a table of text cells which is anchored to a surrounding text. @@ -192,9 +191,22 @@ published service TextTable [property] com::sun::star::util::Color BackColor; /** contains the URL for the background graphic. + + @deprecated as of LibreOffice 6.1 - use BackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the BackGraphic + property. */ [property] string BackGraphicURL; + /** contains the graphic for the background. + + @since LibreOffice 6.1 + */ + [property] com::sun::star::graphic::XGraphic BackGraphic; /** contains the name of the file filter for the background graphic. */ diff --git a/offapi/com/sun/star/text/TextTableRow.idl b/offapi/com/sun/star/text/TextTableRow.idl index 1755068cdd0e..42198943af34 100644 --- a/offapi/com/sun/star/text/TextTableRow.idl +++ b/offapi/com/sun/star/text/TextTableRow.idl @@ -23,11 +23,9 @@ #include <com/sun/star/util/Color.idl> #include <com/sun/star/style/GraphicLocation.idl> #include <com/sun/star/text/TableColumnSeparator.idl> +#include <com/sun/star/graphic/XGraphic.idl> - - - module com { module sun { module star { module text { - +module com { module sun { module star { module text { /** specifies the properties of a text table row. @@ -49,9 +47,22 @@ published service TextTableRow /** contains the URL of a background graphic. + + @deprecated as of LibreOffice 6.1 - use BackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the BackGraphic + property. */ [property] string BackGraphicURL; + /** contains the graphic of a background. + + @since LibreOffice 6.1 + */ + [property] com::sun::star::graphic::XGraphic BackGraphic; /** contains the name of the file filter of a background graphic. */ diff --git a/offapi/type_reference/offapi.idl b/offapi/type_reference/offapi.idl index 337a45812b29..f49b0267ed48 100644 --- a/offapi/type_reference/offapi.idl +++ b/offapi/type_reference/offapi.idl @@ -3643,6 +3643,7 @@ module com { [property, maybevoid, optional] boolean ParaIsConnectBorder; [property, optional] string ListId; [property, optional] short OutlineLevel; + [property, optional] ::com::sun::star::graphic::XGraphic ParaBackGraphic; }; }; module util { @@ -13134,6 +13135,7 @@ module com { published service PageProperties { [property] ::com::sun::star::util::Color BackColor; [property] string BackGraphicURL; + [property] ::com::sun::star::graphic::XGraphic BackGraphic; [property] string BackGraphicFilter; [property] ::com::sun::star::style::GraphicLocation BackGraphicLocation; [property] boolean BackTransparent; @@ -13163,6 +13165,7 @@ module com { [property] ::com::sun::star::container::XNameContainer UserDefinedAttributes; [property, maybevoid] ::com::sun::star::util::Color HeaderBackColor; [property, maybevoid] string HeaderBackGraphicURL; + [property, maybevoid] ::com::sun::star::graphic::XGraphic HeaderBackGraphic; [property, maybevoid] string HeaderBackGraphicFilter; [property, maybevoid] ::com::sun::star::style::GraphicLocation HeaderBackGraphicLocation; [property, maybevoid] long HeaderLeftMargin; @@ -13188,6 +13191,7 @@ module com { [property, maybevoid, optional] ::com::sun::star::text::XText HeaderTextRight; [property, maybevoid] ::com::sun::star::util::Color FooterBackColor; [property, maybevoid] string FooterBackGraphicURL; + [property, maybevoid] ::com::sun::star::graphic::XGraphic FooterBackGraphic; [property, maybevoid] string FooterBackGraphicFilter; [property, maybevoid] ::com::sun::star::style::GraphicLocation FooterBackGraphicLocation; [property, maybevoid] long FooterLeftMargin; @@ -13837,6 +13841,7 @@ module com { [property] ::com::sun::star::text::XTextFrame AnchorFrame; [property] ::com::sun::star::util::Color BackColor; [property] string BackGraphicURL; + [property] ::com::sun::star::graphic::XGraphic BackGraphic; [property] string BackGraphicFilter; [property] ::com::sun::star::style::GraphicLocation BackGraphicLocation; [property] ::com::sun::star::table::BorderLine LeftBorder; @@ -13925,6 +13930,7 @@ module com { [property, optional] string ParaStyleSeparator; [property] ::com::sun::star::text::XTextColumns TextColumns; [property] string BackGraphicURL; + [property] ::com::sun::star::graphic::XGraphic BackGraphic; [property] string BackGraphicFilter; [property] ::com::sun::star::style::GraphicLocation BackGraphicLocation; [property] ::com::sun::star::util::Color BackColor; @@ -14015,6 +14021,7 @@ module com { [property] string CellName; [property] ::com::sun::star::util::Color BackColor; [property] string BackGraphicURL; + [property] ::com::sun::star::graphic::XGraphic BackGraphic; [property] string BackGraphicFilter; [property] ::com::sun::star::style::GraphicLocation BackGraphicLocation; [property] long NumberFormat; @@ -14045,6 +14052,7 @@ module com { [property] string BackGraphicFilter; [property] ::com::sun::star::style::GraphicLocation BackGraphicLocation; [property] string BackGraphicURL; + [property] ::com::sun::star::graphic::XGraphic BackGraphic; [property] boolean BackTransparent; [property] boolean ChartColumnAsLabel; [property] boolean ChartRowAsLabel; @@ -14631,6 +14639,7 @@ module com { [property] short TableColumnRelativeSum; [property] ::com::sun::star::util::Color BackColor; [property] string BackGraphicURL; + [property] ::com::sun::star::graphic::XGraphic BackGraphic; [property] string BackGraphicFilter; [property] ::com::sun::star::style::GraphicLocation BackGraphicLocation; [property, optional] boolean CollapsingBorders; @@ -15042,6 +15051,7 @@ module com { [property] string DDECommandFile; [property] string DDECommandElement; [property] string BackGraphicURL; + [property] ::com::sun::star::graphic::XGraphic BackGraphic; [property] string BackGraphicFilter; [property] ::com::sun::star::style::GraphicLocation BackGraphicLocation; [property] boolean FootnoteIsCollectAtTextEnd; @@ -15116,6 +15126,7 @@ module com { [property] ::com::sun::star::util::Color BackColor; [property] boolean BackTransparent; [property] string BackGraphicURL; + [property] ::com::sun::star::graphic::XGraphic BackGraphic; [property] string BackGraphicFilter; [property] ::com::sun::star::style::GraphicLocation BackGraphicLocation; [property] sequence< ::com::sun::star::text::TableColumnSeparator > TableColumnSeparators; diff --git a/qadevOOo/runner/util/utils.java b/qadevOOo/runner/util/utils.java index a0f525ab8339..1e6901fca1d2 100644 --- a/qadevOOo/runner/util/utils.java +++ b/qadevOOo/runner/util/utils.java @@ -30,6 +30,7 @@ import java.net.Socket; import java.net.ServerSocket; import java.net.URI; import java.net.URISyntaxException; +import java.util.Arrays; import com.sun.star.awt.XToolkitExperimental; import com.sun.star.beans.XPropertySet; @@ -577,16 +578,19 @@ public class utils { * @param props The instance of XPropertySet * @param includePropertyAttribute Properties without these attributes are filtered and will not be returned. * @param excludePropertyAttribute Properties with these attributes are filtered and will not be returned. + * @param array of string names of properties that will be skipped * @return A String array with all property names. * @see com.sun.star.beans.XPropertySet * @see com.sun.star.beans.Property * @see com.sun.star.beans.PropertyAttribute */ public static String[] getFilteredPropertyNames(XPropertySet props, short includePropertyAttribute, - short excludePropertyAttribute) { + short excludePropertyAttribute, String[] skipList) { Property[] the_props = props.getPropertySetInfo().getProperties(); ArrayList<String> l = new ArrayList<String>(); for (int i = 0; i < the_props.length; i++) { + if (Arrays.asList(skipList).contains(the_props[i].Name)) + continue; boolean exclude = ((the_props[i].Attributes & excludePropertyAttribute) != 0); boolean include = (includePropertyAttribute == 0) || ((the_props[i].Attributes & includePropertyAttribute) != 0); diff --git a/qadevOOo/tests/java/ifc/beans/_XMultiPropertySet.java b/qadevOOo/tests/java/ifc/beans/_XMultiPropertySet.java index 697f5d0c7c83..1d169539413d 100644 --- a/qadevOOo/tests/java/ifc/beans/_XMultiPropertySet.java +++ b/qadevOOo/tests/java/ifc/beans/_XMultiPropertySet.java @@ -19,8 +19,10 @@ package ifc.beans; import java.util.HashSet; +import java.util.ArrayList; import java.util.Set; import java.util.StringTokenizer; +import java.util.Arrays; import lib.MultiMethodTest; import lib.Status; @@ -132,17 +134,30 @@ public class _XMultiPropertySet extends MultiMethodTest { boolean bResult = true; Property[] properties = propertySetInfo.getProperties(); - String[] allnames = new String[properties.length]; + + ArrayList<String> allFilteredNames = new ArrayList<String>(); + ArrayList<Property> allFilteredProperties = new ArrayList<Property>(); + + String[] skipNames = (String[]) tEnv.getObjRelation("SkipProperties"); + for (int i = 0; i < properties.length; i++) { - allnames[i] = properties[i].Name; + if (skipNames == null || !Arrays.asList(skipNames).contains(properties[i].Name)) + { + allFilteredNames.add(properties[i].Name); + allFilteredProperties.add(properties[i]); + } } - values = oObj.getPropertyValues(allnames); + String[] arrayAllFilteredNames = allFilteredNames.toArray(new String[allFilteredNames.size()]); + + values = oObj.getPropertyValues(arrayAllFilteredNames); bResult &= values!=null; tRes.tested("getPropertyValues()", bResult) ; - getPropsToTest(properties); + Property[] arrayFilteredProperties = allFilteredProperties.toArray(new Property[allFilteredProperties.size()]); + + getPropsToTest(arrayFilteredProperties); } /** @@ -346,5 +361,3 @@ public class _XMultiPropertySet extends MultiMethodTest { disposeEnvironment(); } } - - diff --git a/qadevOOo/tests/java/mod/_sw/CharacterStyle.java b/qadevOOo/tests/java/mod/_sw/CharacterStyle.java index 085f9c9ba122..1671a39b99ed 100644 --- a/qadevOOo/tests/java/mod/_sw/CharacterStyle.java +++ b/qadevOOo/tests/java/mod/_sw/CharacterStyle.java @@ -137,8 +137,10 @@ public class CharacterStyle extends TestCase { XPropertySet xStyleProp = UnoRuntime.queryInterface(XPropertySet.class, oMyStyle); + String[] skipPropetiesNamed = {}; + short exclude = PropertyAttribute.READONLY; - tEnv.addObjRelation("PropertyNames",utils.getFilteredPropertyNames(xStyleProp, (short)0, exclude)); + tEnv.addObjRelation("PropertyNames",utils.getFilteredPropertyNames(xStyleProp, (short)0, exclude, skipPropetiesNamed)); return tEnv; } diff --git a/qadevOOo/tests/java/mod/_sw/ConditionalParagraphStyle.java b/qadevOOo/tests/java/mod/_sw/ConditionalParagraphStyle.java index 15b0b8faa1c1..0ccff31ed554 100644 --- a/qadevOOo/tests/java/mod/_sw/ConditionalParagraphStyle.java +++ b/qadevOOo/tests/java/mod/_sw/ConditionalParagraphStyle.java @@ -129,8 +129,12 @@ public class ConditionalParagraphStyle extends TestCase { XPropertySet xStyleProp = UnoRuntime.queryInterface(XPropertySet.class, oMyStyle); short exclude = PropertyAttribute.READONLY; - String[] names = utils.getFilteredPropertyNames(xStyleProp, (short)0, exclude); + String[] skipPropetiesNamed = { "ParaBackGraphicURL" }; + + String[] names = utils.getFilteredPropertyNames(xStyleProp, (short)0, exclude, skipPropetiesNamed); + tEnv.addObjRelation("PropertyNames", names); + tEnv.addObjRelation("SkipProperties", skipPropetiesNamed); return tEnv; } diff --git a/qadevOOo/tests/java/mod/_sw/PageStyle.java b/qadevOOo/tests/java/mod/_sw/PageStyle.java index 6c5816418ee2..fdfac78b1dee 100644 --- a/qadevOOo/tests/java/mod/_sw/PageStyle.java +++ b/qadevOOo/tests/java/mod/_sw/PageStyle.java @@ -126,8 +126,14 @@ public class PageStyle extends TestCase { XPropertySet xStyleProp = UnoRuntime.queryInterface(XPropertySet.class, oMyStyle); short exclude = PropertyAttribute.READONLY; - String[] names = utils.getFilteredPropertyNames(xStyleProp, (short)0, exclude); + + String[] skipPropetiesNamed = { + "BackGraphicURL", "HeaderBackGraphicURL", "FooterBackGraphicURL" + }; + + String[] names = utils.getFilteredPropertyNames(xStyleProp, (short)0, exclude, skipPropetiesNamed); tEnv.addObjRelation("PropertyNames", names); + tEnv.addObjRelation("SkipProperties", skipPropetiesNamed); return tEnv; } diff --git a/qadevOOo/tests/java/mod/_sw/ParagraphStyle.java b/qadevOOo/tests/java/mod/_sw/ParagraphStyle.java index d0aeb41f3eb9..e52daed43c02 100644 --- a/qadevOOo/tests/java/mod/_sw/ParagraphStyle.java +++ b/qadevOOo/tests/java/mod/_sw/ParagraphStyle.java @@ -119,7 +119,10 @@ public class ParagraphStyle extends TestCase { XPropertySet xStyleProp = UnoRuntime.queryInterface(XPropertySet.class, oMyStyle); short exclude = PropertyAttribute.READONLY; - String[] names = utils.getFilteredPropertyNames(xStyleProp, (short)0, exclude); + + String[] skipPropetiesNamed = { "ParaBackGraphicURL" }; + + String[] names = utils.getFilteredPropertyNames(xStyleProp, (short)0, exclude, skipPropetiesNamed); tEnv.addObjRelation("PropertyNames", names); return tEnv; diff --git a/qadevOOo/tests/java/mod/_sw/SwXTextCursor.java b/qadevOOo/tests/java/mod/_sw/SwXTextCursor.java index 34764a4673f2..5b641b1e72af 100644 --- a/qadevOOo/tests/java/mod/_sw/SwXTextCursor.java +++ b/qadevOOo/tests/java/mod/_sw/SwXTextCursor.java @@ -19,6 +19,7 @@ package mod._sw; import java.io.PrintWriter; import java.util.ArrayList; +import java.util.Arrays; import lib.TestCase; import lib.TestEnvironment; @@ -171,7 +172,12 @@ public class SwXTextCursor extends TestCase { XPropertySet xCursorProp = UnoRuntime.queryInterface( XPropertySet.class, oObj); - tEnv.addObjRelation("PropertyNames", getPropertyNames(xCursorProp)); + + String[] skipNames = { "ParaBackGraphicURL" }; + String[] propertyNames = getPropertyNames(xCursorProp, skipNames); + + tEnv.addObjRelation("PropertyNames", propertyNames); + tEnv.addObjRelation("SkipProperties", propertyNames); //Adding relation for util.XSortable final XParagraphCursor paragrCursor = UnoRuntime.queryInterface( @@ -285,14 +291,13 @@ public class SwXTextCursor extends TestCase { return tEnv; } // finish method getTestEnvironment - public String[] getPropertyNames(XPropertySet props) { + public String[] getPropertyNames(XPropertySet props, String[] skipList) { Property[] the_props = props.getPropertySetInfo().getProperties(); ArrayList<String> names = new ArrayList<String>(); for (int i = 0; i < the_props.length; i++) { boolean isWritable = ((the_props[i].Attributes & PropertyAttribute.READONLY) == 0); - - if (isWritable) { + if (isWritable && !Arrays.asList(skipList).contains(the_props[i].Name)) { names.add(the_props[i].Name); } } diff --git a/sc/inc/unonames.hxx b/sc/inc/unonames.hxx index e7f92a01e3e4..a2a407ee5fdc 100644 --- a/sc/inc/unonames.hxx +++ b/sc/inc/unonames.hxx @@ -405,6 +405,7 @@ #define SC_UNO_PAGE_BACKTRANS "BackTransparent" #define SC_UNO_PAGE_GRAPHICFILT "BackGraphicFilter" #define SC_UNO_PAGE_GRAPHICLOC "BackGraphicLocation" +#define SC_UNO_PAGE_GRAPHICURL "BackGraphicURL" #define SC_UNO_PAGE_GRAPHIC "BackGraphic" #define SC_UNO_PAGE_LEFTBORDER SC_UNONAME_LEFTBORDER #define SC_UNO_PAGE_RIGHTBORDER SC_UNONAME_RIGHTBORDER @@ -452,6 +453,7 @@ #define SC_UNO_PAGE_HDRGRFFILT "HeaderBackGraphicFilter" #define SC_UNO_PAGE_HDRGRFLOC "HeaderBackGraphicLocation" #define SC_UNO_PAGE_HDRGRF "HeaderBackGraphic" +#define SC_UNO_PAGE_HDRGRFURL "HeaderBackGraphicURL" #define SC_UNO_PAGE_HDRLEFTBOR "HeaderLeftBorder" #define SC_UNO_PAGE_HDRRIGHTBOR "HeaderRightBorder" #define SC_UNO_PAGE_HDRBOTTBOR "HeaderBottomBorder" @@ -474,6 +476,7 @@ #define SC_UNO_PAGE_FTRGRFFILT "FooterBackGraphicFilter" #define SC_UNO_PAGE_FTRGRFLOC "FooterBackGraphicLocation" #define SC_UNO_PAGE_FTRGRF "FooterBackGraphic" +#define SC_UNO_PAGE_FTRGRFURL "FooterBackGraphicURL" #define SC_UNO_PAGE_FTRLEFTBOR "FooterLeftBorder" #define SC_UNO_PAGE_FTRRIGHTBOR "FooterRightBorder" #define SC_UNO_PAGE_FTRBOTTBOR "FooterBottomBorder" diff --git a/sc/source/ui/unoobj/styleuno.cxx b/sc/source/ui/unoobj/styleuno.cxx index 8f262ddd9d9d..94015525c9a5 100644 --- a/sc/source/ui/unoobj/styleuno.cxx +++ b/sc/source/ui/unoobj/styleuno.cxx @@ -183,6 +183,7 @@ static const SfxItemPropertySet * lcl_GetPageStyleSet() {OUString(SC_UNO_PAGE_BACKCOLOR), ATTR_BACKGROUND, ::cppu::UnoType<sal_Int32>::get(), 0, MID_BACK_COLOR }, {OUString(SC_UNO_PAGE_GRAPHICFILT), ATTR_BACKGROUND, ::cppu::UnoType<OUString>::get(), 0, MID_GRAPHIC_FILTER }, {OUString(SC_UNO_PAGE_GRAPHICLOC), ATTR_BACKGROUND, ::cppu::UnoType<style::GraphicLocation>::get(), 0, MID_GRAPHIC_POSITION }, + {OUString(SC_UNO_PAGE_GRAPHICURL), ATTR_BACKGROUND, ::cppu::UnoType<OUString>::get(), 0, MID_GRAPHIC_URL }, {OUString(SC_UNO_PAGE_GRAPHIC), ATTR_BACKGROUND, ::cppu::UnoType<graphic::XGraphic>::get(), 0, MID_GRAPHIC }, {OUString(SC_UNO_PAGE_BACKTRANS), ATTR_BACKGROUND, cppu::UnoType<bool>::get(), 0, MID_GRAPHIC_TRANSPARENT }, {OUString(OLD_UNO_PAGE_BACKCOLOR), ATTR_BACKGROUND, ::cppu::UnoType<sal_Int32>::get(), 0, MID_BACK_COLOR }, @@ -198,6 +199,7 @@ static const SfxItemPropertySet * lcl_GetPageStyleSet() {OUString(SC_UNO_PAGE_FTRBACKCOL), SC_WID_UNO_FOOTERSET,::cppu::UnoType<sal_Int32>::get(), 0, 0 }, {OUString(SC_UNO_PAGE_FTRGRFFILT), SC_WID_UNO_FOOTERSET,::cppu::UnoType<OUString>::get(), 0, 0 }, {OUString(SC_UNO_PAGE_FTRGRFLOC), SC_WID_UNO_FOOTERSET,::cppu::UnoType<style::GraphicLocation>::get(), 0, 0 }, + {OUString(SC_UNO_PAGE_FTRGRFURL), SC_WID_UNO_FOOTERSET,::cppu::UnoType<OUString>::get(), 0, 0 }, {OUString(SC_UNO_PAGE_FTRGRF), SC_WID_UNO_FOOTERSET,::cppu::UnoType<graphic::XGraphic>::get(), 0, 0 }, {OUString(SC_UNO_PAGE_FTRBACKTRAN), SC_WID_UNO_FOOTERSET,cppu::UnoType<bool>::get(), 0, 0 }, {OUString(OLD_UNO_PAGE_FTRBACKCOL), SC_WID_UNO_FOOTERSET,::cppu::UnoType<sal_Int32>::get(), 0, 0 }, @@ -225,6 +227,7 @@ static const SfxItemPropertySet * lcl_GetPageStyleSet() {OUString(SC_UNO_PAGE_HDRBACKCOL), SC_WID_UNO_HEADERSET,::cppu::UnoType<sal_Int32>::get(), 0, 0 }, {OUString(SC_UNO_PAGE_HDRGRFFILT), SC_WID_UNO_HEADERSET,::cppu::UnoType<OUString>::get(), 0, 0 }, {OUString(SC_UNO_PAGE_HDRGRFLOC), SC_WID_UNO_HEADERSET,::cppu::UnoType<style::GraphicLocation>::get(), 0, 0 }, + {OUString(SC_UNO_PAGE_HDRGRFURL), SC_WID_UNO_HEADERSET,::cppu::UnoType<OUString>::get(), 0, 0 }, {OUString(SC_UNO_PAGE_HDRGRF), SC_WID_UNO_HEADERSET,::cppu::UnoType<graphic::XGraphic>::get(), 0, 0 }, {OUString(SC_UNO_PAGE_HDRBACKTRAN), SC_WID_UNO_HEADERSET,cppu::UnoType<bool>::get(), 0, 0 }, {OUString(OLD_UNO_PAGE_HDRBACKCOL), SC_WID_UNO_HEADERSET,::cppu::UnoType<sal_Int32>::get(), 0, 0 }, @@ -304,6 +307,7 @@ static const SfxItemPropertyMap* lcl_GetHeaderStyleMap() {OUString(SC_UNO_PAGE_HDRBACKCOL), ATTR_BACKGROUND, ::cppu::UnoType<sal_Int32>::get(), 0, MID_BACK_COLOR }, {OUString(SC_UNO_PAGE_HDRGRFFILT), ATTR_BACKGROUND, ::cppu::UnoType<OUString>::get(), 0, MID_GRAPHIC_FILTER }, {OUString(SC_UNO_PAGE_HDRGRFLOC), ATTR_BACKGROUND, ::cppu::UnoType<style::GraphicLocation>::get(), 0, MID_GRAPHIC_POSITION }, + {OUString(SC_UNO_PAGE_HDRGRFURL), ATTR_BACKGROUND, ::cppu::UnoType<OUString>::get(), 0, MID_GRAPHIC_URL }, {OUString(SC_UNO_PAGE_HDRGRF), ATTR_BACKGROUND, ::cppu::UnoType<graphic::XGraphic>::get(), 0, MID_GRAPHIC }, {OUString(SC_UNO_PAGE_HDRBACKTRAN), ATTR_BACKGROUND, cppu::UnoType<bool>::get(), 0, MID_GRAPHIC_TRANSPARENT }, {OUString(OLD_UNO_PAGE_HDRBACKCOL), ATTR_BACKGROUND, ::cppu::UnoType<sal_Int32>::get(), 0, MID_BACK_COLOR }, @@ -343,6 +347,7 @@ static const SfxItemPropertyMap* lcl_GetFooterStyleMap() {OUString(SC_UNO_PAGE_FTRBACKCOL), ATTR_BACKGROUND, ::cppu::UnoType<sal_Int32>::get(), 0, MID_BACK_COLOR }, {OUString(SC_UNO_PAGE_FTRGRFFILT), ATTR_BACKGROUND, ::cppu::UnoType<OUString>::get(), 0, MID_GRAPHIC_FILTER }, {OUString(SC_UNO_PAGE_FTRGRFLOC), ATTR_BACKGROUND, ::cppu::UnoType<style::GraphicLocation>::get(), 0, MID_GRAPHIC_POSITION }, + {OUString(SC_UNO_PAGE_FTRGRFURL), ATTR_BACKGROUND, ::cppu::UnoType<OUString>::get(), 0, MID_GRAPHIC_URL }, {OUString(SC_UNO_PAGE_FTRGRF), ATTR_BACKGROUND, ::cppu::UnoType<graphic::XGraphic>::get(), 0, MID_GRAPHIC }, {OUString(SC_UNO_PAGE_FTRBACKTRAN), ATTR_BACKGROUND, cppu::UnoType<bool>::get(), 0, MID_GRAPHIC_TRANSPARENT }, {OUString(OLD_UNO_PAGE_FTRBACKCOL), ATTR_BACKGROUND, ::cppu::UnoType<sal_Int32>::get(), 0, MID_BACK_COLOR }, diff --git a/svx/source/form/formcontrolfactory.cxx b/svx/source/form/formcontrolfactory.cxx index 053819859676..cef44279d9df 100644 --- a/svx/source/form/formcontrolfactory.cxx +++ b/svx/source/form/formcontrolfactory.cxx @@ -296,6 +296,7 @@ namespace svxform "ParaBackColor", "ParaBackTransparent", "ParaBackGraphic", + "ParaBackGraphicURL", "ParaBackGraphicFilter", "ParaBackGraphicLocation", "ParaLastLineAdjust", diff --git a/sw/inc/unoprnms.hxx b/sw/inc/unoprnms.hxx index 960a73e19c24..714d221d3712 100644 --- a/sw/inc/unoprnms.hxx +++ b/sw/inc/unoprnms.hxx @@ -27,11 +27,15 @@ #define UNO_NAME_IS_AUTO_UPDATE "IsAutoUpdate" #define UNO_NAME_DISPLAY_NAME "DisplayName" #define UNO_NAME_PARA_GRAPHIC "ParaBackGraphic" +#define UNO_NAME_PARA_GRAPHIC_URL "ParaBackGraphicURL" #define UNO_NAME_PARA_GRAPHIC_FILTER "ParaBackGraphicFilter" #define UNO_NAME_HEADER_GRAPHIC "HeaderBackGraphic" +#define UNO_NAME_HEADER_GRAPHIC_URL "HeaderBackGraphicURL" #define UNO_NAME_HEADER_GRAPHIC_FILTER "HeaderBackGraphicFilter" #define UNO_NAME_FOOTER_GRAPHIC "FooterBackGraphic" +#define UNO_NAME_FOOTER_GRAPHIC_URL "FooterBackGraphicURL" #define UNO_NAME_FOOTER_GRAPHIC_FILTER "FooterBackGraphicFilter" +#define UNO_NAME_BACK_GRAPHIC_URL "BackGraphicURL" #define UNO_NAME_BACK_GRAPHIC "BackGraphic" #define UNO_NAME_BACK_GRAPHIC_FILTER "BackGraphicFilter" #define UNO_NAME_BACK_GRAPHIC_LOCATION "BackGraphicLocation" diff --git a/sw/source/core/unocore/unoframe.cxx b/sw/source/core/unocore/unoframe.cxx index f8a500a53f7b..b193f8ed757d 100644 --- a/sw/source/core/unocore/unoframe.cxx +++ b/sw/source/core/unocore/unoframe.cxx @@ -211,11 +211,13 @@ bool BaseFrameProperties_Impl::FillBaseProperties(SfxItemSet& rToSet, const SfxI const ::uno::Any* pGrLoc = nullptr; GetProperty(RES_BACKGROUND, MID_GRAPHIC_POSITION, pGrLoc ); const ::uno::Any* pGraphic = nullptr; GetProperty(RES_BACKGROUND, MID_GRAPHIC, pGraphic ); const ::uno::Any* pGrFilter = nullptr; GetProperty(RES_BACKGROUND, MID_GRAPHIC_FILTER, pGrFilter ); + const ::uno::Any* pGraphicURL = nullptr; GetProperty(RES_BACKGROUND, MID_GRAPHIC_URL, pGraphicURL ); const ::uno::Any* pGrTranparency = nullptr; GetProperty(RES_BACKGROUND, MID_GRAPHIC_TRANSPARENCY, pGrTranparency ); const bool bSvxBrushItemPropertiesUsed( pCol || pTrans || pGraphic || + pGraphicURL || pGrFilter || pGrLoc || pGrTranparency || @@ -258,9 +260,9 @@ bool BaseFrameProperties_Impl::FillBaseProperties(SfxItemSet& rToSet, const SfxI const uno::Any* pOwnAttrFillBmpItem = nullptr; GetProperty(OWN_ATTR_FILLBMP_MODE, 0, pOwnAttrFillBmpItem); // tdf#91140: ignore SOLID fill style for determining if fill style is used - // but there is a GraphicURL + // but there is a Graphic const bool bFillStyleUsed(pXFillStyleItem && pXFillStyleItem->hasValue() && - (pXFillStyleItem->get<drawing::FillStyle>() != drawing::FillStyle_SOLID || !pGraphic)); + (pXFillStyleItem->get<drawing::FillStyle>() != drawing::FillStyle_SOLID || (!pGraphic || !pGraphicURL) )); SAL_INFO_IF(pXFillStyleItem && pXFillStyleItem->hasValue() && !bFillStyleUsed, "sw.uno", "FillBaseProperties: ignoring invalid FillStyle"); const bool bXFillStyleItemUsed( @@ -325,6 +327,11 @@ bool BaseFrameProperties_Impl::FillBaseProperties(SfxItemSet& rToSet, const SfxI bRet &= static_cast<SfxPoolItem&>(aBrush).PutValue(*pGraphic, MID_GRAPHIC); } + if (pGraphicURL) + { + bRet &= static_cast<SfxPoolItem&>(aBrush).PutValue(*pGraphicURL, MID_GRAPHIC_URL); + } + if(pGrFilter) { bRet &= static_cast<SfxPoolItem&>(aBrush).PutValue(*pGrFilter, MID_GRAPHIC_FILTER); diff --git a/sw/source/core/unocore/unomap.cxx b/sw/source/core/unocore/unomap.cxx index 8aeafe7e08a7..8445e08f935d 100644 --- a/sw/source/core/unocore/unomap.cxx +++ b/sw/source/core/unocore/unomap.cxx @@ -206,6 +206,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s static SfxItemPropertyMapEntry const aCellMap_Impl[] = { { OUString(UNO_NAME_BACK_COLOR), RES_BACKGROUND, cppu::UnoType<sal_Int32>::get(), PROPERTY_NONE , MID_BACK_COLOR }, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -374,6 +375,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s { OUString(UNO_NAME_LEVEL_FORMAT), WID_LEVEL_FORMAT , cppu::UnoType<css::container::XIndexReplace>::get() , PROPERTY_NONE, 0}, { OUString(UNO_NAME_MAIN_ENTRY_CHARACTER_STYLE_NAME), WID_MAIN_ENTRY_CHARACTER_STYLE_NAME , cppu::UnoType<OUString>::get() , PROPERTY_NONE, 0}, { OUString(UNO_NAME_TEXT_COLUMNS), RES_COL, cppu::UnoType<css::text::XTextColumns>::get(), PROPERTY_NONE, MID_COLUMNS}, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -414,6 +416,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s { OUString(UNO_NAME_LEVEL_PARAGRAPH_STYLES), WID_LEVEL_PARAGRAPH_STYLES , cppu::UnoType<css::container::XIndexReplace>::get() , PropertyAttribute::READONLY, 0}, { OUString(UNO_NAME_CREATE_FROM_LEVEL_PARAGRAPH_STYLES), WID_CREATE_FROM_PARAGRAPH_STYLES, cppu::UnoType<bool>::get(), PROPERTY_NONE, 0}, { OUString(UNO_NAME_TEXT_COLUMNS), RES_COL, cppu::UnoType<css::text::XTextColumns>::get(), PROPERTY_NONE, MID_COLUMNS}, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -459,6 +462,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s { OUString(UNO_NAME_CREATE_FROM_GRAPHIC_OBJECTS), WID_CREATE_FROM_GRAPHIC_OBJECTS , cppu::UnoType<bool>::get() , PROPERTY_NONE, 0}, { OUString(UNO_NAME_CREATE_FROM_EMBEDDED_OBJECTS), WID_CREATE_FROM_EMBEDDED_OBJECTS , cppu::UnoType<bool>::get() , PROPERTY_NONE, 0}, { OUString(UNO_NAME_TEXT_COLUMNS), RES_COL, cppu::UnoType<css::text::XTextColumns>::get(), PROPERTY_NONE, MID_COLUMNS}, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -495,6 +499,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s { OUString(UNO_NAME_LABEL_DISPLAY_TYPE), WID_LABEL_DISPLAY_TYPE , cppu::UnoType<sal_Int16>::get() , PROPERTY_NONE, 0}, { OUString(UNO_NAME_LEVEL_FORMAT), WID_LEVEL_FORMAT , cppu::UnoType<css::container::XIndexReplace>::get() , PROPERTY_NONE,0}, { OUString(UNO_NAME_TEXT_COLUMNS), RES_COL, cppu::UnoType<css::text::XTextColumns>::get(), PROPERTY_NONE, MID_COLUMNS}, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -523,6 +528,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s { OUString(UNO_NAME_CREATE_FROM_STAR_DRAW), WID_CREATE_FROM_STAR_DRAW , cppu::UnoType<bool>::get() , PROPERTY_NONE, 0}, { OUString(UNO_NAME_CREATE_FROM_OTHER_EMBEDDED_OBJECTS), WID_CREATE_FROM_OTHER_EMBEDDED_OBJECTS , cppu::UnoType<bool>::get() , PROPERTY_NONE, 0}, { OUString(UNO_NAME_TEXT_COLUMNS), RES_COL, cppu::UnoType<css::text::XTextColumns>::get(), PROPERTY_NONE, MID_COLUMNS}, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -549,6 +555,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s { OUString(UNO_NAME_LABEL_DISPLAY_TYPE), WID_LABEL_DISPLAY_TYPE , cppu::UnoType<sal_Int16>::get() , PROPERTY_NONE, 0}, { OUString(UNO_NAME_LEVEL_FORMAT), WID_LEVEL_FORMAT , cppu::UnoType<css::container::XIndexReplace>::get() , PROPERTY_NONE,0}, { OUString(UNO_NAME_TEXT_COLUMNS), RES_COL, cppu::UnoType<css::text::XTextColumns>::get(), PROPERTY_NONE, MID_COLUMNS}, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -567,6 +574,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s static SfxItemPropertyMapEntry const aTableRowPropertyMap_Impl[] = { { OUString(UNO_NAME_BACK_COLOR), RES_BACKGROUND, cppu::UnoType<sal_Int32>::get(), PROPERTY_NONE ,MID_BACK_COLOR }, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -606,6 +614,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s BASE_INDEX_PROPERTIES_ { OUString(UNO_NAME_IS_PROTECTED), WID_PROTECTED , cppu::UnoType<bool>::get() , PROPERTY_NONE, 0}, { OUString(UNO_NAME_TEXT_COLUMNS), RES_COL, cppu::UnoType<css::text::XTextColumns>::get(), PROPERTY_NONE, MID_COLUMNS}, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, diff --git a/sw/source/core/unocore/unomap1.cxx b/sw/source/core/unocore/unomap1.cxx index 35723c4a3893..10365bd83082 100644 --- a/sw/source/core/unocore/unomap1.cxx +++ b/sw/source/core/unocore/unomap1.cxx @@ -392,6 +392,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetFrameStylePropertyM /*not impl*/ { OUString(UNO_NAME_CLIENT_MAP), RES_URL, cppu::UnoType<bool>::get(), PROPERTY_NONE ,MID_URL_CLIENTMAP }, { OUString(UNO_NAME_CONTENT_PROTECTED), RES_PROTECT, cppu::UnoType<bool>::get(), PROPERTY_NONE, MID_PROTECT_CONTENT }, { OUString(UNO_NAME_EDIT_IN_READONLY), RES_EDIT_IN_READONLY, cppu::UnoType<bool>::get(), PROPERTY_NONE, 0}, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -476,6 +477,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPageStylePropertyMa static SfxItemPropertyMapEntry const aPageStyleMap [] = { { OUString(UNO_NAME_BACK_COLOR), RES_BACKGROUND, cppu::UnoType<sal_Int32>::get(), PROPERTY_NONE ,MID_BACK_COLOR }, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -498,6 +500,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPageStylePropertyMa // The implementation will decide if these are part of Header/Footer or PageStyle depending on the SlotName, // more precisely on the first characters. Thus it is necessary that these are 'Header' for the Header slots { OUString(UNO_NAME_HEADER_BACK_COLOR), RES_BACKGROUND, cppu::UnoType<sal_Int32>::get(), PROPERTY_NONE ,MID_BACK_COLOR }, + { OUString(UNO_NAME_HEADER_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_HEADER_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_HEADER_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_HEADER_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -526,6 +529,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPageStylePropertyMa //UUU use real WhichIDs for Footer, see Header (above) for more infos { OUString(UNO_NAME_FOOTER_BACK_COLOR), RES_BACKGROUND, cppu::UnoType<sal_Int32>::get(), PROPERTY_NONE ,MID_BACK_COLOR }, + { OUString(UNO_NAME_FOOTER_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_FOOTER_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_FOOTER_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_FOOTER_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -672,6 +676,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetTablePropertyMap() { { OUString(UNO_NAME_BACK_COLOR), RES_BACKGROUND, cppu::UnoType<sal_Int32>::get(), PROPERTY_NONE,MID_BACK_COLOR }, { OUString(UNO_NAME_BREAK_TYPE), RES_BREAK, cppu::UnoType<css::style::BreakType>::get(), PROPERTY_NONE, 0}, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -724,6 +729,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetRangePropertyMap() COMMON_CRSR_PARA_PROPERTIES_WITHOUT_FN_01 TABSTOPS_MAP_ENTRY { OUString(UNO_NAME_BACK_COLOR), FN_UNO_TABLE_CELL_BACKGROUND, cppu::UnoType<sal_Int32>::get(), PropertyAttribute::MAYBEVOID, MID_BACK_COLOR }, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PropertyAttribute::MAYBEVOID ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PropertyAttribute::MAYBEVOID ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), FN_UNO_TABLE_CELL_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PropertyAttribute::MAYBEVOID, MID_GRAPHIC_POSITION}, @@ -753,6 +759,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetSectionPropertyMap( { OUString(UNO_NAME_EDIT_IN_READONLY), WID_SECT_EDIT_IN_READONLY, cppu::UnoType<bool>::get(), PROPERTY_NONE, 0}, { OUString(UNO_NAME_LINK_REGION), WID_SECT_REGION , cppu::UnoType<OUString>::get() , PROPERTY_NONE, 0}, { OUString(UNO_NAME_TEXT_COLUMNS), RES_COL, cppu::UnoType<css::text::XTextColumns>::get(), PROPERTY_NONE, MID_COLUMNS}, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, @@ -959,6 +966,7 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetTextTableCursorProp // attributes from PROPERTY_MAP_TABLE_CELL: { OUString(UNO_NAME_BACK_COLOR), RES_BACKGROUND, cppu::UnoType<sal_Int32>::get(), PROPERTY_NONE , MID_BACK_COLOR }, + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, diff --git a/sw/source/core/unocore/unomapproperties.hxx b/sw/source/core/unocore/unomapproperties.hxx index f5d422b43efc..56a183111640 100644 --- a/sw/source/core/unocore/unomapproperties.hxx +++ b/sw/source/core/unocore/unomapproperties.hxx @@ -132,6 +132,7 @@ { OUString(UNO_NAME_CHAR_OVERLINE), RES_CHRATR_OVERLINE, cppu::UnoType<sal_Int16>::get(), PropertyAttribute::MAYBEVOID, MID_TL_STYLE }, \ { OUString(UNO_NAME_CHAR_OVERLINE_COLOR), RES_CHRATR_OVERLINE, cppu::UnoType<sal_Int32>::get(), PropertyAttribute::MAYBEVOID, MID_TL_COLOR }, \ { OUString(UNO_NAME_CHAR_OVERLINE_HAS_COLOR), RES_CHRATR_OVERLINE, cppu::UnoType<bool>::get(), PropertyAttribute::MAYBEVOID, MID_TL_HASCOLOR }, \ + { OUString(UNO_NAME_PARA_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PropertyAttribute::MAYBEVOID, MID_GRAPHIC_URL }, \ { OUString(UNO_NAME_PARA_GRAPHIC), RES_BACKGROUND, cppu::UnoType<css::graphic::XGraphic>::get(), PropertyAttribute::MAYBEVOID, MID_GRAPHIC }, \ { OUString(UNO_NAME_PARA_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PropertyAttribute::MAYBEVOID, MID_GRAPHIC_FILTER }, \ { OUString(UNO_NAME_PARA_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PropertyAttribute::MAYBEVOID, MID_GRAPHIC_POSITION }, \ @@ -267,6 +268,7 @@ { OUString(UNO_NAME_FRAME_INTEROP_GRAB_BAG), RES_FRMATR_GRABBAG, cppu::UnoType< cppu::UnoSequenceType<css::beans::PropertyValue> >::get(), PROPERTY_NONE, 0}, \ { OUString(UNO_NAME_CONTENT_PROTECTED), RES_PROTECT, cppu::UnoType<bool>::get(), PROPERTY_NONE, MID_PROTECT_CONTENT }, \ { OUString(UNO_NAME_FRAME_STYLE_NAME), FN_UNO_FRAME_STYLE_NAME,cppu::UnoType<OUString>::get(), PROPERTY_NONE, 0}, \ + { OUString(UNO_NAME_BACK_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL }, \ { OUString(UNO_NAME_BACK_GRAPHIC), RES_BACKGROUND, cppu::UnoType<css::graphic::XGraphic>::get(), PROPERTY_NONE, MID_GRAPHIC }, \ { OUString(UNO_NAME_BACK_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER }, \ { OUString(UNO_NAME_BACK_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, \ @@ -350,6 +352,7 @@ { OUString(UNO_NAME_CHAR_HIGHLIGHT), RES_CHRATR_HIGHLIGHT, cppu::UnoType<sal_Int32>::get(), PROPERTY_NONE ,MID_BACK_COLOR },\ { OUString(UNO_NAME_PARA_BACK_COLOR), RES_BACKGROUND, cppu::UnoType<sal_Int32>::get(), PROPERTY_NONE ,MID_BACK_COLOR },\ { OUString(UNO_NAME_PARA_BACK_TRANSPARENT), RES_BACKGROUND, cppu::UnoType<bool>::get(), PROPERTY_NONE ,MID_GRAPHIC_TRANSPARENT },\ + { OUString(UNO_NAME_PARA_GRAPHIC_URL), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_URL },\ { OUString(UNO_NAME_PARA_GRAPHIC), RES_BACKGROUND, cppu::UnoType<css::graphic::XGraphic>::get(), PROPERTY_NONE ,MID_GRAPHIC },\ { OUString(UNO_NAME_PARA_GRAPHIC_FILTER), RES_BACKGROUND, cppu::UnoType<OUString>::get(), PROPERTY_NONE ,MID_GRAPHIC_FILTER },\ { OUString(UNO_NAME_PARA_GRAPHIC_LOCATION), RES_BACKGROUND, cppu::UnoType<css::style::GraphicLocation>::get(), PROPERTY_NONE ,MID_GRAPHIC_POSITION}, \ diff --git a/writerfilter/source/dmapper/PropertyMap.cxx b/writerfilter/source/dmapper/PropertyMap.cxx index ca2042b11c28..f9a09b31df61 100644 --- a/writerfilter/source/dmapper/PropertyMap.cxx +++ b/writerfilter/source/dmapper/PropertyMap.cxx @@ -51,6 +51,7 @@ #include <comphelper/propertyvalue.hxx> #include <tools/diagnose_ex.h> #include "PropertyMapHelper.hxx" +#include <set> using namespace com::sun::star; @@ -1459,10 +1460,18 @@ void SectionPropertyMap::CloseSectionGroup( DomainMapper_Impl& rDM_Impl ) uno::Reference< beans::XPropertySet > pageProperties( m_bTitlePage ? m_aFirstPageStyle : m_aFollowPageStyle ); uno::Reference< beans::XPropertySetInfo > pagePropertiesInfo( pageProperties->getPropertySetInfo() ); uno::Sequence< beans::Property > propertyList( pagePropertiesInfo->getProperties() ); + // Ignore write-only properties. + static const std::set<OUString> aBlacklist + = { "FooterBackGraphicURL", "BackGraphicURL", "HeaderBackGraphicURL" }; for ( int i = 0; i < propertyList.getLength(); ++i ) { if ( (propertyList[i].Attributes & beans::PropertyAttribute::READONLY) == 0 ) - evenOddStyle->setPropertyValue( propertyList[i].Name, pageProperties->getPropertyValue( propertyList[i].Name ) ); + { + if (aBlacklist.find(propertyList[i].Name) == aBlacklist.end()) + evenOddStyle->setPropertyValue( + propertyList[i].Name, + pageProperties->getPropertyValue(propertyList[i].Name)); + } } evenOddStyle->setPropertyValue( "FollowStyle", uno::makeAny( *pageStyle ) ); rDM_Impl.GetPageStyles()->insertByName( evenOddStyleName, uno::makeAny( evenOddStyle ) ); |