From d9b765ac899decdced1a454dcc3480970811aedb Mon Sep 17 00:00:00 2001 From: zeromus Date: Sun, 30 Aug 2015 08:44:46 -0500 Subject: [PATCH] display a warning reminder that client restart is needed when changing display method --- BizHawk.Client.EmuHawk/MainForm.Events.cs | 7 ++++++- BizHawk.Client.EmuHawk/config/DisplayConfigLite.cs | 7 +++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/BizHawk.Client.EmuHawk/MainForm.Events.cs b/BizHawk.Client.EmuHawk/MainForm.Events.cs index 4e37c67bc0..7b4f4eb160 100644 --- a/BizHawk.Client.EmuHawk/MainForm.Events.cs +++ b/BizHawk.Client.EmuHawk/MainForm.Events.cs @@ -2211,11 +2211,16 @@ namespace BizHawk.Client.EmuHawk private void DisplayConfigMenuItem_Click(object sender, EventArgs e) { - var result = new config.DisplayConfigLite().ShowDialog(); + var window = new config.DisplayConfigLite(); + var result = window.ShowDialog(); if (result == DialogResult.OK) { FrameBufferResized(); SynchChrome(); + if (window.NeedReset) + { + GlobalWin.OSD.AddMessage("Restart program for changed settings"); + } } } diff --git a/BizHawk.Client.EmuHawk/config/DisplayConfigLite.cs b/BizHawk.Client.EmuHawk/config/DisplayConfigLite.cs index 261b5bce4a..8320458778 100644 --- a/BizHawk.Client.EmuHawk/config/DisplayConfigLite.cs +++ b/BizHawk.Client.EmuHawk/config/DisplayConfigLite.cs @@ -14,7 +14,10 @@ namespace BizHawk.Client.EmuHawk.config { public partial class DisplayConfigLite : Form { + public bool NeedReset; + string PathSelection; + public DisplayConfigLite() { InitializeComponent(); @@ -139,6 +142,7 @@ namespace BizHawk.Client.EmuHawk.config int.TryParse(txtCustomARWidth.Text, out Global.Config.DispCustomUserARWidth); int.TryParse(txtCustomARHeight.Text, out Global.Config.DispCustomUserARHeight); + var oldDisplayMethod = Global.Config.DispMethod; if(rbOpenGL.Checked) Global.Config.DispMethod = Config.EDispMethod.OpenGL; if(rbGDIPlus.Checked) @@ -146,6 +150,9 @@ namespace BizHawk.Client.EmuHawk.config if(rbD3D9.Checked) Global.Config.DispMethod = Config.EDispMethod.SlimDX9; + if (oldDisplayMethod != Global.Config.DispMethod) + NeedReset = true; + Global.Config.DispUserFilterPath = PathSelection; GlobalWin.DisplayManager.RefreshUserShader();