diff options
Diffstat (limited to 'sd/source')
-rw-r--r-- | sd/source/ui/view/drviews2.cxx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx index cb25ccad181d..74ec6a3801ee 100644 --- a/sd/source/ui/view/drviews2.cxx +++ b/sd/source/ui/view/drviews2.cxx @@ -87,6 +87,7 @@ #include <svx/xlnstwit.hxx> #include <svx/xlnwtit.hxx> #include <svx/chrtitem.hxx> +#include <svx/xlnclit.hxx> #include <tools/diagnose_ex.h> @@ -541,6 +542,8 @@ namespace { void lcl_convertStringArguments(std::unique_ptr<SfxItemSet>& pArgs) { + Color aColor; + OUString sColor; const SfxPoolItem* pItem = nullptr; if (SfxItemState::SET == pArgs->GetItemState(SID_ATTR_LINE_WIDTH_ARG, false, &pItem)) @@ -553,6 +556,18 @@ namespace XLineWidthItem aItem(nValue); pArgs->Put(aItem); } + else if (SfxItemState::SET == pArgs->GetItemState(SID_ATTR_COLOR_STR, false, &pItem)) + { + sColor = static_cast<const SfxStringItem*>(pItem)->GetValue(); + + if (sColor == "transparent") + aColor = COL_TRANSPARENT; + else + aColor = Color(sColor.toInt32(16)); + + XLineColorItem aLineColorItem(OUString(), aColor); + pArgs->Put(aLineColorItem); + } } } |