diff options
author | Neil <nyamatongwe@gmail.com> | 2019-03-18 19:22:38 +1100 |
---|---|---|
committer | Neil <nyamatongwe@gmail.com> | 2019-03-18 19:22:38 +1100 |
commit | 7e4bd49b1315de495ad37ed7d19897abdcf44b94 (patch) | |
tree | 8737893d8ce56a276bd673d4d236ed2ab66f3b9a /src | |
parent | 0bc5b663b3166f562053413ce9381ad481e68a99 (diff) | |
download | scintilla-mirror-7e4bd49b1315de495ad37ed7d19897abdcf44b94.tar.gz |
Backport: Add some operators to Point to simplify client code.
Backport of changeset 7321:d488340e94c0.
Diffstat (limited to 'src')
-rw-r--r-- | src/Editor.cxx | 20 | ||||
-rw-r--r-- | src/ScintillaBase.cxx | 8 |
2 files changed, 10 insertions, 18 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx index 94e1f6164..1c67bfd0b 100644 --- a/src/Editor.cxx +++ b/src/Editor.cxx @@ -1147,13 +1147,9 @@ slop | strict | jumps | even | Caret can go to the margin | When Editor::XYScrollPosition Editor::XYScrollToMakeVisible(const SelectionRange &range, const XYScrollOptions options) { const PRectangle rcClient = GetTextRectangle(); - Point pt = LocationFromPosition(range.caret); - Point ptAnchor = LocationFromPosition(range.anchor); const Point ptOrigin = GetVisibleOriginInMain(); - pt.x += ptOrigin.x; - pt.y += ptOrigin.y; - ptAnchor.x += ptOrigin.x; - ptAnchor.y += ptOrigin.y; + const Point pt = LocationFromPosition(range.caret) + ptOrigin; + const Point ptAnchor = LocationFromPosition(range.anchor) + ptOrigin; const Point ptBottomCaret(pt.x, pt.y + vs.lineHeight - 1); XYScrollPosition newXY(xOffset, topLine); @@ -4171,9 +4167,10 @@ void Editor::GoToLine(Sci::Line lineNo) { } static bool Close(Point pt1, Point pt2, Point threshold) noexcept { - if (std::abs(pt1.x - pt2.x) > threshold.x) + const Point ptDifference = pt2 - pt1; + if (std::abs(ptDifference.x) > threshold.x) return false; - if (std::abs(pt1.y - pt2.y) > threshold.y) + if (std::abs(ptDifference.y) > threshold.y) return false; return true; } @@ -4263,9 +4260,8 @@ void Editor::DisplayCursor(Window::Cursor c) { } bool Editor::DragThreshold(Point ptStart, Point ptNow) { - const XYPOSITION xMove = ptStart.x - ptNow.x; - const XYPOSITION yMove = ptStart.y - ptNow.y; - const XYPOSITION distanceSquared = xMove * xMove + yMove * yMove; + const Point ptDiff = ptStart - ptNow; + const XYPOSITION distanceSquared = ptDiff.x * ptDiff.x + ptDiff.y * ptDiff.y; return distanceSquared > 16.0f; } @@ -4745,7 +4741,7 @@ Range Editor::GetHotSpotRange() const noexcept { } void Editor::ButtonMoveWithModifiers(Point pt, unsigned int, int modifiers) { - if ((ptMouseLast.x != pt.x) || (ptMouseLast.y != pt.y)) { + if (ptMouseLast != pt) { DwellEnd(true); } diff --git a/src/ScintillaBase.cxx b/src/ScintillaBase.cxx index c327206d8..9e4c3d4a8 100644 --- a/src/ScintillaBase.cxx +++ b/src/ScintillaBase.cxx @@ -275,9 +275,7 @@ void ScintillaBase::AutoCompleteStart(Sci::Position lenEntered, const char *list pt = PointMainCaret(); } if (wMargin.Created()) { - const Point ptOrigin = GetVisibleOriginInMain(); - pt.x += ptOrigin.x; - pt.y += ptOrigin.y; + pt = pt + GetVisibleOriginInMain(); } PRectangle rcac; rcac.left = pt.x - ac.lb->CaretFromEdge(); @@ -462,9 +460,7 @@ void ScintillaBase::CallTipShow(Point pt, const char *defn) { ct.SetForeBack(vs.styles[STYLE_CALLTIP].fore, vs.styles[STYLE_CALLTIP].back); } if (wMargin.Created()) { - const Point ptOrigin = GetVisibleOriginInMain(); - pt.x += ptOrigin.x; - pt.y += ptOrigin.y; + pt = pt + GetVisibleOriginInMain(); } PRectangle rc = ct.CallTipStart(sel.MainCaret(), pt, vs.lineHeight, |