internal KeyAction(SDL.SDL_KeyboardEvent ev) { SDL.SDL_Keymod modifiers = ev.keysym.mod; KeyFlags cflags = KeyFlags.Null; if ((modifiers & SDL.SDL_Keymod.KMOD_SHIFT) != 0) { cflags |= KeyFlags.Shift; } if ((modifiers & SDL.SDL_Keymod.KMOD_ALT) != 0) { cflags |= KeyFlags.Alt; } if ((modifiers & SDL.SDL_Keymod.KMOD_CTRL) != 0) { cflags |= KeyFlags.Ctrl; } if ((modifiers & SDL.SDL_Keymod.KMOD_CAPS) != 0) { cflags |= KeyFlags.CapsLock; } Flags = cflags; Key = MapSDLKeycode(ev.keysym.sym); Repeat = ev.repeat != 0; }
private void InputOnKeyDown(object sender, SDL.SDL_KeyboardEvent e) { if (e.keysym.sym == SDL.SDL_Keycode.SDLK_KP_ENTER || e.keysym.sym == SDL.SDL_Keycode.SDLK_RETURN) { OnButtonClick((int)Buttons.OK); } }
private void InputOnKeyDown(object sender, SDL.SDL_KeyboardEvent e) { if (e.keysym.sym == SDL.SDL_Keycode.SDLK_KP_ENTER || e.keysym.sym == SDL.SDL_Keycode.SDLK_RETURN) { Engine.SceneManager.ChangeScene(ScenesType.Login); } }
private void InputOnKeyDown(object sender, SDL.SDL_KeyboardEvent e) { if (e.keysym.mod == SDL.SDL_Keymod.KMOD_LSHIFT) { _shiftPressed = true; } }
private void OnKeyUp(object sender, SDL.SDL_KeyboardEvent e) { bool isshift = (e.keysym.mod & SDL.SDL_Keymod.KMOD_SHIFT) != SDL.SDL_Keymod.KMOD_NONE; bool isalt = (e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != SDL.SDL_Keymod.KMOD_NONE; bool isctrl = (e.keysym.mod & SDL.SDL_Keymod.KMOD_CTRL) != SDL.SDL_Keymod.KMOD_NONE; _isShiftDown = isshift; _useObjectHandles = isctrl && isshift; if (e.keysym.sym == SDL.SDL_Keycode.SDLK_TAB) { if (Engine.Profile.Current.HoldDownKeyTab) { if (World.Player.InWarMode) { GameActions.SetWarMode(false); } } else { GameActions.ToggleWarMode(); } } }
private void InputOnKeyUp(object sender, SDL.SDL_KeyboardEvent e) { if (e.keysym.sym == SDL.SDL_Keycode.SDLK_LSHIFT || e.keysym.sym == SDL.SDL_Keycode.SDLK_RSHIFT) { _shiftPressed = false; } }
private void GameFormSDL_KeyDownActions(SDL.SDL_KeyboardEvent e) { if ((e.keysym.sym == SDL.SDL_Keycode.SDLK_RETURN) && ((e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != 0)) { FullscreenToggle?.Invoke(this, EventArgs.Empty); } }
private void InputOnKeyDown(object sender, SDL.SDL_KeyboardEvent e) { if (Input.Keyboard.IsModPressed(e.keysym.mod, SDL.SDL_Keymod.KMOD_SHIFT)) { _shiftPressed = true; } }
private void OnKeyUp(object sender, SDL.SDL_KeyboardEvent e) { bool isshift = (e.keysym.mod & SDL.SDL_Keymod.KMOD_SHIFT) != SDL.SDL_Keymod.KMOD_NONE; bool isalt = (e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != SDL.SDL_Keymod.KMOD_NONE; bool isctrl = (e.keysym.mod & SDL.SDL_Keymod.KMOD_CTRL) != SDL.SDL_Keymod.KMOD_NONE; if (Engine.Profile.Current.EnableScaleZoom && Engine.Profile.Current.RestoreScaleAfterUnpressCtrl && _isCtrlDown && !isctrl) { Engine.SceneManager.GetScene <GameScene>().Scale = Engine.Profile.Current.RestoreScaleValue; } _isShiftDown = isshift; _isCtrlDown = isctrl; _useObjectHandles = isctrl && isshift; if (e.keysym.sym == SDL.SDL_Keycode.SDLK_TAB) { if (Engine.Profile.Current.HoldDownKeyTab) { if (World.Player.InWarMode) { GameActions.SetWarMode(false); } } else { GameActions.ToggleWarMode(); } } }
public static void OnKeyUp(SDL.SDL_KeyboardEvent e) { Shift = (e.keysym.mod & SDL.SDL_Keymod.KMOD_SHIFT) != SDL.SDL_Keymod.KMOD_NONE; Alt = (e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != SDL.SDL_Keymod.KMOD_NONE; Ctrl = (e.keysym.mod & SDL.SDL_Keymod.KMOD_CTRL) != SDL.SDL_Keymod.KMOD_NONE; _code = SDL.SDL_Keycode.SDLK_UNKNOWN; }
private void OnKeyDown(object sender, SDL.SDL_KeyboardEvent e) { if (TargetManager.IsTargeting && e.keysym.sym == SDL.SDL_Keycode.SDLK_ESCAPE && Input.Keyboard.IsModPressed(e.keysym.mod, SDL.SDL_Keymod.KMOD_NONE)) { TargetManager.CancelTarget(); } _isShiftDown = Input.Keyboard.IsModPressed(e.keysym.mod, SDL.SDL_Keymod.KMOD_SHIFT); if (e.keysym.sym == SDL.SDL_Keycode.SDLK_TAB) { if (!World.Player.InWarMode && Engine.Profile.Current.HoldDownKeyTab) { GameActions.SetWarMode(true); } } if (_keycodeDirection.TryGetValue(e.keysym.sym, out Direction dWalk)) { WorldViewportGump viewport = Engine.UI.GetByLocalSerial <WorldViewportGump>(); SystemChatControl chat = viewport?.FindControls <SystemChatControl>().SingleOrDefault(); if (chat != null && chat.textBox.Text.Length == 0) { World.Player.Walk(dWalk, false); } } if ((e.keysym.mod & SDL2.SDL.SDL_Keymod.KMOD_NUM) != SDL2.SDL.SDL_Keymod.KMOD_NUM) { if (_keycodeDirectionNum.TryGetValue(e.keysym.sym, out Direction dWalkN)) { World.Player.Walk(dWalkN, false); } } bool isshift = (e.keysym.mod & SDL.SDL_Keymod.KMOD_SHIFT) != SDL.SDL_Keymod.KMOD_NONE; bool isalt = (e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != SDL.SDL_Keymod.KMOD_NONE; bool isctrl = (e.keysym.mod & SDL.SDL_Keymod.KMOD_CTRL) != SDL.SDL_Keymod.KMOD_NONE; _useObjectHandles = isshift && isctrl; Macro macro = _macroManager.FindMacro(e.keysym.sym, isalt, isctrl, isshift); if (macro != null) { _macroManager.SetMacroToExecute(macro.FirstNode); _macroManager.WaitForTargetTimer = 0; _macroManager.Update(); } //if (_hotkeysManager.TryExecuteIfBinded(e.keysym.sym, e.keysym.mod, out Action action)) //{ // action(); //} }
private void GameFormSDL_KeyDownActions(SDL.SDL_KeyboardEvent e) { var altReturn = (e.keysym.sym == SDL.SDL_Keycode.SDLK_RETURN) && ((e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != 0); var altEnter = (e.keysym.sym == SDL.SDL_Keycode.SDLK_KP_ENTER) && ((e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != 0); if (altReturn || altEnter) { FullscreenToggle?.Invoke(this, EventArgs.Empty); } }
internal void ProcessKeyboardEvent(SDL.SDL_KeyboardEvent e) { Key key; bool pressed = e.state != 0; if (KeyMap.TryGetValue(e.keysym.scancode, out key)) { state.SetKeyState(key, (byte)e.keysym.scancode, pressed); } }
public static void OnKeyDown(SDL.SDL_KeyboardEvent e) { Shift = (e.keysym.mod & SDL.SDL_Keymod.KMOD_SHIFT) != SDL.SDL_Keymod.KMOD_NONE; Alt = (e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != SDL.SDL_Keymod.KMOD_NONE; Ctrl = (e.keysym.mod & SDL.SDL_Keymod.KMOD_CTRL) != SDL.SDL_Keymod.KMOD_NONE; if (e.keysym.sym != SDL.SDL_Keycode.SDLK_UNKNOWN) { _code = e.keysym.sym; } }
static void HandleKeydown(SDL.SDL_KeyboardEvent kb) { switch (kb.keysym.sym) { case SDL.SDL_Keycode.SDLK_ESCAPE: gDone = true; break; default: break; } }
private void OnKeyUp(object sender, SDL.SDL_KeyboardEvent e) { _isShiftDown = Input.Keyboard.IsModPressed(e.keysym.mod, SDL.SDL_Keymod.KMOD_SHIFT); if (e.keysym.sym == SDL.SDL_Keycode.SDLK_TAB) { if (World.Player.InWarMode) { GameActions.SetWarMode(false); } } }
private void OnKeyEvent(SDL.SDL_KeyboardEvent e, bool isKeyUp) { lock (KeyboardInputEvents) { Keys key; if (SDLKeys.mapKeys.TryGetValue(e.keysym.sym, out key) && key != Keys.None) { var type = isKeyUp ? InputEventType.Up : InputEventType.Down; KeyboardInputEvents.Add(new KeyboardInputEvent { Key = key, Type = type }); } } }
//public static bool IsKeyPressed(SDL.SDL_Keycode code) //{ // return code != SDL.SDL_Keycode.SDLK_UNKNOWN && _code == code; //} //public static bool IsModPressed(SDL.SDL_Keymod mod, SDL.SDL_Keymod tocheck) //{ // mod ^= mod & IgnoreKeyMod; // return tocheck == mod || mod != SDL.SDL_Keymod.KMOD_NONE && (mod & tocheck) != 0; //} public static void OnKeyUp(SDL.SDL_KeyboardEvent e) { SDL.SDL_Keymod mod = e.keysym.mod & ~IgnoreKeyMod; if ((mod & (SDL.SDL_Keymod.KMOD_RALT | SDL.SDL_Keymod.KMOD_LCTRL)) == (SDL.SDL_Keymod.KMOD_RALT | SDL.SDL_Keymod.KMOD_LCTRL)) { e.keysym.sym = SDL.SDL_Keycode.SDLK_UNKNOWN; e.keysym.mod = SDL.SDL_Keymod.KMOD_NONE; } Shift = (e.keysym.mod & SDL.SDL_Keymod.KMOD_SHIFT) != SDL.SDL_Keymod.KMOD_NONE; Alt = (e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != SDL.SDL_Keymod.KMOD_NONE; Ctrl = (e.keysym.mod & SDL.SDL_Keymod.KMOD_CTRL) != SDL.SDL_Keymod.KMOD_NONE; _code = SDL.SDL_Keycode.SDLK_UNKNOWN; }
private void OnKeyDown(object sender, SDL.SDL_KeyboardEvent e) { if (TargetManager.IsTargeting && e.keysym.sym == SDL.SDL_Keycode.SDLK_ESCAPE && Input.Keyboard.IsModPressed(e.keysym.mod, SDL.SDL_Keymod.KMOD_NONE)) { TargetManager.CancelTarget(); } _isShiftDown = Input.Keyboard.IsModPressed(e.keysym.mod, SDL.SDL_Keymod.KMOD_SHIFT); if (e.keysym.sym == SDL.SDL_Keycode.SDLK_TAB) { if (!World.Player.InWarMode) { GameActions.SetWarMode(true); } } }
private void OnKeyEvent(SDL.SDL_KeyboardEvent e) { // Try to map to a xenko key Keys key; if (SDLKeys.MapKeys.TryGetValue(e.keysym.sym, out key) && key != Keys.None) { if (e.type == SDL.SDL_EventType.SDL_KEYDOWN) { HandleKeyDown(key); } else { HandleKeyUp(key); } } }
private void OnKeyUp(object sender, SDL.SDL_KeyboardEvent e) { _isShiftDown = Input.Keyboard.IsModPressed(e.keysym.mod, SDL.SDL_Keymod.KMOD_SHIFT); if (e.keysym.sym == SDL.SDL_Keycode.SDLK_TAB) { if (Engine.Profile.Current.HoldDownKeyTab) { if (World.Player.InWarMode) { GameActions.SetWarMode(false); } } else { GameActions.ToggleWarMode(); } } }
private void OnKeyEvent(SDL.SDL_KeyboardEvent e) { // wait, do we want to filter repeating keys? if (e.repeat > 0 && KeyEvent.DisableRepeats) { return; } // Try to map to a xenko key Keys key = ConvertSDLKey(e.keysym.sym); if (key != Keys.None) { if (e.type == SDL.SDL_EventType.SDL_KEYDOWN) { HandleKeyDown(key); } else { HandleKeyUp(key); } } }
public KeyDownEventArgs(SDL.SDL_KeyboardEvent evt) { _evt = evt; }
public static RKeyEvent ToRKeyEvent(this SDL.SDL_KeyboardEvent e) { return(new RKeyEvent((e.keysym.mod & SDL.SDL_Keymod.KMOD_CTRL) != 0, e.keysym.sym == SDL.SDL_Keycode.SDLK_a, e.keysym.sym == SDL.SDL_Keycode.SDLK_c)); }
internal virtual void OnKeyUp(SDL.SDL_KeyboardEvent e) { }
private void InputOnKeyDown(object sender, SDL.SDL_KeyboardEvent e) { }
public static void OnKeyDown(SDL.SDL_KeyboardEvent e) { Shift = (e.keysym.mod & SDL.SDL_Keymod.KMOD_SHIFT) != SDL.SDL_Keymod.KMOD_NONE; Alt = (e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != SDL.SDL_Keymod.KMOD_NONE; Ctrl = (e.keysym.mod & SDL.SDL_Keymod.KMOD_CTRL) != SDL.SDL_Keymod.KMOD_NONE; }
public void ProcessKeyboardEvent(SDL.SDL_KeyboardEvent e) { if (e.repeat > 0) { return; } var state = e.state == SDL.SDL_PRESSED ? GameControllerButtonState.Down : GameControllerButtonState.Up; switch (e.keysym.sym) { case SDL.SDL_Keycode.SDLK_c: A = state; break; case SDL.SDL_Keycode.SDLK_d: B = state; break; case SDL.SDL_Keycode.SDLK_2: Back = state; break; case SDL.SDL_Keycode.SDLK_DOWN: DpadDown = state; break; case SDL.SDL_Keycode.SDLK_LEFT: DpadLeft = state; break; case SDL.SDL_Keycode.SDLK_RIGHT: DpadRight = state; break; case SDL.SDL_Keycode.SDLK_UP: DpadUp = state; break; case SDL.SDL_Keycode.SDLK_ESCAPE: Guide = state; break; case SDL.SDL_Keycode.SDLK_w: LeftShoulder = state; break; case SDL.SDL_Keycode.SDLK_q: LeftTrigger = short.MaxValue; break; case SDL.SDL_Keycode.SDLK_a: LeftStick = state; break; case SDL.SDL_Keycode.SDLK_e: RightShoulder = state; break; case SDL.SDL_Keycode.SDLK_r: RightTrigger = short.MaxValue; break; case SDL.SDL_Keycode.SDLK_f: RightStick = state; break; case SDL.SDL_Keycode.SDLK_1: Start = state; break; case SDL.SDL_Keycode.SDLK_x: X = state; break; case SDL.SDL_Keycode.SDLK_s: Y = state; break; } }
private static void InputOnKeyDown(object sender, SDL.SDL_KeyboardEvent e) { Shift = (e.keysym.mod & SDL.SDL_Keymod.KMOD_SHIFT) != SDL.SDL_Keymod.KMOD_NONE; Alt = (e.keysym.mod & SDL.SDL_Keymod.KMOD_ALT) != SDL.SDL_Keymod.KMOD_NONE; Ctrl = (e.keysym.mod & SDL.SDL_Keymod.KMOD_CTRL) != SDL.SDL_Keymod.KMOD_NONE; }
/// <summary> /// Handle key down event for selection and copy. /// </summary> /// <param name="parent">the control hosting the html to invalidate</param> /// <param name="e">the pressed key</param> public void HandleKeyDown(SDL.SDL_KeyboardEvent e) { _htmlContainerInt.HandleKeyDown(new ControlAdapter(SDL2Adapter.Instance), e.ToRKeyEvent()); }