Allow edit-area computation in print-twips...

via a optional flag bInPrintTwips (false by default) in
ScViewData::GetEditArea()

Change-Id: I9bf7465b703a2df817fe438db3671261d0d907a8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98122
Tested-by: Jenkins
Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
diff --git a/sc/source/ui/inc/viewdata.hxx b/sc/source/ui/inc/viewdata.hxx
index b893eb6..286330a 100644
--- a/sc/source/ui/inc/viewdata.hxx
+++ b/sc/source/ui/inc/viewdata.hxx
@@ -595,7 +595,7 @@ public:
    SCROW           GetEditEndRow() const           { return nEditEndRow; }

    tools::Rectangle       GetEditArea( ScSplitPos eWhich, SCCOL nPosX, SCROW nPosY, vcl::Window* pWin,
                                    const ScPatternAttr* pPattern, bool bForceToTop );
                                    const ScPatternAttr* pPattern, bool bForceToTop, bool bInPrintTwips = false );

    void            SetTabNo( SCTAB nNewTab );
    void            SetActivePart( ScSplitPos eNewActive );
diff --git a/sc/source/ui/view/viewdata.cxx b/sc/source/ui/view/viewdata.cxx
index 7a4a630..f7f8735 100644
--- a/sc/source/ui/view/viewdata.cxx
+++ b/sc/source/ui/view/viewdata.cxx
@@ -1421,10 +1421,12 @@ void ScViewData::SetMaxTiledRow( SCROW nNewMaxRow )

tools::Rectangle ScViewData::GetEditArea( ScSplitPos eWhich, SCCOL nPosX, SCROW nPosY,
                                          vcl::Window* pWin, const ScPatternAttr* pPattern,
                                          bool bForceToTop )
                                          bool bForceToTop, bool bInPrintTwips )
{
    return ScEditUtil( pDoc, nPosX, nPosY, nTabNo, GetScrPos(nPosX,nPosY,eWhich,true),
                        pWin, nPPTX, nPPTY, GetZoomX(), GetZoomY() ).
    Point aCellTopLeft = bInPrintTwips ?
            GetPrintTwipsPos(nPosX, nPosY) : GetScrPos(nPosX, nPosY, eWhich, true);
    return ScEditUtil( pDoc, nPosX, nPosY, nTabNo, aCellTopLeft,
                        pWin, nPPTX, nPPTY, GetZoomX(), GetZoomY(), bInPrintTwips ).
                            GetEditArea( pPattern, bForceToTop );
}