From f237f1a616d973397511575c1eb033731d6007f7 Mon Sep 17 00:00:00 2001 From: Lionel Elie Mamane Date: Thu, 27 Jun 2013 17:14:16 +0200 Subject: fdo#66171 ListBox correctly save empty or zero BoundColumn Change-Id: I05fa923f962191081ea3318837d3e181c183b466 --- xmloff/source/forms/elementexport.cxx | 3 ++- xmloff/source/forms/propertyexport.cxx | 4 ++-- xmloff/source/forms/propertyexport.hxx | 11 ++++++++--- 3 files changed, 12 insertions(+), 6 deletions(-) (limited to 'xmloff') diff --git a/xmloff/source/forms/elementexport.cxx b/xmloff/source/forms/elementexport.cxx index b10fa4370ce3..ca2834822586 100644 --- a/xmloff/source/forms/elementexport.cxx +++ b/xmloff/source/forms/elementexport.cxx @@ -890,7 +890,8 @@ namespace xmloff OAttributeMetaData::getDatabaseAttributeNamespace(DA_BOUND_COLUMN), OAttributeMetaData::getDatabaseAttributeName(DA_BOUND_COLUMN), PROPERTY_BOUNDCOLUMN, - 0); + 0, + true); RESET_BIT( nIncludeDatabase, DA_BOUND_COLUMN ); } diff --git a/xmloff/source/forms/propertyexport.cxx b/xmloff/source/forms/propertyexport.cxx index 73f5e1dddc2e..7e7597b723e2 100644 --- a/xmloff/source/forms/propertyexport.cxx +++ b/xmloff/source/forms/propertyexport.cxx @@ -319,7 +319,7 @@ namespace xmloff //--------------------------------------------------------------------- void OPropertyExport::exportInt16PropertyAttribute(const sal_uInt16 _nNamespaceKey, const sal_Char* _pAttributeName, - const OUString& _rPropertyName, const sal_Int16 _nDefault) + const OUString& _rPropertyName, const sal_Int16 _nDefault, bool force) { DBG_CHECK_PROPERTY( _rPropertyName, sal_Int16 ); @@ -328,7 +328,7 @@ namespace xmloff m_xProps->getPropertyValue( _rPropertyName ) >>= nCurrentValue; // add the attribute - if (_nDefault != nCurrentValue) + if (force || _nDefault != nCurrentValue) { // let the formatter of the export context build a string OUStringBuffer sBuffer; diff --git a/xmloff/source/forms/propertyexport.hxx b/xmloff/source/forms/propertyexport.hxx index a5567538af47..ffc7f7cc5b80 100644 --- a/xmloff/source/forms/propertyexport.hxx +++ b/xmloff/source/forms/propertyexport.hxx @@ -160,14 +160,19 @@ namespace xmloff @param _pPropertyName the name of the property to ask the control for @param _nDefault - the default of the attribute. If the current property value equals this default, no - attribute is added. + the default of the attribute. See force parameter. + @param force + if true and the property is not set or does not contain a sal_Int16, + then _nDefault is written out. + if false and the current property value equals _nDefault, + then no attribute is added. */ void exportInt16PropertyAttribute( const sal_uInt16 _nNamespaceKey, const sal_Char* _pAttributeName, const OUString& _rPropertyName, - const sal_Int16 _nDefault); + const sal_Int16 _nDefault, + const bool force = false); /** add an attribute which is represented by a sal_Int32 property to the export context -- cgit