summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2018-10-05 13:31:03 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2018-10-06 21:56:38 +0200
commit7aa30262d543ed87d673264d6f51146694120d94 (patch)
tree17bfae39c6860f322df12c059fc5b15c22a43892
parente6f52edc3dda716fd4ab3bb83c0112ffd62ebef7 (diff)
return unique_ptr from CreateDefaultObject in sc/
Change-Id: I8981050aeadc1efe907e7e9a47d18dc3c72956c2 Reviewed-on: https://gerrit.libreoffice.org/61439 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r--sc/source/ui/drawfunc/fuconarc.cxx8
-rw-r--r--sc/source/ui/drawfunc/fuconcustomshape.cxx8
-rw-r--r--sc/source/ui/drawfunc/fuconpol.cxx10
-rw-r--r--sc/source/ui/drawfunc/fuconrec.cxx24
-rw-r--r--sc/source/ui/drawfunc/fuconuno.cxx6
-rw-r--r--sc/source/ui/drawfunc/fupoor.cxx2
-rw-r--r--sc/source/ui/drawfunc/futext.cxx11
-rw-r--r--sc/source/ui/inc/fuconarc.hxx2
-rw-r--r--sc/source/ui/inc/fuconcustomshape.hxx2
-rw-r--r--sc/source/ui/inc/fuconpol.hxx2
-rw-r--r--sc/source/ui/inc/fuconrec.hxx2
-rw-r--r--sc/source/ui/inc/fuconuno.hxx2
-rw-r--r--sc/source/ui/inc/fupoor.hxx3
-rw-r--r--sc/source/ui/inc/futext.hxx2
-rw-r--r--sc/source/ui/view/tabvwsh2.cxx4
15 files changed, 44 insertions, 44 deletions
diff --git a/sc/source/ui/drawfunc/fuconarc.cxx b/sc/source/ui/drawfunc/fuconarc.cxx
index 356968b30068..6d22c749bf89 100644
--- a/sc/source/ui/drawfunc/fuconarc.cxx
+++ b/sc/source/ui/drawfunc/fuconarc.cxx
@@ -116,20 +116,20 @@ void FuConstArc::Deactivate()
}
// Create default drawing objects via keyboard
-SdrObject* FuConstArc::CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle)
+SdrObjectUniquePtr FuConstArc::CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle)
{
// case SID_DRAW_ARC:
// case SID_DRAW_PIE:
// case SID_DRAW_CIRCLECUT:
- SdrObject* pObj = SdrObjFactory::MakeNewObject(
+ SdrObjectUniquePtr pObj(SdrObjFactory::MakeNewObject(
*pDrDoc,
pView->GetCurrentObjInventor(),
- pView->GetCurrentObjIdentifier());
+ pView->GetCurrentObjIdentifier()));
if(pObj)
{
- if(dynamic_cast<const SdrCircObj*>( pObj) != nullptr)
+ if(dynamic_cast<const SdrCircObj*>( pObj.get() ) != nullptr)
{
tools::Rectangle aRect(rRectangle);
diff --git a/sc/source/ui/drawfunc/fuconcustomshape.cxx b/sc/source/ui/drawfunc/fuconcustomshape.cxx
index d59c93379ad1..c2169a1863a2 100644
--- a/sc/source/ui/drawfunc/fuconcustomshape.cxx
+++ b/sc/source/ui/drawfunc/fuconcustomshape.cxx
@@ -129,17 +129,17 @@ void FuConstCustomShape::Deactivate()
}
// Create default drawing objects via keyboard
-SdrObject* FuConstCustomShape::CreateDefaultObject(const sal_uInt16 /* nID */, const tools::Rectangle& rRectangle)
+SdrObjectUniquePtr FuConstCustomShape::CreateDefaultObject(const sal_uInt16 /* nID */, const tools::Rectangle& rRectangle)
{
- SdrObject* pObj = SdrObjFactory::MakeNewObject(
+ SdrObjectUniquePtr pObj(SdrObjFactory::MakeNewObject(
*pDrDoc,
pView->GetCurrentObjInventor(),
- pView->GetCurrentObjIdentifier());
+ pView->GetCurrentObjIdentifier()));
if( pObj )
{
tools::Rectangle aRectangle( rRectangle );
- SetAttributes( pObj );
+ SetAttributes( pObj.get() );
if ( SdrObjCustomShape::doConstructOrthogonal( aCustomShape ) )
ImpForceQuadratic( aRectangle );
pObj->SetLogicRect( aRectangle );
diff --git a/sc/source/ui/drawfunc/fuconpol.cxx b/sc/source/ui/drawfunc/fuconpol.cxx
index 7e806e051596..8f2a7506e8ec 100644
--- a/sc/source/ui/drawfunc/fuconpol.cxx
+++ b/sc/source/ui/drawfunc/fuconpol.cxx
@@ -173,7 +173,7 @@ void FuConstPolygon::Deactivate()
}
// Create default drawing objects via keyboard
-SdrObject* FuConstPolygon::CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle)
+SdrObjectUniquePtr FuConstPolygon::CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle)
{
// case SID_DRAW_XPOLYGON:
// case SID_DRAW_XPOLYGON_NOFILL:
@@ -184,14 +184,14 @@ SdrObject* FuConstPolygon::CreateDefaultObject(const sal_uInt16 nID, const tools
// case SID_DRAW_FREELINE:
// case SID_DRAW_FREELINE_NOFILL:
- SdrObject* pObj = SdrObjFactory::MakeNewObject(
+ SdrObjectUniquePtr pObj(SdrObjFactory::MakeNewObject(
*pDrDoc,
pView->GetCurrentObjInventor(),
- pView->GetCurrentObjIdentifier());
+ pView->GetCurrentObjIdentifier()));
if(pObj)
{
- if(dynamic_cast<const SdrPathObj*>( pObj) != nullptr)
+ if(dynamic_cast<const SdrPathObj*>( pObj.get() ) != nullptr)
{
basegfx::B2DPolyPolygon aPoly;
@@ -271,7 +271,7 @@ SdrObject* FuConstPolygon::CreateDefaultObject(const sal_uInt16 nID, const tools
}
}
- static_cast<SdrPathObj*>(pObj)->SetPathPoly(aPoly);
+ static_cast<SdrPathObj*>(pObj.get())->SetPathPoly(aPoly);
}
else
{
diff --git a/sc/source/ui/drawfunc/fuconrec.cxx b/sc/source/ui/drawfunc/fuconrec.cxx
index 7d141be71fca..d87a2b4456e3 100644
--- a/sc/source/ui/drawfunc/fuconrec.cxx
+++ b/sc/source/ui/drawfunc/fuconrec.cxx
@@ -353,12 +353,12 @@ void FuConstRectangle::Deactivate()
}
// Create default drawing objects via keyboard
-SdrObject* FuConstRectangle::CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle)
+SdrObjectUniquePtr FuConstRectangle::CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle)
{
- SdrObject* pObj = SdrObjFactory::MakeNewObject(
+ SdrObjectUniquePtr pObj(SdrObjFactory::MakeNewObject(
*pDrDoc,
pView->GetCurrentObjInventor(),
- pView->GetCurrentObjIdentifier());
+ pView->GetCurrentObjIdentifier()));
if(pObj)
{
@@ -378,13 +378,13 @@ SdrObject* FuConstRectangle::CreateDefaultObject(const sal_uInt16 nID, const too
case SID_LINE_SQUARE_ARROW:
case SID_LINE_ARROWS:
{
- if(dynamic_cast<const SdrPathObj*>( pObj) != nullptr)
+ if(auto pPathObj = dynamic_cast<SdrPathObj*>( pObj.get() ))
{
sal_Int32 nYMiddle((aRect.Top() + aRect.Bottom()) / 2);
basegfx::B2DPolygon aPoly;
aPoly.append(basegfx::B2DPoint(aStart.X(), nYMiddle));
aPoly.append(basegfx::B2DPoint(aEnd.X(), nYMiddle));
- static_cast<SdrPathObj*>(pObj)->SetPathPoly(basegfx::B2DPolyPolygon(aPoly));
+ pPathObj->SetPathPoly(basegfx::B2DPolyPolygon(aPoly));
}
else
{
@@ -396,11 +396,11 @@ SdrObject* FuConstRectangle::CreateDefaultObject(const sal_uInt16 nID, const too
case SID_DRAW_MEASURELINE:
{
- if(dynamic_cast<const SdrMeasureObj*>( pObj) != nullptr)
+ if(auto pMeasureObj = dynamic_cast<SdrMeasureObj*>( pObj.get() ))
{
sal_Int32 nYMiddle((aRect.Top() + aRect.Bottom()) / 2);
- static_cast<SdrMeasureObj*>(pObj)->SetPoint(Point(aStart.X(), nYMiddle), 0);
- static_cast<SdrMeasureObj*>(pObj)->SetPoint(Point(aEnd.X(), nYMiddle), 1);
+ pMeasureObj->SetPoint(Point(aStart.X(), nYMiddle), 0);
+ pMeasureObj->SetPoint(Point(aEnd.X(), nYMiddle), 1);
}
break;
@@ -409,11 +409,11 @@ SdrObject* FuConstRectangle::CreateDefaultObject(const sal_uInt16 nID, const too
case SID_DRAW_CAPTION:
case SID_DRAW_CAPTION_VERTICAL:
{
- if(dynamic_cast<const SdrCaptionObj*>( pObj) != nullptr)
+ if(auto pCaptionObj = dynamic_cast<SdrCaptionObj*>( pObj.get() ))
{
bool bIsVertical(SID_DRAW_CAPTION_VERTICAL == nID);
- static_cast<SdrTextObj*>(pObj)->SetVerticalWriting(bIsVertical);
+ pCaptionObj->SetVerticalWriting(bIsVertical);
if(bIsVertical)
{
@@ -427,8 +427,8 @@ SdrObject* FuConstRectangle::CreateDefaultObject(const sal_uInt16 nID, const too
// (Edit mode is started in ScTabViewShell::ExecDraw, because
// it must be handled by FuText)
- static_cast<SdrCaptionObj*>(pObj)->SetLogicRect(aRect);
- static_cast<SdrCaptionObj*>(pObj)->SetTailPos(
+ pCaptionObj->SetLogicRect(aRect);
+ pCaptionObj->SetTailPos(
aRect.TopLeft() - Point(aRect.GetWidth() / 2, aRect.GetHeight() / 2));
}
else
diff --git a/sc/source/ui/drawfunc/fuconuno.cxx b/sc/source/ui/drawfunc/fuconuno.cxx
index f2e1278c2831..ba0c0b58cc8c 100644
--- a/sc/source/ui/drawfunc/fuconuno.cxx
+++ b/sc/source/ui/drawfunc/fuconuno.cxx
@@ -106,14 +106,14 @@ void FuConstUnoControl::Deactivate()
}
// Create default drawing objects via keyboard
-SdrObject* FuConstUnoControl::CreateDefaultObject(const sal_uInt16 /* nID */, const tools::Rectangle& rRectangle)
+SdrObjectUniquePtr FuConstUnoControl::CreateDefaultObject(const sal_uInt16 /* nID */, const tools::Rectangle& rRectangle)
{
// case SID_FM_CREATE_CONTROL:
- SdrObject* pObj = SdrObjFactory::MakeNewObject(
+ SdrObjectUniquePtr pObj(SdrObjFactory::MakeNewObject(
*pDrDoc,
pView->GetCurrentObjInventor(),
- pView->GetCurrentObjIdentifier());
+ pView->GetCurrentObjIdentifier()));
if(pObj)
{
diff --git a/sc/source/ui/drawfunc/fupoor.cxx b/sc/source/ui/drawfunc/fupoor.cxx
index b47b3694300a..37c4d5f48678 100644
--- a/sc/source/ui/drawfunc/fupoor.cxx
+++ b/sc/source/ui/drawfunc/fupoor.cxx
@@ -223,7 +223,7 @@ void FuPoor::StopDragTimer()
}
// Create default drawing objects via keyboard
-SdrObject* FuPoor::CreateDefaultObject(const sal_uInt16 /* nID */, const tools::Rectangle& /* rRectangle */)
+SdrObjectUniquePtr FuPoor::CreateDefaultObject(const sal_uInt16 /* nID */, const tools::Rectangle& /* rRectangle */)
{
// empty base implementation
return nullptr;
diff --git a/sc/source/ui/drawfunc/futext.cxx b/sc/source/ui/drawfunc/futext.cxx
index 0b9ba8048149..13a38a90e612 100644
--- a/sc/source/ui/drawfunc/futext.cxx
+++ b/sc/source/ui/drawfunc/futext.cxx
@@ -636,23 +636,22 @@ void FuText::SetInEditMode(SdrObject* pObj, const Point* pMousePixel,
}
// Create default drawing objects via keyboard
-SdrObject* FuText::CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle)
+SdrObjectUniquePtr FuText::CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle)
{
// case SID_DRAW_TEXT:
// case SID_DRAW_TEXT_VERTICAL:
// case SID_DRAW_TEXT_MARQUEE:
// case SID_DRAW_NOTEEDIT:
- SdrObject* pObj = SdrObjFactory::MakeNewObject(
+ SdrObjectUniquePtr pObj(SdrObjFactory::MakeNewObject(
*pDrDoc,
pView->GetCurrentObjInventor(),
- pView->GetCurrentObjIdentifier());
+ pView->GetCurrentObjIdentifier()));
if(pObj)
{
- if(dynamic_cast<const SdrTextObj*>( pObj) != nullptr)
+ if(auto pText = dynamic_cast<SdrTextObj*>( pObj.get() ))
{
- SdrTextObj* pText = static_cast<SdrTextObj*>(pObj);
pText->SetLogicRect(rRectangle);
// don't set default text, start edit mode instead
@@ -690,7 +689,7 @@ SdrObject* FuText::CreateDefaultObject(const sal_uInt16 nID, const tools::Rectan
pObj->SetMergedItemSetAndBroadcast(aSet);
}
- SetInEditMode( pObj ); // start edit mode
+ SetInEditMode( pObj.get() ); // start edit mode
}
else
{
diff --git a/sc/source/ui/inc/fuconarc.hxx b/sc/source/ui/inc/fuconarc.hxx
index 5de2438b3bbe..c538e8f7723a 100644
--- a/sc/source/ui/inc/fuconarc.hxx
+++ b/sc/source/ui/inc/fuconarc.hxx
@@ -38,7 +38,7 @@ public:
virtual void Deactivate() override;
// Create default drawing objects via keyboard
- virtual SdrObject* CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle) override;
+ virtual SdrObjectUniquePtr CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle) override;
};
#endif // _SD_FUCONARC_HXX
diff --git a/sc/source/ui/inc/fuconcustomshape.hxx b/sc/source/ui/inc/fuconcustomshape.hxx
index 9291a87f84cf..c9bad69b33c5 100644
--- a/sc/source/ui/inc/fuconcustomshape.hxx
+++ b/sc/source/ui/inc/fuconcustomshape.hxx
@@ -41,7 +41,7 @@ public:
virtual void Deactivate() override;
// Create default drawing objects via keyboard
- virtual SdrObject* CreateDefaultObject( const sal_uInt16 nID, const tools::Rectangle& rRectangle ) override;
+ virtual SdrObjectUniquePtr CreateDefaultObject( const sal_uInt16 nID, const tools::Rectangle& rRectangle ) override;
// #i33136#
virtual bool doConstructOrthogonal() const override;
diff --git a/sc/source/ui/inc/fuconpol.hxx b/sc/source/ui/inc/fuconpol.hxx
index b6d652523f15..ca1fd58637fd 100644
--- a/sc/source/ui/inc/fuconpol.hxx
+++ b/sc/source/ui/inc/fuconpol.hxx
@@ -39,7 +39,7 @@ public:
virtual void Deactivate() override;
// Create default drawing objects via keyboard
- virtual SdrObject* CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle) override;
+ virtual SdrObjectUniquePtr CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle) override;
};
#endif // _FUCONPOL_HXX
diff --git a/sc/source/ui/inc/fuconrec.hxx b/sc/source/ui/inc/fuconrec.hxx
index 95a7df37dba9..2d7340a7a4f3 100644
--- a/sc/source/ui/inc/fuconrec.hxx
+++ b/sc/source/ui/inc/fuconrec.hxx
@@ -39,7 +39,7 @@ public:
static void SetLineEnds(SfxItemSet& rAttr, const SdrObject& rObj, sal_uInt16 nSlotId);
// Create default drawing objects via keyboard
- virtual SdrObject* CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle) override;
+ virtual SdrObjectUniquePtr CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle) override;
};
#endif // _SD_FUCONREC_HXX
diff --git a/sc/source/ui/inc/fuconuno.hxx b/sc/source/ui/inc/fuconuno.hxx
index 9f7edd9f5d76..80bce194635d 100644
--- a/sc/source/ui/inc/fuconuno.hxx
+++ b/sc/source/ui/inc/fuconuno.hxx
@@ -43,7 +43,7 @@ public:
virtual void Deactivate() override;
// Create default drawing objects via keyboard
- virtual SdrObject* CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle) override;
+ virtual SdrObjectUniquePtr CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle) override;
};
#endif // _SD_FUCONCTL_HXX
diff --git a/sc/source/ui/inc/fupoor.hxx b/sc/source/ui/inc/fupoor.hxx
index 4004d9828517..c00f64ef7341 100644
--- a/sc/source/ui/inc/fupoor.hxx
+++ b/sc/source/ui/inc/fupoor.hxx
@@ -23,6 +23,7 @@
#include <vcl/event.hxx>
#include <vcl/timer.hxx>
#include <sfx2/request.hxx>
+#include <svx/svdobj.hxx>
class ScDrawView;
class ScTabViewShell;
@@ -97,7 +98,7 @@ public:
void StopDragTimer();
// Create default drawing objects via keyboard
- virtual SdrObject* CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle);
+ virtual SdrObjectUniquePtr CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle);
protected:
static void ImpForceQuadratic(tools::Rectangle& rRect);
diff --git a/sc/source/ui/inc/futext.hxx b/sc/source/ui/inc/futext.hxx
index ef059fb36b7c..97bf3a3fa8c4 100644
--- a/sc/source/ui/inc/futext.hxx
+++ b/sc/source/ui/inc/futext.hxx
@@ -50,7 +50,7 @@ public:
void StopEditMode();
// Create default drawing objects via keyboard
- virtual SdrObject* CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle) override;
+ virtual SdrObjectUniquePtr CreateDefaultObject(const sal_uInt16 nID, const tools::Rectangle& rRectangle) override;
private:
std::unique_ptr<SdrOutliner> MakeOutliner();
diff --git a/sc/source/ui/view/tabvwsh2.cxx b/sc/source/ui/view/tabvwsh2.cxx
index b6c4b6a005a7..6b33a0921753 100644
--- a/sc/source/ui/view/tabvwsh2.cxx
+++ b/sc/source/ui/view/tabvwsh2.cxx
@@ -335,12 +335,12 @@ void ScTabViewShell::ExecDraw(SfxRequest& rReq)
if(pPageView)
{
// create the default object
- SdrObject* pObj = pFuActual->CreateDefaultObject(nNewId, aNewObjectRectangle);
+ SdrObjectUniquePtr pObj = pFuActual->CreateDefaultObject(nNewId, aNewObjectRectangle);
if(pObj)
{
// insert into page
- pView->InsertObjectAtView(pObj, *pPageView);
+ pView->InsertObjectAtView(pObj.release(), *pPageView);
if ( nNewId == SID_DRAW_CAPTION || nNewId == SID_DRAW_CAPTION_VERTICAL )
{