Files
Vision/VisionAsist/ViewModels/SettingsViewModel.cs
Egor ae0994409a
Some checks failed
Mirror to Gitea / git-sync (push) Has been cancelled
Yess
2026-03-28 00:26:55 +02:00

55 lines
1.1 KiB
C#

using System;
using System.Reflection;
using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using System.Collections.ObjectModel;
using VisionAsist.Models;
using VisionAsist.SDK;
using System.IO;
using System.Linq;
namespace VisionAsist.ViewModels;
public class ModuleItem
{
public string Name { get; set; }
public IRelayCommand SettingsCommand { get; set; }
}
public class SettingsViewModel : ViewModelBase
{
public ObservableCollection<ModuleItem> Modules { get; } = new();
public SettingsViewModel()
{
foreach (var module in Core.ModuleList)
{
AddModule(module.Name);
}
}
public void AddModule(string name)
{
Modules.Add(new ModuleItem
{
Name = name,
SettingsCommand = new RelayCommand(() => OpenSettings(name))
});
}
private void OpenSettings(string moduleName)
{
var module = Core.ModuleList.FirstOrDefault(m => m.Name == moduleName);
if (module != null)
{
module.Module.Settings(new object[] { this });
}
}
}