summaryrefslogtreecommitdiff
path: root/sd/source
diff options
context:
space:
mode:
authorIvo Hinkelmann <ihi@openoffice.org>2006-08-01 08:22:33 +0000
committerIvo Hinkelmann <ihi@openoffice.org>2006-08-01 08:22:33 +0000
commitec536306b87ceee19c63f06ecd8354bfb133e977 (patch)
tree7427e9f7be5343f24710be46734d8d1388533c7d /sd/source
parent6f84c73bae9344d7e4ebaabd519159f4108715fc (diff)
INTEGRATION: CWS impress99 (1.15.60); FILE MERGED
2006/07/05 09:32:17 af 1.15.60.1: #137393# Give a reference to the Implementation to the MasterPageContainerQueue.
Diffstat (limited to 'sd/source')
-rw-r--r--sd/source/ui/toolpanel/controls/MasterPageContainer.cxx28
1 files changed, 16 insertions, 12 deletions
diff --git a/sd/source/ui/toolpanel/controls/MasterPageContainer.cxx b/sd/source/ui/toolpanel/controls/MasterPageContainer.cxx
index 57b005e64fb3..03437536fa30 100644
--- a/sd/source/ui/toolpanel/controls/MasterPageContainer.cxx
+++ b/sd/source/ui/toolpanel/controls/MasterPageContainer.cxx
@@ -4,9 +4,9 @@
*
* $RCSfile: MasterPageContainer.cxx,v $
*
- * $Revision: 1.15 $
+ * $Revision: 1.16 $
*
- * last change: $Author: kz $ $Date: 2006-04-26 20:48:16 $
+ * last change: $Author: ihi $ $Date: 2006-08-01 09:22:33 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -122,13 +122,12 @@ public:
namespace sd { namespace toolpanel { namespace controls {
-/** Inner implementation class of the MasterPageContainer. For
- documentation of undocumented methods and members please look in
- MasterPageContainer at method or member with the same name.
+/** Inner implementation class of the MasterPageContainer.
*/
class MasterPageContainer::Implementation
: public SdGlobalResource,
- public MasterPageContainerFiller::ContainerAdapter
+ public MasterPageContainerFiller::ContainerAdapter,
+ public MasterPageContainerQueue::ContainerAdapter
{
public:
mutable ::osl::Mutex maMutex;
@@ -138,7 +137,7 @@ public:
static ::boost::shared_ptr<Implementation> Instance (void);
- void LateInit (MasterPageContainer& rContainer);
+ void LateInit (void);
void AddChangeListener (const Link& rLink);
void RemoveChangeListener (const Link& rLink);
void UpdatePreviewSizePixel (void);
@@ -163,7 +162,7 @@ public:
Token aToken,
bool bNotifyAsynchronously = false);
- bool UpdateDescriptor (
+ virtual bool UpdateDescriptor (
const SharedMasterPageDescriptor& rpDescriptor,
bool bForcePageObject,
bool bForcePreview,
@@ -178,7 +177,7 @@ public:
private:
Implementation (void);
- ~Implementation (void);
+ virtual ~Implementation (void);
class Deleter { public:
void operator() (Implementation* pObject) { delete pObject; }
@@ -290,7 +289,7 @@ MasterPageContainer::MasterPageContainer (void)
: mpImpl(Implementation::Instance()),
mePreviewSize(SMALL)
{
- mpImpl->LateInit(*this);
+ mpImpl->LateInit();
}
@@ -762,7 +761,7 @@ MasterPageContainer::Implementation::~Implementation (void)
-void MasterPageContainer::Implementation::LateInit (MasterPageContainer& rContainer)
+void MasterPageContainer::Implementation::LateInit (void)
{
const ::osl::MutexGuard aGuard (maMutex);
@@ -770,7 +769,9 @@ void MasterPageContainer::Implementation::LateInit (MasterPageContainer& rContai
{
meInitializationState = INITIALIZING;
- mpRequestQueue.reset(MasterPageContainerQueue::Create(rContainer));
+ OSL_ASSERT(Instance().get()==this);
+ mpRequestQueue.reset(MasterPageContainerQueue::Create(
+ ::boost::shared_ptr<MasterPageContainerQueue::ContainerAdapter>(Instance())));
mpFillerTask = ::sd::tools::TimerBasedTaskExecution::Create(
::boost::shared_ptr<tools::AsynchronousTask>(new MasterPageContainerFiller(*this)),
@@ -919,6 +920,9 @@ MasterPageContainer::Token MasterPageContainer::Implementation::PutMasterPage (
case DEFAULT:
++rpDescriptor->mnUseCount;
break;
+
+ default:
+ break;
}
maContainer.push_back(rpDescriptor);