aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Editor.h
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2018-04-25 17:12:55 +1000
committerNeil <nyamatongwe@gmail.com>2018-04-25 17:12:55 +1000
commitfdc720a5a23e10a6b7ff4f51362db9ed5181aa8d (patch)
tree3a471f33688a9e1abb53e1f620baf06ecd727729 /src/Editor.h
parente5bf102b598a88c1c13e4f83264b652e85c75f22 (diff)
downloadscintilla-mirror-fdc720a5a23e10a6b7ff4f51362db9ed5181aa8d.tar.gz
Backport: Use set of coercion functions for transforming WndProc parameters into pointers.
Backport of changeset 6738:5b39367ee7da.
Diffstat (limited to 'src/Editor.h')
-rw-r--r--src/Editor.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/Editor.h b/src/Editor.h
index f45d18661..9fda8ddea 100644
--- a/src/Editor.h
+++ b/src/Editor.h
@@ -568,6 +568,29 @@ protected: // ScintillaBase subclass needs access to much of Editor
static const char *StringFromEOLMode(int eolMode);
+ // Coercion functions for transforming WndProc parameters into pointers
+ static void *PtrFromSPtr(sptr_t lParam) {
+ return reinterpret_cast<void *>(lParam);
+ }
+ static const char *ConstCharPtrFromSPtr(sptr_t lParam) {
+ return static_cast<const char *>(PtrFromSPtr(lParam));
+ }
+ static const unsigned char *ConstUCharPtrFromSPtr(sptr_t lParam) {
+ return static_cast<const unsigned char *>(PtrFromSPtr(lParam));
+ }
+ static char *CharPtrFromSPtr(sptr_t lParam) {
+ return static_cast<char *>(PtrFromSPtr(lParam));
+ }
+ static unsigned char *UCharPtrFromSPtr(sptr_t lParam) {
+ return static_cast<unsigned char *>(PtrFromSPtr(lParam));
+ }
+ static void *PtrFromUPtr(uptr_t wParam) {
+ return reinterpret_cast<void *>(wParam);
+ }
+ static const char *ConstCharPtrFromUPtr(uptr_t wParam) {
+ return static_cast<const char *>(PtrFromUPtr(wParam));
+ }
+
static sptr_t StringResult(sptr_t lParam, const char *val);
static sptr_t BytesResult(sptr_t lParam, const unsigned char *val, size_t len);