8#include "SDL_joystick.h"
18#define REGISTER_INPUT_BINDING(name) \
19 namespace name##Input \
21 void Register(Input::Manager *input); \
22 bool name##Registered = Input::AddBindingRegistrar(&Register); \
24 void name##Input::Register(Input::Manager *input)
43 std::map<std::string, BindingGroup>
groups;
112 void AddJoystickID(SDL_JoystickID sdl_id, uint32_t internal_id);
151 return std::count(m_inputFrames.begin(), m_inputFrames.end(), frame) > 0;
177 bool IsKeyDown(SDL_Keycode k) {
return keyState[k] & 0x3; }
207 std::copy_n(mouseMotion.data(), mouseMotion.size(), motion);
230 void RebuildInputFrames();
235 SDL_Window *m_window;
237 bool m_enableConfigSaving;
239 std::map<SDL_Keycode, uint8_t> keyState;
241 std::array<char, 6> mouseButton;
242 std::array<int, 2> mouseMotion;
244 bool m_capturingMouse;
246 bool joystickEnabled;
249 std::map<std::string, BindingPage> bindingPages;
250 std::map<std::string, InputBindings::Action> actionBindings;
251 std::map<std::string, InputBindings::Axis> axisBindings;
252 bool m_enableBindings;
254 std::vector<InputFrame *> m_inputFrames;
255 bool m_frameListChanged;
257 std::vector<InputBindings::Action *> m_activeActions;
258 std::vector<InputBindings::Axis *> m_activeAxes;
260 std::map<InputBindings::KeyBinding, bool> m_modifiers;
261 std::vector<InputBindings::KeyChord *> m_chords;
Definition IniConfig.h:16
BindingGroup * GetBindingGroup(std::string id)
Definition Input.h:41
std::map< std::string, BindingGroup > groups
Definition Input.h:43