summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoel Grandin <noelgrandin@gmail.com>2021-08-22 16:44:21 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2021-08-22 18:54:48 +0200
commit054166821842de6f25c3123fcc1976b3c9d1d69b (patch)
tree335d6a1b8ad16ccc37b472f08a20059ad1549906
parent30067dafa988d4c6dd970c817eca283ac8946728 (diff)
no need to use unique_ptr for Sdr3DObjectAttribute
it is already a COW type Change-Id: Icc4173c5a61f5d819ce908f8a38c3efb29ebb1c8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120850 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r--svx/inc/sdr/primitive3d/sdrattributecreator3d.hxx10
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dcube.cxx4
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dextrude.cxx4
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dlathe.cxx4
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dpolygon.cxx4
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dsphere.cxx4
-rw-r--r--svx/source/sdr/primitive3d/sdrattributecreator3d.cxx4
7 files changed, 15 insertions, 19 deletions
diff --git a/svx/inc/sdr/primitive3d/sdrattributecreator3d.hxx b/svx/inc/sdr/primitive3d/sdrattributecreator3d.hxx
index 327f7da1cbcb..3f517842741e 100644
--- a/svx/inc/sdr/primitive3d/sdrattributecreator3d.hxx
+++ b/svx/inc/sdr/primitive3d/sdrattributecreator3d.hxx
@@ -20,23 +20,19 @@
#ifndef INCLUDED_SVX_INC_SDR_PRIMITIVE3D_SDRATTRIBUTECREATOR3D_HXX
#define INCLUDED_SVX_INC_SDR_PRIMITIVE3D_SDRATTRIBUTECREATOR3D_HXX
+#include <drawinglayer/attribute/sdrobjectattribute3d.hxx>
// predefines
class SfxItemSet;
-
-namespace drawinglayer::attribute {
- class Sdr3DObjectAttribute;
-}
-
namespace basegfx {
class B2DRange;
}
namespace drawinglayer::primitive2d
- {
+{
// SdrAttribute creators
- attribute::Sdr3DObjectAttribute* createNewSdr3DObjectAttribute(const SfxItemSet& rSet);
+ attribute::Sdr3DObjectAttribute createNewSdr3DObjectAttribute(const SfxItemSet& rSet);
// helpers
diff --git a/svx/source/sdr/contact/viewcontactofe3dcube.cxx b/svx/source/sdr/contact/viewcontactofe3dcube.cxx
index 00e990f576cf..ee79ef9339ca 100644
--- a/svx/source/sdr/contact/viewcontactofe3dcube.cxx
+++ b/svx/source/sdr/contact/viewcontactofe3dcube.cxx
@@ -69,7 +69,7 @@ namespace sdr::contact
aWorldTransform.translate(aCubeRange.getMinX(), aCubeRange.getMinY(), aCubeRange.getMinZ());
// get 3D Object Attributes
- std::unique_ptr<drawinglayer::attribute::Sdr3DObjectAttribute> pSdr3DObjectAttribute(drawinglayer::primitive2d::createNewSdr3DObjectAttribute(rItemSet));
+ drawinglayer::attribute::Sdr3DObjectAttribute aSdr3DObjectAttribute(drawinglayer::primitive2d::createNewSdr3DObjectAttribute(rItemSet));
// calculate texture size to get a perfect mapping for
// the front/back sides
@@ -78,7 +78,7 @@ namespace sdr::contact
// create primitive and add
const drawinglayer::primitive3d::Primitive3DReference xReference(
new drawinglayer::primitive3d::SdrCubePrimitive3D(
- aWorldTransform, aTextureSize, aAttribute, *pSdr3DObjectAttribute));
+ aWorldTransform, aTextureSize, aAttribute, aSdr3DObjectAttribute));
xRetval = { xReference };
return xRetval;
diff --git a/svx/source/sdr/contact/viewcontactofe3dextrude.cxx b/svx/source/sdr/contact/viewcontactofe3dextrude.cxx
index d510f9803d5d..3f1a72ab4388 100644
--- a/svx/source/sdr/contact/viewcontactofe3dextrude.cxx
+++ b/svx/source/sdr/contact/viewcontactofe3dextrude.cxx
@@ -49,7 +49,7 @@ namespace sdr::contact
const basegfx::B2DPolyPolygon aPolyPolygon(GetE3dExtrudeObj().GetExtrudePolygon());
// get 3D Object Attributes
- std::unique_ptr<drawinglayer::attribute::Sdr3DObjectAttribute> pSdr3DObjectAttribute(drawinglayer::primitive2d::createNewSdr3DObjectAttribute(rItemSet));
+ drawinglayer::attribute::Sdr3DObjectAttribute aSdr3DObjectAttribute(drawinglayer::primitive2d::createNewSdr3DObjectAttribute(rItemSet));
// calculate texture size; use size of top/bottom cap to get a perfect mapping
// for the caps. The in-between geometry will get a stretched size with a
@@ -71,7 +71,7 @@ namespace sdr::contact
const basegfx::B3DHomMatrix aWorldTransform;
const drawinglayer::primitive3d::Primitive3DReference xReference(
new drawinglayer::primitive3d::SdrExtrudePrimitive3D(
- aWorldTransform, aTextureSize, aAttribute, *pSdr3DObjectAttribute,
+ aWorldTransform, aTextureSize, aAttribute, aSdr3DObjectAttribute,
aPolyPolygon, fDepth, fDiagonal, fBackScale, bSmoothNormals, bSmoothLids,
bCharacterMode, bCloseFront, bCloseBack));
xRetval = { xReference };
diff --git a/svx/source/sdr/contact/viewcontactofe3dlathe.cxx b/svx/source/sdr/contact/viewcontactofe3dlathe.cxx
index c76cae4df81c..4cf299259c4f 100644
--- a/svx/source/sdr/contact/viewcontactofe3dlathe.cxx
+++ b/svx/source/sdr/contact/viewcontactofe3dlathe.cxx
@@ -49,7 +49,7 @@ namespace sdr::contact
const basegfx::B2DPolyPolygon aPolyPolygon(GetE3dLatheObj().GetPolyPoly2D());
// get 3D Object Attributes
- std::unique_ptr<drawinglayer::attribute::Sdr3DObjectAttribute> pSdr3DObjectAttribute(drawinglayer::primitive2d::createNewSdr3DObjectAttribute(rItemSet));
+ drawinglayer::attribute::Sdr3DObjectAttribute aSdr3DObjectAttribute(drawinglayer::primitive2d::createNewSdr3DObjectAttribute(rItemSet));
// calculate texture size. Use the polygon length of the longest polygon for
// height and the rotated radius for width (using polygon center) to get a good
@@ -83,7 +83,7 @@ namespace sdr::contact
const basegfx::B3DHomMatrix aWorldTransform;
const drawinglayer::primitive3d::Primitive3DReference xReference(
new drawinglayer::primitive3d::SdrLathePrimitive3D(
- aWorldTransform, aTextureSize, aAttribute, *pSdr3DObjectAttribute,
+ aWorldTransform, aTextureSize, aAttribute, aSdr3DObjectAttribute,
aPolyPolygon, nHorizontalSegments, nVerticalSegments,
fDiagonal, fBackScale, fRotation,
bSmoothNormals, bSmoothLids, bCharacterMode, bCloseFront, bCloseBack));
diff --git a/svx/source/sdr/contact/viewcontactofe3dpolygon.cxx b/svx/source/sdr/contact/viewcontactofe3dpolygon.cxx
index ec8a4be00acf..995bb70cdc58 100644
--- a/svx/source/sdr/contact/viewcontactofe3dpolygon.cxx
+++ b/svx/source/sdr/contact/viewcontactofe3dpolygon.cxx
@@ -97,7 +97,7 @@ namespace sdr::contact
}
// get 3D Object Attributes
- std::unique_ptr<drawinglayer::attribute::Sdr3DObjectAttribute> pSdr3DObjectAttribute(drawinglayer::primitive2d::createNewSdr3DObjectAttribute(rItemSet));
+ drawinglayer::attribute::Sdr3DObjectAttribute aSdr3DObjectAttribute(drawinglayer::primitive2d::createNewSdr3DObjectAttribute(rItemSet));
// calculate texture size
basegfx::B2DVector aTextureSize(1.0, 1.0);
@@ -159,7 +159,7 @@ namespace sdr::contact
const basegfx::B3DHomMatrix aWorldTransform;
const drawinglayer::primitive3d::Primitive3DReference xReference(
new drawinglayer::primitive3d::SdrPolyPolygonPrimitive3D(
- aPolyPolygon3D, aWorldTransform, aTextureSize, aAttribute, *pSdr3DObjectAttribute));
+ aPolyPolygon3D, aWorldTransform, aTextureSize, aAttribute, aSdr3DObjectAttribute));
xRetval = { xReference };
return xRetval;
diff --git a/svx/source/sdr/contact/viewcontactofe3dsphere.cxx b/svx/source/sdr/contact/viewcontactofe3dsphere.cxx
index c34e098564fc..671a5b670297 100644
--- a/svx/source/sdr/contact/viewcontactofe3dsphere.cxx
+++ b/svx/source/sdr/contact/viewcontactofe3dsphere.cxx
@@ -54,7 +54,7 @@ namespace sdr::contact
aWorldTransform.translate(aSpherePosition.getX(), aSpherePosition.getY(), aSpherePosition.getZ());
// get 3D Object Attributes
- std::unique_ptr<drawinglayer::attribute::Sdr3DObjectAttribute> pSdr3DObjectAttribute(drawinglayer::primitive2d::createNewSdr3DObjectAttribute(rItemSet));
+ drawinglayer::attribute::Sdr3DObjectAttribute aSdr3DObjectAttribute(drawinglayer::primitive2d::createNewSdr3DObjectAttribute(rItemSet));
// get segment count
const sal_uInt32 nHorizontalSegments(GetE3dSphereObj().GetHorizontalSegments());
@@ -69,7 +69,7 @@ namespace sdr::contact
// create primitive and add
const drawinglayer::primitive3d::Primitive3DReference xReference(
new drawinglayer::primitive3d::SdrSpherePrimitive3D(
- aWorldTransform, aTextureSize, aAttribute, *pSdr3DObjectAttribute,
+ aWorldTransform, aTextureSize, aAttribute, aSdr3DObjectAttribute,
nHorizontalSegments, nVerticalSegments));
xRetval = { xReference };
diff --git a/svx/source/sdr/primitive3d/sdrattributecreator3d.cxx b/svx/source/sdr/primitive3d/sdrattributecreator3d.cxx
index c6721a152617..6bf8f8c6e2e0 100644
--- a/svx/source/sdr/primitive3d/sdrattributecreator3d.cxx
+++ b/svx/source/sdr/primitive3d/sdrattributecreator3d.cxx
@@ -31,7 +31,7 @@
namespace drawinglayer::primitive2d
{
- attribute::Sdr3DObjectAttribute* createNewSdr3DObjectAttribute(const SfxItemSet& rSet)
+ attribute::Sdr3DObjectAttribute createNewSdr3DObjectAttribute(const SfxItemSet& rSet)
{
// get NormalsKind
css::drawing::NormalsKind aNormalsKind(css::drawing::NormalsKind_SPECIFIC);
@@ -135,7 +135,7 @@ namespace drawinglayer::primitive2d
// prepare material
attribute::MaterialAttribute3D aMaterial(aObjectColor, aSpecular, aEmission, nSpecularIntensity);
- return new attribute::Sdr3DObjectAttribute(
+ return attribute::Sdr3DObjectAttribute(
aNormalsKind, aTextureProjectionX, aTextureProjectionY,
aTextureKind, aTextureMode, aMaterial,
bInvertNormals, bDoubleSided, bShadow3D, bTextureFilter, bReducedLineGeometry);