summaryrefslogtreecommitdiff
path: root/oox/source
diff options
context:
space:
mode:
Diffstat (limited to 'oox/source')
-rw-r--r--oox/source/ppt/pptshape.cxx12
-rw-r--r--oox/source/ppt/pptshapecontext.cxx1
2 files changed, 13 insertions, 0 deletions
diff --git a/oox/source/ppt/pptshape.cxx b/oox/source/ppt/pptshape.cxx
index 44290e3eaf4f..c4e579e8c551 100644
--- a/oox/source/ppt/pptshape.cxx
+++ b/oox/source/ppt/pptshape.cxx
@@ -189,6 +189,18 @@ void PPTShape::addShape(
// use style from master slide for placeholders only, otherwise use slide's style, which might be the default style from presentation
if ( !aMasterTextListStyle.get() )
aMasterTextListStyle = ( mnSubType && rSlidePersist.getMasterPersist().get() ) ? rSlidePersist.getMasterPersist()->getOtherTextStyle() : rSlidePersist.getOtherTextStyle();
+
+ if( aMasterTextListStyle.get() && getTextBody().get() ) {
+ TextListStylePtr aCombinedTextListStyle (new TextListStyle());
+
+ aCombinedTextListStyle->apply( *aMasterTextListStyle.get() );
+
+ if( mpPlaceholder.get() && mpPlaceholder->getTextBody().get() )
+ aCombinedTextListStyle->apply( mpPlaceholder->getTextBody()->getTextListStyle() );
+ aCombinedTextListStyle->apply( getTextBody()->getTextListStyle() );
+
+ setMasterTextListStyle( aCombinedTextListStyle );
+ } else
setMasterTextListStyle( aMasterTextListStyle );
Reference< XShape > xShape( createAndInsert( rFilterBase, sServiceName, pTheme, rxShapes, pShapeRect, bClearText ) );
diff --git a/oox/source/ppt/pptshapecontext.cxx b/oox/source/ppt/pptshapecontext.cxx
index c59638553018..460a18d3c951 100644
--- a/oox/source/ppt/pptshapecontext.cxx
+++ b/oox/source/ppt/pptshapecontext.cxx
@@ -180,6 +180,7 @@ Reference< XFastContextHandler > PPTShapeContext::createFastChildContext( sal_In
PPTShape* pPPTShape = dynamic_cast< PPTShape* >( pPlaceholder.get() );
if ( pPPTShape )
pPPTShape->setReferenced( sal_True );
+ pPPTShapePtr->setPlaceholder( pPlaceholder );
}
}
}