25 #include <CEGUI/CEGUI.h>
43 bool consumed =
false;
52 case SDL_MOUSEBUTTONUP:
53 case SDL_MOUSEBUTTONDOWN:
69 bool consumed =
false;
73 consumed = CEGUI::System::getSingleton().injectChar(event.key.keysym.unicode);
75 consumed |= CEGUI::System::getSingleton().injectKeyDown(
m_keymap[event.key.keysym.sym]);
80 consumed = CEGUI::System::getSingleton().injectKeyUp(
m_keymap[event.key.keysym.sym]);
91 bool consumed =
false;
94 case SDL_MOUSEBUTTONDOWN:
95 switch(event.button.button) {
97 consumed = CEGUI::System::getSingleton().injectMouseButtonDown(CEGUI::LeftButton);
100 case SDL_BUTTON_RIGHT:
101 consumed = CEGUI::System::getSingleton().injectMouseButtonDown(CEGUI::RightButton);
104 case SDL_BUTTON_MIDDLE:
105 consumed = CEGUI::System::getSingleton().injectMouseButtonDown(CEGUI::MiddleButton) ;
108 case SDL_BUTTON_WHEELDOWN:
109 consumed = CEGUI::System::getSingleton().injectMouseWheelChange(-1);
112 case SDL_BUTTON_WHEELUP:
113 consumed = CEGUI::System::getSingleton().injectMouseWheelChange(1);
121 case SDL_MOUSEBUTTONUP:
122 switch(event.button.button) {
123 case SDL_BUTTON_LEFT:
124 consumed = CEGUI::System::getSingleton().injectMouseButtonUp(CEGUI::LeftButton);
127 case SDL_BUTTON_RIGHT:
128 consumed = CEGUI::System::getSingleton().injectMouseButtonUp(CEGUI::RightButton);
131 case SDL_BUTTON_MIDDLE:
132 consumed = CEGUI::System::getSingleton().injectMouseButtonUp(CEGUI::MiddleButton) ;
135 case SDL_BUTTON_WHEELDOWN:
138 case SDL_BUTTON_WHEELUP:
154 return CEGUI::System::getSingleton().injectMousePosition(static_cast<float>(event.motion.x), static_cast<float>(event.motion.y));
160 m_keymap[SDLK_3] = CEGUI::Key::Three;
161 m_keymap[SDLK_4] = CEGUI::Key::Four;
162 m_keymap[SDLK_5] = CEGUI::Key::Five;
164 m_keymap[SDLK_7] = CEGUI::Key::Seven;
165 m_keymap[SDLK_8] = CEGUI::Key::Eight;
166 m_keymap[SDLK_9] = CEGUI::Key::Nine;
167 m_keymap[SDLK_0] = CEGUI::Key::Zero;
196 m_keymap[SDLK_COMMA] = CEGUI::Key::Comma;
197 m_keymap[SDLK_PERIOD] = CEGUI::Key::Period;
198 m_keymap[SDLK_SLASH] = CEGUI::Key::Slash;
199 m_keymap[SDLK_BACKSLASH] = CEGUI::Key::Backslash;
200 m_keymap[SDLK_MINUS] = CEGUI::Key::Minus;
201 m_keymap[SDLK_EQUALS] = CEGUI::Key::Equals;
202 m_keymap[SDLK_SEMICOLON] = CEGUI::Key::Semicolon;
203 m_keymap[SDLK_LEFTBRACKET] = CEGUI::Key::LeftBracket;
204 m_keymap[SDLK_RIGHTBRACKET] = CEGUI::Key::RightBracket;
205 m_keymap[SDLK_QUOTE] = CEGUI::Key::Apostrophe;
206 m_keymap[SDLK_BACKQUOTE] = CEGUI::Key::Grave;
208 m_keymap[SDLK_RETURN] = CEGUI::Key::Return;
209 m_keymap[SDLK_SPACE] = CEGUI::Key::Space;
210 m_keymap[SDLK_BACKSPACE] = CEGUI::Key::Backspace;
211 m_keymap[SDLK_TAB] = CEGUI::Key::Tab;
213 m_keymap[SDLK_ESCAPE] = CEGUI::Key::Escape;
214 m_keymap[SDLK_PAUSE] = CEGUI::Key::Pause;
215 m_keymap[SDLK_SYSREQ] = CEGUI::Key::SysRq;
216 m_keymap[SDLK_POWER] = CEGUI::Key::Power;
218 m_keymap[SDLK_NUMLOCK] = CEGUI::Key::NumLock;
219 m_keymap[SDLK_SCROLLOCK] = CEGUI::Key::ScrollLock;
230 m_keymap[SDLK_F10] = CEGUI::Key::F10;
231 m_keymap[SDLK_F11] = CEGUI::Key::F11;
232 m_keymap[SDLK_F12] = CEGUI::Key::F12;
233 m_keymap[SDLK_F13] = CEGUI::Key::F13;
234 m_keymap[SDLK_F14] = CEGUI::Key::F14;
235 m_keymap[SDLK_F15] = CEGUI::Key::F15;
237 m_keymap[SDLK_LCTRL] = CEGUI::Key::LeftControl;
238 m_keymap[SDLK_LALT] = CEGUI::Key::LeftAlt;
239 m_keymap[SDLK_LSHIFT] = CEGUI::Key::LeftShift;
240 m_keymap[SDLK_LSUPER] = CEGUI::Key::LeftWindows;
241 m_keymap[SDLK_RCTRL] = CEGUI::Key::RightControl;
242 m_keymap[SDLK_RALT] = CEGUI::Key::RightAlt;
243 m_keymap[SDLK_RSHIFT] = CEGUI::Key::RightShift;
244 m_keymap[SDLK_RSUPER] = CEGUI::Key::RightWindows;
245 m_keymap[SDLK_MENU] = CEGUI::Key::AppMenu;
247 m_keymap[SDLK_KP0] = CEGUI::Key::Numpad0;
248 m_keymap[SDLK_KP1] = CEGUI::Key::Numpad1;
249 m_keymap[SDLK_KP2] = CEGUI::Key::Numpad2;
250 m_keymap[SDLK_KP3] = CEGUI::Key::Numpad3;
251 m_keymap[SDLK_KP4] = CEGUI::Key::Numpad4;
252 m_keymap[SDLK_KP5] = CEGUI::Key::Numpad5;
253 m_keymap[SDLK_KP6] = CEGUI::Key::Numpad6;
254 m_keymap[SDLK_KP7] = CEGUI::Key::Numpad7;
255 m_keymap[SDLK_KP8] = CEGUI::Key::Numpad8;
256 m_keymap[SDLK_KP9] = CEGUI::Key::Numpad9;
257 m_keymap[SDLK_KP_PERIOD] = CEGUI::Key::Decimal;
258 m_keymap[SDLK_KP_PLUS] = CEGUI::Key::Add;
259 m_keymap[SDLK_KP_MINUS] = CEGUI::Key::Subtract;
260 m_keymap[SDLK_KP_MULTIPLY] = CEGUI::Key::Multiply;
261 m_keymap[SDLK_KP_DIVIDE] = CEGUI::Key::Divide;
262 m_keymap[SDLK_KP_ENTER] = CEGUI::Key::NumpadEnter;
264 m_keymap[SDLK_UP] = CEGUI::Key::ArrowUp;
265 m_keymap[SDLK_LEFT] = CEGUI::Key::ArrowLeft;
266 m_keymap[SDLK_RIGHT] = CEGUI::Key::ArrowRight;
267 m_keymap[SDLK_DOWN] = CEGUI::Key::ArrowDown;
269 m_keymap[SDLK_HOME] = CEGUI::Key::Home;
270 m_keymap[SDLK_END] = CEGUI::Key::End;
271 m_keymap[SDLK_PAGEUP] = CEGUI::Key::PageUp;
272 m_keymap[SDLK_PAGEDOWN] = CEGUI::Key::PageDown;
273 m_keymap[SDLK_INSERT] = CEGUI::Key::Insert;
274 m_keymap[SDLK_DELETE] = CEGUI::Key::Delete;