70 lines
2.3 KiB
C#
70 lines
2.3 KiB
C#
using PCL.Core.App.Localization;
|
|||
|
|
|
||
|
|
namespace PCL;
|
||
|
|
|
||
|
|
public partial class PageDownloadLabyMod
|
||
|
|
{
|
||
|
|
public PageDownloadLabyMod()
|
||
|
|
{
|
||
|
|
Initialized += (_, _) => LoaderInit();
|
||
|
|
Loaded += (_, _) => Init();
|
||
|
|
InitializeComponent();
|
||
|
|
BtnWeb.Click += BtnWeb_Click;
|
||
|
|
}
|
||
|
|
|
||
|
|
private void LoaderInit()
|
||
|
|
{
|
||
|
|
PageLoaderInit(Load, PanLoad, CardVersions, CardTip, ModDownload.dlLabyModListLoader, _ => Load_OnFinish());
|
||
|
|
}
|
||
|
|
|
||
|
|
private void Init()
|
||
|
|
{
|
||
|
|
PanBack.ScrollToHome();
|
||
|
|
}
|
||
|
|
|
||
|
|
private void Load_OnFinish()
|
||
|
|
{
|
||
|
|
// 结果数据化
|
||
|
|
try
|
||
|
|
{
|
||
|
|
var versions = ModDownload.dlLabyModListLoader.output.Value;
|
||
|
|
if (versions is null)
|
||
|
|
return;
|
||
|
|
var productionEntry = new JsonObject();
|
||
|
|
productionEntry.Add("channel", "production");
|
||
|
|
productionEntry.Add("version", versions["production"]["labyModVersion"].ToString());
|
||
|
|
var snapshotEntry = new JsonObject();
|
||
|
|
snapshotEntry.Add("channel", "snapshot");
|
||
|
|
snapshotEntry.Add("version", versions["snapshot"]["labyModVersion"].ToString());
|
||
|
|
PanVersions.Children.Clear();
|
||
|
|
PanVersions.Children.Add(ModDownloadLib.LabyModDownloadListItem(productionEntry,
|
||
|
|
(a, b) => this.LabyMod_Production_Selected((MyListItem)a, b)));
|
||
|
|
PanVersions.Children.Add(ModDownloadLib.LabyModDownloadListItem(snapshotEntry,
|
||
|
|
(a, b) => this.LabyMod_Snapshot_Selected((MyListItem)a, b)));
|
||
|
|
CardVersions.Title = Lang.Text("Download.Version.VersionListCount", versions.Count);
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
ModBase.Log(
|
||
|
|
ex,
|
||
|
|
"可视化 LabyMod 版本列表出错",
|
||
|
|
ModBase.LogLevel.Feedback,
|
||
|
|
userSummary: Lang.Text("Download.Error.OperationFailed"));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
private void LabyMod_Production_Selected(MyListItem sender, EventArgs e)
|
||
|
|
{
|
||
|
|
ModDownloadLib.McDownloadLabyModProductionLoaderSave();
|
||
|
|
}
|
||
|
|
|
||
|
|
private void LabyMod_Snapshot_Selected(MyListItem sender, EventArgs e)
|
||
|
|
{
|
||
|
|
ModDownloadLib.McDownloadLabyModSnapshotLoaderSave();
|
||
|
|
}
|
||
|
|
|
||
|
|
private void BtnWeb_Click(object sender, EventArgs e)
|
||
|
|
{
|
||
|
|
ModBase.OpenWebsite("https://labymod.net");
|
||
|
|
}
|
||
|
|
}
|