drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx |   62 ++++++-------
 drawinglayer/source/processor2d/vclmetafileprocessor2d.hxx |    6 -
 2 files changed, 33 insertions(+), 35 deletions(-)

New commits:
commit 28fa64612a3b4b9496da68ba83b54bbd80b75eaa
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Thu Aug 2 13:10:27 2018 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Fri Aug 3 09:11:18 2018 +0200

    loplugin:useuniqueptr in VclMetafileProcessor2D
    
    Change-Id: Ib80eae7d024153f4d765dc08a0856fac3c540052
    Reviewed-on: https://gerrit.libreoffice.org/58489
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx 
b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
index 80fa378d14e0..80db8e37c861 100644
--- a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
@@ -354,13 +354,12 @@ namespace drawinglayer
             }
         }
 
-        void VclMetafileProcessor2D::impEndSvtGraphicFill(SvtGraphicFill* 
pSvtGraphicFill)
+        void VclMetafileProcessor2D::impEndSvtGraphicFill(SvtGraphicFill const 
* pSvtGraphicFill)
         {
             if(pSvtGraphicFill && mnSvtGraphicFillCount)
             {
                 mnSvtGraphicFillCount--;
                 mpMetaFile->AddAction(new 
MetaCommentAction("XPATHFILL_SEQ_END"));
-                delete pSvtGraphicFill;
             }
         }
 
@@ -376,7 +375,7 @@ namespace drawinglayer
             return aDiscreteUnit.getLength();
         }
 
-        SvtGraphicStroke* 
VclMetafileProcessor2D::impTryToCreateSvtGraphicStroke(
+        std::unique_ptr<SvtGraphicStroke> 
VclMetafileProcessor2D::impTryToCreateSvtGraphicStroke(
             const basegfx::B2DPolygon& rB2DPolygon,
             const basegfx::BColor* pColor,
             const attribute::LineAttribute* pLineAttribute,
@@ -384,7 +383,7 @@ namespace drawinglayer
             const attribute::LineStartEndAttribute* pStart,
             const attribute::LineStartEndAttribute* pEnd)
         {
-            SvtGraphicStroke* pRetval = nullptr;
+            std::unique_ptr<SvtGraphicStroke> pRetval;
 
             if(rB2DPolygon.count() && !mnSvtGraphicStrokeCount)
             {
@@ -515,7 +514,7 @@ namespace drawinglayer
                 aStartArrow.transform(maCurrentTransformation);
                 aEndArrow.transform(maCurrentTransformation);
 
-                pRetval = new SvtGraphicStroke(
+                pRetval.reset(new SvtGraphicStroke(
                         ::tools::Polygon(aLocalPolygon),
                         ::tools::PolyPolygon(aStartArrow),
                         ::tools::PolyPolygon(aEndArrow),
@@ -524,7 +523,7 @@ namespace drawinglayer
                         eCap,
                         eJoin,
                         fMiterLength,
-                        aDashArray);
+                        aDashArray));
             }
 
             return pRetval;
@@ -542,13 +541,12 @@ namespace drawinglayer
             }
         }
 
-        void VclMetafileProcessor2D::impEndSvtGraphicStroke(SvtGraphicStroke* 
pSvtGraphicStroke)
+        void VclMetafileProcessor2D::impEndSvtGraphicStroke(SvtGraphicStroke 
const * pSvtGraphicStroke)
         {
             if(pSvtGraphicStroke && mnSvtGraphicStrokeCount)
             {
                 mnSvtGraphicStrokeCount--;
                 mpMetaFile->AddAction(new 
MetaCommentAction("XPATHSTROKE_SEQ_END"));
-                delete pSvtGraphicStroke;
             }
         }
 
@@ -1305,7 +1303,7 @@ namespace drawinglayer
                 // direct draw of hairline; use default processing
                 // support SvtGraphicStroke MetaCommentAction
                 const basegfx::BColor 
aLineColor(maBColorModifierStack.getModifiedColor(rHairlinePrimitive.getBColor()));
-                SvtGraphicStroke* pSvtGraphicStroke = nullptr;
+                std::unique_ptr<SvtGraphicStroke> pSvtGraphicStroke;
 
                 // #i121267# Not needed, does not give better quality compared 
with
                 // the MetaActionType::POLYPOLYGON written by 
RenderPolygonHairlinePrimitive2D
@@ -1319,14 +1317,14 @@ namespace drawinglayer
                         &aLineColor,
                         nullptr, nullptr, nullptr, nullptr);
 
-                    impStartSvtGraphicStroke(pSvtGraphicStroke);
+                    impStartSvtGraphicStroke(pSvtGraphicStroke.get());
                 }
 
                 RenderPolygonHairlinePrimitive2D(rHairlinePrimitive, false);
 
                 if(bSupportSvtGraphicStroke)
                 {
-                    impEndSvtGraphicStroke(pSvtGraphicStroke);
+                    impEndSvtGraphicStroke(pSvtGraphicStroke.get());
                 }
             }
         }
@@ -1354,13 +1352,13 @@ namespace drawinglayer
                 mpOutputDevice->Push(PushFlags::LINECOLOR | 
PushFlags::FILLCOLOR);
 
                 // support SvtGraphicStroke MetaCommentAction
-                SvtGraphicStroke* pSvtGraphicStroke = 
impTryToCreateSvtGraphicStroke(
+                std::unique_ptr<SvtGraphicStroke> pSvtGraphicStroke = 
impTryToCreateSvtGraphicStroke(
                     rBasePolygon, nullptr,
                     &rStrokePrimitive.getLineAttribute(),
                     &rStrokePrimitive.getStrokeAttribute(),
                     nullptr, nullptr);
 
-                impStartSvtGraphicStroke(pSvtGraphicStroke);
+                impStartSvtGraphicStroke(pSvtGraphicStroke.get());
                 const attribute::LineAttribute& rLine = 
rStrokePrimitive.getLineAttribute();
 
                 // create MetaPolyLineActions, but without LineStyle::Dash
@@ -1407,7 +1405,7 @@ namespace drawinglayer
                     process(rStrokePrimitive);
                 }
 
-                impEndSvtGraphicStroke(pSvtGraphicStroke);
+                impEndSvtGraphicStroke(pSvtGraphicStroke.get());
 
                 mpOutputDevice->Pop();
             }
@@ -1443,7 +1441,7 @@ namespace drawinglayer
             else
             {
                 // support SvtGraphicStroke MetaCommentAction
-                SvtGraphicStroke* pSvtGraphicStroke = 
impTryToCreateSvtGraphicStroke(
+                std::unique_ptr<SvtGraphicStroke> pSvtGraphicStroke = 
impTryToCreateSvtGraphicStroke(
                     rBasePolygon, nullptr,
                     &rStrokeArrowPrimitive.getLineAttribute(),
                     &rStrokeArrowPrimitive.getStrokeAttribute(),
@@ -1451,7 +1449,7 @@ namespace drawinglayer
                     &rStrokeArrowPrimitive.getEnd());
 
                 // write LineGeometry start marker
-                impStartSvtGraphicStroke(pSvtGraphicStroke);
+                impStartSvtGraphicStroke(pSvtGraphicStroke.get());
 
                 // #i116162# When B&W is set as DrawMode, 
DrawModeFlags::WhiteFill is used
                 // to let all fills be just white; for lines 
DrawModeFlags::BlackLine is used
@@ -1478,7 +1476,7 @@ namespace drawinglayer
                 }
 
                 // write LineGeometry end marker
-                impEndSvtGraphicStroke(pSvtGraphicStroke);
+                impEndSvtGraphicStroke(pSvtGraphicStroke.get());
             }
         }
 
@@ -1489,7 +1487,7 @@ namespace drawinglayer
 
             fillPolyPolygonNeededToBeSplit(aLocalPolyPolygon);
 
-            SvtGraphicFill* pSvtGraphicFill = nullptr;
+            std::unique_ptr<SvtGraphicFill> pSvtGraphicFill;
 
             if(!mnSvtGraphicFillCount && aLocalPolyPolygon.count())
             {
@@ -1529,7 +1527,7 @@ namespace drawinglayer
                 aTransform.matrix[2] = aTransformPosition.getX();
                 aTransform.matrix[5] = aTransformPosition.getY();
 
-                pSvtGraphicFill = new SvtGraphicFill(
+                pSvtGraphicFill.reset( new SvtGraphicFill(
                     getFillPolyPolygon(aLocalPolyPolygon),
                     Color(),
                     0.0,
@@ -1543,13 +1541,13 @@ namespace drawinglayer
                     Color(),
                     Color(),
                     0,
-                    rFillGraphicAttribute.getGraphic());
+                    rFillGraphicAttribute.getGraphic()) );
             }
 
             // Do use decomposition; encapsulate with SvtGraphicFill
-            impStartSvtGraphicFill(pSvtGraphicFill);
+            impStartSvtGraphicFill(pSvtGraphicFill.get());
             process(rBitmapCandidate);
-            impEndSvtGraphicFill(pSvtGraphicFill);
+            impEndSvtGraphicFill(pSvtGraphicFill.get());
         }
 
         void VclMetafileProcessor2D::processPolyPolygonHatchPrimitive2D(const 
primitive2d::PolyPolygonHatchPrimitive2D& rHatchCandidate)
@@ -1584,7 +1582,7 @@ namespace drawinglayer
                 process(primitive2d::Primitive2DContainer { xBackground });
             }
 
-            SvtGraphicFill* pSvtGraphicFill = nullptr;
+            std::unique_ptr<SvtGraphicFill> pSvtGraphicFill;
             aLocalPolyPolygon.transform(maCurrentTransformation);
 
             if(!mnSvtGraphicFillCount && aLocalPolyPolygon.count())
@@ -1623,7 +1621,7 @@ namespace drawinglayer
                 aTransform.matrix[3] *= sin(rFillHatchAttribute.getAngle());
                 aTransform.matrix[4] *= cos(rFillHatchAttribute.getAngle());
 
-                pSvtGraphicFill = new SvtGraphicFill(
+                pSvtGraphicFill.reset( new SvtGraphicFill(
                     getFillPolyPolygon(aLocalPolyPolygon),
                     Color(),
                     0.0,
@@ -1637,11 +1635,11 @@ namespace drawinglayer
                     Color(),
                     Color(),
                     0,
-                    Graphic());
+                    Graphic()) );
             }
 
             // Do use decomposition; encapsulate with SvtGraphicFill
-            impStartSvtGraphicFill(pSvtGraphicFill);
+            impStartSvtGraphicFill(pSvtGraphicFill.get());
 
             // #i111954# do NOT use decomposition, but use direct VCL-command
             // process(rCandidate.get2DDecomposition(getViewInformation2D()));
@@ -1657,7 +1655,7 @@ namespace drawinglayer
                     basegfx::fround(rFillHatchAttribute.getDistance()),
                     basegfx::fround(rFillHatchAttribute.getAngle() / 
F_PI1800)));
 
-            impEndSvtGraphicFill(pSvtGraphicFill);
+            impEndSvtGraphicFill(pSvtGraphicFill.get());
         }
 
         void 
VclMetafileProcessor2D::processPolyPolygonGradientPrimitive2D(const 
primitive2d::PolyPolygonGradientPrimitive2D& rGradientCandidate)
@@ -1723,7 +1721,7 @@ namespace drawinglayer
 
 
             // XPATHFILL_SEQ_BEGIN/XPATHFILL_SEQ_END support
-            SvtGraphicFill* pSvtGraphicFill = nullptr;
+            std::unique_ptr<SvtGraphicFill> pSvtGraphicFill;
 
             if(!mnSvtGraphicFillCount && aLocalPolyPolygon.count())
             {
@@ -1746,7 +1744,7 @@ namespace drawinglayer
                         break;
                 }
 
-                pSvtGraphicFill = new SvtGraphicFill(
+                pSvtGraphicFill.reset( new SvtGraphicFill(
                     aToolsPolyPolygon,
                     Color(),
                     0.0,
@@ -1760,13 +1758,13 @@ namespace drawinglayer
                     aVCLGradient.GetStartColor(),
                     aVCLGradient.GetEndColor(),
                     aVCLGradient.GetSteps(),
-                    Graphic());
+                    Graphic()) );
             }
 
             // call VCL directly; encapsulate with SvtGraphicFill
-            impStartSvtGraphicFill(pSvtGraphicFill);
+            impStartSvtGraphicFill(pSvtGraphicFill.get());
             mpOutputDevice->DrawGradient(aToolsPolyPolygon, aVCLGradient);
-            impEndSvtGraphicFill(pSvtGraphicFill);
+            impEndSvtGraphicFill(pSvtGraphicFill.get());
         }
 
         void VclMetafileProcessor2D::processPolyPolygonColorPrimitive2D(const 
primitive2d::PolyPolygonColorPrimitive2D& rPolygonCandidate)
diff --git a/drawinglayer/source/processor2d/vclmetafileprocessor2d.hxx 
b/drawinglayer/source/processor2d/vclmetafileprocessor2d.hxx
index 65007b487727..48e1614ca659 100644
--- a/drawinglayer/source/processor2d/vclmetafileprocessor2d.hxx
+++ b/drawinglayer/source/processor2d/vclmetafileprocessor2d.hxx
@@ -102,8 +102,8 @@ namespace drawinglayer
                 const attribute::FillGradientAttribute& rFiGrAtt,
                 bool bIsTransparenceGradient) const;
             void impStartSvtGraphicFill(SvtGraphicFill const * 
pSvtGraphicFill);
-            void impEndSvtGraphicFill(SvtGraphicFill* pSvtGraphicFill);
-            SvtGraphicStroke* impTryToCreateSvtGraphicStroke(
+            void impEndSvtGraphicFill(SvtGraphicFill const * pSvtGraphicFill);
+            std::unique_ptr<SvtGraphicStroke> impTryToCreateSvtGraphicStroke(
                 const basegfx::B2DPolygon& rB2DPolygon,
                 const basegfx::BColor* pColor,
                 const attribute::LineAttribute* pLineAttribute,
@@ -111,7 +111,7 @@ namespace drawinglayer
                 const attribute::LineStartEndAttribute* pStart,
                 const attribute::LineStartEndAttribute* pEnd);
             void impStartSvtGraphicStroke(SvtGraphicStroke const * 
pSvtGraphicStroke);
-            void impEndSvtGraphicStroke(SvtGraphicStroke* pSvtGraphicStroke);
+            void impEndSvtGraphicStroke(SvtGraphicStroke const * 
pSvtGraphicStroke);
 
             void processGraphicPrimitive2D(const 
primitive2d::GraphicPrimitive2D& rGraphicPrimitive);
             void processControlPrimitive2D(const 
primitive2d::ControlPrimitive2D& rControlPrimitive);
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to