mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2025-06-29 21:46:25 +02:00
Ava UI: Input Menu Refactor (#5826)
* Refactor * Apply suggestions from code review Co-authored-by: Ac_K <Acoustik666@gmail.com> * Update src/Ryujinx/UI/Views/Settings/SettingsHotkeysView.axaml.cs Co-authored-by: Ac_K <Acoustik666@gmail.com> * Update src/Ryujinx.Input/ButtonValueType.cs Co-authored-by: Ac_K <Acoustik666@gmail.com> * Add empty line * Requested renames * Update src/Ryujinx/UI/Views/Settings/SettingsHotkeysView.axaml.cs Co-authored-by: gdkchan <gab.dark.100@gmail.com> * Make parent models private readonly * Fix ControllerInputView * Make line shorter * Mac keys in locale * Double line break * Fix build * Get rid of _isValid * Fix potential race condition * Rename HasAnyButtonPressed to IsAnyButtonPressed * Use switches * Simplify enumeration --------- Co-authored-by: Ac_K <Acoustik666@gmail.com> Co-authored-by: gdkchan <gab.dark.100@gmail.com> Co-authored-by: TSR Berry <20988865+TSRBerry@users.noreply.github.com>
This commit is contained in:
parent
8884d1fd73
commit
446f2854a5
38 changed files with 3402 additions and 1275 deletions
33
src/Ryujinx.Input/Button.cs
Normal file
33
src/Ryujinx.Input/Button.cs
Normal file
|
@ -0,0 +1,33 @@
|
|||
using System;
|
||||
|
||||
namespace Ryujinx.Input
|
||||
{
|
||||
public readonly struct Button
|
||||
{
|
||||
public readonly ButtonType Type;
|
||||
private readonly uint _rawValue;
|
||||
|
||||
public Button(Key key)
|
||||
{
|
||||
Type = ButtonType.Key;
|
||||
_rawValue = (uint)key;
|
||||
}
|
||||
|
||||
public Button(GamepadButtonInputId gamepad)
|
||||
{
|
||||
Type = ButtonType.GamepadButtonInputId;
|
||||
_rawValue = (uint)gamepad;
|
||||
}
|
||||
|
||||
public Button(StickInputId stick)
|
||||
{
|
||||
Type = ButtonType.StickId;
|
||||
_rawValue = (uint)stick;
|
||||
}
|
||||
|
||||
public T AsHidType<T>() where T : Enum
|
||||
{
|
||||
return (T)Enum.ToObject(typeof(T), _rawValue);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue