summaryrefslogtreecommitdiff
path: root/sc/source/ui/optdlg/tpview.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sc/source/ui/optdlg/tpview.cxx')
-rw-r--r--sc/source/ui/optdlg/tpview.cxx61
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)