summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2018-05-02 10:29:25 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2018-05-03 08:22:21 +0200
commitfef6c6cf67eab1b02a7761cedf6355e33804f6e2 (patch)
tree30313b34ada80b6efbbe3c3ee85062759ebf8629
parent2b2223730b680a006b3380d3d44d59548b7bce65 (diff)
loplugin:useuniqueptr in SdrPaintView
Change-Id: I10c9db25dfb0cce7d0815cdc8aff290b3d0c0026 Reviewed-on: https://gerrit.libreoffice.org/53755 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r--include/svx/svdpntv.hxx5
-rw-r--r--svx/source/svdraw/svdpntv.cxx13
2 files changed, 8 insertions, 10 deletions
diff --git a/include/svx/svdpntv.hxx b/include/svx/svdpntv.hxx
index 2405ad9ca4b5..dc20ac774300 100644
--- a/include/svx/svdpntv.hxx
+++ b/include/svx/svdpntv.hxx
@@ -34,6 +34,7 @@
#include <svtools/optionsdrawinglayer.hxx>
#include <unotools/options.hxx>
#include <vcl/idle.hxx>
+#include <memory>
// Pre defines
@@ -133,7 +134,7 @@ private:
// the SdrModel this view was created with, unchanged during lifetime
SdrModel& mrSdrModelFromSdrView;
- SdrPageView* mpPageView;
+ std::unique_ptr<SdrPageView> mpPageView;
protected:
SdrModel* mpModel;
#ifdef DBG_UTIL
@@ -313,7 +314,7 @@ public:
virtual void HideSdrPage();
// Iterate over all registered PageViews
- SdrPageView* GetSdrPageView() const { return mpPageView; }
+ SdrPageView* GetSdrPageView() const { return mpPageView.get(); }
// A SdrView can be displayed on multiple Windows at the same time
virtual void AddWindowToPaintView(OutputDevice* pNewWin, vcl::Window* pWindow);
diff --git a/svx/source/svdraw/svdpntv.cxx b/svx/source/svdraw/svdpntv.cxx
index ba0e252da346..f83f7fc9052b 100644
--- a/svx/source/svdraw/svdpntv.cxx
+++ b/svx/source/svdraw/svdpntv.cxx
@@ -185,7 +185,6 @@ SdrPaintView::SdrPaintView(
SdrModel& rSdrModel,
OutputDevice* pOut)
: mrSdrModelFromSdrView(rSdrModel),
- mpPageView(nullptr),
maDefaultAttr(rSdrModel.GetItemPool()),
mbBufferedOutputAllowed(false),
mbBufferedOverlayAllowed(false),
@@ -394,8 +393,7 @@ void SdrPaintView::ClearPageView()
if(mpPageView)
{
InvalidateAllWin();
- delete mpPageView;
- mpPageView = nullptr;
+ mpPageView.reset();
}
}
@@ -406,14 +404,14 @@ SdrPageView* SdrPaintView::ShowSdrPage(SdrPage* pPage)
if(mpPageView)
{
InvalidateAllWin();
- delete mpPageView;
+ mpPageView.reset();
}
- mpPageView = new SdrPageView(pPage, *static_cast<SdrView*>(this));
+ mpPageView.reset(new SdrPageView(pPage, *static_cast<SdrView*>(this)));
mpPageView->Show();
}
- return mpPageView;
+ return mpPageView.get();
}
void SdrPaintView::HideSdrPage()
@@ -421,8 +419,7 @@ void SdrPaintView::HideSdrPage()
if(mpPageView)
{
mpPageView->Hide();
- delete mpPageView;
- mpPageView = nullptr;
+ mpPageView.reset();
}
}