{\r
SDL_GL_SetAttribute(SDL_GL_MULTISAMPLEBUFFERS, 0);\r
SDL_GL_SetAttribute(SDL_GL_MULTISAMPLESAMPLES, 0);\r
- } \r
+ }\r
\r
SDL_CreateWindowAndRenderer(0, 0, SDL_Flags, &Window, &Renderer); // 0,0 will use the canvas size\r
\r
\r
switch ( SDL_event.type )\r
{\r
- case SDL_MOUSEMOTION:\r
+ case SDL_MOUSEMOTION: {\r
+ SDL_Keymod keymod = SDL_GetModState();\r
+\r
irrevent.EventType = irr::EET_MOUSE_INPUT_EVENT;\r
irrevent.MouseInput.Event = irr::EMIE_MOUSE_MOVED;\r
MouseX = irrevent.MouseInput.X = SDL_event.motion.x;\r
MouseXRel = SDL_event.motion.xrel;\r
MouseYRel = SDL_event.motion.yrel;\r
irrevent.MouseInput.ButtonStates = MouseButtonStates;\r
+ irrevent.MouseInput.Shift = (keymod & KMOD_SHIFT) != 0;\r
+ irrevent.MouseInput.Control = (keymod & KMOD_CTRL) != 0;\r
\r
postEventFromUser(irrevent);\r
break;\r
- case SDL_MOUSEWHEEL:\r
+ }\r
+ case SDL_MOUSEWHEEL: {\r
+ SDL_Keymod keymod = SDL_GetModState();\r
+\r
irrevent.EventType = irr::EET_MOUSE_INPUT_EVENT;\r
irrevent.MouseInput.Event = irr::EMIE_MOUSE_WHEEL;\r
irrevent.MouseInput.Wheel = static_cast<float>(SDL_event.wheel.y);\r
+ irrevent.MouseInput.Shift = (keymod & KMOD_SHIFT) != 0;\r
+ irrevent.MouseInput.Control = (keymod & KMOD_CTRL) != 0;\r
+ irrevent.MouseInput.X = MouseX;\r
+ irrevent.MouseInput.Y = MouseY;\r
+\r
postEventFromUser(irrevent);\r
break;\r
+ }\r
case SDL_MOUSEBUTTONDOWN:\r
- case SDL_MOUSEBUTTONUP:\r
+ case SDL_MOUSEBUTTONUP: {\r
+ SDL_Keymod keymod = SDL_GetModState();\r
+\r
irrevent.EventType = irr::EET_MOUSE_INPUT_EVENT;\r
irrevent.MouseInput.X = SDL_event.button.x;\r
irrevent.MouseInput.Y = SDL_event.button.y;\r
+ irrevent.MouseInput.Shift = (keymod & KMOD_SHIFT) != 0;\r
+ irrevent.MouseInput.Control = (keymod & KMOD_CTRL) != 0;\r
\r
irrevent.MouseInput.Event = irr::EMIE_MOUSE_MOVED;\r
\r
}\r
}\r
break;\r
+ }\r
\r
case SDL_TEXTINPUT:\r
{\r
os::Printer::log("Resizable not available on the web." , ELL_WARNING);\r
return;\r
#else // !_IRR_EMSCRIPTEN_PLATFORM_\r
- if (resize != Resizable) { \r
+ if (resize != Resizable) {\r
if (resize)\r
SDL_Flags |= SDL_WINDOW_RESIZABLE;\r
else\r