[Libreoffice-commits] core.git: Branch 'aoo/trunk' - svx/source

Armin Le Grand alg at apache.org
Wed Jun 12 11:07:35 PDT 2013


 svx/source/svdraw/svdhdl.cxx |   20 ++++++++++++++++++--
 1 file changed, 18 insertions(+), 2 deletions(-)

New commits:
commit cd6db555e6a2b3befc11698fe2a3c443780b6a7d
Author: Armin Le Grand <alg at apache.org>
Date:   Wed Jun 12 16:56:18 2013 +0000

    i74211 added frame to better see graphic

diff --git a/svx/source/svdraw/svdhdl.cxx b/svx/source/svdraw/svdhdl.cxx
index eaf28ae..c02eae2 100644
--- a/svx/source/svdraw/svdhdl.cxx
+++ b/svx/source/svdraw/svdhdl.cxx
@@ -69,6 +69,7 @@
 #include <drawinglayer/primitive2d/graphicprimitive2d.hxx>
 #include <drawinglayer/primitive2d/maskprimitive2d.hxx>
 #include <drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx>
+#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
 
 ////////////////////////////////////////////////////////////////////////////////////////////////////
 // #i15222#
@@ -2559,9 +2560,10 @@ void SdrCropViewHdl::CreateB2dIAObject()
     aCropped.transform(aBackToUnit);
 
     // prepare crop PolyPolygon
-    basegfx::B2DPolyPolygon aCropPolyPolygon(
+    basegfx::B2DPolygon aGraphicOutlinePolygon(
         basegfx::tools::createPolygonFromRect(
             aCropped));
+    basegfx::B2DPolyPolygon aCropPolyPolygon(aGraphicOutlinePolygon);
 
     // current range is unit range
     basegfx::B2DRange aOverlap(0.0, 0.0, 1.0, 1.0);
@@ -2577,6 +2579,7 @@ void SdrCropViewHdl::CreateB2dIAObject()
 
     // transform to object coordinates to prepare for clip
     aCropPolyPolygon.transform(maObjectTransform);
+    aGraphicOutlinePolygon.transform(maObjectTransform);
 
     // create cropped transformation
     basegfx::B2DHomMatrix aCroppedTransform;
@@ -2596,11 +2599,24 @@ void SdrCropViewHdl::CreateB2dIAObject()
             aCroppedTransform,
             maGraphic));
 
+    // prepare outline polygon for whole graphic
+    const SvtOptionsDrawinglayer aSvtOptionsDrawinglayer;
+    const basegfx::BColor aHilightColor(aSvtOptionsDrawinglayer.getHilightColor().getBColor());
+    const drawinglayer::primitive2d::Primitive2DReference aGraphicOutline(
+        new drawinglayer::primitive2d::PolygonHairlinePrimitive2D(
+        aGraphicOutlinePolygon,
+        aHilightColor));
+
+    // combine these
+    drawinglayer::primitive2d::Primitive2DSequence aCombination(2);
+    aCombination[0] = aGraphic;
+    aCombination[1] = aGraphicOutline;
+
     // embed to MaskPrimitive2D
     const drawinglayer::primitive2d::Primitive2DReference aMaskedGraphic(
         new drawinglayer::primitive2d::MaskPrimitive2D(
             aCropPolyPolygon,
-            drawinglayer::primitive2d::Primitive2DSequence(&aGraphic, 1)));
+            aCombination));
 
     // embed to UnifiedTransparencePrimitive2D
     const drawinglayer::primitive2d::Primitive2DReference aTransparenceMaskedGraphic(


More information about the Libreoffice-commits mailing list