diff options
Diffstat (limited to 'sw/source/uibase/docvw/PostItMgr.cxx')
-rw-r--r-- | sw/source/uibase/docvw/PostItMgr.cxx | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/sw/source/uibase/docvw/PostItMgr.cxx b/sw/source/uibase/docvw/PostItMgr.cxx index 7b36acd7ccb3..09357e2b40b8 100644 --- a/sw/source/uibase/docvw/PostItMgr.cxx +++ b/sw/source/uibase/docvw/PostItMgr.cxx @@ -193,8 +193,7 @@ void SwPostItMgr::CheckForRemovedPostIts() mvPostItFlds.remove(*it); if (GetActiveSidebarWin() == p->pPostIt) SetActiveSidebarWin(0); - if (p->pPostIt) - delete p->pPostIt; + p->pPostIt.disposeAndClear(); delete p; bRemoved = true; } @@ -243,8 +242,8 @@ void SwPostItMgr::RemoveItem( SfxBroadcaster* pBroadcast ) SwSidebarItem* p = (*i); if (GetActiveSidebarWin() == p->pPostIt) SetActiveSidebarWin(0); + p->pPostIt.disposeAndClear(); mvPostItFlds.erase(i); - delete p->pPostIt; delete p; break; } @@ -1178,8 +1177,7 @@ void SwPostItMgr::RemoveSidebarWin() for(std::list<SwSidebarItem*>::iterator i = mvPostItFlds.begin(); i != mvPostItFlds.end() ; ++i) { EndListening( *(const_cast<SfxBroadcaster*>((*i)->GetBroadCaster())) ); - if ((*i)->pPostIt) - delete (*i)->pPostIt; + (*i)->pPostIt.disposeAndClear(); delete (*i); } mvPostItFlds.clear(); @@ -1498,7 +1496,7 @@ sw::annotation::SwAnnotationWin* SwPostItMgr::GetAnnotationWin(const SwPostItFie for(const_iterator i = mvPostItFlds.begin(); i != mvPostItFlds.end() ; ++i) { if ( (*i)->GetFmtFld().GetField() == pFld ) - return dynamic_cast<sw::annotation::SwAnnotationWin*>((*i)->pPostIt); + return dynamic_cast<sw::annotation::SwAnnotationWin*>((*i)->pPostIt.get()); } return NULL; } @@ -2031,13 +2029,13 @@ void SwPostItMgr::AssureStdModeAtShell() bool SwPostItMgr::HasActiveSidebarWin() const { - return mpActivePostIt != 0; + return mpActivePostIt != nullptr; } bool SwPostItMgr::HasActiveAnnotationWin() const { return HasActiveSidebarWin() && - dynamic_cast<sw::annotation::SwAnnotationWin*>(mpActivePostIt) != 0; + dynamic_cast<sw::annotation::SwAnnotationWin*>(mpActivePostIt.get()) != 0; } void SwPostItMgr::GrabFocusOnActiveSidebarWin() |