From 43540adb76f764522344c5d66ebc63f7cb0f9c1c Mon Sep 17 00:00:00 2001 From: Pranav Kant Date: Tue, 14 Nov 2017 18:45:02 +0530 Subject: lokdialog: Expose cursor visible status Change the notifyDialog API a bit. Use a std::vector to keep track of each payload item that needs to be fed to the resulting JSON. Change-Id: If3229a88d2df5368e14290a0e80ebe6206780639 Reviewed-on: https://gerrit.libreoffice.org/44722 Reviewed-by: pranavk Tested-by: pranavk --- sfx2/source/view/lokhelper.cxx | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'sfx2') diff --git a/sfx2/source/view/lokhelper.cxx b/sfx2/source/view/lokhelper.cxx index 633e221e4f86..33464711852f 100644 --- a/sfx2/source/view/lokhelper.cxx +++ b/sfx2/source/view/lokhelper.cxx @@ -144,7 +144,9 @@ void SfxLokHelper::notifyOtherViews(SfxViewShell* pThisView, int nType, const OS } } -void SfxLokHelper::notifyDialog(const OUString& rDialogID, const OUString& rAction, const tools::Rectangle* rRect) +void SfxLokHelper::notifyDialog(const OUString& rDialogID, + const OUString& rAction, + const std::vector& rPayload) { if (SfxLokHelper::getViewsCount() <= 0 || rDialogID.isEmpty()) return; @@ -152,9 +154,15 @@ void SfxLokHelper::notifyDialog(const OUString& rDialogID, const OUString& rActi SfxViewShell* pViewShell = SfxViewShell::GetFirst(); OString aPayload = OString("{ \"dialogId\": \"") + OUStringToOString(rDialogID, RTL_TEXTENCODING_UTF8).getStr() + OString("\""); aPayload += OString(", \"action\": \"") + OUStringToOString(rAction, RTL_TEXTENCODING_UTF8).getStr() + OString("\""); - if (!rAction.isEmpty() && rRect && !rRect->IsEmpty()) - aPayload += OString(", \"rectangle\": \"") + rRect->toString() + OString("\""); + for (const auto& rItem: rPayload) + { + if (!rItem.first.isEmpty() && !rItem.second.isEmpty()) + { + aPayload += OString(", \"") + rItem.first + OString("\": \"") + + rItem.second + OString("\""); + } + } aPayload += "}"; while (pViewShell) -- cgit v1.2.3