diff options
Diffstat (limited to 'include/keymap/KeymapEvaluator.hpp')
| -rw-r--r-- | include/keymap/KeymapEvaluator.hpp | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/include/keymap/KeymapEvaluator.hpp b/include/keymap/KeymapEvaluator.hpp deleted file mode 100644 index db93900..0000000 --- a/include/keymap/KeymapEvaluator.hpp +++ /dev/null @@ -1,42 +0,0 @@ -#pragma once - -#include <QWidget> -#include <QtCore/qmap.h> -#include <QtCore/qnamespace.h> -#include <QtCore> -#include <functional> - -#include "keymap/KeySeqParser.hpp" -#include "utils.hpp" - -typedef std::function<void()> KeyAction; - -struct KeyMap { - KeySequence keySequence; - KeyAction action; -}; - -enum KeyMode { Normal, Insert }; - -class KeymapEvaluator : public QObject { - Q_OBJECT - -public: - KeymapEvaluator(); - - void addKeymap(KeyMode mode, QString key, KeyAction action); - bool evaluate(Qt::KeyboardModifiers modifiers, Qt::Key key); - - DEFINE_SETTER(setCurrentMode, currentMode) - DEFINE_GETTER(getCurrentMode, currentMode) - -private: - const QList<KeyMap> *currentModeKeys(); - bool isInsertableMode(); - -private: - QMap<KeyMode, QList<KeyMap>> modalKeys; - KeySeqParser keySeqParser; - KeyMode currentMode = KeyMode::Normal; - KeySequence activeKeySequence; -}; |
