diff options
author | Neil <nyamatongwe@gmail.com> | 2022-05-17 08:52:34 +1000 |
---|---|---|
committer | Neil <nyamatongwe@gmail.com> | 2022-05-17 08:52:34 +1000 |
commit | 475450c76ceef43a7f5b2c68ed5848baee96b6dc (patch) | |
tree | 110ed93d9989eb049ecb0ee2c6fc62692adcefa0 /call | |
parent | e107ecdf3f5576e90dc90c69fc57f24d1f499b61 (diff) | |
download | scintilla-mirror-475450c76ceef43a7f5b2c68ed5848baee96b6dc.tar.gz |
Duplicate APIs to support 64-bit document positions on Win32:
SCI_GETTEXTRANGEFULL, SCI_FINDTEXTFULL, and SCI_FORMATRANGEFULL.
Diffstat (limited to 'call')
-rw-r--r-- | call/ScintillaCall.cxx | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/call/ScintillaCall.cxx b/call/ScintillaCall.cxx index cb0d09365..20fb452da 100644 --- a/call/ScintillaCall.cxx +++ b/call/ScintillaCall.cxx @@ -16,6 +16,7 @@ #include "ScintillaTypes.h" #include "ScintillaMessages.h" #include "ScintillaCall.h" +#include "ScintillaStructures.h" namespace Scintilla { @@ -110,6 +111,17 @@ std::string ScintillaCall::StringOfSpan(Span span) { } } +std::string ScintillaCall::StringOfRange(Span span) { + if (span.Length() == 0) { + return std::string(); + } else { + std::string text(span.Length(), '\0'); + TextRangeFull tr{ {span.start, span.end}, text.data() }; + GetTextRangeFull(&tr); + return text; + } +} + Position ScintillaCall::ReplaceTarget(std::string_view text) { return ScintillaCall::CallString(Message::ReplaceTarget, text.length(), text.data()); } @@ -1127,10 +1139,18 @@ Position ScintillaCall::FindText(Scintilla::FindOption searchFlags, void *ft) { return CallPointer(Message::FindText, static_cast<uintptr_t>(searchFlags), ft); } +Position ScintillaCall::FindTextFull(Scintilla::FindOption searchFlags, void *ft) { + return CallPointer(Message::FindTextFull, static_cast<uintptr_t>(searchFlags), ft); +} + Position ScintillaCall::FormatRange(bool draw, void *fr) { return CallPointer(Message::FormatRange, draw, fr); } +Position ScintillaCall::FormatRangeFull(bool draw, void *fr) { + return CallPointer(Message::FormatRangeFull, draw, fr); +} + Line ScintillaCall::FirstVisibleLine() { return Call(Message::GetFirstVisibleLine); } @@ -1187,6 +1207,10 @@ Position ScintillaCall::GetTextRange(void *tr) { return CallPointer(Message::GetTextRange, 0, tr); } +Position ScintillaCall::GetTextRangeFull(void *tr) { + return CallPointer(Message::GetTextRangeFull, 0, tr); +} + void ScintillaCall::HideSelection(bool hide) { Call(Message::HideSelection, hide); } |