diff options
author | Dennis Francis <dennis.francis@collabora.com> | 2020-05-25 23:53:21 +0530 |
---|---|---|
committer | Dennis Francis <dennis.francis@collabora.com> | 2020-07-04 19:28:51 +0200 |
commit | dd64235e326feb94c7530f7ee408545e4945d5df (patch) | |
tree | 83b1d90aec5b10fe5d2b06a22bed1b7081f95d9e | |
parent | b10cd973445afce7005000d77848a56be0295b23 (diff) |
lokit: scPrintTwipsMsgs: LOK_CALLBACK_COMMENT
Allow print twips coordinates in LOK_CALLBACK_COMMENT
Change-Id: I052dacb311c651c49d61fd9937951fa5b81b32d5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97967
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
-rw-r--r-- | sc/source/ui/docshell/docsh4.cxx | 33 |
1 files changed, 22 insertions, 11 deletions
diff --git a/sc/source/ui/docshell/docsh4.cxx b/sc/source/ui/docshell/docsh4.cxx index 820a0bb66892..5e3a7b2117b0 100644 --- a/sc/source/ui/docshell/docsh4.cxx +++ b/sc/source/ui/docshell/docsh4.cxx @@ -2500,17 +2500,28 @@ void ScDocShell::LOKCommentNotify(LOKCommentNotificationType nType, const ScDocu ScViewData* pViewData = GetViewData(); if (pViewData && pViewData->GetActiveWin()) { - Point aScrPos = pViewData->GetScrPos(rPos.Col(), rPos.Row(), pViewData->GetActivePart(), true); - long nSizeXPix; - long nSizeYPix; - pViewData->GetMergeSizePixel(rPos.Col(), rPos.Row(), nSizeXPix, nSizeYPix); - - const double fPPTX = pViewData->GetPPTX(); - const double fPPTY = pViewData->GetPPTY(); - tools::Rectangle aRect(Point(aScrPos.getX() / fPPTX, aScrPos.getY() / fPPTY), - Size(nSizeXPix / fPPTX, nSizeYPix / fPPTY)); - - aAnnotation.put("cellPos", aRect.toString()); + bool bInPrintTwips = comphelper::LibreOfficeKit::isCompatFlagSet( + comphelper::LibreOfficeKit::Compat::scPrintTwipsMsgs); + OString aRectString; + if (bInPrintTwips) + { + Point aTopLeft = pViewData->GetPrintTwipsPos(rPos.Col(), rPos.Row()); + long nSizeX, nSizeY; + pViewData->GetMergeSizePrintTwips(rPos.Col(), rPos.Row(), nSizeX, nSizeY); + aRectString = tools::Rectangle(aTopLeft, Size(nSizeX, nSizeY)).toString(); + } + else + { + Point aTopLeft = pViewData->GetScrPos(rPos.Col(), rPos.Row(), + pViewData->GetActivePart(), true); + long nSizeXPix, nSizeYPix; + pViewData->GetMergeSizePixel(rPos.Col(), rPos.Row(), nSizeXPix, nSizeYPix); + const double fPPTX = pViewData->GetPPTX(); + const double fPPTY = pViewData->GetPPTY(); + aRectString = tools::Rectangle(Point(aTopLeft.getX() / fPPTX, aTopLeft.getY() / fPPTY), + Size(nSizeXPix / fPPTX, nSizeYPix / fPPTY)).toString(); + } + aAnnotation.put("cellPos", aRectString); } } |