summaryrefslogtreecommitdiff
path: root/drawinglayer
diff options
context:
space:
mode:
authorArmin Le Grand (allotropia) <armin.le.grand.extern@allotropia.de>2023-04-20 17:16:32 +0200
committerArmin Le Grand <Armin.Le.Grand@me.com>2023-04-21 15:03:14 +0200
commitdccd82b5ac47f44ea0297d301dc894c70bc793a2 (patch)
tree71dad46c8e0fbd3b05363978f5554dfc32911276 /drawinglayer
parent0293724d05953be608287629ed6178a7c05383a6 (diff)
MCGR: Reduce diverse GradientStyle enums to single UNO API one
Change-Id: Ie0cd26a308a75ddead9451c53e874a39cc6eeb63 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150705 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
Diffstat (limited to 'drawinglayer')
-rw-r--r--drawinglayer/qa/unit/vclpixelprocessor2d.cxx2
-rw-r--r--drawinglayer/source/attribute/fillgradientattribute.cxx18
-rw-r--r--drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx21
-rw-r--r--drawinglayer/source/primitive3d/textureprimitive3d.cxx2
-rw-r--r--drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx49
-rw-r--r--drawinglayer/source/processor2d/vclpixelprocessor2d.cxx31
-rw-r--r--drawinglayer/source/processor3d/defaultprocessor3d.cxx15
-rw-r--r--drawinglayer/source/tools/primitive2dxmldump.cxx13
-rw-r--r--drawinglayer/source/tools/wmfemfhelper.cxx38
9 files changed, 48 insertions, 141 deletions
diff --git a/drawinglayer/qa/unit/vclpixelprocessor2d.cxx b/drawinglayer/qa/unit/vclpixelprocessor2d.cxx
index 4c26c2d4bfde..6ccf1e7c55ab 100644
--- a/drawinglayer/qa/unit/vclpixelprocessor2d.cxx
+++ b/drawinglayer/qa/unit/vclpixelprocessor2d.cxx
@@ -61,7 +61,7 @@ public:
basegfx::B2DRange definitionRange(0, 0, 100, 200);
basegfx::B2DRange outputRange(0, 100, 100, 200); // Paint only lower half of the gradient.
attribute::FillGradientAttribute attributes(
- attribute::GradientStyle::Linear, 0, 0, 0, 0,
+ css::awt::GradientStyle_LINEAR, 0, 0, 0, 0,
basegfx::utils::createColorStopsFromStartEndColor(COL_WHITE.getBColor(),
COL_BLACK.getBColor()));
rtl::Reference<primitive2d::FillGradientPrimitive2D> gradientPrimitive(
diff --git a/drawinglayer/source/attribute/fillgradientattribute.cxx b/drawinglayer/source/attribute/fillgradientattribute.cxx
index b25a4dab2f25..0233195113af 100644
--- a/drawinglayer/source/attribute/fillgradientattribute.cxx
+++ b/drawinglayer/source/attribute/fillgradientattribute.cxx
@@ -31,11 +31,11 @@ namespace drawinglayer::attribute
double mfOffsetY;
double mfAngle;
basegfx::ColorStops maColorStops;
- GradientStyle meStyle;
+ css::awt::GradientStyle meStyle;
sal_uInt16 mnSteps;
ImpFillGradientAttribute(
- GradientStyle eStyle,
+ css::awt::GradientStyle eStyle,
double fBorder,
double fOffsetX,
double fOffsetY,
@@ -74,7 +74,7 @@ namespace drawinglayer::attribute
mfOffsetY(0.0),
mfAngle(0.0),
maColorStops(),
- meStyle(GradientStyle::Linear),
+ meStyle(css::awt::GradientStyle_LINEAR),
mnSteps(0)
{
// always add a fallback color, see above
@@ -82,7 +82,7 @@ namespace drawinglayer::attribute
}
// data read access
- GradientStyle getStyle() const { return meStyle; }
+ css::awt::GradientStyle getStyle() const { return meStyle; }
double getBorder() const { return mfBorder; }
double getOffsetX() const { return mfOffsetX; }
double getOffsetY() const { return mfOffsetY; }
@@ -121,7 +121,7 @@ namespace drawinglayer::attribute
}
FillGradientAttribute::FillGradientAttribute(
- GradientStyle eStyle,
+ css::awt::GradientStyle eStyle,
double fBorder,
double fOffsetX,
double fOffsetY,
@@ -179,9 +179,9 @@ namespace drawinglayer::attribute
// is different from processing the gradient manually by drawinglayer
// (and the Writer unittest for it fails). Keep using the drawinglayer code
// until somebody founds out what's wrong and fixes it.
- if (getStyle() != drawinglayer::attribute::GradientStyle::Linear
- && getStyle() != drawinglayer::attribute::GradientStyle::Axial
- && getStyle() != drawinglayer::attribute::GradientStyle::Radial)
+ if (getStyle() != css::awt::GradientStyle_LINEAR
+ && getStyle() != css::awt::GradientStyle_AXIAL
+ && getStyle() != css::awt::GradientStyle_RADIAL)
{
return true;
}
@@ -227,7 +227,7 @@ namespace drawinglayer::attribute
return mpFillGradientAttribute->getAngle();
}
- GradientStyle FillGradientAttribute::getStyle() const
+ css::awt::GradientStyle FillGradientAttribute::getStyle() const
{
return mpFillGradientAttribute->getStyle();
}
diff --git a/drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx b/drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx
index 088e69357213..f39daccc4320 100644
--- a/drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx
@@ -32,14 +32,14 @@ using namespace com::sun::star;
namespace drawinglayer::primitive2d
{
- // Get the OuterColor. Take into account that for attribute::GradientStyle::Axial
+ // Get the OuterColor. Take into account that for css::awt::GradientStyle_AXIAL
// this is the last one due to inverted gradient usage (see constructor there)
basegfx::BColor FillGradientPrimitive2D::getOuterColor() const
{
if (getFillGradient().getColorStops().empty())
return basegfx::BColor();
- if (attribute::GradientStyle::Axial == getFillGradient().getStyle())
+ if (css::awt::GradientStyle_AXIAL == getFillGradient().getStyle())
return getFillGradient().getColorStops().back().getStopColor();
return getFillGradient().getColorStops().front().getStopColor();
@@ -48,8 +48,8 @@ namespace drawinglayer::primitive2d
// Get the needed UnitPolygon dependent on the GradientStyle
basegfx::B2DPolygon FillGradientPrimitive2D::getUnitPolygon() const
{
- if (attribute::GradientStyle::Radial == getFillGradient().getStyle()
- || attribute::GradientStyle::Elliptical == getFillGradient().getStyle())
+ if (css::awt::GradientStyle_RADIAL == getFillGradient().getStyle()
+ || css::awt::GradientStyle_ELLIPTICAL == getFillGradient().getStyle())
{
return basegfx::utils::createPolygonFromCircle(basegfx::B2DPoint(0.0, 0.0), 1.0);
}
@@ -62,7 +62,8 @@ namespace drawinglayer::primitive2d
{
switch(getFillGradient().getStyle())
{
- case attribute::GradientStyle::Linear:
+ default: // GradientStyle_MAKE_FIXED_SIZE
+ case css::awt::GradientStyle_LINEAR:
{
texture::GeoTexSvxGradientLinear aGradient(
getDefinitionRange(),
@@ -74,7 +75,7 @@ namespace drawinglayer::primitive2d
aGradient.appendTransformationsAndColors(aCallback);
break;
}
- case attribute::GradientStyle::Axial:
+ case css::awt::GradientStyle_AXIAL:
{
texture::GeoTexSvxGradientAxial aGradient(
getDefinitionRange(),
@@ -86,7 +87,7 @@ namespace drawinglayer::primitive2d
aGradient.appendTransformationsAndColors(aCallback);
break;
}
- case attribute::GradientStyle::Radial:
+ case css::awt::GradientStyle_RADIAL:
{
texture::GeoTexSvxGradientRadial aGradient(
getDefinitionRange(),
@@ -98,7 +99,7 @@ namespace drawinglayer::primitive2d
aGradient.appendTransformationsAndColors(aCallback);
break;
}
- case attribute::GradientStyle::Elliptical:
+ case css::awt::GradientStyle_ELLIPTICAL:
{
texture::GeoTexSvxGradientElliptical aGradient(
getDefinitionRange(),
@@ -111,7 +112,7 @@ namespace drawinglayer::primitive2d
aGradient.appendTransformationsAndColors(aCallback);
break;
}
- case attribute::GradientStyle::Square:
+ case css::awt::GradientStyle_SQUARE:
{
texture::GeoTexSvxGradientSquare aGradient(
getDefinitionRange(),
@@ -124,7 +125,7 @@ namespace drawinglayer::primitive2d
aGradient.appendTransformationsAndColors(aCallback);
break;
}
- case attribute::GradientStyle::Rect:
+ case css::awt::GradientStyle_RECT:
{
texture::GeoTexSvxGradientRect aGradient(
getDefinitionRange(),
diff --git a/drawinglayer/source/primitive3d/textureprimitive3d.cxx b/drawinglayer/source/primitive3d/textureprimitive3d.cxx
index 977670446c8a..ebae584e9dbf 100644
--- a/drawinglayer/source/primitive3d/textureprimitive3d.cxx
+++ b/drawinglayer/source/primitive3d/textureprimitive3d.cxx
@@ -99,7 +99,7 @@ namespace drawinglayer::primitive3d
basegfx::ColorStop(0.0, aGray),
basegfx::ColorStop(1.0, aGray) };
- const attribute::FillGradientAttribute aFillGradient(attribute::GradientStyle::Linear, 0.0, 0.0, 0.0, 0.0, aColorStops);
+ const attribute::FillGradientAttribute aFillGradient(css::awt::GradientStyle_LINEAR, 0.0, 0.0, 0.0, 0.0, aColorStops);
const Primitive3DReference xRef(new TransparenceTexturePrimitive3D(aFillGradient, getChildren(), getTextureSize()));
return { xRef };
}
diff --git a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
index 9adbb7501701..529a34ce599a 100644
--- a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
@@ -285,40 +285,7 @@ void VclMetafileProcessor2D::impConvertFillGradientAttributeToVCLGradient(
// defaults for intensity; those were computed into the start/end colors already
o_rVCLGradient.SetStartIntensity(100);
o_rVCLGradient.SetEndIntensity(100);
-
- switch (rFiGrAtt.getStyle())
- {
- default: // attribute::GradientStyle::Linear :
- {
- o_rVCLGradient.SetStyle(GradientStyle::Linear);
- break;
- }
- case attribute::GradientStyle::Axial:
- {
- o_rVCLGradient.SetStyle(GradientStyle::Axial);
- break;
- }
- case attribute::GradientStyle::Radial:
- {
- o_rVCLGradient.SetStyle(GradientStyle::Radial);
- break;
- }
- case attribute::GradientStyle::Elliptical:
- {
- o_rVCLGradient.SetStyle(GradientStyle::Elliptical);
- break;
- }
- case attribute::GradientStyle::Square:
- {
- o_rVCLGradient.SetStyle(GradientStyle::Square);
- break;
- }
- case attribute::GradientStyle::Rect:
- {
- o_rVCLGradient.SetStyle(GradientStyle::Rect);
- break;
- }
- }
+ o_rVCLGradient.SetStyle(rFiGrAtt.getStyle());
}
void VclMetafileProcessor2D::impStartSvtGraphicFill(SvtGraphicFill const* pSvtGraphicFill)
@@ -2078,16 +2045,16 @@ void VclMetafileProcessor2D::processPolyPolygonGradientPrimitive2D(
switch (aVCLGradient.GetStyle())
{
- default: // GradientStyle::Linear:
- case GradientStyle::Axial:
+ default: // css::awt::GradientStyle_LINEAR:
+ case css::awt::GradientStyle_AXIAL:
eGrad = SvtGraphicFill::GradientType::Linear;
break;
- case GradientStyle::Radial:
- case GradientStyle::Elliptical:
+ case css::awt::GradientStyle_RADIAL:
+ case css::awt::GradientStyle_ELLIPTICAL:
eGrad = SvtGraphicFill::GradientType::Radial;
break;
- case GradientStyle::Square:
- case GradientStyle::Rect:
+ case css::awt::GradientStyle_SQUARE:
+ case css::awt::GradientStyle_RECT:
eGrad = SvtGraphicFill::GradientType::Rectangular;
break;
}
@@ -2269,7 +2236,7 @@ void VclMetafileProcessor2D::processUnifiedTransparencePrimitive2D(
basegfx::fround(rUniTransparenceCandidate.getTransparence() * 255.0)));
const Color aTransColor(nTransPercentVcl, nTransPercentVcl, nTransPercentVcl);
- aVCLGradient.SetStyle(GradientStyle::Linear);
+ aVCLGradient.SetStyle(css::awt::GradientStyle_LINEAR);
aVCLGradient.SetStartColor(aTransColor);
aVCLGradient.SetEndColor(aTransColor);
aVCLGradient.SetAngle(0_deg10);
diff --git a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
index d6da12a1e32e..e71cda4a0bb6 100644
--- a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
@@ -185,32 +185,6 @@ bool VclPixelProcessor2D::tryDrawPolygonStrokePrimitive2DDirect(
rSource.getLineAttribute().getMiterMinimumAngle());
}
-namespace
-{
-GradientStyle convertGradientStyle(drawinglayer::attribute::GradientStyle eGradientStyle)
-{
- switch (eGradientStyle)
- {
- case drawinglayer::attribute::GradientStyle::Axial:
- return GradientStyle::Axial;
- case drawinglayer::attribute::GradientStyle::Radial:
- return GradientStyle::Radial;
- case drawinglayer::attribute::GradientStyle::Elliptical:
- return GradientStyle::Elliptical;
- case drawinglayer::attribute::GradientStyle::Square:
- return GradientStyle::Square;
- case drawinglayer::attribute::GradientStyle::Rect:
- return GradientStyle::Rect;
- case drawinglayer::attribute::GradientStyle::Linear:
- return GradientStyle::Linear;
- default:
- assert(false);
- return GradientStyle::Linear;
- }
-}
-
-} // end anonymous namespace
-
void VclPixelProcessor2D::processBasePrimitive2D(const primitive2d::BasePrimitive2D& rCandidate)
{
switch (rCandidate.getPrimitive2DID())
@@ -1053,9 +1027,8 @@ void VclPixelProcessor2D::processFillGradientPrimitive2D(
// try to use vcl - since vcl uses the old gradient paint mechanisms this may
// create wrong geometries. If so, add another case above for useDecompose
- GradientStyle eGradientStyle = convertGradientStyle(rFillGradient.getStyle());
-
- Gradient aGradient(eGradientStyle, Color(rFillGradient.getColorStops().front().getStopColor()),
+ Gradient aGradient(rFillGradient.getStyle(),
+ Color(rFillGradient.getColorStops().front().getStopColor()),
Color(rFillGradient.getColorStops().back().getStopColor()));
aGradient.SetAngle(Degree10(static_cast<int>(basegfx::rad2deg<10>(rFillGradient.getAngle()))));
diff --git a/drawinglayer/source/processor3d/defaultprocessor3d.cxx b/drawinglayer/source/processor3d/defaultprocessor3d.cxx
index a2a5111bc49b..20d81871dbd7 100644
--- a/drawinglayer/source/processor3d/defaultprocessor3d.cxx
+++ b/drawinglayer/source/processor3d/defaultprocessor3d.cxx
@@ -59,14 +59,15 @@ namespace drawinglayer::processor3d
// create texture
const attribute::FillGradientAttribute& rFillGradient = rPrimitive.getGradient();
const basegfx::B2DRange aOutlineRange(0.0, 0.0, rPrimitive.getTextureSize().getX(), rPrimitive.getTextureSize().getY());
- const attribute::GradientStyle aGradientStyle(rFillGradient.getStyle());
+ const css::awt::GradientStyle aGradientStyle(rFillGradient.getStyle());
std::shared_ptr< texture::GeoTexSvx > pNewTex;
if(!rFillGradient.hasSingleColor())
{
switch(aGradientStyle)
{
- case attribute::GradientStyle::Linear:
+ default: // GradientStyle_MAKE_FIXED_SIZE
+ case css::awt::GradientStyle_LINEAR:
{
pNewTex = std::make_shared<texture::GeoTexSvxGradientLinear>(
aOutlineRange,
@@ -77,7 +78,7 @@ namespace drawinglayer::processor3d
rFillGradient.getAngle());
break;
}
- case attribute::GradientStyle::Axial:
+ case css::awt::GradientStyle_AXIAL:
{
pNewTex = std::make_shared<texture::GeoTexSvxGradientAxial>(
aOutlineRange,
@@ -88,7 +89,7 @@ namespace drawinglayer::processor3d
rFillGradient.getAngle());
break;
}
- case attribute::GradientStyle::Radial:
+ case css::awt::GradientStyle_RADIAL:
{
pNewTex =
std::make_shared<texture::GeoTexSvxGradientRadial>(
@@ -100,7 +101,7 @@ namespace drawinglayer::processor3d
rFillGradient.getOffsetY());
break;
}
- case attribute::GradientStyle::Elliptical:
+ case css::awt::GradientStyle_ELLIPTICAL:
{
pNewTex =
std::make_shared<texture::GeoTexSvxGradientElliptical>(
@@ -113,7 +114,7 @@ namespace drawinglayer::processor3d
rFillGradient.getAngle());
break;
}
- case attribute::GradientStyle::Square:
+ case css::awt::GradientStyle_SQUARE:
{
pNewTex =
std::make_shared<texture::GeoTexSvxGradientSquare>(
@@ -126,7 +127,7 @@ namespace drawinglayer::processor3d
rFillGradient.getAngle());
break;
}
- case attribute::GradientStyle::Rect:
+ case css::awt::GradientStyle_RECT:
{
pNewTex =
std::make_shared<texture::GeoTexSvxGradientRect>(
diff --git a/drawinglayer/source/tools/primitive2dxmldump.cxx b/drawinglayer/source/tools/primitive2dxmldump.cxx
index 31c88c6482ed..08f585a3638b 100644
--- a/drawinglayer/source/tools/primitive2dxmldump.cxx
+++ b/drawinglayer/source/tools/primitive2dxmldump.cxx
@@ -276,22 +276,23 @@ void writeSdrFillAttribute(::tools::XmlWriter& rWriter,
rWriter.startElement("gradient");
switch (rGradient.getStyle())
{
- case drawinglayer::attribute::GradientStyle::Linear:
+ default: // GradientStyle_MAKE_FIXED_SIZE
+ case css::awt::GradientStyle_LINEAR:
rWriter.attribute("style", "Linear");
break;
- case drawinglayer::attribute::GradientStyle::Axial:
+ case css::awt::GradientStyle_AXIAL:
rWriter.attribute("style", "Axial");
break;
- case drawinglayer::attribute::GradientStyle::Radial:
+ case css::awt::GradientStyle_RADIAL:
rWriter.attribute("style", "Radial");
break;
- case drawinglayer::attribute::GradientStyle::Elliptical:
+ case css::awt::GradientStyle_ELLIPTICAL:
rWriter.attribute("style", "Elliptical");
break;
- case drawinglayer::attribute::GradientStyle::Square:
+ case css::awt::GradientStyle_SQUARE:
rWriter.attribute("style", "Square");
break;
- case drawinglayer::attribute::GradientStyle::Rect:
+ case css::awt::GradientStyle_RECT:
rWriter.attribute("style", "Rect");
break;
}
diff --git a/drawinglayer/source/tools/wmfemfhelper.cxx b/drawinglayer/source/tools/wmfemfhelper.cxx
index e6eb401833c7..1b2b2d0a5abd 100644
--- a/drawinglayer/source/tools/wmfemfhelper.cxx
+++ b/drawinglayer/source/tools/wmfemfhelper.cxx
@@ -675,44 +675,8 @@ namespace wmfemfhelper
aEnd = interpolate(aBlack, aEnd, static_cast<double>(nEndIntens) * 0.01);
}
- drawinglayer::attribute::GradientStyle aGradientStyle(drawinglayer::attribute::GradientStyle::Rect);
-
- switch(rGradient.GetStyle())
- {
- case GradientStyle::Linear :
- {
- aGradientStyle = drawinglayer::attribute::GradientStyle::Linear;
- break;
- }
- case GradientStyle::Axial :
- {
- aGradientStyle = drawinglayer::attribute::GradientStyle::Axial;
- break;
- }
- case GradientStyle::Radial :
- {
- aGradientStyle = drawinglayer::attribute::GradientStyle::Radial;
- break;
- }
- case GradientStyle::Elliptical :
- {
- aGradientStyle = drawinglayer::attribute::GradientStyle::Elliptical;
- break;
- }
- case GradientStyle::Square :
- {
- aGradientStyle = drawinglayer::attribute::GradientStyle::Square;
- break;
- }
- default : // GradientStyle::Rect
- {
- aGradientStyle = drawinglayer::attribute::GradientStyle::Rect;
- break;
- }
- }
-
return drawinglayer::attribute::FillGradientAttribute(
- aGradientStyle,
+ rGradient.GetStyle(),
static_cast<double>(rGradient.GetBorder()) * 0.01,
static_cast<double>(rGradient.GetOfsX()) * 0.01,
static_cast<double>(rGradient.GetOfsY()) * 0.01,