28 #include <SFML/Window/Input.hpp> 49 return myKeys[KeyCode];
58 return myMouseButtons[Button];
68 return myJoystickButtons[JoyId][Button];
98 return myJoystickAxis[JoyId][Axis];
107 void Input::OnEvent(
const Event& EventReceived)
109 switch (EventReceived.
Type)
112 case Event::KeyPressed : myKeys[EventReceived.Key.Code] =
true;
break;
113 case Event::KeyReleased : myKeys[EventReceived.Key.Code] =
false;
break;
116 case Event::MouseButtonPressed : myMouseButtons[EventReceived.MouseButton.Button] =
true;
break;
117 case Event::MouseButtonReleased : myMouseButtons[EventReceived.MouseButton.Button] =
false;
break;
120 case Event::MouseMoved :
121 myMouseX = EventReceived.MouseMove.X;
122 myMouseY = EventReceived.MouseMove.Y;
126 case Event::JoyButtonPressed : myJoystickButtons[EventReceived.JoyButton.JoystickId][EventReceived.JoyButton.Button] =
true;
break;
127 case Event::JoyButtonReleased : myJoystickButtons[EventReceived.JoyButton.JoystickId][EventReceived.JoyButton.Button] =
false;
break;
130 case Event::JoyMoved :
131 myJoystickAxis[EventReceived.JoyMove.JoystickId][EventReceived.JoyMove.Axis] = EventReceived.JoyMove.Position;
135 case Event::LostFocus :
150 void Input::ResetStates()
152 for (
int i = 0; i < Key::Count; ++i)
155 for (
int i = 0; i < Mouse::ButtonCount; ++i)
156 myMouseButtons[i] =
false;
161 myJoystickButtons[i][j] =
false;
163 for (
int j = 0; j < Joy::AxisCount; ++j)
164 myJoystickAxis[i][j] = 0.f;
165 myJoystickAxis[i][Joy::AxisPOV] = -1.f;
EventType Type
Type of the event.
Total number of supported joystick buttons.
Total number of supported joysticks.
Event defines a system event and its parameters.