diff options
-rw-r--r-- | src/EditView.cxx | 18 | ||||
-rw-r--r-- | src/EditView.h | 2 |
2 files changed, 9 insertions, 11 deletions
diff --git a/src/EditView.cxx b/src/EditView.cxx index 023930c0a..9cacafb3b 100644 --- a/src/EditView.cxx +++ b/src/EditView.cxx @@ -72,7 +72,7 @@ PrintParameters::PrintParameters() noexcept { namespace Scintilla { -bool ValidStyledText(const ViewStyle &vs, size_t styleOffset, const StyledText &st) { +bool ValidStyledText(const ViewStyle &vs, size_t styleOffset, const StyledText &st) noexcept { if (st.multipleStyles) { for (size_t iStyle = 0; iStyle<st.length; iStyle++) { if (!vs.ValidStyle(styleOffset + st.styles[iStyle])) @@ -171,8 +171,6 @@ void DrawStyledText(Surface *surface, const ViewStyle &vs, int styleOffset, PRec } -const XYPOSITION epsilon = 0.0001f; // A small nudge to avoid floating point precision issues - EditView::EditView() { tabWidthMinimumPixels = 2; // needed for calculating tab stops for fractional proportional fonts hideSelection = false; @@ -345,6 +343,8 @@ LineLayout *EditView::RetrieveLineLayout(Sci::Line lineNumber, const EditModel & namespace { +constexpr XYPOSITION epsilon = 0.0001f; // A small nudge to avoid floating point precision issues + /** * Return the chDoc argument with case transformed as indicated by the caseForce argument. * chPrevious is needed for camel casing. @@ -835,7 +835,7 @@ static ColourDesired SelectionBackground(const ViewStyle &vsDraw, bool main, boo } static ColourDesired TextBackground(const EditModel &model, const ViewStyle &vsDraw, const LineLayout *ll, - ColourOptional background, int inSelection, bool inHotspot, int styleMain, Sci::Position i) { + ColourOptional background, int inSelection, bool inHotspot, int styleMain, Sci::Position i) noexcept { if (inSelection == 1) { if (vsDraw.selColours.back.isSet && (vsDraw.selAlpha == SC_ALPHA_NOALPHA)) { return SelectionBackground(vsDraw, true, model.primarySelection); @@ -1441,7 +1441,7 @@ void EditView::DrawCarets(Surface *surface, const EditModel &model, const ViewSt // Get caret point const ScreenLine screenLine(ll, subLine, vsDraw, rcLine.right, tabWidthMinimumPixels); - const int caretPosition = static_cast<int>(posCaret.Position() - posLineStart - ll->LineStart(subLine)); + const int caretPosition = offset - ll->LineStart(subLine); std::unique_ptr<IScreenLineLayout> slLayout = surface->Layout(&screenLine); const XYPOSITION caretLeft = slLayout->XFromPosition(caretPosition); @@ -2423,13 +2423,11 @@ Sci::Position EditView::FormatRange(bool draw, const Sci_RangeToFormat *pfr, Sur vsPrint.Refresh(*surfaceMeasure, model.pdoc->tabInChars); // Recalculate fixedColumnWidth } - const Sci::Line linePrintStart = - model.pdoc->SciLineFromPosition(static_cast<Sci::Position>(pfr->chrg.cpMin)); + const Sci::Line linePrintStart = model.pdoc->SciLineFromPosition(pfr->chrg.cpMin); Sci::Line linePrintLast = linePrintStart + (pfr->rc.bottom - pfr->rc.top) / vsPrint.lineHeight - 1; if (linePrintLast < linePrintStart) linePrintLast = linePrintStart; - const Sci::Line linePrintMax = - model.pdoc->SciLineFromPosition(static_cast<Sci::Position>(pfr->chrg.cpMax)); + const Sci::Line linePrintMax = model.pdoc->SciLineFromPosition(pfr->chrg.cpMax); if (linePrintLast > linePrintMax) linePrintLast = linePrintMax; //Platform::DebugPrintf("Formatting lines=[%0d,%0d,%0d] top=%0d bottom=%0d line=%0d %0d\n", @@ -2447,7 +2445,7 @@ Sci::Position EditView::FormatRange(bool draw, const Sci_RangeToFormat *pfr, Sur Sci::Line lineDoc = linePrintStart; - Sci::Position nPrintPos = static_cast<Sci::Position>(pfr->chrg.cpMin); + Sci::Position nPrintPos = pfr->chrg.cpMin; int visibleLine = 0; int widthPrint = pfr->rc.right - pfr->rc.left - vsPrint.fixedColumnWidth; if (printParameters.wrapState == eWrapNone) diff --git a/src/EditView.h b/src/EditView.h index 90771c2ba..bf62f011d 100644 --- a/src/EditView.h +++ b/src/EditView.h @@ -33,7 +33,7 @@ enum DrawPhase { drawAll = 0x1FF }; -bool ValidStyledText(const ViewStyle &vs, size_t styleOffset, const StyledText &st); +bool ValidStyledText(const ViewStyle &vs, size_t styleOffset, const StyledText &st) noexcept; int WidestLineWidth(Surface *surface, const ViewStyle &vs, int styleOffset, const StyledText &st); void DrawTextNoClipPhase(Surface *surface, PRectangle rc, const Style &style, XYPOSITION ybase, std::string_view text, DrawPhase phase); |