summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/svx/strings.hrc1
-rw-r--r--include/svx/svddef.hxx3
-rw-r--r--include/svx/svxids.hrc1
-rw-r--r--include/svx/unoshprp.hxx3
-rw-r--r--include/xmloff/xmltoken.hxx1
-rw-r--r--oox/source/drawingml/shape.cxx1
-rw-r--r--oox/source/export/drawingml.cxx4
-rw-r--r--sc/sdi/drawsh.sdi1
-rw-r--r--sd/qa/unit/export-tests-ooxml2.cxx3
-rw-r--r--sd/qa/unit/import-tests.cxx3
-rw-r--r--sd/sdi/_drvwsh.sdi5
-rw-r--r--sd/source/ui/view/drviews2.cxx1
-rw-r--r--sd/source/ui/view/drviewsf.cxx1
-rw-r--r--svx/sdi/svx.sdi17
-rw-r--r--svx/source/sidebar/glow/GlowPropertyPanel.cxx31
-rw-r--r--svx/source/sidebar/glow/GlowPropertyPanel.hxx4
-rw-r--r--svx/source/svdraw/svdattr.cxx3
-rw-r--r--svx/uiconfig/ui/sidebarglow.ui31
-rw-r--r--sw/sdi/drawsh.sdi8
-rw-r--r--sw/source/uibase/shells/slotadd.cxx1
-rw-r--r--xmloff/source/core/xmltoken.cxx1
-rw-r--r--xmloff/source/draw/sdpropls.cxx1
-rw-r--r--xmloff/source/token/tokens.txt1
23 files changed, 123 insertions, 3 deletions
diff --git a/include/svx/strings.hrc b/include/svx/strings.hrc
index 7a1f97edbea9..472a35a487e8 100644
--- a/include/svx/strings.hrc
+++ b/include/svx/strings.hrc
@@ -515,6 +515,7 @@
#define SIP_SA_GLOW NC_("SIP_SA_GLOW", "Glow effect")
#define SIP_SA_GLOW_RAD NC_("SIP_SA_GLOW_RAD", "Radius of glow effect")
#define SIP_SA_GLOW_COLOR NC_("SIP_SA_GLOW_COLOR", "Color of glow effect")
+#define SIP_SA_GLOW_TRANSPARENCY NC_("SIP_SA_GLOW_TRANSPARENCY", "Transparency of glow effect")
#define STR_ObjNameSingulMEDIA NC_("STR_ObjNameSingulMEDIA", "Media object")
#define STR_ObjNamePluralMEDIA NC_("STR_ObjNamePluralMEDIA", "Media objects")
// drawing layer table strings
diff --git a/include/svx/svddef.hxx b/include/svx/svddef.hxx
index c00c1a007034..d6bbccf57654 100644
--- a/include/svx/svddef.hxx
+++ b/include/svx/svddef.hxx
@@ -419,7 +419,8 @@ constexpr sal_uInt16 SDRATTR_GLOW_FIRST (SDRATTR_TABLE_LAST+1);
constexpr TypedWhichId<SdrOnOffItem> SDRATTR_GLOW (SDRATTR_GLOW_FIRST+0);
constexpr TypedWhichId<SdrMetricItem> SDRATTR_GLOW_RAD (SDRATTR_GLOW_FIRST+1);
constexpr TypedWhichId<XColorItem> SDRATTR_GLOW_COLOR (SDRATTR_GLOW_FIRST+2);
-constexpr sal_uInt16 SDRATTR_GLOW_LAST (SDRATTR_GLOW_COLOR);
+constexpr TypedWhichId<SdrPercentItem> SDRATTR_GLOW_TRANSPARENCY(SDRATTR_GLOW_FIRST + 3);
+constexpr sal_uInt16 SDRATTR_GLOW_LAST (SDRATTR_GLOW_TRANSPARENCY);
constexpr sal_uInt16 SDRATTR_END (SDRATTR_GLOW_LAST); /* 1357 */ /* 1333 V4+++*/ /* 1243 V4+++*/ /*1213*/ /*1085*/ /*1040*/ /*Pool V2: 1123,V1: 1065 */
diff --git a/include/svx/svxids.hrc b/include/svx/svxids.hrc
index 1aa3111beeba..61d02ff504ea 100644
--- a/include/svx/svxids.hrc
+++ b/include/svx/svxids.hrc
@@ -417,6 +417,7 @@ class SvxSetItem;
#define SID_ATTR_GLOW ( SID_SVX_START + 320 )
#define SID_ATTR_GLOW_COLOR ( SID_SVX_START + 321 )
#define SID_ATTR_GLOW_RADIUS ( SID_SVX_START + 322 )
+#define SID_ATTR_GLOW_TRANSPARENCY ( SID_SVX_START + 323 )
#define SID_SCAN ( SID_SVX_START + 330 )
#define SID_TWAIN_SELECT ( SID_SVX_START + 331 )
#define SID_TWAIN_TRANSFER ( SID_SVX_START + 332 )
diff --git a/include/svx/unoshprp.hxx b/include/svx/unoshprp.hxx
index 19eb4aeb867d..b8c0990fa2f7 100644
--- a/include/svx/unoshprp.hxx
+++ b/include/svx/unoshprp.hxx
@@ -212,7 +212,8 @@
#define GLOW_PROPERTIES \
{ OUString("GlowEffect"), SDRATTR_GLOW, cppu::UnoType<bool>::get(), 0, 0}, \
{ OUString{"GlowEffectRad"}, SDRATTR_GLOW_RAD, ::cppu::UnoType<sal_Int32>::get(), 0, 0, PropertyMoreFlags::METRIC_ITEM}, \
- { OUString{"GlowEffectColor"}, SDRATTR_GLOW_COLOR, ::cppu::UnoType<sal_Int32>::get(), 0, 0},
+ { OUString{"GlowEffectColor"}, SDRATTR_GLOW_COLOR, ::cppu::UnoType<sal_Int32>::get(), 0, 0}, \
+ { OUString{"GlowEffectTransparency"}, SDRATTR_GLOW_TRANSPARENCY,::cppu::UnoType<sal_Int16>::get(), 0, 0 },
#define SHADOW_PROPERTIES \
{ OUString(UNO_NAME_SHADOW), SDRATTR_SHADOW, cppu::UnoType<bool>::get(), 0, 0}, \
diff --git a/include/xmloff/xmltoken.hxx b/include/xmloff/xmltoken.hxx
index fda3f4cf9861..d84f17d03ce6 100644
--- a/include/xmloff/xmltoken.hxx
+++ b/include/xmloff/xmltoken.hxx
@@ -928,6 +928,7 @@ namespace xmloff::token {
XML_GLOW,
XML_GLOW_RADIUS,
XML_GLOW_COLOR,
+ XML_GLOW_TRANSPARENCY,
XML_GOURAUD,
XML_GRADIENT,
XML_GRADIENT_ANGLE,
diff --git a/oox/source/drawingml/shape.cxx b/oox/source/drawingml/shape.cxx
index d962f008f34e..959f99ecffb4 100644
--- a/oox/source/drawingml/shape.cxx
+++ b/oox/source/drawingml/shape.cxx
@@ -1472,6 +1472,7 @@ Reference< XShape > const & Shape::createAndInsert(
propertySet->setPropertyValue("GlowEffect", makeAny(true));
propertySet->setPropertyValue("GlowEffectRad", makeAny(static_cast<sal_Int32>(aEffectProperties.maGlow.moGlowRad.get())));
propertySet->setPropertyValue("GlowEffectColor", makeAny(aEffectProperties.maGlow.moGlowColor.getColor(rGraphicHelper)));
+ propertySet->setPropertyValue("GlowEffectTransparency", makeAny(aEffectProperties.maGlow.moGlowColor.getTransparency()));
}
}
diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx
index 81bbcd76be07..17b56e8e4f91 100644
--- a/oox/source/export/drawingml.cxx
+++ b/oox/source/export/drawingml.cxx
@@ -3849,11 +3849,13 @@ void DrawingML::WriteGlowEffect(const Reference< XPropertySet >& rXPropSet)
Sequence< PropertyValue > aGlowAttribs(1);
aGlowAttribs[0].Name = "rad";
aGlowAttribs[0].Value = rXPropSet->getPropertyValue("GlowEffectRad");
- Sequence< PropertyValue > aGlowProps(2);
+ Sequence< PropertyValue > aGlowProps(3);
aGlowProps[0].Name = "Attribs";
aGlowProps[0].Value <<= aGlowAttribs;
aGlowProps[1].Name = "RgbClr";
aGlowProps[1].Value = rXPropSet->getPropertyValue("GlowEffectColor");
+ aGlowProps[2].Name = "RgbClrTransparency";
+ aGlowProps[2].Value = rXPropSet->getPropertyValue("GlowEffectTransparency");
// TODO other stuff like saturation or luminance
WriteShapeEffect("glow", aGlowProps);
diff --git a/sc/sdi/drawsh.sdi b/sc/sdi/drawsh.sdi
index 44faa5c18074..2a9981aa6e6f 100644
--- a/sc/sdi/drawsh.sdi
+++ b/sc/sdi/drawsh.sdi
@@ -228,6 +228,7 @@ interface TableDraw
SID_ATTR_GLOW [ ExecMethod = ExecDrawAttr; StateMethod = GetDrawAttrState; Export = FALSE; ]
SID_ATTR_GLOW_COLOR [ ExecMethod = ExecDrawAttr; StateMethod = GetDrawAttrState; Export = FALSE; ]
SID_ATTR_GLOW_RADIUS [ ExecMethod = ExecDrawAttr; StateMethod = GetDrawAttrState; Export = FALSE; ]
+ SID_ATTR_GLOW_TRANSPARENCY [ ExecMethod = ExecDrawAttr; StateMethod = GetDrawAttrState; Export = FALSE; ]
}
diff --git a/sd/qa/unit/export-tests-ooxml2.cxx b/sd/qa/unit/export-tests-ooxml2.cxx
index 07b340ba69f7..c006772ae302 100644
--- a/sd/qa/unit/export-tests-ooxml2.cxx
+++ b/sd/qa/unit/export-tests-ooxml2.cxx
@@ -2861,6 +2861,9 @@ void SdOOXMLExportTest2::testShapeGlowEffect()
Color nColor;
xShape->getPropertyValue("GlowEffectColor") >>= nColor;
CPPUNIT_ASSERT_EQUAL(Color(0xFFC000), nColor);
+ sal_uInt16 nTransparency;
+ xShape->getPropertyValue("GlowEffectTransparency") >>= nTransparency;
+ CPPUNIT_ASSERT_EQUAL(sal_uInt16(60), nTransparency);
}
void SdOOXMLExportTest2::testTdf119087()
diff --git a/sd/qa/unit/import-tests.cxx b/sd/qa/unit/import-tests.cxx
index 83cab0b6c083..158641ae4b81 100644
--- a/sd/qa/unit/import-tests.cxx
+++ b/sd/qa/unit/import-tests.cxx
@@ -3122,6 +3122,9 @@ void SdImportTest::testShapeGlowEffectPPTXImpoer()
Color nColor;
xShape->getPropertyValue("GlowEffectColor") >>= nColor;
CPPUNIT_ASSERT_EQUAL(Color(0xFFC000), nColor);
+ sal_uInt16 nTransparency;
+ xShape->getPropertyValue("GlowEffectTransparency") >>= nTransparency;
+ CPPUNIT_ASSERT_EQUAL(sal_uInt16(60), nTransparency);
}
CPPUNIT_TEST_SUITE_REGISTRATION(SdImportTest);
diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi
index 962ef2368e15..b1a6f641fbc8 100644
--- a/sd/sdi/_drvwsh.sdi
+++ b/sd/sdi/_drvwsh.sdi
@@ -2875,5 +2875,10 @@ interface DrawView
ExecMethod = FuTemporary;
StateMethod = GetAttrState;
]
+ SID_ATTR_GLOW_TRANSPARENCY
+ [
+ ExecMethod = FuTemporary;
+ StateMethod = GetAttrState;
+ ]
}
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
index fb6f3decca06..d0629139d280 100644
--- a/sd/source/ui/view/drviews2.cxx
+++ b/sd/source/ui/view/drviews2.cxx
@@ -3473,6 +3473,7 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
case SID_ATTR_GLOW:
case SID_ATTR_GLOW_COLOR:
case SID_ATTR_GLOW_RADIUS:
+ case SID_ATTR_GLOW_TRANSPARENCY:
if (const SfxItemSet* pNewArgs = rReq.GetArgs())
mpDrawView->SetAttributes(*pNewArgs);
rReq.Done();
diff --git a/sd/source/ui/view/drviewsf.cxx b/sd/source/ui/view/drviewsf.cxx
index c3401210c40d..b58d7f344b0a 100644
--- a/sd/source/ui/view/drviewsf.cxx
+++ b/sd/source/ui/view/drviewsf.cxx
@@ -440,6 +440,7 @@ void DrawViewShell::GetAttrState( SfxItemSet& rSet )
case SID_ATTR_GLOW:
case SID_ATTR_GLOW_COLOR:
case SID_ATTR_GLOW_RADIUS:
+ case SID_ATTR_GLOW_TRANSPARENCY:
case SID_SET_SUB_SCRIPT:
case SID_SET_SUPER_SCRIPT:
{
diff --git a/svx/sdi/svx.sdi b/svx/sdi/svx.sdi
index f7925c5c376d..bf3b73f5ab78 100644
--- a/svx/sdi/svx.sdi
+++ b/svx/sdi/svx.sdi
@@ -12288,3 +12288,20 @@ SdrMetricItem GlowRadius SID_ATTR_GLOW_RADIUS
ToolBoxConfig = FALSE,
GroupId = SfxGroupId::Document;
]
+
+SdrPercentItem GlowTransparency SID_ATTR_GLOW_TRANSPARENCY
+
+[
+ AutoUpdate = TRUE,
+ FastCall = FALSE,
+ ReadOnlyDoc = FALSE,
+ Toggle = FALSE,
+ Container = FALSE,
+ RecordAbsolute = FALSE,
+ RecordPerSet;
+
+ AccelConfig = FALSE,
+ MenuConfig = FALSE,
+ ToolBoxConfig = FALSE,
+ GroupId = SfxGroupId::Document;
+]
diff --git a/svx/source/sidebar/glow/GlowPropertyPanel.cxx b/svx/source/sidebar/glow/GlowPropertyPanel.cxx
index 82df3ee5fe17..ef3a1951e128 100644
--- a/svx/source/sidebar/glow/GlowPropertyPanel.cxx
+++ b/svx/source/sidebar/glow/GlowPropertyPanel.cxx
@@ -15,6 +15,7 @@
#include <svx/colorbox.hxx>
#include <svx/sdmetitm.hxx>
#include <svx/sdooitm.hxx>
+#include <svx/sdprcitm.hxx>
#include <svx/svddef.hxx>
#include <svx/svxids.hrc>
#include <svx/xcolit.hxx>
@@ -38,12 +39,16 @@ GlowPropertyPanel::GlowPropertyPanel(vcl::Window* pParent,
, maGlowController(SID_ATTR_GLOW, *pBindings, *this)
, maGlowColorController(SID_ATTR_GLOW_COLOR, *pBindings, *this)
, maGlowRadiusController(SID_ATTR_GLOW_RADIUS, *pBindings, *this)
+ , maGlowTransparencyController(SID_ATTR_GLOW_TRANSPARENCY, *pBindings, *this)
, mpBindings(pBindings)
, mxShowGlow(m_xBuilder->weld_check_button("SHOW_GLOW"))
, mxGlowRadius(m_xBuilder->weld_metric_spin_button("LB_GLOW_RADIUS", FieldUnit::POINT))
, mxLBGlowColor(new ColorListBox(m_xBuilder->weld_menu_button("LB_GLOW_COLOR"), GetFrameWeld()))
+ , mxGlowTransparency(
+ m_xBuilder->weld_metric_spin_button("LB_GLOW_TRANSPARENCY", FieldUnit::PERCENT))
, mxFTRadius(m_xBuilder->weld_label("radius"))
, mxFTColor(m_xBuilder->weld_label("color"))
+ , mxFTTransparency(m_xBuilder->weld_label("transparency"))
{
Initialize();
}
@@ -57,10 +62,13 @@ void GlowPropertyPanel::dispose()
mxGlowRadius.reset();
mxFTColor.reset();
mxLBGlowColor.reset();
+ mxFTTransparency.reset();
+ mxGlowTransparency.reset();
maGlowController.dispose();
maGlowColorController.dispose();
maGlowRadiusController.dispose();
+ maGlowTransparencyController.dispose();
PanelLayout::dispose();
}
@@ -70,6 +78,8 @@ void GlowPropertyPanel::Initialize()
mxShowGlow->connect_toggled(LINK(this, GlowPropertyPanel, ClickGlowHdl));
mxLBGlowColor->SetSelectHdl(LINK(this, GlowPropertyPanel, ModifyGlowColorHdl));
mxGlowRadius->connect_value_changed(LINK(this, GlowPropertyPanel, ModifyGlowRadiusHdl));
+ mxGlowTransparency->connect_value_changed(
+ LINK(this, GlowPropertyPanel, ModifyGlowTransparencyHdl));
}
IMPL_LINK_NOARG(GlowPropertyPanel, ClickGlowHdl, weld::ToggleButton&, void)
@@ -90,13 +100,23 @@ IMPL_LINK_NOARG(GlowPropertyPanel, ModifyGlowRadiusHdl, weld::MetricSpinButton&,
mpBindings->GetDispatcher()->ExecuteList(SID_ATTR_GLOW_RADIUS, SfxCallMode::RECORD, { &aItem });
}
+IMPL_LINK_NOARG(GlowPropertyPanel, ModifyGlowTransparencyHdl, weld::MetricSpinButton&, void)
+{
+ SdrPercentItem aItem(SDRATTR_GLOW_TRANSPARENCY,
+ mxGlowTransparency->get_value(FieldUnit::PERCENT));
+ mpBindings->GetDispatcher()->ExecuteList(SID_ATTR_GLOW_TRANSPARENCY, SfxCallMode::RECORD,
+ { &aItem });
+}
+
void GlowPropertyPanel::UpdateControls()
{
const bool bEnabled = mxShowGlow->get_state() != TRISTATE_FALSE;
mxGlowRadius->set_sensitive(bEnabled);
mxLBGlowColor->set_sensitive(bEnabled);
+ mxGlowTransparency->set_sensitive(bEnabled);
mxFTRadius->set_sensitive(bEnabled);
mxFTColor->set_sensitive(bEnabled);
+ mxFTTransparency->set_sensitive(bEnabled);
}
void GlowPropertyPanel::NotifyItemUpdate(sal_uInt16 nSID, SfxItemState eState,
@@ -144,6 +164,17 @@ void GlowPropertyPanel::NotifyItemUpdate(sal_uInt16 nSID, SfxItemState eState,
}
}
break;
+ case SID_ATTR_GLOW_TRANSPARENCY:
+ {
+ if (eState >= SfxItemState::DEFAULT)
+ {
+ if (auto pItem = dynamic_cast<const SdrPercentItem*>(pState))
+ {
+ mxGlowTransparency->set_value(pItem->GetValue(), FieldUnit::PERCENT);
+ }
+ }
+ }
+ break;
}
UpdateControls();
}
diff --git a/svx/source/sidebar/glow/GlowPropertyPanel.hxx b/svx/source/sidebar/glow/GlowPropertyPanel.hxx
index 7cdf772cbf1a..233ec052e84c 100644
--- a/svx/source/sidebar/glow/GlowPropertyPanel.hxx
+++ b/svx/source/sidebar/glow/GlowPropertyPanel.hxx
@@ -40,14 +40,17 @@ private:
sfx2::sidebar::ControllerItem maGlowController;
sfx2::sidebar::ControllerItem maGlowColorController;
sfx2::sidebar::ControllerItem maGlowRadiusController;
+ sfx2::sidebar::ControllerItem maGlowTransparencyController;
SfxBindings* mpBindings;
std::unique_ptr<weld::CheckButton> mxShowGlow;
std::unique_ptr<weld::MetricSpinButton> mxGlowRadius;
std::unique_ptr<ColorListBox> mxLBGlowColor;
+ std::unique_ptr<weld::MetricSpinButton> mxGlowTransparency;
std::unique_ptr<weld::Label> mxFTRadius;
std::unique_ptr<weld::Label> mxFTColor;
+ std::unique_ptr<weld::Label> mxFTTransparency;
void Initialize();
void UpdateControls();
@@ -55,6 +58,7 @@ private:
DECL_LINK(ClickGlowHdl, weld::ToggleButton&, void);
DECL_LINK(ModifyGlowColorHdl, ColorListBox&, void);
DECL_LINK(ModifyGlowRadiusHdl, weld::MetricSpinButton&, void);
+ DECL_LINK(ModifyGlowTransparencyHdl, weld::MetricSpinButton&, void);
};
}
diff --git a/svx/source/svdraw/svdattr.cxx b/svx/source/svdraw/svdattr.cxx
index edf73df7e405..1b89cab1da13 100644
--- a/svx/source/svdraw/svdattr.cxx
+++ b/svx/source/svdraw/svdattr.cxx
@@ -331,6 +331,7 @@ SdrItemPool::SdrItemPool(
rPoolDefaults[ SDRATTR_GLOW - SDRATTR_START ] = new SdrOnOffItem(SDRATTR_GLOW, false);
rPoolDefaults[ SDRATTR_GLOW_RAD - SDRATTR_START ] = new SdrMetricItem(SDRATTR_GLOW_RAD, 0);
rPoolDefaults[ SDRATTR_GLOW_COLOR - SDRATTR_START ] = new XColorItem(SDRATTR_GLOW_COLOR, aNullCol);
+ rPoolDefaults[ SDRATTR_GLOW_TRANSPARENCY - SDRATTR_START ] = new SdrPercentItem(SDRATTR_GLOW_TRANSPARENCY, 0);
// set own ItemInfos
mpLocalItemInfos[SDRATTR_SHADOW-SDRATTR_START]._nSID=SID_ATTR_FILL_SHADOW;
@@ -349,6 +350,7 @@ SdrItemPool::SdrItemPool(
mpLocalItemInfos[SDRATTR_GLOW - SDRATTR_START]._nSID = SID_ATTR_GLOW;
mpLocalItemInfos[SDRATTR_GLOW_RAD - SDRATTR_START]._nSID = SID_ATTR_GLOW_RADIUS;
mpLocalItemInfos[SDRATTR_GLOW_COLOR - SDRATTR_START]._nSID = SID_ATTR_GLOW_COLOR;
+ mpLocalItemInfos[SDRATTR_GLOW_TRANSPARENCY - SDRATTR_START]._nSID = SID_ATTR_GLOW_TRANSPARENCY;
// it's my own creation level, set Defaults and ItemInfos
SetDefaults(mpLocalPoolDefaults);
@@ -459,6 +461,7 @@ OUString SdrItemPool::GetItemName(sal_uInt16 nWhich)
case SDRATTR_GLOW : pResId = SIP_SA_GLOW;break;
case SDRATTR_GLOW_RAD : pResId = SIP_SA_GLOW_RAD;break;
case SDRATTR_GLOW_COLOR : pResId = SIP_SA_GLOW_COLOR;break;
+ case SDRATTR_GLOW_TRANSPARENCY : pResId = SIP_SA_GLOW_TRANSPARENCY;break;
case SDRATTR_CAPTIONTYPE : pResId = SIP_SA_CAPTIONTYPE;break;
case SDRATTR_CAPTIONFIXEDANGLE: pResId = SIP_SA_CAPTIONFIXEDANGLE;break;
diff --git a/svx/uiconfig/ui/sidebarglow.ui b/svx/uiconfig/ui/sidebarglow.ui
index cc3accb4f8fa..9580f9939591 100644
--- a/svx/uiconfig/ui/sidebarglow.ui
+++ b/svx/uiconfig/ui/sidebarglow.ui
@@ -6,6 +6,11 @@
<property name="step_increment">1</property>
<property name="page_increment">10</property>
</object>
+ <object class="GtkAdjustment" id="adjustment2">
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ <property name="upper">100</property>
+ </object>
<object class="GtkGrid" id="GlowPropertyPanel">
<property name="visible">True</property>
<property name="can_focus">False</property>
@@ -88,6 +93,32 @@
</packing>
</child>
<child>
+ <object class="GtkLabel" id="transparency">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes" context="sidebarglow|transparency">Transparency:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">LB_GLOW_TRANSPARENCY</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="LB_GLOW_TRANSPARENCY">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hexpand">True</property>
+ <property name="adjustment">adjustment2</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">3</property>
+ </packing>
+ </child>
+ <child>
<placeholder/>
</child>
</object>
diff --git a/sw/sdi/drawsh.sdi b/sw/sdi/drawsh.sdi
index c75bc6a8efca..77fb87fd6e30 100644
--- a/sw/sdi/drawsh.sdi
+++ b/sw/sdi/drawsh.sdi
@@ -208,6 +208,14 @@ interface TextDraw : TextDrawBase
DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
]
+ SID_ATTR_GLOW_TRANSPARENCY
+ [
+ Export = FALSE;
+ ExecMethod = ExecDrawAttrArgs ;
+ StateMethod = GetDrawAttrState ;
+ DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
+ ]
+
SID_ATTRIBUTES_LINE
[
ExecMethod = ExecDrawDlg ;
diff --git a/sw/source/uibase/shells/slotadd.cxx b/sw/source/uibase/shells/slotadd.cxx
index c6a3f35907b3..76de1a6dc986 100644
--- a/sw/source/uibase/shells/slotadd.cxx
+++ b/sw/source/uibase/shells/slotadd.cxx
@@ -78,6 +78,7 @@
#include <editeng/lrspitem.hxx>
#include <svx/sdmetitm.hxx>
#include <svx/sdooitm.hxx>
+#include <svx/sdprcitm.hxx>
#include <svx/xlnstit.hxx>
#include <svx/xlnedit.hxx>
#include <svx/xfillit0.hxx>
diff --git a/xmloff/source/core/xmltoken.cxx b/xmloff/source/core/xmltoken.cxx
index 2888d9f814de..624c7684330c 100644
--- a/xmloff/source/core/xmltoken.cxx
+++ b/xmloff/source/core/xmltoken.cxx
@@ -932,6 +932,7 @@ namespace xmloff::token {
TOKEN( "glow", XML_GLOW ),
TOKEN( "glow-radius", XML_GLOW_RADIUS ),
TOKEN( "glow-color", XML_GLOW_COLOR ),
+ TOKEN( "glow-transparency", XML_GLOW_TRANSPARENCY ),
TOKEN( "gouraud", XML_GOURAUD ),
TOKEN( "gradient", XML_GRADIENT ),
TOKEN( "angle", XML_GRADIENT_ANGLE ),
diff --git a/xmloff/source/draw/sdpropls.cxx b/xmloff/source/draw/sdpropls.cxx
index 4cedc7c148c0..16c593b7a87b 100644
--- a/xmloff/source/draw/sdpropls.cxx
+++ b/xmloff/source/draw/sdpropls.cxx
@@ -156,6 +156,7 @@ const XMLPropertyMapEntry aXMLSDProperties[] =
GMAPV( "GlowEffect", XML_NAMESPACE_LO_EXT, XML_GLOW, XML_SD_TYPE_GLOW , 0, SvtSaveOptions::ODFVER_012_EXT_COMPAT ),
GMAPV( "GlowEffectRad", XML_NAMESPACE_LO_EXT, XML_GLOW_RADIUS, XML_TYPE_MEASURE , 0, SvtSaveOptions::ODFVER_012_EXT_COMPAT ),
GMAPV( "GlowEffectColor", XML_NAMESPACE_LO_EXT, XML_GLOW_COLOR, XML_TYPE_COLOR , 0, SvtSaveOptions::ODFVER_012_EXT_COMPAT ),
+ GMAPV( "GlowEffectTransparency", XML_NAMESPACE_LO_EXT, XML_GLOW_TRANSPARENCY, XML_TYPE_PERCENT16, 0, SvtSaveOptions::ODFVER_012_EXT_COMPAT),
// graphic attributes
GMAP( "GraphicColorMode", XML_NAMESPACE_DRAW, XML_COLOR_MODE, XML_TYPE_COLOR_MODE, 0 ), // exists in SW, too, with same property name
diff --git a/xmloff/source/token/tokens.txt b/xmloff/source/token/tokens.txt
index 103e7eae1091..4f8e756d3b57 100644
--- a/xmloff/source/token/tokens.txt
+++ b/xmloff/source/token/tokens.txt
@@ -850,6 +850,7 @@ geq
glow
glow-radius
glow-color
+glow-transparency
gouraud
gradient
angle