From 23f87c10db7e6b149e9e1f351e1a82516c545df7 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Wed, 18 Apr 2012 02:58:23 +0300 Subject: First step for dehardcode input handling in widgets. Now widgets can check for input event. --- src/keyboardconfig.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/keyboardconfig.cpp') diff --git a/src/keyboardconfig.cpp b/src/keyboardconfig.cpp index c9f4fef38..1dc68df79 100644 --- a/src/keyboardconfig.cpp +++ b/src/keyboardconfig.cpp @@ -108,6 +108,15 @@ KeysVector *KeyboardConfig::getActionVector(const SDL_Event &event) return nullptr; } +int KeyboardConfig::getActionId(const SDL_Event &event) +{ + const int i = getKeyValueFromEvent(event); +// logger->log("getActionId: %d", i); + if (i != 0 && i < SDLK_LAST && mKeyToId.find(i) != mKeyToId.end()) + return mKeyToId[i]; + return -1; +} + bool KeyboardConfig::isActionActive(int index) const { if (!mActiveKeys) @@ -136,7 +145,7 @@ bool KeyboardConfig::isActionActive(int index) const void KeyboardConfig::update() { - inputManager.updateKeyActionMap(mKeyToAction, INPUT_KEYBOARD); + inputManager.updateKeyActionMap(mKeyToAction, mKeyToId, INPUT_KEYBOARD); } void KeyboardConfig::handleActicateKey(const SDL_Event &event) -- cgit v1.2.3-60-g2f50