From 9a6bf4be437102004a01ee5818e943f0e095eefe Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Fri, 9 Jan 2015 15:26:08 +0000 Subject: vcl: dispose of more Window sub-classes, particularly top-level windows. Change-Id: If8311e5cf3193fd1434c3af5225367ca8e91fc6d --- include/vcl/btndlg.hxx | 1 + include/vcl/floatwin.hxx | 1 + include/vcl/introwin.hxx | 6 ++++-- include/vcl/msgbox.hxx | 3 ++- include/vcl/openglwin.hxx | 6 ++++-- include/vcl/syschild.hxx | 1 + include/vcl/syswin.hxx | 4 +++- include/vcl/wrkwin.hxx | 1 + 8 files changed, 17 insertions(+), 6 deletions(-) (limited to 'include') diff --git a/include/vcl/btndlg.hxx b/include/vcl/btndlg.hxx index fc51c15b95d1..c7fdab639d1b 100644 --- a/include/vcl/btndlg.hxx +++ b/include/vcl/btndlg.hxx @@ -40,6 +40,7 @@ class VCL_DLLPUBLIC ButtonDialog : public Dialog public: ButtonDialog( vcl::Window* pParent, WinBits nStyle = WB_STDDIALOG ); virtual ~ButtonDialog(); + virtual void dispose() SAL_OVERRIDE; virtual void Resize() SAL_OVERRIDE; virtual void StateChanged( StateChangedType nStateChange ) SAL_OVERRIDE; diff --git a/include/vcl/floatwin.hxx b/include/vcl/floatwin.hxx index b000fb7940e5..6c1147d241ce 100644 --- a/include/vcl/floatwin.hxx +++ b/include/vcl/floatwin.hxx @@ -122,6 +122,7 @@ public: explicit FloatingWindow(vcl::Window* pParent, const OString& rID, const OUString& rUIXMLDescription, const css::uno::Reference &rFrame = css::uno::Reference()); virtual ~FloatingWindow(); + virtual void dispose() SAL_OVERRIDE; virtual bool Notify( NotifyEvent& rNEvt ) SAL_OVERRIDE; virtual void StateChanged( StateChangedType nType ) SAL_OVERRIDE; diff --git a/include/vcl/introwin.hxx b/include/vcl/introwin.hxx index 7b9fc1e837ea..8576ecda3e81 100644 --- a/include/vcl/introwin.hxx +++ b/include/vcl/introwin.hxx @@ -30,8 +30,10 @@ private: SAL_DLLPRIVATE void ImplInitIntroWindowData(); public: - IntroWindow(); - virtual ~IntroWindow(); + IntroWindow(); + virtual ~IntroWindow(); + virtual void dispose() SAL_OVERRIDE; + }; #endif // INCLUDED_VCL_INTROWIN_HXX diff --git a/include/vcl/msgbox.hxx b/include/vcl/msgbox.hxx index 04ea155cb6d8..15d41614cf0d 100644 --- a/include/vcl/msgbox.hxx +++ b/include/vcl/msgbox.hxx @@ -48,7 +48,8 @@ protected: public: MessBox( vcl::Window* pParent, WinBits nStyle, const OUString& rTitle, const OUString& rMessage ); - virtual ~MessBox(); + virtual ~MessBox(); + virtual void dispose() SAL_OVERRIDE; virtual void StateChanged( StateChangedType nStateChange ) SAL_OVERRIDE; diff --git a/include/vcl/openglwin.hxx b/include/vcl/openglwin.hxx index 9724eb3d9ffd..ac59a6ea73ec 100644 --- a/include/vcl/openglwin.hxx +++ b/include/vcl/openglwin.hxx @@ -33,8 +33,10 @@ public: class VCLOPENGL_DLLPUBLIC OpenGLWindow : public vcl::Window { public: - OpenGLWindow(vcl::Window* pParent); - virtual ~OpenGLWindow(); + OpenGLWindow(vcl::Window* pParent); + virtual ~OpenGLWindow(); + virtual void dispose() SAL_OVERRIDE; + OpenGLContext& getContext(); void setRenderer(IRenderer* pRenderer); diff --git a/include/vcl/syschild.hxx b/include/vcl/syschild.hxx index 87e16fcc183a..928c1861b52a 100644 --- a/include/vcl/syschild.hxx +++ b/include/vcl/syschild.hxx @@ -42,6 +42,7 @@ public: // create a SystemChildWindow using the given SystemWindowData explicit SystemChildWindow( vcl::Window* pParent, WinBits nStyle, SystemWindowData *pData, bool bShow = true ); virtual ~SystemChildWindow(); + virtual void dispose() SAL_OVERRIDE; const SystemEnvData* GetSystemData() const; diff --git a/include/vcl/syswin.hxx b/include/vcl/syswin.hxx index c313e2ff2c34..4f7d5728bb83 100644 --- a/include/vcl/syswin.hxx +++ b/include/vcl/syswin.hxx @@ -172,7 +172,9 @@ protected: SAL_DLLPRIVATE void DoInitialLayout(); public: - virtual ~SystemWindow(); + virtual ~SystemWindow(); + virtual void dispose() SAL_OVERRIDE; + virtual bool Notify( NotifyEvent& rNEvt ) SAL_OVERRIDE; virtual bool PreNotify( NotifyEvent& rNEvt ) SAL_OVERRIDE; diff --git a/include/vcl/wrkwin.hxx b/include/vcl/wrkwin.hxx index 637bfc8779a6..9fa12281bc02 100644 --- a/include/vcl/wrkwin.hxx +++ b/include/vcl/wrkwin.hxx @@ -66,6 +66,7 @@ public: explicit WorkWindow( vcl::Window* pParent, const ::com::sun::star::uno::Any& aSystemWorkWindowToken, WinBits nStyle = WB_STDWORK ); explicit WorkWindow( SystemParentData* pParent ); // Not in the REMOTE-Version virtual ~WorkWindow(); + virtual void dispose() SAL_OVERRIDE; virtual bool Close() SAL_OVERRIDE; -- cgit