summaryrefslogtreecommitdiff
path: root/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx')
-rw-r--r--svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx23
1 files changed, 16 insertions, 7 deletions
diff --git a/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx b/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx
index bfdd4922f1b3..88cc3cf9bc61 100644
--- a/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx
+++ b/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx
@@ -44,12 +44,20 @@ namespace drawinglayer::primitive2d
getSdrSTAttribute().getSoftEdgeRadius());
}
+ // tdf#132199: put glow before shadow, to have shadow of the glow, not the opposite
+ if (!aRetval.empty() && !getSdrSTAttribute().getGlow().isDefault())
+ {
+ // glow
+ aRetval = createEmbeddedGlowPrimitive(std::move(aRetval), getSdrSTAttribute().getGlow());
+ }
+
// add text
if(!getSdrSTAttribute().getText().isDefault())
{
const basegfx::B2DPolygon& aUnitOutline(basegfx::utils::createUnitPolygon());
- aRetval.push_back(
+ Primitive2DContainer aTempContentText;
+ aTempContentText.push_back(
createTextPrimitive(
basegfx::B2DPolyPolygon(aUnitOutline),
getTextBox(),
@@ -57,13 +65,14 @@ namespace drawinglayer::primitive2d
attribute::SdrLineAttribute(),
false,
getWordWrap()));
- }
- // tdf#132199: put glow before shadow, to have shadow of the glow, not the opposite
- if (!aRetval.empty() && !getSdrSTAttribute().getGlow().isDefault())
- {
- // glow
- aRetval = createEmbeddedGlowPrimitive(std::move(aRetval), getSdrSTAttribute().getGlow());
+ // put text glow before, shape glow and shadow
+ if (!aTempContentText.empty() && !getSdrSTAttribute().getGlowText().isDefault())
+ {
+ // add text glow
+ aTempContentText = createEmbeddedTextGlowPrimitive(std::move(aTempContentText), getSdrSTAttribute().getGlowText());
+ }
+ aRetval.append(std::move(aTempContentText));
}
// add shadow