svx/source/customshapes/EnhancedCustomShapeEngine.cxx | 48 +++++++++--------- 1 file changed, 24 insertions(+), 24 deletions(-)
New commits: commit 518fdc296a45a2b47eb8f2c377522fb39cdcccf2 Author: Noel Grandin <noel.gran...@collabora.co.uk> AuthorDate: Thu Oct 4 15:20:14 2018 +0200 Commit: Noel Grandin <noel.gran...@collabora.co.uk> CommitDate: Fri Oct 5 10:54:28 2018 +0200 use more std::unique_ptr in EnhancedCustomShapeEngine Change-Id: Ib488b15e55492fb469258bfba59e6475dbdb058f Reviewed-on: https://gerrit.libreoffice.org/61400 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/svx/source/customshapes/EnhancedCustomShapeEngine.cxx b/svx/source/customshapes/EnhancedCustomShapeEngine.cxx index 6a8dd7d3986e..aebd702737a1 100644 --- a/svx/source/customshapes/EnhancedCustomShapeEngine.cxx +++ b/svx/source/customshapes/EnhancedCustomShapeEngine.cxx @@ -72,9 +72,9 @@ class EnhancedCustomShapeEngine : public cppu::WeakImplHelper css::uno::Reference< css::drawing::XShape > mxShape; bool mbForceGroupWithText; - SdrObject* ImplForceGroupWithText( + std::unique_ptr<SdrObject, SdrObjectFreeOp> ImplForceGroupWithText( const SdrObjCustomShape& rSdrObjCustomShape, - SdrObject* pRenderedShape); + std::unique_ptr<SdrObject, SdrObjectFreeOp> pRenderedShape); public: EnhancedCustomShapeEngine(); @@ -149,9 +149,9 @@ Sequence< OUString > SAL_CALL EnhancedCustomShapeEngine::getSupportedServiceName } // XCustomShapeEngine -SdrObject* EnhancedCustomShapeEngine::ImplForceGroupWithText( +std::unique_ptr<SdrObject, SdrObjectFreeOp> EnhancedCustomShapeEngine::ImplForceGroupWithText( const SdrObjCustomShape& rSdrObjCustomShape, - SdrObject* pRenderedShape) + std::unique_ptr<SdrObject, SdrObjectFreeOp> pRenderedShape) { const bool bHasText(rSdrObjCustomShape.HasText()); @@ -164,20 +164,20 @@ SdrObject* EnhancedCustomShapeEngine::ImplForceGroupWithText( { if ( pRenderedShape ) { - if ( dynamic_cast<const SdrObjGroup*>( pRenderedShape) == nullptr ) + if ( dynamic_cast<const SdrObjGroup*>( pRenderedShape.get() ) == nullptr ) { - SdrObject* pTmp = pRenderedShape; - pRenderedShape = new SdrObjGroup(rSdrObjCustomShape.getSdrModelFromSdrObject()); - static_cast<SdrObjGroup*>(pRenderedShape)->GetSubList()->NbcInsertObject( pTmp ); + auto pTmp = std::move(pRenderedShape); + pRenderedShape.reset(new SdrObjGroup(rSdrObjCustomShape.getSdrModelFromSdrObject())); + static_cast<SdrObjGroup*>(pRenderedShape.get())->GetSubList()->NbcInsertObject( pTmp.release() ); } - static_cast<SdrObjGroup*>(pRenderedShape)->GetSubList()->NbcInsertObject( + static_cast<SdrObjGroup*>(pRenderedShape.get())->GetSubList()->NbcInsertObject( pShadowGeometry->CloneSdrObject(pShadowGeometry->getSdrModelFromSdrObject()), 0); } else { - pRenderedShape = pShadowGeometry->CloneSdrObject(pShadowGeometry->getSdrModelFromSdrObject()); + pRenderedShape.reset( pShadowGeometry->CloneSdrObject(pShadowGeometry->getSdrModelFromSdrObject()) ); } } @@ -185,10 +185,10 @@ SdrObject* EnhancedCustomShapeEngine::ImplForceGroupWithText( if ( bHasText ) { // #i37011# also create a text object and add at rPos + 1 - SdrObject* pTextObj = SdrObjFactory::MakeNewObject( + std::unique_ptr<SdrObject, SdrObjectFreeOp> pTextObj( SdrObjFactory::MakeNewObject( rSdrObjCustomShape.getSdrModelFromSdrObject(), rSdrObjCustomShape.GetObjInventor(), - OBJ_TEXT); + OBJ_TEXT) ); // Copy text content OutlinerParaObject* pParaObj(rSdrObjCustomShape.GetOutlinerParaObject()); @@ -234,26 +234,26 @@ SdrObject* EnhancedCustomShapeEngine::ImplForceGroupWithText( if ( pRenderedShape ) { - if ( dynamic_cast<const SdrObjGroup*>( pRenderedShape) == nullptr ) + if ( dynamic_cast<const SdrObjGroup*>( pRenderedShape.get() ) == nullptr ) { - SdrObject* pTmp = pRenderedShape; - pRenderedShape = new SdrObjGroup(rSdrObjCustomShape.getSdrModelFromSdrObject()); - static_cast<SdrObjGroup*>(pRenderedShape)->GetSubList()->NbcInsertObject( pTmp ); + auto pTmp = std::move(pRenderedShape); + pRenderedShape.reset(new SdrObjGroup(rSdrObjCustomShape.getSdrModelFromSdrObject())); + static_cast<SdrObjGroup*>(pRenderedShape.get())->GetSubList()->NbcInsertObject( pTmp.release() ); } - static_cast<SdrObjGroup*>(pRenderedShape)->GetSubList()->NbcInsertObject( pTextObj ); + static_cast<SdrObjGroup*>(pRenderedShape.get())->GetSubList()->NbcInsertObject( pTextObj.release() ); } else - pRenderedShape = pTextObj; + pRenderedShape = std::move(pTextObj); } // force group if ( pRenderedShape ) { - if ( dynamic_cast<const SdrObjGroup*>( pRenderedShape) == nullptr ) + if ( dynamic_cast<const SdrObjGroup*>( pRenderedShape.get() ) == nullptr ) { - SdrObject* pTmp = pRenderedShape; - pRenderedShape = new SdrObjGroup(rSdrObjCustomShape.getSdrModelFromSdrObject()); - static_cast<SdrObjGroup*>(pRenderedShape)->GetSubList()->NbcInsertObject( pTmp ); + auto pTmp = std::move(pRenderedShape); + pRenderedShape.reset(new SdrObjGroup(rSdrObjCustomShape.getSdrModelFromSdrObject())); + static_cast<SdrObjGroup*>(pRenderedShape.get())->GetSubList()->NbcInsertObject( pTmp.release() ); } } } @@ -361,9 +361,9 @@ Reference< drawing::XShape > SAL_CALL EnhancedCustomShapeEngine::render() if ( mbForceGroupWithText ) { - xRenderedShape.reset(ImplForceGroupWithText( + xRenderedShape = ImplForceGroupWithText( rSdrObjCustomShape, - xRenderedShape.release())); + std::move(xRenderedShape)); } Reference< drawing::XShape > xShape; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits