summaryrefslogtreecommitdiff
path: root/svx/source/tbxctrls/bulletsnumbering.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svx/source/tbxctrls/bulletsnumbering.cxx')
-rw-r--r--svx/source/tbxctrls/bulletsnumbering.cxx15
1 files changed, 14 insertions, 1 deletions
diff --git a/svx/source/tbxctrls/bulletsnumbering.cxx b/svx/source/tbxctrls/bulletsnumbering.cxx
index bc47a66ec219..4e7c2db0f274 100644
--- a/svx/source/tbxctrls/bulletsnumbering.cxx
+++ b/svx/source/tbxctrls/bulletsnumbering.cxx
@@ -40,13 +40,15 @@ class NumberingPopup : public svtools::ToolbarMenu
{
bool mbBulletItem;
NumberingToolBoxControl& mrController;
- SvxNumValueSet* mpValueSet;
+ VclPtr<SvxNumValueSet> mpValueSet;
DECL_LINK( VSSelectHdl, void * );
public:
NumberingPopup( NumberingToolBoxControl& rController,
const css::uno::Reference< css::frame::XFrame >& rFrame,
vcl::Window* pParent, bool bBulletItem );
+ virtual ~NumberingPopup();
+ virtual void dispose() SAL_OVERRIDE;
virtual void statusChanged( const css::frame::FeatureStateEvent& rEvent )
throw ( css::uno::RuntimeException ) SAL_OVERRIDE;
@@ -133,6 +135,17 @@ NumberingPopup::NumberingPopup( NumberingToolBoxControl& rController,
AddStatusListener( ".uno:CurrentNumListType" );
}
+NumberingPopup::~NumberingPopup()
+{
+ dispose();
+}
+
+void NumberingPopup::dispose()
+{
+ mpValueSet.clear();
+ ToolbarMenu::dispose();
+}
+
void NumberingPopup::statusChanged( const css::frame::FeatureStateEvent& rEvent )
throw ( css::uno::RuntimeException )
{