summaryrefslogtreecommitdiff
path: root/oox
diff options
context:
space:
mode:
authorMichael Meeks <michael.meeks@suse.com>2013-05-02 11:22:41 +0100
committerMichael Meeks <michael.meeks@suse.com>2013-05-02 11:23:48 +0100
commit73740b2f75558eef73bf102c7209a90aaf3e7c2e (patch)
tree5976a281e82392e1bbbe7d907be8f631ae5bad46 /oox
parentc7ef2522272579a12eecddded0cbed6d222d3742 (diff)
fdo#60549 - pptx export presentation as well as draw shape objects.
Change-Id: Ibe6e0b9fa55bab7a7d02e55560c1db4c8ed84132
Diffstat (limited to 'oox')
-rw-r--r--oox/source/export/shapes.cxx19
1 files changed, 16 insertions, 3 deletions
diff --git a/oox/source/export/shapes.cxx b/oox/source/export/shapes.cxx
index f26a5278cb57..dab14ce6ad16 100644
--- a/oox/source/export/shapes.cxx
+++ b/oox/source/export/shapes.cxx
@@ -822,11 +822,18 @@ void ShapeExport::WriteGraphicObjectShapePart( Reference< XShape > xShape, const
if( NonEmptyText( xShape ) )
{
- WriteTextShape( xShape );
+ // avoid treating all 'IsPresentationObject' objects as having text.
+ Reference< XSimpleText > xText( xShape, UNO_QUERY );
- //DBG(dump_pset(mXPropSet));
+ if( xText.is() && xText->getString().getLength() )
+ {
+ DBG(printf("graphicObject: wrote only text\n"));
- return;
+ WriteTextShape( xShape );
+
+ //DBG(dump_pset(mXPropSet));
+ return;
+ }
}
DBG(printf("graphicObject without text\n"));
@@ -1124,6 +1131,12 @@ static const NameToConvertMapType& lcl_GetConverters()
shape_converters[ "com.sun.star.drawing.OLE2Shape" ] = &ShapeExport::WriteOLE2Shape;
shape_converters[ "com.sun.star.drawing.TableShape" ] = &ShapeExport::WriteTableShape;
shape_converters[ "com.sun.star.drawing.TextShape" ] = &ShapeExport::WriteTextShape;
+
+ shape_converters[ "com.sun.star.presentation.GraphicObjectShape" ] = &ShapeExport::WriteGraphicObjectShape;
+ shape_converters[ "com.sun.star.presentation.OLE2Shape" ] = &ShapeExport::WriteOLE2Shape;
+ shape_converters[ "com.sun.star.presentation.TableShape" ] = &ShapeExport::WriteTableShape;
+ shape_converters[ "com.sun.star.presentation.TextShape" ] = &ShapeExport::WriteTextShape;
+
shape_converters[ "com.sun.star.presentation.DateTimeShape" ] = &ShapeExport::WriteTextShape;
shape_converters[ "com.sun.star.presentation.FooterShape" ] = &ShapeExport::WriteTextShape;
shape_converters[ "com.sun.star.presentation.HeaderShape" ] = &ShapeExport::WriteTextShape;