summaryrefslogtreecommitdiff
path: root/include/oox
diff options
context:
space:
mode:
authorJacobo Aragunde Pérez <jaragunde@igalia.com>2014-05-08 14:25:10 +0200
committerJacobo Aragunde Pérez <jaragunde@igalia.com>2014-05-09 14:10:46 +0200
commit6566c218afec3cd8c4d36094777bc30b1970e9e4 (patch)
tree5982d9710abbe04199b34343e5afe1458c316678 /include/oox
parent0df9ec782efeb24c02f7c5baef53bf2fa75a4bc5 (diff)
ooxml: Preserve shape 3d effects: z, contour and extrusion
Shapes can contain 3D effects like in the following example: <a:sp3d z="488950" extrusionH="63500" contourW="50800"/> This patch preserves the a:sp3d tag and its attributes using the shape grab bag and modifies an existing unit test to add this check. Change-Id: Ice3cae39c71784be0f6c7f2700b07c21a5e1fb6e
Diffstat (limited to 'include/oox')
-rw-r--r--include/oox/drawingml/scene3dcontext.hxx9
-rw-r--r--include/oox/drawingml/shape3dproperties.hxx5
2 files changed, 14 insertions, 0 deletions
diff --git a/include/oox/drawingml/scene3dcontext.hxx b/include/oox/drawingml/scene3dcontext.hxx
index 82af76eba44b..e4b7a62eef41 100644
--- a/include/oox/drawingml/scene3dcontext.hxx
+++ b/include/oox/drawingml/scene3dcontext.hxx
@@ -49,6 +49,15 @@ private:
Shape3DProperties& mr3DProperties;
};
+class Shape3DPropertiesContext : public ::oox::core::ContextHandler2
+{
+public:
+ Shape3DPropertiesContext( ::oox::core::ContextHandler2Helper& rParent, const ::oox::AttributeList& rAttribs, Shape3DProperties& r3DProperties ) throw();
+
+private:
+ Shape3DProperties& mr3DProperties;
+};
+
} }
#endif // INCLUDED_OOX_DRAWINGML_SCENE3DCONTEXT_HXX
diff --git a/include/oox/drawingml/shape3dproperties.hxx b/include/oox/drawingml/shape3dproperties.hxx
index 2577e3f9122d..a66d46cda14a 100644
--- a/include/oox/drawingml/shape3dproperties.hxx
+++ b/include/oox/drawingml/shape3dproperties.hxx
@@ -53,6 +53,10 @@ struct Shape3DProperties
RotationProperties maCameraRotation;
RotationProperties maLightRigRotation;
+ OptValue< sal_Int32 > mnExtrusionH;
+ OptValue< sal_Int32 > mnContourW;
+ OptValue< sal_Int32 > mnShapeZ;
+
/** Overwrites all members that are explicitly set in rSourceProps. */
void assignUsed( const Shape3DProperties& rSourceProps );
@@ -62,6 +66,7 @@ struct Shape3DProperties
css::uno::Sequence< css::beans::PropertyValue > getCameraAttributes();
css::uno::Sequence< css::beans::PropertyValue > getLightRigAttributes();
+ css::uno::Sequence< css::beans::PropertyValue > getShape3DAttributes();
};