summaryrefslogtreecommitdiff
path: root/formula
diff options
context:
space:
mode:
authorNoel Grandin <noel@peralex.com>2015-01-26 13:11:36 +0200
committerMichael Meeks <michael.meeks@collabora.com>2015-04-09 21:35:45 +0100
commit33d7f6dcfee48a33ce34e483a4249f0be0ffa4fe (patch)
treeaf8c87018918b3c1a6605d4a52a0ad2dd11473d9 /formula
parent1139e549240e2a02962360aadca227753d73a78c (diff)
vcl: VclPtr conversion in formula
Change-Id: I6f9571a3ef1fbe5bb42ef665d85425b9902c1925
Diffstat (limited to 'formula')
-rw-r--r--formula/source/ui/dlg/ControlHelper.hxx1
-rw-r--r--formula/source/ui/dlg/funcutl.cxx12
-rw-r--r--formula/source/ui/dlg/parawin.cxx6
-rw-r--r--formula/source/ui/dlg/parawin.hxx1
4 files changed, 20 insertions, 0 deletions
diff --git a/formula/source/ui/dlg/ControlHelper.hxx b/formula/source/ui/dlg/ControlHelper.hxx
index 4c7e56420c22..574c85366001 100644
--- a/formula/source/ui/dlg/ControlHelper.hxx
+++ b/formula/source/ui/dlg/ControlHelper.hxx
@@ -48,6 +48,7 @@ public:
EditBox( vcl::Window* pParent, WinBits nBits );
virtual ~EditBox();
+ virtual void dispose() SAL_OVERRIDE;
MultiLineEdit* GetEdit() {return pMEdit;}
diff --git a/formula/source/ui/dlg/funcutl.cxx b/formula/source/ui/dlg/funcutl.cxx
index d6313d418a0a..ff60bc9e0947 100644
--- a/formula/source/ui/dlg/funcutl.cxx
+++ b/formula/source/ui/dlg/funcutl.cxx
@@ -361,10 +361,16 @@ extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeEditBox(vcl::Window *p
EditBox::~EditBox()
{
+ dispose();
+}
+
+void EditBox::dispose()
+{
MultiLineEdit* pTheEdit=pMEdit;
pMEdit->Disable();
pMEdit=NULL;
delete pTheEdit;
+ Control::dispose();
}
// When the selection is changed this function will be called
@@ -481,8 +487,14 @@ extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeRefEdit(vcl::Window *p
RefEdit::~RefEdit()
{
+ dispose();
+}
+
+void RefEdit::dispose()
+{
aIdle.SetIdleHdl( Link() );
aIdle.Stop();
+ Edit::dispose();
}
void RefEdit::SetRefString( const OUString& rStr )
diff --git a/formula/source/ui/dlg/parawin.cxx b/formula/source/ui/dlg/parawin.cxx
index 9e3a647eed04..cff293aed30a 100644
--- a/formula/source/ui/dlg/parawin.cxx
+++ b/formula/source/ui/dlg/parawin.cxx
@@ -221,6 +221,11 @@ void ParaWin::UpdateArgInput( sal_uInt16 nOffset, sal_uInt16 i )
ParaWin::~ParaWin()
{
+ dispose();
+}
+
+void ParaWin::dispose()
+{
// #i66422# if the focus changes during destruction of the controls,
// don't call the focus handlers
Link aEmptyLink;
@@ -228,6 +233,7 @@ ParaWin::~ParaWin()
m_pBtnFx2->SetGetFocusHdl( aEmptyLink );
m_pBtnFx3->SetGetFocusHdl( aEmptyLink );
m_pBtnFx4->SetGetFocusHdl( aEmptyLink );
+ TabPage::dispose();
}
diff --git a/formula/source/ui/dlg/parawin.hxx b/formula/source/ui/dlg/parawin.hxx
index 5bf159b4f5d4..c885d16440a6 100644
--- a/formula/source/ui/dlg/parawin.hxx
+++ b/formula/source/ui/dlg/parawin.hxx
@@ -125,6 +125,7 @@ protected:
public:
ParaWin(vcl::Window* pParent,IControlReferenceHandler* _pDlg);
virtual ~ParaWin();
+ virtual void dispose() SAL_OVERRIDE;
void SetFunctionDesc(const IFunctionDescription* pFDesc);
void SetArgumentOffset(sal_uInt16 nOffset);