summaryrefslogtreecommitdiff
path: root/sd/source/ui/sidebar/MasterPageContainer.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sd/source/ui/sidebar/MasterPageContainer.cxx')
-rw-r--r--sd/source/ui/sidebar/MasterPageContainer.cxx85
1 files changed, 43 insertions, 42 deletions
diff --git a/sd/source/ui/sidebar/MasterPageContainer.cxx b/sd/source/ui/sidebar/MasterPageContainer.cxx
index 55a1b3abb104..2b55982f3e04 100644
--- a/sd/source/ui/sidebar/MasterPageContainer.cxx
+++ b/sd/source/ui/sidebar/MasterPageContainer.cxx
@@ -54,7 +54,8 @@
#include "pres.hxx"
#include <osl/mutex.hxx>
#include <osl/getglobalmutex.hxx>
-#include <memory>
+#include <boost/scoped_ptr.hpp>
+#include <boost/weak_ptr.hpp>
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
@@ -77,10 +78,10 @@ class MasterPageContainer::Implementation
public:
mutable ::osl::Mutex maMutex;
- static std::weak_ptr<Implementation> mpInstance;
+ static ::boost::weak_ptr<Implementation> mpInstance;
MasterPageContainerType maContainer;
- static std::shared_ptr<Implementation> Instance();
+ static ::boost::shared_ptr<Implementation> Instance();
void LateInit();
void AddChangeListener (const Link<MasterPageContainerChangeEvent&,void>& rLink);
@@ -131,7 +132,7 @@ private:
enum InitializationState { NOT_INITIALIZED, INITIALIZING, INITIALIZED } meInitializationState;
- std::unique_ptr<MasterPageContainerQueue> mpRequestQueue;
+ ::boost::scoped_ptr<MasterPageContainerQueue> mpRequestQueue;
::com::sun::star::uno::Reference<com::sun::star::frame::XModel> mxModel;
SdDrawDocument* mpDocument;
PreviewRenderer maPreviewRenderer;
@@ -162,7 +163,7 @@ private:
// We have to remember the tasks for initialization and filling in case
// a MasterPageContainer object is destroyed before these tasks have
// been completed.
- std::weak_ptr<sd::tools::TimerBasedTaskExecution> mpFillerTask;
+ ::boost::weak_ptr<sd::tools::TimerBasedTaskExecution> mpFillerTask;
Size maSmallPreviewSizePixel;
Size maLargePreviewSizePixel;
@@ -179,13 +180,13 @@ private:
//===== MasterPageContainer ===================================================
-std::weak_ptr<MasterPageContainer::Implementation>
+::boost::weak_ptr<MasterPageContainer::Implementation>
MasterPageContainer::Implementation::mpInstance;
-std::shared_ptr<MasterPageContainer::Implementation>
+::boost::shared_ptr<MasterPageContainer::Implementation>
MasterPageContainer::Implementation::Instance()
{
- std::shared_ptr<MasterPageContainer::Implementation> pInstance;
+ ::boost::shared_ptr<MasterPageContainer::Implementation> pInstance;
if (Implementation::mpInstance.expired())
{
@@ -194,25 +195,25 @@ std::shared_ptr<MasterPageContainer::Implementation>
if (Implementation::mpInstance.expired())
{
OSL_DOUBLE_CHECKED_LOCKING_MEMORY_BARRIER();
- pInstance = std::shared_ptr<MasterPageContainer::Implementation>(
+ pInstance = ::boost::shared_ptr<MasterPageContainer::Implementation>(
new MasterPageContainer::Implementation(),
MasterPageContainer::Implementation::Deleter());
SdGlobalResourceContainer::Instance().AddResource(pInstance);
Implementation::mpInstance = pInstance;
}
else
- pInstance = std::shared_ptr<MasterPageContainer::Implementation>(
+ pInstance = ::boost::shared_ptr<MasterPageContainer::Implementation>(
Implementation::mpInstance);
}
else
{
OSL_DOUBLE_CHECKED_LOCKING_MEMORY_BARRIER();
- pInstance = std::shared_ptr<MasterPageContainer::Implementation>(
+ pInstance = ::boost::shared_ptr<MasterPageContainer::Implementation>(
Implementation::mpInstance);
}
- DBG_ASSERT (pInstance.get()!=nullptr,
- "MasterPageContainer::Implementation::Instance(): instance is nullptr");
+ DBG_ASSERT (pInstance.get()!=NULL,
+ "MasterPageContainer::Implementation::Instance(): instance is NULL");
return pInstance;
}
@@ -259,7 +260,7 @@ MasterPageContainer::Token MasterPageContainer::PutMasterPage (
void MasterPageContainer::AcquireToken (Token aToken)
{
SharedMasterPageDescriptor pDescriptor = mpImpl->GetDescriptor(aToken);
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
{
++pDescriptor->mnUseCount;
}
@@ -268,7 +269,7 @@ void MasterPageContainer::AcquireToken (Token aToken)
void MasterPageContainer::ReleaseToken (Token aToken)
{
SharedMasterPageDescriptor pDescriptor = mpImpl->GetDescriptor(aToken);
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
{
OSL_ASSERT(pDescriptor->mnUseCount>0);
--pDescriptor->mnUseCount;
@@ -356,7 +357,7 @@ MasterPageContainer::Token MasterPageContainer::GetTokenForPageObject (
const ::osl::MutexGuard aGuard (mpImpl->maMutex);
Token aResult (NIL_TOKEN);
- if (pPage != nullptr)
+ if (pPage != NULL)
{
MasterPageContainerType::iterator iEntry (
::std::find_if (
@@ -375,7 +376,7 @@ OUString MasterPageContainer::GetURLForToken (
const ::osl::MutexGuard aGuard (mpImpl->maMutex);
SharedMasterPageDescriptor pDescriptor = mpImpl->GetDescriptor(aToken);
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
return pDescriptor->msURL;
else
return OUString();
@@ -387,7 +388,7 @@ OUString MasterPageContainer::GetPageNameForToken (
const ::osl::MutexGuard aGuard (mpImpl->maMutex);
SharedMasterPageDescriptor pDescriptor = mpImpl->GetDescriptor(aToken);
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
return pDescriptor->msPageName;
else
return OUString();
@@ -399,7 +400,7 @@ OUString MasterPageContainer::GetStyleNameForToken (
const ::osl::MutexGuard aGuard (mpImpl->maMutex);
SharedMasterPageDescriptor pDescriptor = mpImpl->GetDescriptor(aToken);
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
return pDescriptor->msStyleName;
else
return OUString();
@@ -411,12 +412,12 @@ SdPage* MasterPageContainer::GetPageObjectForToken (
{
const ::osl::MutexGuard aGuard (mpImpl->maMutex);
- SdPage* pPageObject = nullptr;
+ SdPage* pPageObject = NULL;
SharedMasterPageDescriptor pDescriptor = mpImpl->GetDescriptor(aToken);
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
{
pPageObject = pDescriptor->mpMasterPage;
- if (pPageObject == nullptr)
+ if (pPageObject == NULL)
{
// The page object is not (yet) present. Call
// UpdateDescriptor() to trigger the PageObjectProvider() to
@@ -435,7 +436,7 @@ MasterPageContainer::Origin MasterPageContainer::GetOriginForToken (Token aToken
const ::osl::MutexGuard aGuard (mpImpl->maMutex);
SharedMasterPageDescriptor pDescriptor = mpImpl->GetDescriptor(aToken);
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
return pDescriptor->meOrigin;
else
return UNKNOWN;
@@ -446,7 +447,7 @@ sal_Int32 MasterPageContainer::GetTemplateIndexForToken (Token aToken)
const ::osl::MutexGuard aGuard (mpImpl->maMutex);
SharedMasterPageDescriptor pDescriptor = mpImpl->GetDescriptor(aToken);
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
return pDescriptor->mnTemplateIndex;
else
return -1;
@@ -486,9 +487,9 @@ MasterPageContainer::Implementation::Implementation()
: maMutex(),
maContainer(),
meInitializationState(NOT_INITIALIZED),
- mpRequestQueue(nullptr),
- mxModel(nullptr),
- mpDocument(nullptr),
+ mpRequestQueue(NULL),
+ mxModel(NULL),
+ mpDocument(NULL),
maPreviewRenderer(),
mbFirstPageObjectSeen(false),
maLargePreviewBeingCreated(),
@@ -523,7 +524,7 @@ MasterPageContainer::Implementation::~Implementation()
{
}
}
- mxModel = nullptr;
+ mxModel = NULL;
}
void MasterPageContainer::Implementation::LateInit()
@@ -536,10 +537,10 @@ void MasterPageContainer::Implementation::LateInit()
OSL_ASSERT(Instance().get()==this);
mpRequestQueue.reset(MasterPageContainerQueue::Create(
- std::shared_ptr<MasterPageContainerQueue::ContainerAdapter>(Instance())));
+ ::boost::shared_ptr<MasterPageContainerQueue::ContainerAdapter>(Instance())));
mpFillerTask = ::sd::tools::TimerBasedTaskExecution::Create(
- std::shared_ptr<tools::AsynchronousTask>(new MasterPageContainerFiller(*this)),
+ ::boost::shared_ptr<tools::AsynchronousTask>(new MasterPageContainerFiller(*this)),
5,
50);
@@ -580,7 +581,7 @@ void MasterPageContainer::Implementation::UpdatePreviewSizePixel()
MasterPageContainerType::const_iterator iDescriptor;
MasterPageContainerType::const_iterator iContainerEnd(maContainer.end());
for (iDescriptor=maContainer.begin(); iDescriptor!=iContainerEnd; ++iDescriptor)
- if (*iDescriptor!=0 && (*iDescriptor)->mpMasterPage != nullptr)
+ if (*iDescriptor!=0 && (*iDescriptor)->mpMasterPage != NULL)
{
Size aPageSize ((*iDescriptor)->mpMasterPage->GetSize());
OSL_ASSERT(aPageSize.Width() > 0 && aPageSize.Height() > 0);
@@ -622,7 +623,7 @@ IMPL_LINK_TYPED(MasterPageContainer::Implementation,AsynchronousNotifyCallback,
EventData* pData = static_cast<EventData*>(p);
const ::osl::MutexGuard aGuard (maMutex);
- if (pData != nullptr)
+ if (pData != NULL)
{
FireContainerChange(pData->first, pData->second);
delete pData;
@@ -649,7 +650,7 @@ MasterPageContainer::Token MasterPageContainer::Implementation::PutMasterPage (
if (aEntry == maContainer.end())
{
// Insert a new MasterPageDescriptor.
- bool bIgnore (rpDescriptor->mpPageObjectProvider.get()==nullptr
+ bool bIgnore (rpDescriptor->mpPageObjectProvider.get()==NULL
&& rpDescriptor->msURL.isEmpty());
if ( ! bIgnore)
@@ -686,7 +687,7 @@ MasterPageContainer::Token MasterPageContainer::Implementation::PutMasterPage (
aResult = (*aEntry)->maToken;
std::unique_ptr<std::vector<MasterPageContainerChangeEvent::EventType> > pEventTypes(
(*aEntry)->Update(*rpDescriptor));
- if (pEventTypes.get()!=nullptr && pEventTypes->size()>0)
+ if (pEventTypes.get()!=NULL && pEventTypes->size()>0)
{
// One or more aspects of the descriptor have changed. Send
// appropriate events to the listeners.
@@ -707,7 +708,7 @@ bool MasterPageContainer::Implementation::HasToken (Token aToken) const
{
return aToken>=0
&& (unsigned)aToken<maContainer.size()
- && maContainer[aToken].get()!=nullptr;
+ && maContainer[aToken].get()!=NULL;
}
const SharedMasterPageDescriptor MasterPageContainer::Implementation::GetDescriptor (
@@ -732,7 +733,7 @@ void MasterPageContainer::Implementation::InvalidatePreview (Token aToken)
const ::osl::MutexGuard aGuard (maMutex);
SharedMasterPageDescriptor pDescriptor (GetDescriptor(aToken));
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
{
pDescriptor->maSmallPreview = Image();
pDescriptor->maLargePreview = Image();
@@ -753,7 +754,7 @@ Image MasterPageContainer::Implementation::GetPreviewForToken (
// When the preview is missing but inexpensively creatable then do that
// now.
- if (pDescriptor.get()!=nullptr)
+ if (pDescriptor.get()!=NULL)
{
if (ePreviewState == PS_CREATABLE)
if (UpdateDescriptor(pDescriptor, false,false, true))
@@ -801,11 +802,11 @@ MasterPageContainer::PreviewState MasterPageContainer::Implementation::GetPrevie
PreviewState eState (PS_NOT_AVAILABLE);
SharedMasterPageDescriptor pDescriptor = GetDescriptor(aToken);
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
{
if (pDescriptor->maLargePreview.GetSizePixel().Width() != 0)
eState = PS_AVAILABLE;
- else if (pDescriptor->mpPreviewProvider.get() != nullptr)
+ else if (pDescriptor->mpPreviewProvider.get() != NULL)
{
// The preview does not exist but can be created. When that is
// not expensive then do it at once.
@@ -824,7 +825,7 @@ MasterPageContainer::PreviewState MasterPageContainer::Implementation::GetPrevie
bool MasterPageContainer::Implementation::RequestPreview (Token aToken)
{
SharedMasterPageDescriptor pDescriptor = GetDescriptor(aToken);
- if (pDescriptor.get() != nullptr)
+ if (pDescriptor.get() != NULL)
return mpRequestQueue->RequestPreview(pDescriptor);
else
return false;
@@ -938,7 +939,7 @@ void MasterPageContainer::Implementation::CleanContainer()
// elements in the middle can not be removed because that would
// invalidate the references still held by others.
int nIndex (maContainer.size()-1);
- while (nIndex>=0 && maContainer[nIndex].get()==nullptr)
+ while (nIndex>=0 && maContainer[nIndex].get()==NULL)
--nIndex;
maContainer.resize(++nIndex);
}
@@ -978,7 +979,7 @@ bool MasterPageContainer::Implementation::UpdateDescriptor (
// and the caller needs the preview.
bForcePageObject |= (bForcePreview
&& rpDescriptor->mpPreviewProvider->NeedsPageObject()
- && rpDescriptor->mpMasterPage==nullptr);
+ && rpDescriptor->mpMasterPage==NULL);
// Define a cost threshold so that an update or page object or preview
// that is at least this cost are made at once. Updates with higher cost