diff options
author | Szymon Kłos <szymon.klos@collabora.com> | 2019-11-08 15:40:02 +0100 |
---|---|---|
committer | Szymon Kłos <szymon.klos@collabora.com> | 2019-11-11 20:07:08 +0100 |
commit | 4135c764a901b791cb182cdb8201ccf173ea3033 (patch) | |
tree | 3c4d853c3fbcbbe1bcf8740fbffc7cad04fecd89 /svx | |
parent | 5d1be8f1d28adbbbffd7c8a7ab70a41703f8911b (diff) |
jsdialogs: send .uno:FillColor & XLineColor status updates
Reviewed-on: https://gerrit.libreoffice.org/82307
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
(cherry picked from commit c28ea22c5198c1162fc5a535d35b407762b8a865)
Change-Id: I665ca45293fb3e98a7940e24c1f14a5963b8d073
Reviewed-on: https://gerrit.libreoffice.org/82309
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Diffstat (limited to 'svx')
-rw-r--r-- | svx/source/svdraw/svdedtv1.cxx | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/svx/source/svdraw/svdedtv1.cxx b/svx/source/svdraw/svdedtv1.cxx index 15d69fa3e132..8c83304015dc 100644 --- a/svx/source/svdraw/svdedtv1.cxx +++ b/svx/source/svdraw/svdedtv1.cxx @@ -65,6 +65,11 @@ #include <svx/xlnstwit.hxx> #include <svx/xlnwtit.hxx> #include <svx/svdview.hxx> +#include <svx/xlnclit.hxx> +#include <svx/xflclit.hxx> +#include <LibreOfficeKit/LibreOfficeKitEnums.h> +#include <rtl/ustring.hxx> +#include <sfx2/viewsh.hxx> #include <comphelper/lok.hxx> // EditView @@ -927,6 +932,43 @@ void SdrEditView::MergeAttrFromMarked(SfxItemSet& rAttr, bool bOnlyHardAttr) con rAttr.MergeValue(rItem, true); } + if (comphelper::LibreOfficeKit::isActive()) + { + OUString sPayload; + switch(nWhich) + { + case XATTR_LINECOLOR: + { + const SfxPoolItem* pItem = rSet.GetItem(XATTR_LINECOLOR); + if (pItem) + { + Color aColor = static_cast<const XLineColorItem*>(pItem)->GetColorValue(); + sPayload = OUString::number(static_cast<sal_uInt32>(aColor)); + + sPayload = ".uno:XLineColor=" + sPayload; + } + break; + } + + case XATTR_FILLCOLOR: + { + const SfxPoolItem* pItem = rSet.GetItem(XATTR_FILLCOLOR); + if (pItem) + { + Color aColor = static_cast<const XFillColorItem*>(pItem)->GetColorValue(); + sPayload = OUString::number(static_cast<sal_uInt32>(aColor)); + + sPayload = ".uno:FillColor=" + sPayload; + } + break; + } + } + + if (!sPayload.isEmpty()) + GetSfxViewShell()->libreOfficeKitViewCallback(LOK_CALLBACK_STATE_CHANGED, + OUStringToOString(sPayload, RTL_TEXTENCODING_ASCII_US).getStr()); + } + nWhich = aIter.NextWhich(); } } |