refactor: shortened IButtonInputs event declaration

This commit is contained in:
2025-08-10 14:42:47 +03:00
parent cf68f6ca6f
commit 746d29fb7a
2 changed files with 22 additions and 20 deletions

View File

@@ -4,15 +4,17 @@ namespace Engine.Systems.Input;
public interface IButtonInputs<T> : IHasStateEnable
{
Event<IButtonInputs<T>, ButtonCallbackArguments> OnAnyButtonPressed { get; }
Event<IButtonInputs<T>, ButtonCallbackArguments> OnAnyButtonReleased { get; }
InputEvent OnAnyButtonPressed { get; }
InputEvent OnAnyButtonReleased { get; }
void RegisterOnPress(T button, Event<IButtonInputs<T>, ButtonCallbackArguments>.EventHandler callback);
void UnregisterOnPress(T button, Event<IButtonInputs<T>, ButtonCallbackArguments>.EventHandler callback);
void RegisterOnRelease(T button, Event<IButtonInputs<T>, ButtonCallbackArguments>.EventHandler callback);
void UnregisterOnRelease(T button, Event<IButtonInputs<T>, ButtonCallbackArguments>.EventHandler callback);
void RegisterOnPress(T button, InputEvent.EventHandler callback);
void UnregisterOnPress(T button, InputEvent.EventHandler callback);
void RegisterOnRelease(T button, InputEvent.EventHandler callback);
void UnregisterOnRelease(T button, InputEvent.EventHandler callback);
bool IsPressed(T button);
readonly record struct ButtonCallbackArguments(T Button);
class InputEvent : Event<IButtonInputs<T>, ButtonCallbackArguments>;
}