//get modifers of sdl event static CefEventFlags GetModifiersFromSDL(SDL_Keymod mod) { CefEventFlags result = CefEventFlags.None; if ((mod & SDL_Keymod.Num) != 0) { result |= CefEventFlags.NumLockOn; } if ((mod & SDL_Keymod.Caps) != 0) { result |= CefEventFlags.CapsLockOn; } if ((mod & SDL_Keymod.LeftControl & SDL_Keymod.RightControl) != 0) { result |= CefEventFlags.ControlDown; } if ((mod & SDL_Keymod.LeftShift & SDL_Keymod.RightShift) != 0) { result |= CefEventFlags.ShiftDown; } if ((mod & SDL_Keymod.LeftAlt & SDL_Keymod.RightAlt) != 0) { result |= CefEventFlags.AltDown; } return(result); }
private bool OnHotKeyHandler(int inkey, int mod, bool ispressed) { int key = checkForOmeKeys(inkey); if (ispressed && !Enum.IsDefined(typeof(SDL_Keycode_Ignore), key)) { RazorEnhanced.ModKeys cur = RazorEnhanced.ModKeys.None; SDL_Keymod keymod = (SDL_Keymod)mod; if (keymod.HasFlag(SDL_Keymod.KMOD_LCTRL) || keymod.HasFlag(SDL_Keymod.KMOD_RCTRL)) { cur |= RazorEnhanced.ModKeys.Control; } if (keymod.HasFlag(SDL_Keymod.KMOD_LALT) || keymod.HasFlag(SDL_Keymod.KMOD_RALT)) { cur |= RazorEnhanced.ModKeys.Alt; } if (keymod.HasFlag(SDL_Keymod.KMOD_LSHIFT) || keymod.HasFlag(SDL_Keymod.KMOD_RSHIFT)) { cur |= RazorEnhanced.ModKeys.Shift; } return(RazorEnhanced.HotKey.OnKeyDown(Win32Platform.MapKey(key), cur)); } return(true); }
private bool OnHotKeyHandler(int key, int mod, bool ispressed) { if (ispressed && !Enum.IsDefined(typeof(SDL_Keycode_Ignore), key)) { ModKeys cur = ModKeys.None; SDL_Keymod keymod = (SDL_Keymod) mod; if (keymod.HasFlag(SDL_Keymod.KMOD_LCTRL) || keymod.HasFlag(SDL_Keymod.KMOD_RCTRL)) cur |= ModKeys.Control; if (keymod.HasFlag(SDL_Keymod.KMOD_LALT) || keymod.HasFlag(SDL_Keymod.KMOD_RALT)) cur |= ModKeys.Alt; if (keymod.HasFlag(SDL_Keymod.KMOD_LSHIFT) || keymod.HasFlag(SDL_Keymod.KMOD_RSHIFT)) cur |= ModKeys.Shift; return HotKey.OnKeyDown(Win32Platform.MapKey(key), cur); } return true; }
private bool OnHotKeyHandler(int key, int mod, bool ispressed) { if (ispressed) { ModKeys cur = ModKeys.None; SDL_Keymod keymod = (SDL_Keymod)mod; if (keymod.HasFlag(SDL_Keymod.KMOD_LCTRL) || keymod.HasFlag(SDL_Keymod.KMOD_RCTRL)) { cur |= ModKeys.Control; } if (keymod.HasFlag(SDL_Keymod.KMOD_LALT) || keymod.HasFlag(SDL_Keymod.KMOD_RALT)) { cur |= ModKeys.Alt; } if (keymod.HasFlag(SDL_Keymod.KMOD_LSHIFT) || keymod.HasFlag(SDL_Keymod.KMOD_RSHIFT)) { cur |= ModKeys.Shift; } return(HotKey.OnKeyDown(Win32Platform.MapKey(key), cur)); } return(true); }
public KeyboardStateSnapshot GetKeyboardStateSnapshot() { ReadOnlySpan <byte> rawKeyboardState; SDL_Keymod rawKeyboardModifierState = SDL_GetModState(); unsafe { IntPtr statePtr = SDL_GetKeyboardState(out int numKeys); rawKeyboardState = new ReadOnlySpan <byte>((byte *)statePtr, numKeys); } bool[] keysState = new bool[(int)Key.Count]; for (Key key = 0; key < Key.Count; key++) { int index = ToSDL2Scancode(key); if (index == -1) { SDL_Keymod modifierMask = GetKeyboardModifierMask(key); if (modifierMask == SDL_Keymod.KMOD_NONE) { continue; } keysState[(int)key] = (rawKeyboardModifierState & modifierMask) == modifierMask; } else { keysState[(int)key] = rawKeyboardState[index] == 1; } } return(new KeyboardStateSnapshot(keysState)); }
public InputKeyboardEvent(KeyboardEvent eventtype, SDL_Keycode keycode, int key, SDL_Keymod modifiers) : base(modifiers) { EventType = eventtype; KeyCode = keycode; _keyDataExtra = key; }
public KeyboardEventArgs(SDL_Keycode key, SDL_Keymod mod, KeyboardEvent state) { Key = key; Mod = mod; KeyboardEvent = state; }
/// <summary> /// Used for mapping modifiers /// </summary> /// <param name="mod">SDL modifier</param> /// <returns>Tortuga modifier</returns> public static ModifierKeys MapModifiers(SDL_Keymod mod) { return((ModifierKeys)mod); }
public InputEvent(SDL_Keymod modifiers) { Mod = modifiers; }
public static extern void SDL_SetModState( SDL_Keymod modstate);
public static void SDL_SetModState(SDL_Keymod modstate) => s_SDL_SetModState_SDL_Keymod_t(modstate);