diff --git a/src/BizHawk.Client.EmuHawk/MainForm.Events.cs b/src/BizHawk.Client.EmuHawk/MainForm.Events.cs index 5466433fd9..c2e0e58dcb 100644 --- a/src/BizHawk.Client.EmuHawk/MainForm.Events.cs +++ b/src/BizHawk.Client.EmuHawk/MainForm.Events.cs @@ -1407,7 +1407,7 @@ namespace BizHawk.Client.EmuHawk private DialogResult OpenQuickNesGraphicsSettingsDialog(ISettingsAdapter settable) { - using QuickNesConfig form = new(Config, settable); + using QuickNesConfig form = new(Config, DialogController, settable); return this.ShowDialogWithTempMute(form); } @@ -2443,7 +2443,7 @@ namespace BizHawk.Client.EmuHawk private void DisplayConfigMenuItem_Click(object sender, EventArgs e) { - using var window = new DisplayConfig(Config, GL); + using DisplayConfig window = new(Config, DialogController, GL); if (this.ShowDialogWithTempMute(window).IsOk()) { DisplayManager.RefreshUserShader(); diff --git a/src/BizHawk.Client.EmuHawk/config/DisplayConfig.cs b/src/BizHawk.Client.EmuHawk/config/DisplayConfig.cs index 02cd936027..389456b050 100755 --- a/src/BizHawk.Client.EmuHawk/config/DisplayConfig.cs +++ b/src/BizHawk.Client.EmuHawk/config/DisplayConfig.cs @@ -9,7 +9,7 @@ using BizHawk.Common; namespace BizHawk.Client.EmuHawk { - public partial class DisplayConfig : Form + public partial class DisplayConfig : Form, IDialogParent { private readonly Config _config; @@ -17,12 +17,15 @@ namespace BizHawk.Client.EmuHawk private string _pathSelection; + public IDialogController DialogController { get; } + public bool NeedReset { get; set; } - public DisplayConfig(Config config, IGL gl) + public DisplayConfig(Config config, IDialogController dialogController, IGL gl) { _config = config; _gl = gl; + DialogController = dialogController; InitializeComponent(); @@ -265,7 +268,7 @@ namespace BizHawk.Client.EmuHawk Filter = new FilesystemFilter(".CGP Files", new[] { "cgp" }).ToString(), FileName = _pathSelection }; - if (ofd.ShowDialog() == DialogResult.OK) + if (this.ShowDialogAsChild(ofd).IsOk()) { rbUser.Checked = true; var choice = Path.GetFullPath(ofd.FileName); @@ -288,7 +291,7 @@ namespace BizHawk.Client.EmuHawk if (!ok) { using var errorForm = new ExceptionBox(errors); - errorForm.ShowDialog(); + this.ShowDialogAsChild(errorForm); return; } } diff --git a/src/BizHawk.Client.EmuHawk/config/NES/QuickNesConfig.cs b/src/BizHawk.Client.EmuHawk/config/NES/QuickNesConfig.cs index adbc3a77d8..3560b58e89 100644 --- a/src/BizHawk.Client.EmuHawk/config/NES/QuickNesConfig.cs +++ b/src/BizHawk.Client.EmuHawk/config/NES/QuickNesConfig.cs @@ -9,7 +9,7 @@ using BizHawk.Emulation.Common; namespace BizHawk.Client.EmuHawk { - public partial class QuickNesConfig : Form + public partial class QuickNesConfig : Form, IDialogParent { private readonly Config _config; @@ -17,11 +17,14 @@ namespace BizHawk.Client.EmuHawk private readonly QuickNES.QuickNESSettings _settings; - public QuickNesConfig(Config config, ISettingsAdapter settable) + public IDialogController DialogController { get; } + + public QuickNesConfig(Config config, IDialogController dialogController, ISettingsAdapter settable) { _config = config; _settable = settable; _settings = (QuickNES.QuickNESSettings) _settable.GetSettings(); + DialogController = dialogController; InitializeComponent(); Icon = Properties.Resources.QuickNesIcon; }