Exemplo n.º 1
0
    public InputEventWithModifiers ToInputEvent()
    {
        InputEventWithModifiers result = Type switch
        {
            InputType.Key => new InputEventKey {
                Scancode = Code
            },
            InputType.MouseButton => new InputEventMouseButton {
                ButtonIndex = (int)Code
            },
            _ => throw new NotSupportedException("Unsupported InputType given"),
        };

        result.Alt     = Alt;
        result.Control = Control;
        result.Shift   = Shift;
        return(result);
    }
Exemplo n.º 2
0
    public SpecifiedInputKey(InputEventWithModifiers @event)
    {
        Control = @event.Control;
        Alt     = @event.Alt;
        Shift   = @event.Shift;
        switch (@event)
        {
        case InputEventKey inputKey:
            Type = InputType.Key;
            Code = inputKey.Scancode;
            break;

        case InputEventMouseButton inputMouse:
            Type = InputType.MouseButton;
            Code = (uint)inputMouse.ButtonIndex;
            break;
        }
    }