summaryrefslogtreecommitdiff
path: root/drawinglayer/inc
diff options
context:
space:
mode:
authorArmin Le Grand <alg@apache.org>2013-02-21 17:51:40 +0100
committerPetr Mladek <pmladek@suse.cz>2013-02-22 16:49:00 +0100
commit99501a839f6d777c24bc9210787fd14dc3aad67d (patch)
tree2b44b5998e34447631f2740a2708897b51e6b78b /drawinglayer/inc
parent03a381eaa58d77cf26dfa8d916d1ecda865c1937 (diff)
#120616# Corrected SVG gradient primitive and it's decomposition
Conflicts: drawinglayer/source/primitive2d/svggradientprimitive2d.cxx Change-Id: I04c148303e7153a5376eae79803c540f6eba0b00
Diffstat (limited to 'drawinglayer/inc')
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/svggradientprimitive2d.hxx9
1 files changed, 9 insertions, 0 deletions
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/svggradientprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/svggradientprimitive2d.hxx
index 39115a76d938..2c9e34fe96e1 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/svggradientprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/svggradientprimitive2d.hxx
@@ -111,6 +111,11 @@ namespace drawinglayer
bool mbSingleEntry : 1;
bool mbFullyOpaque : 1;
+ // true = interpret in unit coordinate system -> object aspect ratio will scale result
+ // false = interpret in object coordinate system -> object aspect ratio will not scale result
+ // (related to SVG's gradientUnits (userSpaceOnUse|objectBoundingBox)
+ bool mbUseUnitCoordinates : 1;
+
protected:
/// local helpers
Primitive2DSequence createSingleGradientEntryFill() const;
@@ -145,6 +150,7 @@ namespace drawinglayer
const basegfx::B2DPolyPolygon& rPolyPolygon,
const SvgGradientEntryVector& rGradientEntries,
const basegfx::B2DPoint& rStart,
+ bool bUseUnitCoordinates,
SpreadMethod aSpreadMethod = Spread_pad);
virtual ~SvgGradientHelper() {}
@@ -152,6 +158,7 @@ namespace drawinglayer
const basegfx::B2DPolyPolygon& getPolyPolygon() const { return maPolyPolygon; }
const SvgGradientEntryVector& getGradientEntries() const { return maGradientEntries; }
const basegfx::B2DPoint& getStart() const { return maStart; }
+ bool getUseUnitCoordinates() const { return mbUseUnitCoordinates; }
SpreadMethod getSpreadMethod() const { return maSpreadMethod; }
/// compare operator
@@ -194,6 +201,7 @@ namespace drawinglayer
const SvgGradientEntryVector& rGradientEntries,
const basegfx::B2DPoint& rStart,
const basegfx::B2DPoint& rEnd,
+ bool bUseUnitCoordinates,
SpreadMethod aSpreadMethod = Spread_pad);
virtual ~SvgLinearGradientPrimitive2D() {}
@@ -261,6 +269,7 @@ namespace drawinglayer
const SvgGradientEntryVector& rGradientEntries,
const basegfx::B2DPoint& rStart,
double fRadius,
+ bool bUseUnitCoordinates,
SpreadMethod aSpreadMethod = Spread_pad,
const basegfx::B2DPoint* pFocal = 0);