summaryrefslogtreecommitdiff
path: root/src/input
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-03-15 20:16:16 +0300
committerAndrei Karas <akaras@inbox.ru>2014-03-15 20:16:16 +0300
commit5c83a96b8ad85ad0562542b9720a0df6c5fb550c (patch)
tree1759cd93802d506583c7030119f1115b0444e226 /src/input
parenta260aeab234704ace8ba672b1d1ce57e18425e07 (diff)
parent22cb237571e06395ec241377721c02716f0ea8a7 (diff)
downloadplus-5c83a96b8ad85ad0562542b9720a0df6c5fb550c.tar.gz
plus-5c83a96b8ad85ad0562542b9720a0df6c5fb550c.tar.bz2
plus-5c83a96b8ad85ad0562542b9720a0df6c5fb550c.tar.xz
plus-5c83a96b8ad85ad0562542b9720a0df6c5fb550c.zip
Merge branch 'master' into stable
Diffstat (limited to 'src/input')
-rw-r--r--src/input/inputmanager.cpp79
-rw-r--r--src/input/inputmanager.h2
-rw-r--r--src/input/keyboarddata.h94
-rw-r--r--src/input/keydata.h13
-rw-r--r--src/input/keyinput.h87
5 files changed, 137 insertions, 138 deletions
diff --git a/src/input/inputmanager.cpp b/src/input/inputmanager.cpp
index 5d157f0fa..d611e4790 100644
--- a/src/input/inputmanager.cpp
+++ b/src/input/inputmanager.cpp
@@ -216,69 +216,46 @@ void InputManager::store() const
}
}
-void InputManager::resetKeys()
+void InputManager::resetKey(const int i)
{
- for (int i = 0; i < Input::KEY_TOTAL; i++)
+ KeyFunction &key = mKey[i];
+ for (size_t i2 = 1; i2 < KeyFunctionSize; i2 ++)
{
- KeyFunction &key = mKey[i];
- for (size_t i2 = 1; i2 < KeyFunctionSize; i2 ++)
- {
- KeyItem &ki2 = key.values[i2];
- ki2.type = INPUT_UNKNOWN;
- ki2.value = -1;
- }
- const KeyData &kd = keyData[i];
- KeyItem &val0 = key.values[0];
- val0.type = kd.defaultType1;
- KeyItem &val1 = key.values[1];
- val1.type = kd.defaultType2;
+ KeyItem &ki2 = key.values[i2];
+ ki2.type = INPUT_UNKNOWN;
+ ki2.value = -1;
+ }
+ const KeyData &kd = keyData[i];
+ KeyItem &val0 = key.values[0];
+ val0.type = kd.defaultType1;
+ KeyItem &val1 = key.values[1];
+ val1.type = kd.defaultType2;
#ifdef USE_SDL2
- if (kd.defaultType1 == INPUT_KEYBOARD)
- val0.value = SDL_GetScancodeFromKey(kd.defaultValue1);
- else
- val0.value = kd.defaultValue1;
- if (kd.defaultType2 == INPUT_KEYBOARD)
- val1.value = SDL_GetScancodeFromKey(kd.defaultValue2);
- else
- val1.value = kd.defaultValue2;
-#else
+ if (kd.defaultType1 == INPUT_KEYBOARD)
+ val0.value = SDL_GetScancodeFromKey(kd.defaultValue1);
+ else
val0.value = kd.defaultValue1;
+ if (kd.defaultType2 == INPUT_KEYBOARD)
+ val1.value = SDL_GetScancodeFromKey(kd.defaultValue2);
+ else
val1.value = kd.defaultValue2;
+#else
+ val0.value = kd.defaultValue1;
+ val1.value = kd.defaultValue2;
#endif
- }
+}
+
+void InputManager::resetKeys()
+{
+ for (int i = 0; i < Input::KEY_TOTAL; i++)
+ resetKey(i);
}
void InputManager::makeDefault(const int i)
{
if (i >= 0 && i < Input::KEY_TOTAL)
{
- KeyFunction &key = mKey[i];
- for (size_t i2 = 1; i2 < KeyFunctionSize; i2 ++)
- {
- KeyItem &ki2 = key.values[i2];
- ki2.type = INPUT_UNKNOWN;
- ki2.value = -1;
- }
- const KeyData &kd = keyData[i];
- KeyItem &val0 = key.values[0];
- val0.type = kd.defaultType1;
- KeyItem &val1 = key.values[1];
- val1.type = kd.defaultType2;
-
-#ifdef USE_SDL2
- if (kd.defaultType1 == INPUT_KEYBOARD)
- val0.value = SDL_GetScancodeFromKey(kd.defaultValue1);
- else
- val0.value = kd.defaultValue1;
- if (kd.defaultType2 == INPUT_KEYBOARD)
- val1.value = SDL_GetScancodeFromKey(kd.defaultValue2);
- else
- val1.value = kd.defaultValue2;
-#else
- val0.value = kd.defaultValue1;
- val1.value = kd.defaultValue2;
-#endif
-
+ resetKey(i);
update();
}
}
diff --git a/src/input/inputmanager.h b/src/input/inputmanager.h
index fcd1252c0..bf9e04f34 100644
--- a/src/input/inputmanager.h
+++ b/src/input/inputmanager.h
@@ -181,6 +181,8 @@ class InputManager final
void executeAction(const int keyNum);
protected:
+ void resetKey(const int i);
+
static bool isActionActive0(const int index) A_WARN_UNUSED;
Setup_Input *mSetupInput; /**< Reference to setup window */
diff --git a/src/input/keyboarddata.h b/src/input/keyboarddata.h
index e6bafb61b..37a36b45f 100644
--- a/src/input/keyboarddata.h
+++ b/src/input/keyboarddata.h
@@ -1977,7 +1977,7 @@ static const KeyData keyData[Input::KEY_TOTAL] = {
COND_ARROWKEYS},
{"keyGUICtrl",
INPUT_KEYBOARD, SDLK_LCTRL,
- INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ INPUT_KEYBOARD, SDLK_RCTRL,
Input::GRP_GUICHAN,
nullptr,
Input::KEY_NO_VALUE, 50,
@@ -2087,6 +2087,98 @@ static const KeyData keyData[Input::KEY_TOTAL] = {
&ActionManager::openTrade,
Input::KEY_NO_VALUE, 50,
COND_GAME | COND_NOTARGET},
+
+ {"keyGUIF1",
+ INPUT_KEYBOARD, SDLK_F1,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF2",
+ INPUT_KEYBOARD, SDLK_F2,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF3",
+ INPUT_KEYBOARD, SDLK_F3,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF4",
+ INPUT_KEYBOARD, SDLK_F4,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF5",
+ INPUT_KEYBOARD, SDLK_F5,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF6",
+ INPUT_KEYBOARD, SDLK_F6,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF7",
+ INPUT_KEYBOARD, SDLK_F7,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF8",
+ INPUT_KEYBOARD, SDLK_F8,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF9",
+ INPUT_KEYBOARD, SDLK_F9,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF10",
+ INPUT_KEYBOARD, SDLK_F10,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF11",
+ INPUT_KEYBOARD, SDLK_F11,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyGUIF12",
+ INPUT_KEYBOARD, SDLK_F12,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_GUICHAN | Input::GRP_CHAT,
+ nullptr,
+ Input::KEY_NO_VALUE, 50,
+ COND_DEFAULT},
+ {"keyWindowAbout",
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ INPUT_UNKNOWN, Input::KEY_NO_VALUE,
+ Input::GRP_DEFAULT | Input::GRP_GUI,
+ &ActionManager::aboutWindowShow,
+ Input::KEY_NO_VALUE, 50,
+ COND_SHORTCUT0},
};
#endif // INPUT_KEYBOARDDATA_H
diff --git a/src/input/keydata.h b/src/input/keydata.h
index 62517b64b..41a0e85a5 100644
--- a/src/input/keydata.h
+++ b/src/input/keydata.h
@@ -358,6 +358,19 @@ namespace Input
KEY_PREV_COMMANDS_TAB,
KEY_NEXT_COMMANDS_TAB,
KEY_OPEN_TRADE,
+ KEY_GUI_F1,
+ KEY_GUI_F2,
+ KEY_GUI_F3,
+ KEY_GUI_F4,
+ KEY_GUI_F5,
+ KEY_GUI_F6,
+ KEY_GUI_F7,
+ KEY_GUI_F8,
+ KEY_GUI_F9,
+ KEY_GUI_F10,
+ KEY_GUI_F11,
+ KEY_GUI_F12,
+ KEY_WINDOW_ABOUT,
KEY_TOTAL
};
} // namespace Input
diff --git a/src/input/keyinput.h b/src/input/keyinput.h
index 9920cfa17..b7b7a7936 100644
--- a/src/input/keyinput.h
+++ b/src/input/keyinput.h
@@ -79,12 +79,7 @@ class KeyInput final
#ifdef USE_SDL2
mText(),
#endif
- mActionId(-2),
- mShiftPressed(false),
- mControlPressed(false),
- mAltPressed(false),
- mMetaPressed(false),
- mNumericPad(false)
+ mActionId(-2)
{ }
~KeyInput()
@@ -120,56 +115,6 @@ class KeyInput final
return mKey;
}
- bool isShiftPressed() const
- {
- return mShiftPressed;
- }
-
- void setShiftPressed(bool pressed)
- {
- mShiftPressed = pressed;
- }
-
- bool isControlPressed() const
- {
- return mControlPressed;
- }
-
- void setControlPressed(bool pressed)
- {
- mControlPressed = pressed;
- }
-
- bool isAltPressed() const
- {
- return mAltPressed;
- }
-
- void setAltPressed(bool pressed)
- {
- mAltPressed = pressed;
- }
-
- bool isMetaPressed() const
- {
- return mMetaPressed;
- }
-
- void setMetaPressed(bool pressed)
- {
- mMetaPressed = pressed;
- }
-
- bool isNumericPad() const
- {
- return mNumericPad;
- }
-
- void setNumericPad(bool numpad)
- {
- mNumericPad = numpad;
- }
-
void setActionId(const int n)
{
mActionId = n;
@@ -208,36 +153,6 @@ class KeyInput final
#endif
int mActionId;
-
- /**
- * True if shift was pressed at the same time as the key,
- * false otherwise.
- */
- bool mShiftPressed;
-
- /**
- * True if control was pressed at the same time as the key,
- * false otherwise.
- */
- bool mControlPressed;
-
- /**
- * True if alt was pressed at the same time as the key,
- * false otherwise.
- */
- bool mAltPressed;
-
- /**
- * True if meta was pressed at the same time as the key,
- * false otherwise.
- */
- bool mMetaPressed;
-
- /**
- * True if the numeric pad was used when the key was pressed,
- * false otherwise.
- */
- bool mNumericPad;
};
#endif // INPUT_KEYINPUT_H