diff options
Diffstat (limited to 'vcl/workben')
-rw-r--r-- | vcl/workben/icontest.cxx | 5 | ||||
-rw-r--r-- | vcl/workben/mtfdemo.cxx | 2 | ||||
-rw-r--r-- | vcl/workben/vcldemo.cxx | 19 |
3 files changed, 17 insertions, 9 deletions
diff --git a/vcl/workben/icontest.cxx b/vcl/workben/icontest.cxx index 3710a16ce152..481818bfa034 100644 --- a/vcl/workben/icontest.cxx +++ b/vcl/workben/icontest.cxx @@ -71,10 +71,11 @@ protected: public: Graphic maGraphic; Bitmap *mpBitmap; - FixedBitmap *mpFixedBitmap; + VclPtr<FixedBitmap> mpFixedBitmap; MyWorkWindow( vcl::Window* pParent, WinBits nWinStyle ); - + virtual ~MyWorkWindow() { dispose(); } + virtual void dispose() SAL_OVERRIDE { mpFixedBitmap.clear(); WorkWindow::dispose(); } void LoadGraphic( const OUString& sImageFile ); virtual void Paint( const Rectangle& rRect ) SAL_OVERRIDE; diff --git a/vcl/workben/mtfdemo.cxx b/vcl/workben/mtfdemo.cxx index 4f65b0ff12ce..54c64ffadf4a 100644 --- a/vcl/workben/mtfdemo.cxx +++ b/vcl/workben/mtfdemo.cxx @@ -67,7 +67,7 @@ void DemoMtfWin::Paint( const Rectangle& rRect ) class DemoMtfApp : public Application { - DemoMtfWin *mpWin; + VclPtr<DemoMtfWin> mpWin; OUString maFileName; void showHelp() diff --git a/vcl/workben/vcldemo.cxx b/vcl/workben/vcldemo.cxx index 14a57805beae..33c4eff1fec6 100644 --- a/vcl/workben/vcldemo.cxx +++ b/vcl/workben/vcldemo.cxx @@ -1133,12 +1133,11 @@ public: } } } - std::vector<vcl::Window *> maInvalidates; + std::vector<VclPtr<vcl::Window> > maInvalidates; void addInvalidate(vcl::Window *pWindow) { maInvalidates.push_back(pWindow); }; void removeInvalidate(vcl::Window *pWindow) { - std::vector<vcl::Window *>::iterator aIt; - for (aIt = maInvalidates.begin(); aIt != maInvalidates.end(); ++aIt) + for (auto aIt = maInvalidates.begin(); aIt != maInvalidates.end(); ++aIt) { if (*aIt == pWindow) { @@ -1450,9 +1449,9 @@ public: class DemoWidgets : public WorkWindow { - VclBox *mpBox; - ToolBox *mpToolbox; - PushButton *mpButton; + VclPtr<VclBox> mpBox; + VclPtr<ToolBox> mpToolbox; + VclPtr<PushButton> mpButton; public: DemoWidgets() : @@ -1482,6 +1481,14 @@ public: Show(); } + virtual ~DemoWidgets() { disposeOnce(); } + virtual void dispose() SAL_OVERRIDE + { + mpBox.disposeAndClear(); + mpToolbox.disposeAndClear(); + mpPushButton.disposeAndClear(); + WorkWindow::dispose(); + } virtual void Paint(const Rectangle&) SAL_OVERRIDE { Rectangle aWholeSize(Point(0, 0),GetOutputSizePixel()); |