summaryrefslogtreecommitdiff
path: root/drawinglayer/source/primitive2d/unifiedtransparenceprimitive2d.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'drawinglayer/source/primitive2d/unifiedtransparenceprimitive2d.cxx')
-rw-r--r--drawinglayer/source/primitive2d/unifiedtransparenceprimitive2d.cxx19
1 files changed, 11 insertions, 8 deletions
diff --git a/drawinglayer/source/primitive2d/unifiedtransparenceprimitive2d.cxx b/drawinglayer/source/primitive2d/unifiedtransparenceprimitive2d.cxx
index 70cfe675046e..4a8383a5a354 100644
--- a/drawinglayer/source/primitive2d/unifiedtransparenceprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/unifiedtransparenceprimitive2d.cxx
@@ -21,10 +21,10 @@
#include <basegfx/polygon/b2dpolygon.hxx>
#include <basegfx/polygon/b2dpolygontools.hxx>
#include <basegfx/color/bcolor.hxx>
+#include <drawinglayer/primitive2d/PolygonHairlinePrimitive2D.hxx>
#include <drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx>
#include <drawinglayer/primitive2d/transparenceprimitive2d.hxx>
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
-#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
using namespace com::sun::star;
@@ -33,9 +33,9 @@ using namespace com::sun::star;
namespace drawinglayer::primitive2d
{
UnifiedTransparencePrimitive2D::UnifiedTransparencePrimitive2D(
- const Primitive2DContainer& rChildren,
+ Primitive2DContainer&& aChildren,
double fTransparence)
- : GroupPrimitive2D(rChildren),
+ : GroupPrimitive2D(std::move(aChildren)),
mfTransparence(fTransparence)
{
}
@@ -85,15 +85,15 @@ namespace drawinglayer::primitive2d
// I will take the last one here. The small overhead of two primitives will only be
// used when UnifiedTransparencePrimitive2D is not handled directly.
const basegfx::B2DRange aPolygonRange(getChildren().getB2DRange(rViewInformation));
- const basegfx::B2DPolygon aPolygon(basegfx::utils::createPolygonFromRect(aPolygonRange));
+ basegfx::B2DPolygon aPolygon(basegfx::utils::createPolygonFromRect(aPolygonRange));
const basegfx::BColor aGray(getTransparence(), getTransparence(), getTransparence());
Primitive2DContainer aTransparenceContent(2);
- aTransparenceContent[0] = Primitive2DReference(new PolyPolygonColorPrimitive2D(basegfx::B2DPolyPolygon(aPolygon), aGray));
- aTransparenceContent[1] = Primitive2DReference(new PolygonHairlinePrimitive2D(aPolygon, aGray));
+ aTransparenceContent[0] = new PolyPolygonColorPrimitive2D(basegfx::B2DPolyPolygon(aPolygon), aGray);
+ aTransparenceContent[1] = new PolygonHairlinePrimitive2D(std::move(aPolygon), aGray);
// create sub-transparence group with a gray-colored rectangular fill polygon
- rVisitor.append(new TransparencePrimitive2D(getChildren(), aTransparenceContent));
+ rVisitor.visit(new TransparencePrimitive2D(Primitive2DContainer(getChildren()), std::move(aTransparenceContent)));
}
else
{
@@ -102,7 +102,10 @@ namespace drawinglayer::primitive2d
}
// provide unique ID
- ImplPrimitive2DIDBlock(UnifiedTransparencePrimitive2D, PRIMITIVE2D_ID_UNIFIEDTRANSPARENCEPRIMITIVE2D)
+ sal_uInt32 UnifiedTransparencePrimitive2D::getPrimitive2DID() const
+ {
+ return PRIMITIVE2D_ID_UNIFIEDTRANSPARENCEPRIMITIVE2D;
+ }
} // end of namespace