diff options
Diffstat (limited to 'sc/source/ui/condformat/condformatdlg.cxx')
-rw-r--r-- | sc/source/ui/condformat/condformatdlg.cxx | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/sc/source/ui/condformat/condformatdlg.cxx b/sc/source/ui/condformat/condformatdlg.cxx index ad260e40fe80..f058aabe7295 100644 --- a/sc/source/ui/condformat/condformatdlg.cxx +++ b/sc/source/ui/condformat/condformatdlg.cxx @@ -47,6 +47,17 @@ ScCondFormatList::ScCondFormatList(vcl::Window* pParent, WinBits nStyle) SetBackground(GetControlBackground()); } +ScCondFormatList::~ScCondFormatList() +{ + dispose(); +} + +void ScCondFormatList::dispose() +{ + mpDialogParent.clear(); + Control::dispose(); +} + void ScCondFormatList::init(ScDocument* pDoc, ScCondFormatDlg* pDialogParent, const ScConditionalFormat* pFormat, const ScRangeList& rRanges, const ScAddress& rPos, condformat::dialog::ScCondFormatDialogType eType) @@ -436,7 +447,20 @@ ScCondFormatDlg::ScCondFormatDlg(vcl::Window* pParent, ScDocument* pDoc, ScCondFormatDlg::~ScCondFormatDlg() { + dispose(); +} + +void ScCondFormatDlg::dispose() +{ SC_MOD()->PopAnyRefDlg(); + mpBtnAdd.clear(); + mpBtnRemove.clear(); + mpFtRange.clear(); + mpEdRange.clear(); + mpRbRange.clear(); + mpCondFormList.clear(); + mpLastEdit.clear(); + ScAnyRefModalDlg::dispose(); } void ScCondFormatDlg::SetActive() |