summaryrefslogtreecommitdiff
path: root/svx
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2018-10-05 14:09:19 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2018-10-08 08:02:56 +0200
commit781544497a0913037bba160a4cf6b643e5ca1d1a (patch)
tree960cb52efca6ab4eba3ac30e6600bbd45247d25d /svx
parent69c9a077b3052fc012d2f23c00dfcc901c65583d (diff)
return by unique_ptr from E3dObject::GetBreakObj
Change-Id: Id983695650b13b2cb7881ce17a186e35fbb480ef Reviewed-on: https://gerrit.libreoffice.org/61441 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'svx')
-rw-r--r--svx/source/engine3d/extrud3d.cxx6
-rw-r--r--svx/source/engine3d/lathe3d.cxx6
-rw-r--r--svx/source/engine3d/obj3d.cxx2
-rw-r--r--svx/source/engine3d/view3d.cxx2
4 files changed, 8 insertions, 8 deletions
diff --git a/svx/source/engine3d/extrud3d.cxx b/svx/source/engine3d/extrud3d.cxx
index 38b94e629e47..fc20fc9fa342 100644
--- a/svx/source/engine3d/extrud3d.cxx
+++ b/svx/source/engine3d/extrud3d.cxx
@@ -159,7 +159,7 @@ bool E3dExtrudeObj::IsBreakObjPossible()
return true;
}
-SdrAttrObj* E3dExtrudeObj::GetBreakObj()
+std::unique_ptr<SdrAttrObj,SdrObjectFreeOp> E3dExtrudeObj::GetBreakObj()
{
basegfx::B3DPolyPolygon aFrontSide;
basegfx::B3DPolyPolygon aBackSide;
@@ -210,13 +210,13 @@ SdrAttrObj* E3dExtrudeObj::GetBreakObj()
{
// create PathObj
basegfx::B2DPolyPolygon aPoly = TransformToScreenCoor(aBackSide);
- SdrPathObj* pPathObj = new SdrPathObj(getSdrModelFromSdrObject(), OBJ_PLIN, aPoly);
+ std::unique_ptr<SdrPathObj,SdrObjectFreeOp> pPathObj(new SdrPathObj(getSdrModelFromSdrObject(), OBJ_PLIN, aPoly));
SfxItemSet aSet(GetObjectItemSet());
aSet.Put(XLineStyleItem(css::drawing::LineStyle_SOLID));
pPathObj->SetMergedItemSet(aSet);
- return pPathObj;
+ return std::unique_ptr<SdrAttrObj,SdrObjectFreeOp>(pPathObj.release());
}
return nullptr;
diff --git a/svx/source/engine3d/lathe3d.cxx b/svx/source/engine3d/lathe3d.cxx
index 5068defb7d1b..e7ad61fb32a6 100644
--- a/svx/source/engine3d/lathe3d.cxx
+++ b/svx/source/engine3d/lathe3d.cxx
@@ -187,12 +187,12 @@ bool E3dLatheObj::IsBreakObjPossible()
return true;
}
-SdrAttrObj* E3dLatheObj::GetBreakObj()
+std::unique_ptr<SdrAttrObj,SdrObjectFreeOp> E3dLatheObj::GetBreakObj()
{
// create PathObj
basegfx::B3DPolyPolygon aLathePoly3D(basegfx::utils::createB3DPolyPolygonFromB2DPolyPolygon(maPolyPoly2D));
basegfx::B2DPolyPolygon aTransPoly(TransformToScreenCoor(aLathePoly3D));
- SdrPathObj* pPathObj = new SdrPathObj(getSdrModelFromSdrObject(), OBJ_PLIN, aTransPoly);
+ std::unique_ptr<SdrPathObj,SdrObjectFreeOp> pPathObj(new SdrPathObj(getSdrModelFromSdrObject(), OBJ_PLIN, aTransPoly));
// Set Attribute
SfxItemSet aSet(GetObjectItemSet());
@@ -202,7 +202,7 @@ SdrAttrObj* E3dLatheObj::GetBreakObj()
pPathObj->SetMergedItemSet(aSet);
- return pPathObj;
+ return std::unique_ptr<SdrAttrObj,SdrObjectFreeOp>(pPathObj.release());
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svx/source/engine3d/obj3d.cxx b/svx/source/engine3d/obj3d.cxx
index f9723ff93992..15ecacd3ed16 100644
--- a/svx/source/engine3d/obj3d.cxx
+++ b/svx/source/engine3d/obj3d.cxx
@@ -114,7 +114,7 @@ bool E3dObject::IsBreakObjPossible()
return false;
}
-SdrAttrObj* E3dObject::GetBreakObj()
+std::unique_ptr<SdrAttrObj,SdrObjectFreeOp> E3dObject::GetBreakObj()
{
return nullptr;
}
diff --git a/svx/source/engine3d/view3d.cxx b/svx/source/engine3d/view3d.cxx
index eecae287517a..e88ff0116f24 100644
--- a/svx/source/engine3d/view3d.cxx
+++ b/svx/source/engine3d/view3d.cxx
@@ -1577,7 +1577,7 @@ void E3dView::BreakSingle3DObj(E3dObject* pObj)
}
else
{
- SdrAttrObj* pNewObj = pObj->GetBreakObj();
+ SdrAttrObj* pNewObj = pObj->GetBreakObj().release();
if(pNewObj)
{
InsertObjectAtView(pNewObj, *GetSdrPageView(), SdrInsertFlags::DONTMARK);