mirror of
https://gitlab.com/nullmax17/PlombirLauncher.git
synced 2025-03-14 18:01:12 +03:00
40 lines
1.1 KiB
C#
40 lines
1.1 KiB
C#
using System;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using Avalonia.Controls;
|
|
using Avalonia.Threading;
|
|
using LauncherGUI.ViewModels;
|
|
using Plombir;
|
|
|
|
namespace LauncherGUI.Views;
|
|
|
|
public partial class VersionSelectorWindow : Window
|
|
{
|
|
private MainWindowViewModel _mainViewModel;
|
|
public VersionSelectorWindow(MainWindowViewModel mainViewModel)
|
|
{
|
|
InitializeComponent();
|
|
_mainViewModel = mainViewModel;
|
|
|
|
//Load versions asynchronously
|
|
var versionsList = Task.Run(() => Plombir.Utils.GetAllMcVersions().GetAwaiter().GetResult());
|
|
|
|
versions.ItemsSource = versionsList.Result;
|
|
|
|
}
|
|
|
|
private async void OnSelectionChanged(object sender, SelectionChangedEventArgs e)
|
|
{
|
|
var selectedVersion = versions.SelectedItem as string ?? throw new NullReferenceException("Null version selected!");
|
|
|
|
_mainViewModel.SelectedVersion = selectedVersion;
|
|
|
|
System.Console.WriteLine($"Selected version: {selectedVersion}");
|
|
|
|
LauncherUtils.CreateMinecraftInstance(_mainViewModel, this);
|
|
Close();
|
|
|
|
|
|
}
|
|
}
|