Initial commit

This commit is contained in:
2026-08-22 19:11:00 +03:00 Unverified
commit db368674d4
74 changed files with 2739 additions and 0 deletions
@@ -0,0 +1,47 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Text;
using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using WinWARP.Core.Services;
namespace WinWARP.Core.ViewModels;
public partial class SettingsViewModel : ObservableObject
{
private readonly ILocalizationService _localizationService;
private readonly INavigationService _navigationService;
public SettingsViewModel(ILocalizationService localizationService, INavigationService navigationService)
{
_navigationService = navigationService;
_localizationService = localizationService;
SelectedLanguage = _localizationService.GetCurrentLanguage();
Languages = new ObservableCollection<string>(_localizationService.GetSupportedLanguages());
}
[RelayCommand]
private void Navigate(object? tagParameter)
{
if (tagParameter is Type viewModelType)
{
var method = _navigationService.GetType().GetMethod("NavigateTo")?.MakeGenericMethod(viewModelType);
method?.Invoke(_navigationService, [null]);
}
}
[ObservableProperty]
public partial string SelectedLanguage
{
get; set;
}
partial void OnSelectedLanguageChanged(string value)
{
_localizationService.SetLanguageAsync(value);
}
public ObservableCollection<string> Languages;
}