diff options
Diffstat (limited to 'sc/source/ui/optdlg/tpview.cxx')
-rw-r--r-- | sc/source/ui/optdlg/tpview.cxx | 61 |
1 files changed, 55 insertions, 6 deletions
diff --git a/sc/source/ui/optdlg/tpview.cxx b/sc/source/ui/optdlg/tpview.cxx index a8a1532d2e17..251285e85f64 100644 --- a/sc/source/ui/optdlg/tpview.cxx +++ b/sc/source/ui/optdlg/tpview.cxx @@ -95,13 +95,40 @@ ScTpContentOptions::ScTpContentOptions( vcl::Window* pParent, ScTpContentOptions::~ScTpContentOptions() { + disposeOnce(); +} + +void ScTpContentOptions::dispose() +{ delete pLocalOptions; + pGridLB.clear(); + pColorFT.clear(); + pColorLB.clear(); + pBreakCB.clear(); + pGuideLineCB.clear(); + pFormulaCB.clear(); + pNilCB.clear(); + pAnnotCB.clear(); + pValueCB.clear(); + pAnchorCB.clear(); + pClipMarkCB.clear(); + pRangeFindCB.clear(); + pObjGrfLB.clear(); + pDiagramLB.clear(); + pDrawLB.clear(); + pSyncZoomCB.clear(); + pRowColHeaderCB.clear(); + pHScrollCB.clear(); + pVScrollCB.clear(); + pTblRegCB.clear(); + pOutlineCB.clear(); + SfxTabPage::dispose(); } -SfxTabPage* ScTpContentOptions::Create( vcl::Window* pParent, - const SfxItemSet* rCoreSet ) +VclPtr<SfxTabPage> ScTpContentOptions::Create( vcl::Window* pParent, + const SfxItemSet* rCoreSet ) { - return new ScTpContentOptions(pParent, *rCoreSet); + return VclPtr<SfxTabPage>( new ScTpContentOptions (pParent, *rCoreSet), SAL_NO_ACQUIRE ); } bool ScTpContentOptions::FillItemSet( SfxItemSet* rCoreSet ) @@ -406,12 +433,34 @@ ScTpLayoutOptions::ScTpLayoutOptions( vcl::Window* pParent, ScTpLayoutOptions::~ScTpLayoutOptions() { + disposeOnce(); } -SfxTabPage* ScTpLayoutOptions::Create( vcl::Window* pParent, - const SfxItemSet* rCoreSet ) +void ScTpLayoutOptions::dispose() +{ + m_pUnitLB.clear(); + m_pTabMF.clear(); + m_pAlwaysRB.clear(); + m_pRequestRB.clear(); + m_pNeverRB.clear(); + m_pAlignCB.clear(); + m_pAlignLB.clear(); + m_pEditModeCB.clear(); + m_pFormatCB.clear(); + m_pExpRefCB.clear(); + m_pSortRefUpdateCB.clear(); + m_pMarkHdrCB.clear(); + m_pTextFmtCB.clear(); + m_pReplWarnCB.clear(); + m_pLegacyCellSelectionCB.clear(); + SfxTabPage::dispose(); +} + + +VclPtr<SfxTabPage> ScTpLayoutOptions::Create( vcl::Window* pParent, + const SfxItemSet* rCoreSet ) { - ScTpLayoutOptions* pNew = new ScTpLayoutOptions(pParent, *rCoreSet); + VclPtr<ScTpLayoutOptions> pNew( new ScTpLayoutOptions( pParent, *rCoreSet), SAL_NO_ACQUIRE ); ScDocShell* pDocSh = PTR_CAST(ScDocShell,SfxObjectShell::Current()); if(pDocSh!=NULL) |