summaryrefslogtreecommitdiff
path: root/sc/source/ui/dbgui/tpsort.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sc/source/ui/dbgui/tpsort.cxx')
-rw-r--r--sc/source/ui/dbgui/tpsort.cxx49
1 files changed, 38 insertions, 11 deletions
diff --git a/sc/source/ui/dbgui/tpsort.cxx b/sc/source/ui/dbgui/tpsort.cxx
index c1a0770a51fd..210f60468d98 100644
--- a/sc/source/ui/dbgui/tpsort.cxx
+++ b/sc/source/ui/dbgui/tpsort.cxx
@@ -93,6 +93,17 @@ ScTabPageSortFields::ScTabPageSortFields(vcl::Window* pParent,
SetExchangeSupport();
}
+ScTabPageSortFields::~ScTabPageSortFields()
+{
+ disposeOnce();
+}
+
+void ScTabPageSortFields::dispose()
+{
+ pDlg.clear();
+ SfxTabPage::dispose();
+}
+
void ScTabPageSortFields::SetPosSizePixel(const Point& rAllocPos, const Size& rAllocation)
{
SfxTabPage::SetPosSizePixel(rAllocPos, rAllocation);
@@ -111,10 +122,6 @@ void ScTabPageSortFields::SetPosPixel(const Point& rAllocPos)
maSortKeyCtrl.setScrollRange();
}
-ScTabPageSortFields::~ScTabPageSortFields()
-{
-}
-
void ScTabPageSortFields::Init()
{
const ScSortItem& rSortItem = static_cast<const ScSortItem&>(
@@ -135,10 +142,10 @@ void ScTabPageSortFields::Init()
}
}
-SfxTabPage* ScTabPageSortFields::Create( vcl::Window* pParent,
- const SfxItemSet* rArgSet )
+VclPtr<SfxTabPage> ScTabPageSortFields::Create( vcl::Window* pParent,
+ const SfxItemSet* rArgSet )
{
- return ( new ScTabPageSortFields( pParent, *rArgSet ) );
+ return VclPtr<ScTabPageSortFields>::Create( pParent, *rArgSet );
}
void ScTabPageSortFields::Reset( const SfxItemSet* /* rArgSet */ )
@@ -516,6 +523,11 @@ ScTabPageSortOptions::ScTabPageSortOptions( vcl::Window* pParent,
ScTabPageSortOptions::~ScTabPageSortOptions()
{
+ disposeOnce();
+}
+
+void ScTabPageSortOptions::dispose()
+{
sal_uInt16 nEntries = m_pLbOutPos->GetEntryCount();
for ( sal_uInt16 i=1; i<nEntries; i++ )
@@ -523,6 +535,22 @@ ScTabPageSortOptions::~ScTabPageSortOptions()
delete pColRes;
delete pColWrap; //! not if from document
+ m_pBtnCase.clear();
+ m_pBtnHeader.clear();
+ m_pBtnFormats.clear();
+ m_pBtnNaturalSort.clear();
+ m_pBtnCopyResult.clear();
+ m_pLbOutPos.clear();
+ m_pEdOutPos.clear();
+ m_pBtnSortUser.clear();
+ m_pLbSortUser.clear();
+ m_pLbLanguage.clear();
+ m_pFtAlgorithm.clear();
+ m_pLbAlgorithm.clear();
+ m_pBtnTopDown.clear();
+ m_pBtnLeftRight.clear();
+ pDlg.clear();
+ SfxTabPage::dispose();
}
void ScTabPageSortOptions::Init()
@@ -607,11 +635,10 @@ void ScTabPageSortOptions::Init()
m_pLbLanguage->InsertLanguage( LANGUAGE_SYSTEM );
}
-SfxTabPage* ScTabPageSortOptions::Create(
- vcl::Window* pParent,
- const SfxItemSet* rArgSet )
+VclPtr<SfxTabPage> ScTabPageSortOptions::Create( vcl::Window* pParent,
+ const SfxItemSet* rArgSet )
{
- return ( new ScTabPageSortOptions( pParent, *rArgSet ) );
+ return VclPtr<ScTabPageSortOptions>::Create( pParent, *rArgSet );
}
void ScTabPageSortOptions::Reset( const SfxItemSet* /* rArgSet */ )