namespace RioJoy.Core.Mapping;

/// <summary>
/// A no-op <see cref="IInputSink"/>: swallows all keyboard/mouse output. Used while
/// a profile is being edited so the RIO can be exercised to check button function
/// without injecting keystrokes/clicks into the OS (lamp feedback still applies).
/// </summary>
public sealed class NullInputSink : IInputSink
{
    public void KeyDown(byte virtualKey, bool extended) { }

    public void KeyUp(byte virtualKey, bool extended) { }

    public void MouseMove(int dx, int dy) { }

    public void MouseButton(MouseButton button, bool down) { }
}
