#include <sdlinput.hpp>
Inheritance diagram for gcn::SDLInput:

Definition at line 76 of file sdlinput.hpp.
Public Member Functions | |
| virtual void | _pollInput () |
| Polls all input. | |
| virtual KeyInput | dequeueKeyInput () |
| Dequeues the key input queue. | |
| virtual MouseInput | dequeueMouseInput () |
| Dequeues the mouse input queue. | |
| virtual bool | isKeyQueueEmpty () |
| Checks if the key queue is empty, or not. | |
| virtual bool | isMouseQueueEmpty () |
| Checks if the mouse queue is empyt, or not. | |
| virtual void | pushInput (SDL_Event event) |
| Pushes an SDL event. | |
| SDLInput () | |
| Constructor. | |
Protected Member Functions | |
| int | convertKeyCharacter (SDL_Event event) |
| Converts an SDL event key to a key value. | |
| int | convertMouseButton (int button) |
| Converts a mouse button from SDL to a Guichan mouse button representation. | |
Protected Attributes | |
| std::queue< KeyInput > | mKeyInputQueue |
| bool | mMouseDown |
| std::queue< MouseInput > | mMouseInputQueue |
| bool | mMouseInWindow |
| virtual void gcn::SDLInput::_pollInput | ( | ) | [inline, virtual] |
Polls all input.
It exists for input driver compatibility. If you only use SDL and plan sticking with SDL you can safely ignore this function as it in the SDL case does nothing.
Implements gcn::Input.
Definition at line 98 of file sdlinput.hpp.
| int gcn::SDLInput::convertKeyCharacter | ( | SDL_Event | event | ) | [protected] |
Converts an SDL event key to a key value.
| event | an SDL event with a key to convert. |
Definition at line 236 of file sdlinput.cpp.
References gcn::Key::ALT_GR, gcn::Key::BACKSPACE, gcn::Key::CAPS_LOCK, gcn::Key::DELETE, gcn::Key::DOWN, gcn::Key::END, gcn::Key::ENTER, gcn::Key::ESCAPE, gcn::Key::F1, gcn::Key::F10, gcn::Key::F11, gcn::Key::F12, gcn::Key::F13, gcn::Key::F14, gcn::Key::F15, gcn::Key::F2, gcn::Key::F3, gcn::Key::F4, gcn::Key::F5, gcn::Key::F6, gcn::Key::F7, gcn::Key::F8, gcn::Key::F9, gcn::Key::HOME, gcn::Key::INSERT, gcn::Key::LEFT, gcn::Key::LEFT_ALT, gcn::Key::LEFT_CONTROL, gcn::Key::LEFT_META, gcn::Key::LEFT_SHIFT, gcn::Key::LEFT_SUPER, gcn::Key::NUM_LOCK, gcn::Key::PAGE_DOWN, gcn::Key::PAGE_UP, gcn::Key::PAUSE, gcn::Key::PRINT_SCREEN, gcn::Key::RIGHT, gcn::Key::RIGHT_ALT, gcn::Key::RIGHT_CONTROL, gcn::Key::RIGHT_META, gcn::Key::RIGHT_SHIFT, gcn::Key::RIGHT_SUPER, gcn::Key::SCROLL_LOCK, gcn::Key::SPACE, gcn::Key::TAB, and gcn::Key::UP.
Referenced by pushInput().
| int gcn::SDLInput::convertMouseButton | ( | int | button | ) | [protected] |
Converts a mouse button from SDL to a Guichan mouse button representation.
| button | an SDL mouse button. |
Definition at line 217 of file sdlinput.cpp.
References gcn::MouseInput::LEFT, gcn::MouseInput::MIDDLE, and gcn::MouseInput::RIGHT.
Referenced by pushInput().
| KeyInput gcn::SDLInput::dequeueKeyInput | ( | ) | [virtual] |
Dequeues the key input queue.
Implements gcn::Input.
Definition at line 78 of file sdlinput.cpp.
References mKeyInputQueue.
| MouseInput gcn::SDLInput::dequeueMouseInput | ( | ) | [virtual] |
Dequeues the mouse input queue.
Implements gcn::Input.
Definition at line 98 of file sdlinput.cpp.
References mMouseInputQueue.
| bool gcn::SDLInput::isKeyQueueEmpty | ( | ) | [virtual] |
Checks if the key queue is empty, or not.
Implements gcn::Input.
Definition at line 73 of file sdlinput.cpp.
References mKeyInputQueue.
| bool gcn::SDLInput::isMouseQueueEmpty | ( | ) | [virtual] |
Checks if the mouse queue is empyt, or not.
Implements gcn::Input.
Definition at line 93 of file sdlinput.cpp.
References mMouseInputQueue.
| void gcn::SDLInput::pushInput | ( | SDL_Event | event | ) | [virtual] |
Pushes an SDL event.
It should be called at least once per frame to update input with user input.
| event | an event from SDL. |
Definition at line 113 of file sdlinput.cpp.
References convertKeyCharacter(), convertMouseButton(), gcn::MouseInput::EMPTY, mKeyInputQueue, mMouseDown, mMouseInputQueue, mMouseInWindow, gcn::MouseInput::MOVED, gcn::MouseInput::PRESSED, gcn::KeyInput::PRESSED, gcn::MouseInput::RELEASED, gcn::KeyInput::RELEASED, gcn::KeyInput::setAltPressed(), gcn::MouseInput::setButton(), gcn::KeyInput::setControlPressed(), gcn::KeyInput::setKey(), gcn::KeyInput::setMetaPressed(), gcn::KeyInput::setNumericPad(), gcn::KeyInput::setShiftPressed(), gcn::MouseInput::setTimeStamp(), gcn::MouseInput::setType(), gcn::KeyInput::setType(), gcn::MouseInput::setX(), gcn::MouseInput::setY(), gcn::MouseInput::WHEEL_MOVED_DOWN, and gcn::MouseInput::WHEEL_MOVED_UP.
1.5.2