summaryrefslogtreecommitdiff
path: root/oox
diff options
context:
space:
mode:
authorRadek Doulik <rodo@novell.com>2011-08-11 18:07:59 +0200
committerRadek Doulik <rodo@novell.com>2011-08-11 18:09:54 +0200
commit2155c4c0af4d4eb228a0644f423aa3d9b5e8a2fb (patch)
treec2e266803322b743eb4706d9e7a05422332f2892 /oox
parent76855b1befb18e0a674d712eab76e75c686c49d6 (diff)
added support for showMasterSp attribute in sldLayout
Diffstat (limited to 'oox')
-rw-r--r--oox/inc/oox/drawingml/shape.hxx2
-rw-r--r--oox/inc/oox/ppt/slidepersist.hxx1
-rw-r--r--oox/source/ppt/layoutfragmenthandler.cxx7
3 files changed, 10 insertions, 0 deletions
diff --git a/oox/inc/oox/drawingml/shape.hxx b/oox/inc/oox/drawingml/shape.hxx
index 83e7243ccbf4..486b8ef719fe 100644
--- a/oox/inc/oox/drawingml/shape.hxx
+++ b/oox/inc/oox/drawingml/shape.hxx
@@ -147,6 +147,8 @@ public:
const ::com::sun::star::awt::Rectangle* pShapeRect = 0,
ShapeIdMap* pShapeMap = 0 );
+ void dropChildren() { maChildren.clear(); }
+
void setXShape( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& rXShape )
{ mxShape = rXShape; };
const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > &
diff --git a/oox/inc/oox/ppt/slidepersist.hxx b/oox/inc/oox/ppt/slidepersist.hxx
index e4891864820c..619d9ab87c66 100644
--- a/oox/inc/oox/ppt/slidepersist.hxx
+++ b/oox/inc/oox/ppt/slidepersist.hxx
@@ -111,6 +111,7 @@ public:
oox::drawingml::TextListStylePtr getOtherTextStyle() const { return maOtherTextStylePtr; }
oox::drawingml::ShapePtr getShapes() { return maShapesPtr; }
+ void dropShapes() { maShapesPtr->dropChildren(); }
::std::list< boost::shared_ptr< TimeNode > >& getTimeNodeList() { return maTimeNodeList; }
oox::ppt::HeaderFooter& getHeaderFooter(){ return maHeaderFooter; };
diff --git a/oox/source/ppt/layoutfragmenthandler.cxx b/oox/source/ppt/layoutfragmenthandler.cxx
index 6697f8190db2..a28f4b2d654c 100644
--- a/oox/source/ppt/layoutfragmenthandler.cxx
+++ b/oox/source/ppt/layoutfragmenthandler.cxx
@@ -65,8 +65,15 @@ ContextHandlerRef LayoutFragmentHandler::onCreateContext( sal_Int32 aElementToke
switch( aElementToken )
{
case PPT_TOKEN( sldLayout ): // CT_SlideLayout
+ {
mpSlidePersistPtr->setLayoutValueToken( rAttribs.getToken( XML_type, 0 ) ); // CT_SlideLayoutType
+
+ OptValue< bool > aShowMasterShapes = rAttribs.getBool( XML_showMasterSp );
+ if( aShowMasterShapes.has() && !aShowMasterShapes.get() ) {
+ mpSlidePersistPtr->dropShapes();
+ }
break;
+ }
case PPT_TOKEN( hf ): // CT_HeaderFooter
return new HeaderFooterContext( *this, rAttribs, mpSlidePersistPtr->getHeaderFooter() );
break;