Files
MesenCE/UI/Debugger/ViewModels/ControllerListViewModel.cs
SourMesen 40335ce735 UI: Update to Avalonia 12, .NET 10 and replace ReactiveUI with MVVM community toolkit (#142)
Also fixes DX11.0 support (for Win7 PCs that aren't fully updated), which stopped working after the recent variable refresh rate changes
2026-07-03 16:04:42 +09:00

36 lines
881 B
C#

using Avalonia.Controls;
using Mesen.Interop;
using Mesen.ViewModels;
using CommunityToolkit.Mvvm.ComponentModel;
using System;
using System.Collections.Generic;
namespace Mesen.Debugger.ViewModels
{
public partial class ControllerListViewModel : ViewModelBase
{
[ObservableProperty] public partial List<ControllerInputViewModel> Controllers { get; set; } = new();
[Obsolete("For designer only")]
public ControllerListViewModel() : this(ConsoleType.Snes) { }
public ControllerListViewModel(ConsoleType consoleType)
{
if(Design.IsDesignMode) {
return;
}
foreach(int index in DebugApi.GetAvailableInputOverrides()) {
Controllers.Add(new ControllerInputViewModel(consoleType, index));
}
}
public void SetInputOverrides()
{
foreach(ControllerInputViewModel controller in Controllers) {
controller.SetInputOverrides();
}
}
}
}