aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Editor.h
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2021-06-09 12:15:05 +1000
committerNeil <nyamatongwe@gmail.com>2021-06-09 12:15:05 +1000
commitb5e8caaacbd47583c79bf862e5e6a021bcfc3964 (patch)
tree885ceb140cda8f9721ddeb3a327c5a51e27e3785 /src/Editor.h
parent5f998b68113dd116c1e938028dddcbcc7425a144 (diff)
downloadscintilla-mirror-b5e8caaacbd47583c79bf862e5e6a021bcfc3964.tar.gz
Reduce casts by defining methods for common conversions.
Diffstat (limited to 'src/Editor.h')
-rw-r--r--src/Editor.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/Editor.h b/src/Editor.h
index 9af2add43..417700ed5 100644
--- a/src/Editor.h
+++ b/src/Editor.h
@@ -624,6 +624,19 @@ protected: // ScintillaBase subclass needs access to much of Editor
return static_cast<const char *>(PtrFromUPtr(wParam));
}
+ static constexpr Scintilla::sptr_t SPtrFromUPtr(Scintilla::uptr_t wParam) noexcept {
+ return static_cast<Scintilla::sptr_t>(wParam);
+ }
+ static constexpr Sci::Position PositionFromUPtr(Scintilla::uptr_t wParam) noexcept {
+ return SPtrFromUPtr(wParam);
+ }
+ static constexpr Sci::Line LineFromUPtr(Scintilla::uptr_t wParam) noexcept {
+ return SPtrFromUPtr(wParam);
+ }
+ Point PointFromParameters(Scintilla::uptr_t wParam, Scintilla::sptr_t lParam) const noexcept {
+ return Point(static_cast<XYPOSITION>(wParam) - vs.ExternalMarginWidth(), static_cast<XYPOSITION>(lParam));
+ }
+
constexpr std::optional<FoldLevel> OptionalFoldLevel(Scintilla::sptr_t lParam) {
if (lParam >= 0) {
return static_cast<FoldLevel>(lParam);