summaryrefslogtreecommitdiff
path: root/drawinglayer
diff options
context:
space:
mode:
authorNoel <noel.grandin@collabora.co.uk>2021-02-21 20:03:39 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2021-02-22 08:08:27 +0100
commit21d76782b39cf83130985d27138f61308f572151 (patch)
tree8b5250e037a834eb6ad14271089985105c5ec42d /drawinglayer
parent795ac4b5b6ba2c55ca73859fbc9bd4116120fe29 (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')
-rw-r--r--drawinglayer/source/primitive2d/PolyPolygonGradientPrimitive2D.cxx6
-rw-r--r--drawinglayer/source/primitive2d/PolyPolygonHatchPrimitive2D.cxx6
-rw-r--r--drawinglayer/source/primitive2d/helplineprimitive2d.cxx9
-rw-r--r--drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx15
-rw-r--r--drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx3
-rw-r--r--drawinglayer/source/processor3d/shadow3dextractor.cxx6
-rw-r--r--drawinglayer/source/tools/emfphelperdata.cxx4
-rw-r--r--drawinglayer/source/tools/wmfemfhelper.cxx4
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);