Pass globals to DisplayManager as with OSDManager
* moved initialisation of global `OSDManager` to `DisplayManager` ctor again * `DisplayManager.UpdateGlobals` calls `DisplayManager.OSD.UpdateGlobals` * goodbye `GlobalWin.Emulator` and `GlobalWin._mainForm` :)
This commit is contained in:
parent
c991babdce
commit
453ea2b1bb
|
@ -51,13 +51,15 @@ namespace BizHawk.Client.EmuHawk
|
||||||
|
|
||||||
public readonly OSDManager OSD;
|
public readonly OSDManager OSD;
|
||||||
|
|
||||||
private Config GlobalConfig => GlobalWin.Config;
|
private Config GlobalConfig;
|
||||||
|
|
||||||
private IEmulator GlobalEmulator => GlobalWin.Emulator;
|
private IEmulator GlobalEmulator;
|
||||||
|
|
||||||
public DisplayManager(OSDManager osd, IGL gl, PresentationPanel presentationPanel, Func<bool> getIsSecondaryThrottlingDisabled)
|
public DisplayManager(Config config, IEmulator emulator, InputManager inputManager, IMovieSession movieSession, IGL gl, PresentationPanel presentationPanel, Func<bool> getIsSecondaryThrottlingDisabled)
|
||||||
{
|
{
|
||||||
OSD = osd;
|
GlobalConfig = config;
|
||||||
|
GlobalEmulator = emulator;
|
||||||
|
OSD = new OSDManager(config, emulator, inputManager, movieSession);
|
||||||
_getIsSecondaryThrottlingDisabled = getIsSecondaryThrottlingDisabled;
|
_getIsSecondaryThrottlingDisabled = getIsSecondaryThrottlingDisabled;
|
||||||
_gl = gl;
|
_gl = gl;
|
||||||
|
|
||||||
|
@ -136,6 +138,13 @@ namespace BizHawk.Client.EmuHawk
|
||||||
RefreshUserShader();
|
RefreshUserShader();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void UpdateGlobals(Config config, IEmulator emulator)
|
||||||
|
{
|
||||||
|
GlobalConfig = config;
|
||||||
|
GlobalEmulator = emulator;
|
||||||
|
OSD.UpdateGlobals(config, emulator);
|
||||||
|
}
|
||||||
|
|
||||||
public bool Disposed { get; private set; }
|
public bool Disposed { get; private set; }
|
||||||
|
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
|
|
|
@ -1,15 +1,10 @@
|
||||||
using BizHawk.Client.Common;
|
using BizHawk.Client.Common;
|
||||||
using BizHawk.Emulation.Common;
|
|
||||||
|
|
||||||
// ReSharper disable StyleCop.SA1401
|
// ReSharper disable StyleCop.SA1401
|
||||||
namespace BizHawk.Client.EmuHawk
|
namespace BizHawk.Client.EmuHawk
|
||||||
{
|
{
|
||||||
public static class GlobalWin
|
public static class GlobalWin
|
||||||
{
|
{
|
||||||
public static MainForm _mainForm { get; set; }
|
|
||||||
|
|
||||||
public static IEmulator Emulator => _mainForm.Emulator;
|
|
||||||
|
|
||||||
public static Sound Sound;
|
public static Sound Sound;
|
||||||
|
|
||||||
public static Config Config { get; set; }
|
public static Config Config { get; set; }
|
||||||
|
|
|
@ -279,8 +279,6 @@ namespace BizHawk.Client.EmuHawk
|
||||||
Database.InitializeDatabase(Path.Combine(PathUtils.ExeDirectoryPath, "gamedb", "gamedb.txt"));
|
Database.InitializeDatabase(Path.Combine(PathUtils.ExeDirectoryPath, "gamedb", "gamedb.txt"));
|
||||||
BootGodDb.Initialize(Path.Combine(PathUtils.ExeDirectoryPath, "gamedb"));
|
BootGodDb.Initialize(Path.Combine(PathUtils.ExeDirectoryPath, "gamedb"));
|
||||||
|
|
||||||
GlobalWin._mainForm = this;
|
|
||||||
|
|
||||||
_config = config; // skips assignment to GlobalWin.Config as Program already did that
|
_config = config; // skips assignment to GlobalWin.Config as Program already did that
|
||||||
GL = gl;
|
GL = gl;
|
||||||
|
|
||||||
|
@ -339,7 +337,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
{
|
{
|
||||||
GraphicsControl = { MainWindow = true }
|
GraphicsControl = { MainWindow = true }
|
||||||
};
|
};
|
||||||
DisplayManager = new DisplayManager(new OSDManager(Config, Emulator, InputManager, MovieSession), GL, _presentationPanel, () => DisableSecondaryThrottling);
|
DisplayManager = new DisplayManager(Config, Emulator, InputManager, MovieSession, GL, _presentationPanel, () => DisableSecondaryThrottling);
|
||||||
Controls.Add(_presentationPanel);
|
Controls.Add(_presentationPanel);
|
||||||
Controls.SetChildIndex(_presentationPanel, 0);
|
Controls.SetChildIndex(_presentationPanel, 0);
|
||||||
|
|
||||||
|
@ -2796,7 +2794,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
InputManager.SyncControls(Emulator, MovieSession, Config);
|
InputManager.SyncControls(Emulator, MovieSession, Config);
|
||||||
Tools.Restart(Config, Emulator, Game);
|
Tools.Restart(Config, Emulator, Game);
|
||||||
ExtToolManager.Restart(Config.PathEntries);
|
ExtToolManager.Restart(Config.PathEntries);
|
||||||
OSD.UpdateGlobals(Config, Emulator);
|
DisplayManager.UpdateGlobals(Config, Emulator);
|
||||||
AddOnScreenMessage($"Config file loaded: {iniPath}");
|
AddOnScreenMessage($"Config file loaded: {iniPath}");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3773,7 +3771,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
CurrentlyOpenRom = oaOpenrom?.Path ?? openAdvancedArgs;
|
CurrentlyOpenRom = oaOpenrom?.Path ?? openAdvancedArgs;
|
||||||
CurrentlyOpenRomArgs = args;
|
CurrentlyOpenRomArgs = args;
|
||||||
OnRomChanged();
|
OnRomChanged();
|
||||||
OSD.UpdateGlobals(Config, Emulator);
|
DisplayManager.UpdateGlobals(Config, Emulator);
|
||||||
DisplayManager.Blank();
|
DisplayManager.Blank();
|
||||||
CreateRewinder();
|
CreateRewinder();
|
||||||
|
|
||||||
|
@ -3923,7 +3921,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
Tools.Restart(Config, Emulator, Game);
|
Tools.Restart(Config, Emulator, Game);
|
||||||
RewireSound();
|
RewireSound();
|
||||||
ClearHolds();
|
ClearHolds();
|
||||||
OSD.UpdateGlobals(Config, Emulator);
|
DisplayManager.UpdateGlobals(Config, Emulator);
|
||||||
InputManager.SyncControls(Emulator, MovieSession, Config);
|
InputManager.SyncControls(Emulator, MovieSession, Config);
|
||||||
Tools.UpdateCheatRelatedTools(null, null);
|
Tools.UpdateCheatRelatedTools(null, null);
|
||||||
PauseOnFrame = null;
|
PauseOnFrame = null;
|
||||||
|
|
Loading…
Reference in New Issue