diff options
Diffstat (limited to 'src/ContractionState.cxx')
-rw-r--r-- | src/ContractionState.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/ContractionState.cxx b/src/ContractionState.cxx index b36e1ebd8..8f0f795e2 100644 --- a/src/ContractionState.cxx +++ b/src/ContractionState.cxx @@ -65,6 +65,7 @@ public: Sci::Line LinesInDoc() const noexcept override; Sci::Line LinesDisplayed() const noexcept override; Sci::Line DisplayFromDoc(Sci::Line lineDoc) const noexcept override; + Sci::Line DisplayFromDocSub(Sci::Line lineDoc, Sci::Line lineSub) const noexcept override; Sci::Line DisplayLastFromDoc(Sci::Line lineDoc) const noexcept override; Sci::Line DocFromDisplay(Sci::Line lineDisplay) const noexcept override; @@ -184,6 +185,12 @@ Sci::Line ContractionState<LINE>::DisplayFromDoc(Sci::Line lineDoc) const noexce } template <typename LINE> +Sci::Line ContractionState<LINE>::DisplayFromDocSub(Sci::Line lineDoc, Sci::Line lineSub) const noexcept { + return DisplayFromDoc(lineDoc) + + std::min(lineSub, static_cast<Sci::Line>(GetHeight(lineDoc) - 1)); +} + +template <typename LINE> Sci::Line ContractionState<LINE>::DisplayLastFromDoc(Sci::Line lineDoc) const noexcept { return DisplayFromDoc(lineDoc) + GetHeight(lineDoc) - 1; } |