示例#1
0
        public static void ProcessKeyboard()
        {
            KeyboardKeyEventArgs evnt = null;

            prevKeyState = curKeyState;
            curKeyState  = Keyboard.GetState();

            foreach (var keyboardCode in keyboardCodes)
            {
                if (curKeyState[keyboardCode] != prevKeyState[keyboardCode])
                {
                    if (curKeyState[keyboardCode])
                    {
                        OnKeyDown?.Invoke(evnt);

                        input.ProcessKeyDown(keyboardCode);
                    }
                    else
                    {
                        OnKeyUp?.Invoke(evnt);
                        input.ProcessKeyUp(keyboardCode);
                    }
                }
            }
        }
        protected override void OnKeyUp(KeyboardKeyEventArgs e)
        {
            altDown = false;

            input.ProcessKeyUp(e);

            base.OnKeyUp(e);
        }
示例#3
0
        protected void OnKeyboardKeyUp(object sender, KeyboardKeyEventArgs e)
        {
            if (!Focused)
            {
                return;
            }

            gwenInput.ProcessKeyUp(e);
        }
示例#4
0
 protected override void OnKeyUp(OpenTK.Input.KeyboardKeyEventArgs e)
 {
     base.OnKeyUp(e);
     try
     {
         input.ProcessKeyUp(e);
     }
     catch (Exception ex)
     {
         //sdl eats exceptions
         Console.WriteLine(ex.ToString());
         throw ex;
     }
 }
示例#5
0
        protected override void OnKeyUp(KeyboardKeyEventArgs e)
        {
            base.OnKeyUp(e);
            if (linerider.TrackFiles.TrackRecorder.Recording)
            {
                return;
            }
            if (_input.ProcessKeyUp(e) || Canvas.GetOpenWindows()?.Count > 1)
            {
                return;
            }
            if (e.Key == Key.Space)
            {
                _handToolOverride = false;
                _handtool.Stop();
            }
            else if (e.Key == Key.AltLeft || e.Key == Key.AltRight)
            {
                if (SelectedTool == _lineadjusttool)
                {
                    Invalidate();
                }
            }

            if (e.Key == Key.Z)
            {
                if (_zoomPerTick > 0)
                {
                    _zoomPerTick = 0;
                }
            }
            else if (e.Key == Key.X)
            {
                if (_zoomPerTick < 0)
                {
                    _zoomPerTick = 0;
                }
            }
        }
 protected override void OnKeyUp(KeyboardKeyEventArgs e)
 {
     base.OnKeyUp(e);
     try
     {
         InputUtils.UpdateKeysDown(e.Keyboard);
         if (linerider.IO.TrackRecorder.Recording)
         {
             return;
         }
         if (_input.ProcessKeyUp(e) || Canvas.GetOpenWindows()?.Count > 1)
         {
             return;
         }
         InputUtils.ProcessKeyup();
     }
     catch (Exception ex)
     {
         // SDL2 backend eats exceptions.
         // we have to manually crash.
         Program.Crash(ex, true);
         Close();
     }
 }
示例#7
0
 protected override void OnKeyUp(KeyboardKeyEventArgs e)
 {
     base.OnKeyUp(e);
     try
     {
         InputUtils.UpdateKeysDown(e.Keyboard, e.Modifiers);
         if (linerider.IO.TrackRecorder.Recording)
         {
             return;
         }
         InputUtils.CheckCurrentHotkey();
         CurrentTools.SelectedTool.OnKeyUp(e.Key);
         _input.ProcessKeyUp(e);
         UpdateCursor();
         Invalidate();
     }
     catch (Exception ex)
     {
         // SDL2 backend eats exceptions.
         // we have to manually crash.
         Program.Crash(ex, true);
         Close();
     }
 }
 void Keyboard_KeyUp(object sender, KeyboardKeyEventArgs e)
 {
     altDown = false;
     input.ProcessKeyUp(e);
 }
示例#9
0
 void Keyboard_KeyUp(object sender, KeyboardKeyEventArgs e)
 {
     InputHandler.ProcessKeyUp(e);
 }
示例#10
0
 void Keyboard_KeyUp(object sender, KeyboardKeyEventArgs e)
 {
     _input.ProcessKeyUp(e);
 }