diff options
author | Armin Weiss <aw@openoffice.org> | 2001-10-01 10:43:24 +0000 |
---|---|---|
committer | Armin Weiss <aw@openoffice.org> | 2001-10-01 10:43:24 +0000 |
commit | 08722b4414f249e27067410e43291d2cdcaba454 (patch) | |
tree | dc3045c7711f3e84ceb7ccedbfb91557eebb3675 | |
parent | b75c8e2d989a250403c079d88b779119d87deba1 (diff) |
#91587# add handout master count
#91587# take notes pages from master pages into account
#91587# take notes pages from draw pages into account
-rw-r--r-- | xmloff/source/draw/sdxmlexp.cxx | 49 |
1 files changed, 47 insertions, 2 deletions
diff --git a/xmloff/source/draw/sdxmlexp.cxx b/xmloff/source/draw/sdxmlexp.cxx index e0620658d033..adce34d242dc 100644 --- a/xmloff/source/draw/sdxmlexp.cxx +++ b/xmloff/source/draw/sdxmlexp.cxx @@ -2,9 +2,9 @@ * * $RCSfile: sdxmlexp.cxx,v $ * - * $Revision: 1.74 $ + * $Revision: 1.75 $ * - * last change: $Author: cl $ $Date: 2001-09-28 14:31:58 $ + * last change: $Author: aw $ $Date: 2001-10-01 11:43:24 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -664,6 +664,21 @@ void SAL_CALL SdXMLExport::setSourceDocument( const uno::Reference< lang::XCompo // is initialized to 0. if(!mnObjectCount) { + // #91587# add handout master count + uno::Reference<presentation::XHandoutMasterSupplier> xHandoutSupp(GetModel(), uno::UNO_QUERY); + if(xHandoutSupp.is()) + { + uno::Reference<drawing::XDrawPage> xHandoutPage(xHandoutSupp->getHandoutMasterPage()); + if(xHandoutPage.is()) + { + uno::Reference<drawing::XShapes> xShapes(xHandoutPage, uno::UNO_QUERY); + if(xShapes.is() && xShapes->getCount()) + { + mnObjectCount += ImpRecursiveObjectCount(xShapes); + } + } + } + if(mxDocMasterPages.is()) { for(sal_Int32 a(0); a < mnDocMasterPageCount; a++) @@ -675,6 +690,21 @@ void SAL_CALL SdXMLExport::setSourceDocument( const uno::Reference< lang::XCompo { mnObjectCount += ImpRecursiveObjectCount(xMasterPage); } + + // #91587# take notes pages from master pages into account + uno::Reference<presentation::XPresentationPage> xPresPage; + if((aAny >>= xPresPage) && xPresPage.is()) + { + uno::Reference<drawing::XDrawPage> xNotesPage(xPresPage->getNotesPage()); + if(xNotesPage.is()) + { + uno::Reference<drawing::XShapes> xShapes(xNotesPage, uno::UNO_QUERY); + if(xShapes.is() && xShapes->getCount()) + { + mnObjectCount += ImpRecursiveObjectCount(xShapes); + } + } + } } } @@ -689,6 +719,21 @@ void SAL_CALL SdXMLExport::setSourceDocument( const uno::Reference< lang::XCompo { mnObjectCount += ImpRecursiveObjectCount(xPage); } + + // #91587# take notes pages from draw pages into account + uno::Reference<presentation::XPresentationPage> xPresPage; + if((aAny >>= xPresPage) && xPresPage.is()) + { + uno::Reference<drawing::XDrawPage> xNotesPage(xPresPage->getNotesPage()); + if(xNotesPage.is()) + { + uno::Reference<drawing::XShapes> xShapes(xNotesPage, uno::UNO_QUERY); + if(xShapes.is() && xShapes->getCount()) + { + mnObjectCount += ImpRecursiveObjectCount(xShapes); + } + } + } } } |