22 #ifndef ILLUSIONS_INPUT_H 23 #define ILLUSIONS_INPUT_H 25 #include "common/array.h" 26 #include "common/events.h" 27 #include "common/keyboard.h" 28 #include "common/rect.h" 34 MOUSE_LEFT_BUTTON = 1,
35 MOUSE_RIGHT_BUTTON = 2
58 void addKey(Common::KeyCode key);
59 void addMouseButton(
int mouseButton);
61 void add(Common::KeyCode key,
int mouseButton);
70 uint handle(Common::KeyCode key,
int mouseButton,
bool down);
71 uint getBitMask()
const {
return _bitMask; }
81 bool pollEvent(uint evt);
83 void discardEvent(uint evt);
84 void discardAllEvents();
85 bool pollButton(uint bitMask);
86 void activateButton(uint bitMask);
87 void deactivateButton(uint bitMask);
91 InputEvent& setInputEvent(uint evt, uint bitMask);
92 bool isCursorMovedByKeyboard()
const {
return _cursorMovedByKeyboard; }
93 bool isCheatModeActive();
96 uint _buttonStates, _newButtons, _buttonsDown;
101 bool _cursorMovedByKeyboard;
102 void handleKey(Common::KeyCode key,
int mouseButton,
bool down);
103 void handleMouseButton(
int mouseButton,
bool down);
104 void discardButtons(uint bitMask);
105 bool lookButtonStates(uint bitMask);
106 bool lookNewButtons(uint bitMask);
107 void setButtonState(uint bitMask);
108 void moveCursorByKeyboard(
int deltaX,
int deltaY);
113 #endif // ILLUSIONS_INPUT_H