private async Task btnPatch_Click(object sender, EventArgs e) { using var _ = new ControlLock(btnPatch); IoC.Notif.ShowStatus("Generating patch..."); IoC.Notif.ShowUnknownProgress(); if (Plugins.Any() && !Plugins.All(x => x.ValidateChanges())) { IoC.Notif.HideProgress(); IoC.Notif.ShowStatus("Pack install aborted"); return; } var sw = new Stopwatch(); sw.Start(); var success = await Async.Run(CreatePatch); Settings.UpdatePatchStatus(); IoC.Notif.HideProgress(); if (success) { IoC.Notif.ShowStatus($"Patch installed ({sw.Elapsed.TotalMilliseconds:n0} ms)"); } }
private async Task btnLoadPatch_Click(object sender, EventArgs e) { using var _ = new ControlLock(btnLoadPatch); var ofd = new OpenFileDialog { CheckFileExists = true, Multiselect = false, Filter = "Pack files (*.bin)|*.bin|All files (*.*)|*.*" }; if (ofd.ShowDialog() != true) { return; } await LoadExistingPack(ofd.FileName, false); }