summaryrefslogtreecommitdiff
path: root/xmloff
diff options
context:
space:
mode:
authorArmin Le Grand <alg@apache.org>2013-10-30 14:41:25 +0000
committerCaolán McNamara <caolanm@redhat.com>2013-11-05 15:13:20 +0000
commitf689578dc4f3a77f6a3e72bbf32adf88a2c55526 (patch)
tree54d33352b97d065d9488e6e8c9ecb94d0056a6a5 /xmloff
parent250015d1107eabb2e4fdb9e762b3bd06b6c1739b (diff)
Resolves: #i123542# corrected ODF XML export of 3D cube and sphere
(cherry picked from commit a8cc15c001ac76c0d320837cc4cdf65ecb7fc923) Conflicts: xmloff/source/draw/shapeexport2.cxx xmloff/source/draw/shapeexport3.cxx Change-Id: I35f7817f3ea95177dd3aa633b9cbb1b5703f08a0
Diffstat (limited to 'xmloff')
-rw-r--r--xmloff/source/draw/shapeexport.cxx22
1 files changed, 13 insertions, 9 deletions
diff --git a/xmloff/source/draw/shapeexport.cxx b/xmloff/source/draw/shapeexport.cxx
index ec3ec75cfce3..fef66ec28ec1 100644
--- a/xmloff/source/draw/shapeexport.cxx
+++ b/xmloff/source/draw/shapeexport.cxx
@@ -2211,9 +2211,9 @@ void XMLShapeExport::ImpExportPolygonShape(
}
}
- // write object, but after attributes are added since the destructor will
- // consume all of these added attributes. Also before text is added; this may
- // open another SvXMLElementExport scope which needs to be inside this one
+ // write object, but after attributes are added since this call will
+ // consume all of these added attributes and the destructor will close the
+ // scope. Also before text is added; this may add sub-scopes as needed
SvXMLElementExport aOBJ(
mrExport,
XML_NAMESPACE_DRAW,
@@ -3320,9 +3320,6 @@ void XMLShapeExport::ImpExport3DShape(
{
case XmlShapeTypeDraw3DCubeObject:
{
- // write 3DCube shape
- SvXMLElementExport aOBJ(mrExport, XML_NAMESPACE_DR3D, XML_CUBE, sal_True, sal_True);
-
// minEdge
aAny = xPropSet->getPropertyValue("D3DPosition");
drawing::Position3D aPosition3D;
@@ -3354,13 +3351,15 @@ void XMLShapeExport::ImpExport3DShape(
mrExport.AddAttribute(XML_NAMESPACE_DR3D, XML_MAX_EDGE, aStr);
}
+ // write 3DCube shape
+ // #i123542# Do this *after* the attributes are added, else these will be lost since opening
+ // the scope will clear the global attribute list at the exporter
+ SvXMLElementExport aOBJ(mrExport, XML_NAMESPACE_DR3D, XML_CUBE, sal_True, sal_True);
+
break;
}
case XmlShapeTypeDraw3DSphereObject:
{
- // write 3DSphere shape
- SvXMLElementExport aOBJ(mrExport, XML_NAMESPACE_DR3D, XML_SPHERE, sal_True, sal_True);
-
// Center
aAny = xPropSet->getPropertyValue("D3DPosition");
drawing::Position3D aPosition3D;
@@ -3389,6 +3388,11 @@ void XMLShapeExport::ImpExport3DShape(
mrExport.AddAttribute(XML_NAMESPACE_DR3D, XML_SIZE, aStr);
}
+ // write 3DSphere shape
+ // #i123542# Do this *after* the attributes are added, else these will be lost since opening
+ // the scope will clear the global attribute list at the exporter
+ SvXMLElementExport aOBJ(mrExport, XML_NAMESPACE_DR3D, XML_SPHERE, sal_True, sal_True);
+
break;
}
case XmlShapeTypeDraw3DLatheObject: