summaryrefslogtreecommitdiff
path: root/oox
diff options
context:
space:
mode:
authorNoel Power <noel.power@novell.com>2012-01-11 12:45:33 +0000
committerNoel Power <noel.power@novell.com>2012-01-11 18:13:33 +0000
commit8a3b584528e30f346cbab34141ee088eea16020c (patch)
treef5374fcd183b59146418900ec911dbf50f8e656f /oox
parentaaa4e47cbcbd7a990a986ab9f53a6565af93d788 (diff)
export vertical and horizontal flip attribute for customshapes
Diffstat (limited to 'oox')
-rw-r--r--oox/source/export/shapes.cxx10
1 files changed, 9 insertions, 1 deletions
diff --git a/oox/source/export/shapes.cxx b/oox/source/export/shapes.cxx
index 5a254e0234f6..5b1b8105ffd7 100644
--- a/oox/source/export/shapes.cxx
+++ b/oox/source/export/shapes.cxx
@@ -712,6 +712,9 @@ ShapeExport& ShapeExport::WriteCustomShape( Reference< XShape > xShape )
Sequence< PropertyValue > aGeometrySeq;
sal_Int32 nAdjustmentValuesIndex = -1;
+ sal_Bool bFlipH = false;
+ sal_Bool bFlipV = false;
+
if( GETA( CustomShapeGeometry ) ) {
DBG(printf("got custom shape geometry\n"));
if( mAny >>= aGeometrySeq ) {
@@ -721,6 +724,11 @@ ShapeExport& ShapeExport::WriteCustomShape( Reference< XShape > xShape )
const PropertyValue& rProp = aGeometrySeq[ i ];
DBG(printf("geometry property: %s\n", USS( rProp.Name )));
+ if( rProp.Name.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( "MirroredX" ) ))
+ rProp.Value >>= bFlipH;
+
+ if( rProp.Name.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( "MirroredY" ) ))
+ rProp.Value >>= bFlipV;
if( rProp.Name.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( "AdjustmentValues" ) ))
nAdjustmentValuesIndex = i;
else if( rProp.Name.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( "Handles" ) )) {
@@ -747,7 +755,7 @@ ShapeExport& ShapeExport::WriteCustomShape( Reference< XShape > xShape )
// visual shape properties
pFS->startElementNS( mnXmlNamespace, XML_spPr, FSEND );
- WriteShapeTransformation( xShape, XML_a );
+ WriteShapeTransformation( xShape, XML_a, bFlipH, bFlipV );
if( nAdjustmentValuesIndex != -1 )
{
sal_Int32 nAdjustmentsWhichNeedsToBeConverted = 0;