30 lines
1007 B
C#
30 lines
1007 B
C#
using System;
|
|
using System.Threading.Tasks;
|
|
using Avalonia.ReactiveUI;
|
|
using ReactiveUI;
|
|
using VaultSmpInstaller.ViewModels;
|
|
|
|
namespace VaultSmpInstaller.Views;
|
|
|
|
public partial class ProfileWindow1 : ReactiveWindow<ProfileWindow1ViewModel>
|
|
{
|
|
public ProfileWindow1()
|
|
{
|
|
InitializeComponent();
|
|
|
|
this.WhenActivated(d => d(ViewModel!.UseCurseforgeCommand.Subscribe(Close)));
|
|
this.WhenActivated(d => d(ViewModel!.UsePrismCommand.Subscribe(Close)));
|
|
|
|
this.WhenActivated(action =>
|
|
action(ViewModel!.ShowProfileSelectionDialog.RegisterHandler(DoShowDialogAsync)));
|
|
}
|
|
private async Task DoShowDialogAsync(InteractionContext<ProfileWindow2ViewModel, ProfileWindow2ViewModel.InstanceInfo?> interaction)
|
|
{
|
|
var dialog = new ProfileWindow2();
|
|
dialog.DataContext = interaction.Input;
|
|
|
|
var result = await dialog.ShowDialog<ProfileWindow2ViewModel.InstanceInfo?>(this);
|
|
interaction.SetOutput(result);
|
|
}
|
|
|
|
} |