static void sdl_input_poll(void *data) { SDL_PumpEvents(); sdl_input_t *sdl = (sdl_input_t*)data; input_joypad_poll(sdl->joypad); sdl_poll_mouse(sdl); }
static void sdl_input_poll(void *data) { sdl_input_t *sdl = (sdl_input_t*)data; SDL_Event event; SDL_PumpEvents(); if (sdl->joypad) sdl->joypad->poll(); sdl_poll_mouse(sdl); #ifdef HAVE_SDL2 while (SDL_PeepEvents(&event, 1, SDL_GETEVENT, SDL_KEYDOWN, SDL_MOUSEWHEEL) > 0) #else while (SDL_PeepEvents(&event, 1, SDL_GETEVENT, SDL_KEYEVENTMASK) > 0) #endif { if (event.type == SDL_KEYDOWN || event.type == SDL_KEYUP) { uint16_t mod = 0; unsigned code = input_keymaps_translate_keysym_to_rk(event.key.keysym.sym); if (event.key.keysym.mod & KMOD_SHIFT) mod |= RETROKMOD_SHIFT; if (event.key.keysym.mod & KMOD_CTRL) mod |= RETROKMOD_CTRL; if (event.key.keysym.mod & KMOD_ALT) mod |= RETROKMOD_ALT; if (event.key.keysym.mod & KMOD_NUM) mod |= RETROKMOD_NUMLOCK; if (event.key.keysym.mod & KMOD_CAPS) mod |= RETROKMOD_CAPSLOCK; input_keyboard_event(event.type == SDL_KEYDOWN, code, code, mod, RETRO_DEVICE_KEYBOARD); } #ifdef HAVE_SDL2 else if (event.type == SDL_MOUSEWHEEL) { sdl->mouse_wu = event.wheel.y < 0; sdl->mouse_wd = event.wheel.y > 0; sdl->mouse_wl = event.wheel.x < 0; sdl->mouse_wr = event.wheel.x > 0; break; } #endif } }
static void sdl_input_poll(void *data) { SDL_PumpEvents(); sdl_input_t *sdl = (sdl_input_t*)data; #ifdef HAVE_DINPUT sdl_dinput_poll(sdl->di); #else SDL_JoystickUpdate(); #endif sdl_poll_mouse(sdl); }
static void sdl_input_poll(void *data) { SDL_PumpEvents(); sdl_input_t *sdl = (sdl_input_t*)data; if (sdl->joypad) sdl->joypad->poll(); sdl_poll_mouse(sdl); #ifdef HAVE_SDL2 SDL_Event event; while (SDL_PeepEvents(&event, 1, SDL_GETEVENT, SDL_MOUSEWHEEL, SDL_MOUSEWHEEL) > 0) { if (event.type == SDL_MOUSEWHEEL) { sdl->mouse_wu = event.wheel.y < 0; sdl->mouse_wd = event.wheel.y > 0; sdl->mouse_wl = event.wheel.x < 0; sdl->mouse_wr = event.wheel.x > 0; break; } } #endif }