33 lines
1.0 KiB
C#
33 lines
1.0 KiB
C#
using Avalonia;
|
|
using Avalonia.Controls;
|
|
using Avalonia.Markup.Xaml;
|
|
using ModpackUpdater.Apps.Manager.Api.Model;
|
|
using ModpackUpdater.Manager;
|
|
|
|
namespace ModpackUpdater.Apps.Manager.Ui;
|
|
|
|
public partial class UpdatesCollectorWindow : Window
|
|
{
|
|
public record ModUpdateInfo(KeyValuePair<string, string>[] AvailableVersions, InstallAction Origin)
|
|
{
|
|
public int NewVersion { get; set; } = 0;
|
|
}
|
|
|
|
public record ModUpdates(List<ModUpdateInfo> List);
|
|
|
|
private readonly IWorkspace workspace;
|
|
private readonly ModpackFactory factory = new();
|
|
private readonly InstallAction[] actions;
|
|
|
|
public ModUpdates? CurrentUpdates { get; private set; }
|
|
public ModUpdateInfo? SelectedUpdate => radListView_Updates.SelectedItem?.Value as ModUpdateInfo;
|
|
public int SelectedVersion => radListView_VersionTags.SelectedIndex;
|
|
|
|
public UpdatesCollectorWindow(IWorkspace workspace, params InstallAction[] actions)
|
|
{
|
|
this.workspace = workspace;
|
|
this.actions = actions;
|
|
|
|
InitializeComponent();
|
|
}
|
|
} |