diff options
author | Neil <nyamatongwe@gmail.com> | 2021-05-24 19:31:06 +1000 |
---|---|---|
committer | Neil <nyamatongwe@gmail.com> | 2021-05-24 19:31:06 +1000 |
commit | 92290868cf9753d2df0d494cb44e2ff62a570b58 (patch) | |
tree | 001e6cfce84372a03997de3138d630751ee8d38a /src/KeyMap.h | |
parent | ee1886079d0a5cd350ee8e3379be347943ba93ae (diff) | |
download | scintilla-mirror-92290868cf9753d2df0d494cb44e2ff62a570b58.tar.gz |
Define C++ version of the Scintilla API in ScintillaTypes.h, ScintillaMessages.h
and ScintillaStructures.h using scoped enumerations.
Use these headers instead of Scintilla.h internally.
External definitions go in the Scintilla namespace and internal definitio0ns in
Scintilla::Internal.
Diffstat (limited to 'src/KeyMap.h')
-rw-r--r-- | src/KeyMap.h | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/src/KeyMap.h b/src/KeyMap.h index 245b6daaa..6662118b2 100644 --- a/src/KeyMap.h +++ b/src/KeyMap.h @@ -8,24 +8,24 @@ #ifndef KEYMAP_H #define KEYMAP_H -namespace Scintilla { +namespace Scintilla::Internal { -#define SCI_NORM 0 -#define SCI_SHIFT SCMOD_SHIFT -#define SCI_CTRL SCMOD_CTRL -#define SCI_ALT SCMOD_ALT -#define SCI_META SCMOD_META -#define SCI_SUPER SCMOD_SUPER -#define SCI_CSHIFT (SCI_CTRL | SCI_SHIFT) -#define SCI_ASHIFT (SCI_ALT | SCI_SHIFT) +#define SCI_NORM KeyMod::Norm +#define SCI_SHIFT KeyMod::Shift +#define SCI_CTRL KeyMod::Ctrl +#define SCI_ALT KeyMod::Alt +#define SCI_META KeyMod::Meta +#define SCI_SUPER KeyMod::Super +#define SCI_CSHIFT (KeyMod::Ctrl | KeyMod::Shift) +#define SCI_ASHIFT (KeyMod::Alt | KeyMod::Shift) /** */ class KeyModifiers { public: - int key; - int modifiers; - KeyModifiers(int key_, int modifiers_) noexcept : key(key_), modifiers(modifiers_) { + Scintilla::Keys key; + Scintilla::KeyMod modifiers; + KeyModifiers(Scintilla::Keys key_, Scintilla::KeyMod modifiers_) noexcept : key(key_), modifiers(modifiers_) { } bool operator<(const KeyModifiers &other) const noexcept { if (key == other.key) @@ -39,24 +39,24 @@ public: */ class KeyToCommand { public: - int key; - int modifiers; - unsigned int msg; + Scintilla::Keys key; + Scintilla::KeyMod modifiers; + Scintilla::Message msg; }; /** */ class KeyMap { - std::map<KeyModifiers, unsigned int> kmap; + std::map<KeyModifiers, Scintilla::Message> kmap; static const KeyToCommand MapDefault[]; public: KeyMap(); ~KeyMap(); void Clear() noexcept; - void AssignCmdKey(int key, int modifiers, unsigned int msg); - unsigned int Find(int key, int modifiers) const; // 0 returned on failure - const std::map<KeyModifiers, unsigned int> &GetKeyMap() const noexcept; + void AssignCmdKey(Scintilla::Keys key, Scintilla::KeyMod modifiers, Scintilla::Message msg); + Scintilla::Message Find(Scintilla::Keys key, Scintilla::KeyMod modifiers) const; // 0 returned on failure + const std::map<KeyModifiers, Scintilla::Message> &GetKeyMap() const noexcept; }; } |