diff options
-rw-r--r-- | src/EditModel.cxx | 4 | ||||
-rw-r--r-- | src/EditModel.h | 1 | ||||
-rw-r--r-- | src/EditView.cxx | 12 | ||||
-rw-r--r-- | src/Editor.cxx | 4 | ||||
-rw-r--r-- | src/MarginView.cxx | 2 |
5 files changed, 14 insertions, 9 deletions
diff --git a/src/EditModel.cxx b/src/EditModel.cxx index 50aa88b06..e8e5e5d1e 100644 --- a/src/EditModel.cxx +++ b/src/EditModel.cxx @@ -126,3 +126,7 @@ InSelection EditModel::LineEndInSelection(Sci::Line lineDoc) const { const Sci::Position posAfterLineEnd = pdoc->LineStart(lineDoc + 1); return sel.InSelectionForEOL(posAfterLineEnd); } + +int EditModel::GetMark(Sci::Line line) const { + return pdoc->GetMark(line); +} diff --git a/src/EditModel.h b/src/EditModel.h index 64005a504..48c230f84 100644 --- a/src/EditModel.h +++ b/src/EditModel.h @@ -71,6 +71,7 @@ public: const char *GetDefaultFoldDisplayText() const noexcept; const char *GetFoldDisplayText(Sci::Line lineDoc) const noexcept; InSelection LineEndInSelection(Sci::Line lineDoc) const; + [[nodiscard]] int GetMark(Sci::Line line) const; }; } diff --git a/src/EditView.cxx b/src/EditView.cxx index c87d88481..c3709f25b 100644 --- a/src/EditView.cxx +++ b/src/EditView.cxx @@ -1354,7 +1354,7 @@ void EditView::DrawFoldDisplayText(Surface *surface, const EditModel &model, con rcSegment.left = xStart + static_cast<XYPOSITION>(ll->positions[ll->numCharsInLine] - subLineStart) + virtualSpace + vsDraw.aveCharWidth; rcSegment.right = rcSegment.left + static_cast<XYPOSITION>(widthFoldDisplayText); - const std::optional<ColourRGBA> background = vsDraw.Background(model.pdoc->GetMark(line), model.caret.active, ll->containsCaret); + const std::optional<ColourRGBA> background = vsDraw.Background(model.GetMark(line), model.caret.active, ll->containsCaret); const std::optional<ColourRGBA> selectionFore = SelectionForeground(model, vsDraw, eolInSelection); const ColourRGBA textFore = selectionFore.value_or(vsDraw.styles[StyleFoldDisplayText].fore); const ColourRGBA textBack = TextBackground(model, vsDraw, ll, background, eolInSelection, @@ -1481,7 +1481,7 @@ void EditView::DrawEOLAnnotationText(Surface *surface, const EditModel &model, c } rcSegment.right = rcSegment.left + static_cast<XYPOSITION>(widthEOLAnnotationText); - const std::optional<ColourRGBA> background = vsDraw.Background(model.pdoc->GetMark(line), model.caret.active, ll->containsCaret); + const std::optional<ColourRGBA> background = vsDraw.Background(model.GetMark(line), model.caret.active, ll->containsCaret); const ColourRGBA textFore = vsDraw.styles[style].fore; const ColourRGBA textBack = TextBackground(model, vsDraw, ll, background, InSelection::inNone, false, static_cast<int>(style), -1); @@ -1932,7 +1932,7 @@ static void DrawEdgeLine(Surface *surface, const ViewStyle &vsDraw, const LineLa // Draw underline mark as part of background if on base layer static void DrawMarkUnderline(Surface *surface, const EditModel &model, const ViewStyle &vsDraw, Sci::Line line, PRectangle rcLine) { - int marks = model.pdoc->GetMark(line); + int marks = model.GetMark(line); for (int markBit = 0; (markBit < 32) && marks; markBit++) { if ((marks & 1) && (vsDraw.markers[markBit].markType == MarkerSymbol::Underline) && (vsDraw.markers[markBit].layer == Layer::Base)) { @@ -2019,7 +2019,7 @@ static void DrawTranslucentLineState(Surface *surface, const EditModel &model, c surface->FillRectangleAligned(rcLine, *vsDraw.ElementColour(Element::CaretLineBack)); } } - const int marksOfLine = model.pdoc->GetMark(line); + const int marksOfLine = model.GetMark(line); int marksDrawnInText = marksOfLine & vsDraw.maskDrawInText; for (int markBit = 0; (markBit < 32) && marksDrawnInText; markBit++) { if ((marksDrawnInText & 1) && (vsDraw.markers[markBit].layer == layer)) { @@ -2309,7 +2309,7 @@ void EditView::DrawLine(Surface *surface, const EditModel &model, const ViewStyl } // See if something overrides the line background colour. - const std::optional<ColourRGBA> background = vsDraw.Background(model.pdoc->GetMark(line), model.caret.active, ll->containsCaret); + const std::optional<ColourRGBA> background = vsDraw.Background(model.GetMark(line), model.caret.active, ll->containsCaret); const Sci::Position posLineStart = model.pdoc->LineStart(line); @@ -2627,7 +2627,7 @@ void EditView::FillLineRemainder(Surface *surface, const EditModel &model, const eolInSelection = model.LineEndInSelection(line); } - const std::optional<ColourRGBA> background = vsDraw.Background(model.pdoc->GetMark(line), model.caret.active, ll->containsCaret); + const std::optional<ColourRGBA> background = vsDraw.Background(model.GetMark(line), model.caret.active, ll->containsCaret); if (eolInSelection && vsDraw.selection.eolFilled && (line < model.pdoc->LinesTotal() - 1) && (vsDraw.selection.layer == Layer::Base)) { surface->FillRectangleAligned(rcArea, Fill(SelectionBackground(model, vsDraw, eolInSelection).Opaque())); diff --git a/src/Editor.cxx b/src/Editor.cxx index a4e2cc732..ccf187c65 100644 --- a/src/Editor.cxx +++ b/src/Editor.cxx @@ -7171,14 +7171,14 @@ sptr_t Editor::WndProc(Message iMessage, uptr_t wParam, sptr_t lParam) { break; case Message::MarkerGet: - return pdoc->GetMark(LineFromUPtr(wParam)); + return GetMark(LineFromUPtr(wParam)); case Message::MarkerNext: return pdoc->MarkerNext(LineFromUPtr(wParam), static_cast<int>(lParam)); case Message::MarkerPrevious: { for (Sci::Line iLine = LineFromUPtr(wParam); iLine >= 0; iLine--) { - if ((pdoc->GetMark(iLine) & lParam) != 0) + if ((GetMark(iLine) & lParam) != 0) return iLine; } } diff --git a/src/MarginView.cxx b/src/MarginView.cxx index cc243f41f..7d2f4a8cd 100644 --- a/src/MarginView.cxx +++ b/src/MarginView.cxx @@ -283,7 +283,7 @@ void MarginView::PaintOneMargin(Surface *surface, PRectangle rc, PRectangle rcOn const bool firstSubLine = visibleLine == firstVisibleLine; const bool lastSubLine = visibleLine == lastVisibleLine; - int marks = firstSubLine ? model.pdoc->GetMark(lineDoc) : 0; + int marks = firstSubLine ? model.GetMark(lineDoc) : 0; bool headWithTail = false; |