diff options
Diffstat (limited to 'svx/source/tbxctrls/extrusioncontrols.cxx')
-rw-r--r-- | svx/source/tbxctrls/extrusioncontrols.cxx | 49 |
1 files changed, 41 insertions, 8 deletions
diff --git a/svx/source/tbxctrls/extrusioncontrols.cxx b/svx/source/tbxctrls/extrusioncontrols.cxx index cafd700302df..b9d988ae37b1 100644 --- a/svx/source/tbxctrls/extrusioncontrols.cxx +++ b/svx/source/tbxctrls/extrusioncontrols.cxx @@ -104,6 +104,17 @@ ExtrusionDirectionWindow::ExtrusionDirectionWindow( AddStatusListener( msExtrusionProjection ); } +ExtrusionDirectionWindow::~ExtrusionDirectionWindow() +{ + disposeOnce(); +} + +void ExtrusionDirectionWindow::dispose() +{ + mpDirectionSet.clear(); + ToolbarMenu::dispose(); +} + void ExtrusionDirectionWindow::DataChanged( const DataChangedEvent& rDCEvt ) { ToolbarMenu::DataChanged( rDCEvt ); @@ -233,9 +244,9 @@ ExtrusionDirectionControl::ExtrusionDirectionControl( -vcl::Window* ExtrusionDirectionControl::createPopupWindow( vcl::Window* pParent ) +VclPtr<vcl::Window> ExtrusionDirectionControl::createPopupWindow( vcl::Window* pParent ) { - return new ExtrusionDirectionWindow( *this, m_xFrame, pParent ); + return VclPtr<ExtrusionDirectionWindow>::Create( *this, m_xFrame, pParent ); } // XInitialization @@ -298,6 +309,17 @@ ExtrusionDepthDialog::ExtrusionDepthDialog( vcl::Window* pParent, double fDepth, m_pMtrDepth->SetValue( (int) fDepth * 100, FUNIT_100TH_MM ); } +ExtrusionDepthDialog::~ExtrusionDepthDialog() +{ + disposeOnce(); +} + +void ExtrusionDepthDialog::dispose() +{ + m_pMtrDepth.clear(); + ModalDialog::dispose(); +} + double ExtrusionDepthDialog::getDepth() const { return (double)( m_pMtrDepth->GetValue( FUNIT_100TH_MM ) ) / 100.0; @@ -468,9 +490,9 @@ ExtrusionDepthController::ExtrusionDepthController( -vcl::Window* ExtrusionDepthController::createPopupWindow( vcl::Window* pParent ) +VclPtr<vcl::Window> ExtrusionDepthController::createPopupWindow( vcl::Window* pParent ) { - return new ExtrusionDepthWindow( *this, m_xFrame, pParent ); + return VclPtr<ExtrusionDepthWindow>::Create( *this, m_xFrame, pParent ); } // XInitialization @@ -578,6 +600,17 @@ ExtrusionLightingWindow::ExtrusionLightingWindow(svt::ToolboxController& rContro AddStatusListener( msExtrusionLightingIntensity ); } +ExtrusionLightingWindow::~ExtrusionLightingWindow() +{ + disposeOnce(); +} + +void ExtrusionLightingWindow::dispose() +{ + mpLightingSet.clear(); + ToolbarMenu::dispose(); +} + void ExtrusionLightingWindow::implSetIntensity( int nLevel, bool bEnabled ) { mnLevel = nLevel; @@ -724,9 +757,9 @@ ExtrusionLightingControl::ExtrusionLightingControl( -vcl::Window* ExtrusionLightingControl::createPopupWindow( vcl::Window* pParent ) +VclPtr<vcl::Window> ExtrusionLightingControl::createPopupWindow( vcl::Window* pParent ) { - return new ExtrusionLightingWindow( *this, m_xFrame, pParent ); + return VclPtr<ExtrusionLightingWindow>::Create( *this, m_xFrame, pParent ); } // XInitialization @@ -870,9 +903,9 @@ ExtrusionSurfaceControl::ExtrusionSurfaceControl( -vcl::Window* ExtrusionSurfaceControl::createPopupWindow( vcl::Window* pParent ) +VclPtr<vcl::Window> ExtrusionSurfaceControl::createPopupWindow( vcl::Window* pParent ) { - return new ExtrusionSurfaceWindow( *this, m_xFrame, pParent ); + return VclPtr<ExtrusionSurfaceWindow>::Create( *this, m_xFrame, pParent ); } // XInitialization |