MoonWorks/src/Input/VirtualButtons/GamepadButton.cs

27 lines
628 B
C#
Raw Normal View History

2022-07-12 23:09:23 +00:00
using SDL2;
namespace MoonWorks.Input
{
/// <summary>
/// A virtual button corresponding to a gamepad button.
/// </summary>
2022-07-12 23:09:23 +00:00
public class GamepadButton : VirtualButton
{
public Gamepad Parent { get; }
2022-07-12 23:09:23 +00:00
SDL.SDL_GameControllerButton SDL_Button;
public GamepadButtonCode Code { get; }
2022-07-12 23:09:23 +00:00
internal GamepadButton(Gamepad parent, GamepadButtonCode code, SDL.SDL_GameControllerButton sdlButton)
2022-07-12 23:09:23 +00:00
{
Parent = parent;
2022-07-12 23:09:23 +00:00
Code = code;
SDL_Button = sdlButton;
}
internal override bool CheckPressed()
{
return MoonWorks.Conversions.ByteToBool(SDL.SDL_GameControllerGetButton(Parent.Handle, SDL_Button));
2022-07-12 23:09:23 +00:00
}
}
}