Split `FirmwaresMenuItem_Click`

This commit is contained in:
YoshiRulz 2023-03-17 06:35:42 +10:00
parent 39fda0fa17
commit f021159931
No known key found for this signature in database
GPG Key ID: C4DE31C245353FB7
2 changed files with 15 additions and 18 deletions

View File

@ -880,25 +880,22 @@ namespace BizHawk.Client.EmuHawk
InputManager.SyncControls(Emulator, MovieSession, Config);
}
private void OpenFWConfigRomLoadFailed(RomLoader.RomErrorArgs args)
{
using FirmwaresConfig configForm = new(
this,
FirmwareManager,
Config.FirmwareUserSpecifications,
Config.PathEntries,
retryLoadRom: true,
reloadRomPath: args.RomPath);
args.Retry = this.ShowDialogWithTempMute(configForm) is DialogResult.Retry;
}
private void FirmwaresMenuItem_Click(object sender, EventArgs e)
{
if (e is RomLoader.RomErrorArgs args)
{
using var configForm = new FirmwaresConfig(
this,
FirmwareManager,
Config.FirmwareUserSpecifications,
Config.PathEntries,
retryLoadRom: true,
reloadRomPath: args.RomPath);
var result = this.ShowDialogWithTempMute(configForm);
args.Retry = result == DialogResult.Retry;
}
else
{
using var configForm = new FirmwaresConfig(this, FirmwareManager, Config.FirmwareUserSpecifications, Config.PathEntries);
this.ShowDialogWithTempMute(configForm);
}
using var configForm = new FirmwaresConfig(this, FirmwareManager, Config.FirmwareUserSpecifications, Config.PathEntries);
this.ShowDialogWithTempMute(configForm);
}
private void MessagesMenuItem_Click(object sender, EventArgs e)

View File

@ -3694,7 +3694,7 @@ namespace BizHawk.Client.EmuHawk
text: "The core needs certain firmware to load this rom.\n\nOpen the firmware manager now?",
useOKCancel: true))
{
FirmwaresMenuItem_Click(null, e);
OpenFWConfigRomLoadFailed(e);
if (e.Retry)
{
// Retry loading the ROM here. This leads to recursion, as the original call to LoadRom has not exited yet,