From 584e6c6051d8a8371941d61603672891a8aa3013 Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Mon, 26 Jan 2015 13:23:37 +0200 Subject: vcl: VclPtr conversion in sw Change-Id: Ie084a4b14f8371ff81fe6a95e73660e38cd376f2 --- sw/source/uibase/docvw/AnnotationWin.cxx | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'sw/source/uibase/docvw/AnnotationWin.cxx') diff --git a/sw/source/uibase/docvw/AnnotationWin.cxx b/sw/source/uibase/docvw/AnnotationWin.cxx index 539b5bab2177..372fa81aef1f 100644 --- a/sw/source/uibase/docvw/AnnotationWin.cxx +++ b/sw/source/uibase/docvw/AnnotationWin.cxx @@ -69,8 +69,14 @@ SwAnnotationWin::SwAnnotationWin( SwEditWin& rEditWin, } SwAnnotationWin::~SwAnnotationWin() +{ + dispose(); +} + +void SwAnnotationWin::dispose() { delete mpButtonPopup; + sw::sidebarwindows::SwSidebarWin::dispose(); } void SwAnnotationWin::SetPostItText() -- cgit From d7a84ce8406096b455d81f50cd50ca2e877adc06 Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Tue, 10 Mar 2015 09:07:06 +0200 Subject: vclwidget: only call dispose() once by using a new utility method in vcl::Window This means that we don't have to make all our dispose methods safe to call more than once. Change-Id: I2110c7de4a86c70fdc97dd8fd318c86b56865374 --- sw/source/uibase/docvw/AnnotationWin.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sw/source/uibase/docvw/AnnotationWin.cxx') diff --git a/sw/source/uibase/docvw/AnnotationWin.cxx b/sw/source/uibase/docvw/AnnotationWin.cxx index 372fa81aef1f..2d253baa4976 100644 --- a/sw/source/uibase/docvw/AnnotationWin.cxx +++ b/sw/source/uibase/docvw/AnnotationWin.cxx @@ -70,7 +70,7 @@ SwAnnotationWin::SwAnnotationWin( SwEditWin& rEditWin, SwAnnotationWin::~SwAnnotationWin() { - dispose(); + disposeOnce(); } void SwAnnotationWin::dispose() -- cgit From 6f9c00dfe02cdc62ad1b9798a0d007e1303a96e6 Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Tue, 14 Apr 2015 11:52:19 +0100 Subject: Sidebar lifecycle - dispose panel if we fail to construct it properly. Change-Id: I5e46e72227ac8532aed10758e1ccbb2b452ba8d4 --- sw/source/uibase/docvw/AnnotationWin.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sw/source/uibase/docvw/AnnotationWin.cxx') diff --git a/sw/source/uibase/docvw/AnnotationWin.cxx b/sw/source/uibase/docvw/AnnotationWin.cxx index 2d253baa4976..c061708ff572 100644 --- a/sw/source/uibase/docvw/AnnotationWin.cxx +++ b/sw/source/uibase/docvw/AnnotationWin.cxx @@ -213,7 +213,7 @@ sal_uInt32 SwAnnotationWin::CountFollowing() return aCount - 1; } -MenuButton* SwAnnotationWin::CreateMenuButton() +VclPtr SwAnnotationWin::CreateMenuButton() { mpButtonPopup = new PopupMenu(SW_RES(MN_ANNOTATION_BUTTON)); OUString aText = mpButtonPopup->GetItemText( FN_DELETE_NOTE_AUTHOR ); @@ -221,7 +221,7 @@ MenuButton* SwAnnotationWin::CreateMenuButton() aRewriter.AddRule(UndoArg1,GetAuthor()); aText = aRewriter.Apply(aText); mpButtonPopup->SetItemText(FN_DELETE_NOTE_AUTHOR,aText); - MenuButton* pMenuButton = new AnnotationMenuButton( *this ); + VclPtr pMenuButton( new AnnotationMenuButton( *this ), SAL_NO_ACQUIRE ); pMenuButton->SetPopupMenu( mpButtonPopup ); pMenuButton->Show(); return pMenuButton; -- cgit