diff options
author | Noel <noel.grandin@collabora.co.uk> | 2021-02-21 20:03:39 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-02-22 08:08:27 +0100 |
commit | 21d76782b39cf83130985d27138f61308f572151 (patch) | |
tree | 8b5250e037a834eb6ad14271089985105c5ec42d /drawinglayer | |
parent | 795ac4b5b6ba2c55ca73859fbc9bd4116120fe29 (diff) |
loplugin:refcounting in drawinglayer
Change-Id: Ia7bf3a4811a47180ce2a92852a01b613ff16279a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111288
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'drawinglayer')
8 files changed, 23 insertions, 30 deletions
diff --git a/drawinglayer/source/primitive2d/PolyPolygonGradientPrimitive2D.cxx b/drawinglayer/source/primitive2d/PolyPolygonGradientPrimitive2D.cxx index 076436b40655..cbf9e8902bb0 100644 --- a/drawinglayer/source/primitive2d/PolyPolygonGradientPrimitive2D.cxx +++ b/drawinglayer/source/primitive2d/PolyPolygonGradientPrimitive2D.cxx @@ -22,6 +22,7 @@ #include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx> #include <drawinglayer/primitive2d/fillgradientprimitive2d.hxx> #include <drawinglayer/primitive2d/maskprimitive2d.hxx> +#include <rtl/ref.hxx> using namespace com::sun::star; @@ -34,10 +35,9 @@ void PolyPolygonGradientPrimitive2D::create2DDecomposition( { // create SubSequence with FillGradientPrimitive2D const basegfx::B2DRange aPolyPolygonRange(getB2DPolyPolygon().getB2DRange()); - FillGradientPrimitive2D* pNewGradient = new FillGradientPrimitive2D( + rtl::Reference<FillGradientPrimitive2D> pNewGradient = new FillGradientPrimitive2D( aPolyPolygonRange, getDefinitionRange(), getFillGradient()); - const Primitive2DReference xSubRef(pNewGradient); - const Primitive2DContainer aSubSequence{ xSubRef }; + const Primitive2DContainer aSubSequence{ pNewGradient }; // create mask primitive rContainer.push_back(new MaskPrimitive2D(getB2DPolyPolygon(), aSubSequence)); diff --git a/drawinglayer/source/primitive2d/PolyPolygonHatchPrimitive2D.cxx b/drawinglayer/source/primitive2d/PolyPolygonHatchPrimitive2D.cxx index ad85c02f22c1..dd0495739fec 100644 --- a/drawinglayer/source/primitive2d/PolyPolygonHatchPrimitive2D.cxx +++ b/drawinglayer/source/primitive2d/PolyPolygonHatchPrimitive2D.cxx @@ -22,6 +22,7 @@ #include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx> #include <drawinglayer/primitive2d/maskprimitive2d.hxx> #include <drawinglayer/primitive2d/fillhatchprimitive2d.hxx> +#include <rtl/ref.hxx> using namespace com::sun::star; @@ -34,10 +35,9 @@ void PolyPolygonHatchPrimitive2D::create2DDecomposition( { // create SubSequence with FillHatchPrimitive2D const basegfx::B2DRange aPolyPolygonRange(getB2DPolyPolygon().getB2DRange()); - FillHatchPrimitive2D* pNewHatch = new FillHatchPrimitive2D( + rtl::Reference<FillHatchPrimitive2D> pNewHatch = new FillHatchPrimitive2D( aPolyPolygonRange, getDefinitionRange(), getBackgroundColor(), getFillHatch()); - const Primitive2DReference xSubRef(pNewHatch); - const Primitive2DContainer aSubSequence{ xSubRef }; + const Primitive2DContainer aSubSequence{ pNewHatch }; // create mask primitive rContainer.push_back(new MaskPrimitive2D(getB2DPolyPolygon(), aSubSequence)); diff --git a/drawinglayer/source/primitive2d/helplineprimitive2d.cxx b/drawinglayer/source/primitive2d/helplineprimitive2d.cxx index 86c3b88ca6d5..e4c6ccbf1c3e 100644 --- a/drawinglayer/source/primitive2d/helplineprimitive2d.cxx +++ b/drawinglayer/source/primitive2d/helplineprimitive2d.cxx @@ -52,8 +52,7 @@ namespace drawinglayer::primitive2d aLineA.append(aStartA); aLineA.append(aEndA); aLineA.transform(rViewInformation.getInverseObjectToViewTransformation()); - PolygonMarkerPrimitive2D* pNewA = new PolygonMarkerPrimitive2D(aLineA, getRGBColA(), getRGBColB(), getDiscreteDashLength()); - rContainer.push_back(pNewA); + rContainer.push_back(new PolygonMarkerPrimitive2D(aLineA, getRGBColA(), getRGBColB(), getDiscreteDashLength())); const basegfx::B2DVector aPerpendicularNormalizedDirection(basegfx::getPerpendicular(aNormalizedDirection)); const basegfx::B2DPoint aStartB(aViewPosition - aPerpendicularNormalizedDirection); @@ -62,8 +61,7 @@ namespace drawinglayer::primitive2d aLineB.append(aStartB); aLineB.append(aEndB); aLineB.transform(rViewInformation.getInverseObjectToViewTransformation()); - PolygonMarkerPrimitive2D* pNewB = new PolygonMarkerPrimitive2D(aLineB, getRGBColA(), getRGBColB(), getDiscreteDashLength()); - rContainer.push_back(pNewB); + rContainer.push_back(new PolygonMarkerPrimitive2D(aLineB, getRGBColA(), getRGBColB(), getDiscreteDashLength())); break; } @@ -113,8 +111,7 @@ namespace drawinglayer::primitive2d { basegfx::B2DPolygon aPart(aResult.getB2DPolygon(a)); aPart.transform(rViewInformation.getInverseObjectToViewTransformation()); - PolygonMarkerPrimitive2D* pNew = new PolygonMarkerPrimitive2D(aPart, getRGBColA(), getRGBColB(), getDiscreteDashLength()); - rContainer.push_back(pNew); + rContainer.push_back(new PolygonMarkerPrimitive2D(aPart, getRGBColA(), getRGBColB(), getDiscreteDashLength())); } } diff --git a/drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx b/drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx index 177d829ef4fc..ff00b91050f6 100644 --- a/drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx +++ b/drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx @@ -318,8 +318,7 @@ namespace drawinglayer::primitive3d { const basegfx::B3DPolygon& aPartPolygon(aSphere.getB3DPolygon(a)); const basegfx::B3DPolyPolygon aPartPolyPolygon(aPartPolygon); - BasePrimitive3D* pNew = new PolyPolygonMaterialPrimitive3D(aPartPolyPolygon, rMaterial, false); - aResultVector.push_back(pNew); + aResultVector.push_back(new PolyPolygonMaterialPrimitive3D(aPartPolyPolygon, rMaterial, false)); } } else @@ -466,8 +465,7 @@ namespace drawinglayer::primitive3d if(aNewPolygon.count()) { const basegfx::B3DPolyPolygon aNewPolyPolygon(aNewPolygon); - BasePrimitive3D* pNew = new PolyPolygonMaterialPrimitive3D(aNewPolyPolygon, rMaterial, false); - aResultVector.push_back(pNew); + aResultVector.push_back(new PolyPolygonMaterialPrimitive3D(aNewPolyPolygon, rMaterial, false)); } if(bMiter && aMiterPolygon.count()) @@ -480,8 +478,7 @@ namespace drawinglayer::primitive3d // create primitive const basegfx::B3DPolyPolygon aMiterPolyPolygon(aMiterPolygon); - BasePrimitive3D* pNew = new PolyPolygonMaterialPrimitive3D(aMiterPolyPolygon, rMaterial, false); - aResultVector.push_back(pNew); + aResultVector.push_back(new PolyPolygonMaterialPrimitive3D(aMiterPolyPolygon, rMaterial, false)); } // prepare next step @@ -615,8 +612,7 @@ using namespace com::sun::star; aSequence = getLineCapSegments(nSegments, aMaterial); } - TransformPrimitive3D* pNewTransformedA = new TransformPrimitive3D(aCapTrans, aSequence); - aResultVector.push_back(pNewTransformedA); + aResultVector.push_back(new TransformPrimitive3D(aCapTrans, aSequence)); } else { @@ -717,8 +713,7 @@ using namespace com::sun::star; else { // create hairline - PolygonHairlinePrimitive3D* pNew = new PolygonHairlinePrimitive3D(getB3DPolygon(), getBColor()); - aResultVector.push_back(pNew); + aResultVector.push_back(new PolygonHairlinePrimitive3D(getB3DPolygon(), getBColor())); } } diff --git a/drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx b/drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx index 826583b1404c..e8d197e1a1e9 100644 --- a/drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx +++ b/drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx @@ -36,6 +36,7 @@ #include <drawinglayer/attribute/sdrfillattribute.hxx> #include <drawinglayer/attribute/sdrshadowattribute.hxx> #include <primitive3d/hiddengeometryprimitive3d.hxx> +#include <rtl/ref.hxx> namespace drawinglayer::primitive3d @@ -197,7 +198,7 @@ namespace drawinglayer::primitive3d { bool bModulate(css::drawing::TextureMode_MODULATE == aSdr3DObjectAttribute.getTextureMode()); bool bFilter(aSdr3DObjectAttribute.getTextureFilter()); - BasePrimitive3D* pNewTexturePrimitive3D = nullptr; + rtl::Reference<BasePrimitive3D> pNewTexturePrimitive3D; if(!rFill.getGradient().isDefault()) { diff --git a/drawinglayer/source/processor3d/shadow3dextractor.cxx b/drawinglayer/source/processor3d/shadow3dextractor.cxx index 0b653236eb1b..db3a14cc92f3 100644 --- a/drawinglayer/source/processor3d/shadow3dextractor.cxx +++ b/drawinglayer/source/processor3d/shadow3dextractor.cxx @@ -29,6 +29,7 @@ #include <basegfx/polygon/b2dpolypolygontools.hxx> #include <drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx> #include <drawinglayer/primitive3d/drawinglayer_primitivetypes3d.hxx> +#include <rtl/ref.hxx> using namespace com::sun::star; @@ -71,7 +72,7 @@ namespace drawinglayer::processor3d // create 2d shadow primitive with result. This also fetches all entries // from aNewSubList, so there is no need to delete them - primitive2d::BasePrimitive2D* pNew = new primitive2d::ShadowPrimitive2D( + rtl::Reference<primitive2d::BasePrimitive2D> pNew = new primitive2d::ShadowPrimitive2D( rPrimitive.getShadowTransform(), rPrimitive.getShadowColor(), 0, // shadow3d doesn't have rPrimitive.getShadowBlur() yet. @@ -80,8 +81,7 @@ namespace drawinglayer::processor3d if(basegfx::fTools::more(rPrimitive.getShadowTransparence(), 0.0)) { // create simpleTransparencePrimitive, add created primitives - const primitive2d::Primitive2DReference xRef(pNew); - const primitive2d::Primitive2DContainer aNewTransPrimitiveVector { xRef }; + const primitive2d::Primitive2DContainer aNewTransPrimitiveVector { pNew }; pNew = new primitive2d::UnifiedTransparencePrimitive2D( aNewTransPrimitiveVector, diff --git a/drawinglayer/source/tools/emfphelperdata.cxx b/drawinglayer/source/tools/emfphelperdata.cxx index e92e3e58ef27..76d36529a48a 100644 --- a/drawinglayer/source/tools/emfphelperdata.cxx +++ b/drawinglayer/source/tools/emfphelperdata.cxx @@ -1633,7 +1633,7 @@ namespace emfplushelper if (color.GetAlpha() > 0) { std::vector<double> emptyVector; - drawinglayer::primitive2d::BasePrimitive2D* pBaseText = nullptr; + rtl::Reference<drawinglayer::primitive2d::BasePrimitive2D> pBaseText; if (font->Underline() || font->Strikeout()) { pBaseText = new drawinglayer::primitive2d::TextDecoratedPortionPrimitive2D( @@ -2118,7 +2118,7 @@ namespace emfplushelper transformMatrix *= transform; if (color.GetAlpha() > 0) { - drawinglayer::primitive2d::BasePrimitive2D* pBaseText = nullptr; + rtl::Reference<drawinglayer::primitive2d::BasePrimitive2D> pBaseText; if (font->Underline() || font->Strikeout()) { pBaseText = new drawinglayer::primitive2d::TextDecoratedPortionPrimitive2D( diff --git a/drawinglayer/source/tools/wmfemfhelper.cxx b/drawinglayer/source/tools/wmfemfhelper.cxx index f287e2a4e23c..2d600f2e7681 100644 --- a/drawinglayer/source/tools/wmfemfhelper.cxx +++ b/drawinglayer/source/tools/wmfemfhelper.cxx @@ -1024,7 +1024,7 @@ namespace wmfemfhelper aWallpaperRange = vcl::unotools::b2DRectangleFromRectangle(rWallpaper.GetRect()); } - drawinglayer::primitive2d::BasePrimitive2D* pBitmapWallpaperFill = + rtl::Reference<drawinglayer::primitive2d::BasePrimitive2D> pBitmapWallpaperFill = new drawinglayer::primitive2d::WallpaperBitmapPrimitive2D( aWallpaperRange, aBitmapEx, @@ -1114,7 +1114,7 @@ namespace wmfemfhelper TargetHolder& rTarget, PropertyHolder const & rProperty) { - drawinglayer::primitive2d::BasePrimitive2D* pResult = nullptr; + rtl::Reference<drawinglayer::primitive2d::BasePrimitive2D> pResult; const vcl::Font& rFont = rProperty.getFont(); basegfx::B2DVector aAlignmentOffset(0.0, 0.0); |