diff options
Diffstat (limited to 'sc/source/ui/dbgui/pvfundlg.cxx')
-rw-r--r-- | sc/source/ui/dbgui/pvfundlg.cxx | 80 |
1 files changed, 79 insertions, 1 deletions
diff --git a/sc/source/ui/dbgui/pvfundlg.cxx b/sc/source/ui/dbgui/pvfundlg.cxx index 3f55a4be76d9..4cc9de6ed1b0 100644 --- a/sc/source/ui/dbgui/pvfundlg.cxx +++ b/sc/source/ui/dbgui/pvfundlg.cxx @@ -214,6 +214,25 @@ ScDPFunctionDlg::ScDPFunctionDlg( Init( rLabelData, rFuncData ); } +ScDPFunctionDlg::~ScDPFunctionDlg() +{ + disposeOnce(); +} + +void ScDPFunctionDlg::dispose() +{ + mpLbFunc.clear(); + mpFtName.clear(); + mpLbType.clear(); + mpFtBaseField.clear(); + mpLbBaseField.clear(); + mpFtBaseItem.clear(); + mpLbBaseItem.clear(); + mpBtnOk.clear(); + ModalDialog::dispose(); +} + + sal_uInt16 ScDPFunctionDlg::GetFuncMask() const { return mpLbFunc->GetSelection(); @@ -431,6 +450,24 @@ ScDPSubtotalDlg::ScDPSubtotalDlg( vcl::Window* pParent, ScDPObject& rDPObj, Init( rLabelData, rFuncData ); } +ScDPSubtotalDlg::~ScDPSubtotalDlg() +{ + disposeOnce(); +} + +void ScDPSubtotalDlg::dispose() +{ + mpRbNone.clear(); + mpRbAuto.clear(); + mpRbUser.clear(); + mpLbFunc.clear(); + mpFtName.clear(); + mpCbShowAll.clear(); + mpBtnOk.clear(); + mpBtnOptions.clear(); + ModalDialog::dispose(); +} + sal_uInt16 ScDPSubtotalDlg::GetFuncMask() const { sal_uInt16 nFuncMask = PIVOT_FUNC_NONE; @@ -502,7 +539,7 @@ IMPL_LINK( ScDPSubtotalDlg, ClickHdl, PushButton*, pBtn ) { if (pBtn == mpBtnOptions) { - boost::scoped_ptr<ScDPSubtotalOptDlg> pDlg(new ScDPSubtotalOptDlg( this, mrDPObj, maLabelData, mrDataFields, mbEnableLayout )); + VclPtrInstance< ScDPSubtotalOptDlg > pDlg( this, mrDPObj, maLabelData, mrDataFields, mbEnableLayout ); if( pDlg->Execute() == RET_OK ) pDlg->FillLabelData( maLabelData ); } @@ -545,6 +582,35 @@ ScDPSubtotalOptDlg::ScDPSubtotalOptDlg( vcl::Window* pParent, ScDPObject& rDPObj Init( rDataFields, bEnableLayout ); } +ScDPSubtotalOptDlg::~ScDPSubtotalOptDlg() +{ + disposeOnce(); +} + +void ScDPSubtotalOptDlg::dispose() +{ + m_pLbSortBy.clear(); + m_pRbSortAsc.clear(); + m_pRbSortDesc.clear(); + m_pRbSortMan.clear(); + m_pLayoutFrame.clear(); + m_pLbLayout.clear(); + m_pCbLayoutEmpty.clear(); + m_pCbRepeatItemLabels.clear(); + m_pCbShow.clear(); + m_pNfShow.clear(); + m_pFtShow.clear(); + m_pFtShowFrom.clear(); + m_pLbShowFrom.clear(); + m_pFtShowUsing.clear(); + m_pLbShowUsing.clear(); + m_pHideFrame.clear(); + m_pLbHide.clear(); + m_pFtHierarchy.clear(); + m_pLbHierarchy.clear(); + ModalDialog::dispose(); +} + void ScDPSubtotalOptDlg::FillLabelData( ScDPLabelData& rLabelData ) const { // *** SORTING *** @@ -798,6 +864,18 @@ ScDPShowDetailDlg::ScDPShowDetailDlg( vcl::Window* pParent, ScDPObject& rDPObj, mpLbDims->SetDoubleClickHdl( LINK( this, ScDPShowDetailDlg, DblClickHdl ) ); } +ScDPShowDetailDlg::~ScDPShowDetailDlg() +{ + disposeOnce(); +} + +void ScDPShowDetailDlg::dispose() +{ + mpLbDims.clear(); + mpBtnOk.clear(); + ModalDialog::dispose(); +} + short ScDPShowDetailDlg::Execute() { return mpLbDims->GetEntryCount() ? ModalDialog::Execute() : static_cast<short>(RET_CANCEL); |