diff options
author | Michael Stahl <Michael.Stahl@cib.de> | 2018-09-18 16:21:44 +0200 |
---|---|---|
committer | Michael Stahl <Michael.Stahl@cib.de> | 2018-09-19 10:08:55 +0200 |
commit | f62ba688ca1c22fcdcf7efd811d702e982799882 (patch) | |
tree | b0b58daa34da816da3376864d43fe5bd50a441b9 /sw/source/core/edit/edlingu.cxx | |
parent | 18dbdd512b11c02b2b5c8d28355a4d2188003d46 (diff) |
sw: rework annoying GetFrameOfModify/getLayoutFrame parameters
private/mst/sw_redlinehide_2
The bCalcFrame is only evaluated if a pPoint is given; this is
surprising and should be more visible in the interface, so people don't
go on a goose chase to find places that may do formatting in
inappropriate places.
So put these parameters into a pair instead, which doesn't have
particularly good ergonomics in C++, particularly since compilers
warn about taking the address of a temporary object...
Change-Id: I101c6eeb5bd6baf83c2bd9a6cb91ccaa04036cc3
Diffstat (limited to 'sw/source/core/edit/edlingu.cxx')
-rw-r--r-- | sw/source/core/edit/edlingu.cxx | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sw/source/core/edit/edlingu.cxx b/sw/source/core/edit/edlingu.cxx index c6a28d3162e2..2953fdb9d567 100644 --- a/sw/source/core/edit/edlingu.cxx +++ b/sw/source/core/edit/edlingu.cxx @@ -857,7 +857,13 @@ void SwEditShell::HandleCorrectionError(const OUString& aText, SwPosition aPos, SwCursorMoveState aState; aState.m_bRealWidth = true; SwContentNode* pContentNode = pCursor->GetContentNode(); - SwContentFrame *pContentFrame = pContentNode->getLayoutFrame( GetLayout(), pPt, pCursor->GetPoint(), false); + std::pair<Point, bool> tmp; + if (pPt) + { + tmp.first = *pPt; + tmp.second = false; + } + SwContentFrame *const pContentFrame = pContentNode->getLayoutFrame(GetLayout(), pCursor->GetPoint(), pPt ? &tmp : nullptr); pContentFrame->GetCharRect( aStartRect, *pCursor->GetPoint(), &aState ); rContent = nWordEnd - 1; |