Пример #1
0
        public static bool IsDown(Key key)
        {
            KeyDownData p   = _pressed[key];
            bool        ret = p.PressTime != 0;

            if (ret)
            {
                p.PressChecked = true;
            }
            return(ret);
        }
Пример #2
0
        public static void OnKeyDown(Avalonia.Input.KeyEventArgs e, bool down)
        {
            Key key;

            switch (e.Key)
            {
            case Avalonia.Input.Key.Q: key = Key.L; break;

            case Avalonia.Input.Key.W: key = Key.R; break;

            case Avalonia.Input.Key.A: key = Key.X; break;

            case Avalonia.Input.Key.S: key = Key.Y; break;

            case Avalonia.Input.Key.Z: key = Key.B; break;

            case Avalonia.Input.Key.X: key = Key.A; break;

            case Avalonia.Input.Key.Left: key = Key.Left; break;

            case Avalonia.Input.Key.Right: key = Key.Right; break;

            case Avalonia.Input.Key.Down: key = Key.Down; break;

            case Avalonia.Input.Key.Up: key = Key.Up; break;

            case Avalonia.Input.Key.Enter: key = Key.Start; break;

            case Avalonia.Input.Key.RightShift: key = Key.Select; break;

            default: return;
            }
            KeyDownData p = _pressed[key];

            if (down)
            {
                p.PressTime++;
            }
            else
            {
                p.PressChecked = false;
                p.PressTime    = 0;
            }
            e.Handled = true;
        }