summaryrefslogtreecommitdiff
path: root/sc/source/ui/miscdlgs/sharedocdlg.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sc/source/ui/miscdlgs/sharedocdlg.cxx')
-rw-r--r--sc/source/ui/miscdlgs/sharedocdlg.cxx12
1 files changed, 10 insertions, 2 deletions
diff --git a/sc/source/ui/miscdlgs/sharedocdlg.cxx b/sc/source/ui/miscdlgs/sharedocdlg.cxx
index 35b1fff147fa..9cb3ca29bccb 100644
--- a/sc/source/ui/miscdlgs/sharedocdlg.cxx
+++ b/sc/source/ui/miscdlgs/sharedocdlg.cxx
@@ -83,7 +83,7 @@ ScShareDocumentDlg::ScShareDocumentDlg( vcl::Window* pParent, ScViewData* pViewD
SvSimpleTableContainer *pCtrl = get<SvSimpleTableContainer>("users");
pCtrl->set_height_request(pCtrl->GetTextHeight()*9);
- m_pLbUsers = new ScShareTable(*pCtrl);
+ m_pLbUsers = VclPtr<ScShareTable>::Create(*pCtrl);
m_aStrNoUserData = get<FixedText>("nouserdata")->GetText();
m_aStrUnknownUser = get<FixedText>("unknownuser")->GetText();
@@ -108,7 +108,15 @@ ScShareDocumentDlg::ScShareDocumentDlg( vcl::Window* pParent, ScViewData* pViewD
ScShareDocumentDlg::~ScShareDocumentDlg()
{
- delete m_pLbUsers;
+ disposeOnce();
+}
+
+void ScShareDocumentDlg::dispose()
+{
+ m_pLbUsers.disposeAndClear();
+ m_pCbShare.clear();
+ m_pFtWarning.clear();
+ ModalDialog::dispose();
}
IMPL_LINK_NOARG(ScShareDocumentDlg, ToggleHandle)