summaryrefslogtreecommitdiff
path: root/xmloff/source
diff options
context:
space:
mode:
Diffstat (limited to 'xmloff/source')
-rw-r--r--xmloff/source/chart/PropertyMaps.cxx8
-rw-r--r--xmloff/source/style/xmlprmap.cxx11
2 files changed, 18 insertions, 1 deletions
diff --git a/xmloff/source/chart/PropertyMaps.cxx b/xmloff/source/chart/PropertyMaps.cxx
index 99a392ef4949..9ec7e327d076 100644
--- a/xmloff/source/chart/PropertyMaps.cxx
+++ b/xmloff/source/chart/PropertyMaps.cxx
@@ -7,7 +7,7 @@
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: PropertyMaps.cxx,v $
- * $Revision: 1.56 $
+ * $Revision: 1.56.40.1 $
*
* This file is part of OpenOffice.org.
*
@@ -465,6 +465,12 @@ XMLChartImportPropertyMapper::XMLChartImportPropertyMapper( const UniReference<
uno::Reference< frame::XModel > xEmptyModel;
ChainImportMapper( XMLShapeImportHelper::CreateShapePropMapper( xEmptyModel, mrImport ));
+ //#i14365# save and load writing-mode for chart elements
+ //The property TextWritingMode is mapped wrongly in the underlying draw mapper, but for draw it is necessary
+ //We remove that property here only for chart thus the chart can use the correct mapping from the writer paragraph settings (attribute 'writing-mode' <-> property 'WritingMode')
+ sal_Int32 nUnwantedWrongEntry = maPropMapper->FindEntryIndex( "TextWritingMode", XML_NAMESPACE_STYLE, GetXMLToken(XML_WRITING_MODE) );
+ maPropMapper->RemoveEntry(nUnwantedWrongEntry);
+
// do not chain text properties: on import this is done by shape mapper
// to import old documents
// ChainImportMapper( XMLTextImportHelper::CreateParaExtPropMapper());
diff --git a/xmloff/source/style/xmlprmap.cxx b/xmloff/source/style/xmlprmap.cxx
index 7178a641a9f2..4cc091911c06 100644
--- a/xmloff/source/style/xmlprmap.cxx
+++ b/xmloff/source/style/xmlprmap.cxx
@@ -242,3 +242,14 @@ sal_Int32 XMLPropertySetMapper::FindEntryIndex( const sal_Int16 nContextId ) con
return -1;
}
+
+void XMLPropertySetMapper::RemoveEntry( sal_Int32 nIndex )
+{
+ const sal_Int32 nEntries = GetEntryCount();
+ if( nIndex>=nEntries || nIndex<0 )
+ return;
+ vector < XMLPropertySetMapperEntry_Impl >::iterator aEIter = aMapEntries.begin();
+ for( sal_Int32 nN=0; nN<nIndex; nN++ )
+ aEIter++;
+ aMapEntries.erase( aEIter );
+}