From d56ba7ee6f385866d82142aab568a159009ae69e Mon Sep 17 00:00:00 2001 From: Thorsten Behrens Date: Fri, 26 Apr 2013 13:25:11 +0200 Subject: Fix bnc#705982 - make animations inside SmartArt work. With the fallback loading of extDrawing for SmartArt graphics, slideshow animations into that drawingml fragment didn't work - for it being modelId diagram references instead of plain shape IDs. So use the modelId if present, and only then fallback to shape id. Change-Id: Iac2b8bc16255611d7ab165b72fb251cd2a65073a --- include/oox/ppt/pptshape.hxx | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include/oox/ppt') diff --git a/include/oox/ppt/pptshape.hxx b/include/oox/ppt/pptshape.hxx index aa485adf9347..2a15dcdc17ca 100644 --- a/include/oox/ppt/pptshape.hxx +++ b/include/oox/ppt/pptshape.hxx @@ -27,6 +27,7 @@ namespace oox { namespace ppt { class PPTShape : public oox::drawingml::Shape { + OUString msModelId; // fallback dgs smartart shape reference ShapeLocation meShapeLocation; // placeholdershapes (mnSubType != 0) on Master are never displayed sal_Bool mbReferenced; // placeholdershapes on Layout are displayed only, if they are not referenced // placeholdershapes on Slide are displayed always @@ -55,6 +56,7 @@ public: sal_Bool isReferenced() const { return mbReferenced; }; void setReferenced( sal_Bool bReferenced ){ mbReferenced = bReferenced; }; void setPlaceholder( oox::drawingml::ShapePtr pPlaceholder ) { mpPlaceholder = pPlaceholder; } + void setModelId( const OUString& rId ) { msModelId = rId; } static oox::drawingml::ShapePtr findPlaceholder( const sal_Int32 nMasterPlaceholder, std::vector< oox::drawingml::ShapePtr >& rShapes, bool bMasterOnly = false ); static oox::drawingml::ShapePtr findPlaceholderByIndex( const sal_Int32 nIdx, std::vector< oox::drawingml::ShapePtr >& rShapes, bool bMasterOnly = false ); -- cgit