summaryrefslogtreecommitdiff
path: root/src/keymap_manager.hh
diff options
context:
space:
mode:
authorDelapouite <delapouite@gmail.com>2018-01-18 09:57:14 +0100
committerDelapouite <delapouite@gmail.com>2018-02-12 14:19:58 +0100
commit6b447a0ecb018256c574fc2a36be99698f603cc3 (patch)
tree6561f4c13cc5f27ad31be9ab4353f44c0d70f018 /src/keymap_manager.hh
parent9c25e955dfdddd0ee63c2edb56cde79b18452da8 (diff)
Add declare-user-mode / enter-user-mode commands
Diffstat (limited to 'src/keymap_manager.hh')
-rw-r--r--src/keymap_manager.hh7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/keymap_manager.hh b/src/keymap_manager.hh
index 746c02c5..3c8d52ee 100644
--- a/src/keymap_manager.hh
+++ b/src/keymap_manager.hh
@@ -22,6 +22,7 @@ enum class KeymapMode : char
View,
User,
Object,
+ FirstUserMode,
};
class KeymapManager
@@ -43,6 +44,10 @@ public:
};
const KeymapInfo& get_mapping(Key key, KeymapMode mode) const;
+ using UserModeList = Vector<String>;
+ const UserModeList& user_modes() const { return m_user_modes; }
+ void add_user_mode(const String user_mode_name);
+
private:
KeymapManager()
: m_parent(nullptr) {}
@@ -52,6 +57,8 @@ private:
KeymapManager* m_parent;
using KeyAndMode = std::pair<Key, KeymapMode>;
HashMap<KeyAndMode, KeymapInfo, MemoryDomain::Mapping> m_mapping;
+
+ UserModeList m_user_modes;
};
}