127 lines
4.7 KiB
C#
127 lines
4.7 KiB
C#
using System;
|
|
using System.Windows.Forms;
|
|
|
|
using BizHawk.Client.Common;
|
|
|
|
namespace BizHawk.Client.EmuHawk
|
|
{
|
|
public partial class EmuHawkOptions : Form
|
|
{
|
|
public int AutosaveSaveRAMSeconds {
|
|
get {
|
|
if (AutosaveSRAMradioButton1.Checked)
|
|
return 5;
|
|
if (AutosaveSRAMradioButton2.Checked)
|
|
return 5 * 60;
|
|
return (int)AutosaveSRAMtextBox.Value;
|
|
}
|
|
set {
|
|
switch (value)
|
|
{
|
|
case 5:
|
|
AutosaveSRAMradioButton1.Checked = true;
|
|
AutosaveSRAMtextBox.Enabled = false;
|
|
break;
|
|
case 5 * 60:
|
|
AutosaveSRAMradioButton2.Checked = true;
|
|
AutosaveSRAMtextBox.Enabled = false;
|
|
break;
|
|
default:
|
|
AutosaveSRAMradioButton3.Checked = true;
|
|
AutosaveSRAMtextBox.Enabled = true;
|
|
break;
|
|
}
|
|
AutosaveSRAMtextBox.Value = value;
|
|
}
|
|
}
|
|
|
|
public EmuHawkOptions()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void GuiOptions_Load(object sender, EventArgs e)
|
|
{
|
|
StartFullScreenCheckbox.Checked = Global.Config.StartFullscreen;
|
|
StartPausedCheckbox.Checked = Global.Config.StartPaused;
|
|
PauseWhenMenuActivatedCheckbox.Checked = Global.Config.PauseWhenMenuActivated;
|
|
EnableContextMenuCheckbox.Checked = Global.Config.ShowContextMenu;
|
|
SaveWindowPositionCheckbox.Checked = Global.Config.SaveWindowPosition;
|
|
RunInBackgroundCheckbox.Checked = Global.Config.RunInBackground;
|
|
AcceptBackgroundInputCheckbox.Checked = Global.Config.AcceptBackgroundInput;
|
|
NeverAskSaveCheckbox.Checked = Global.Config.SupressAskSave;
|
|
SingleInstanceModeCheckbox.Checked = Global.Config.SingleInstanceMode;
|
|
|
|
BackupSRamCheckbox.Checked = Global.Config.BackupSaveram;
|
|
AutosaveSRAMCheckbox.Checked = Global.Config.AutosaveSaveRAM;
|
|
groupBox2.Enabled = AutosaveSRAMCheckbox.Checked;
|
|
AutosaveSaveRAMSeconds = Global.Config.FlushSaveRamFrames / 60;
|
|
FrameAdvSkipLagCheckbox.Checked = Global.Config.SkipLagFrame;
|
|
LogWindowAsConsoleCheckbox.Checked = Global.Config.WIN32_CONSOLE;
|
|
LuaDuringTurboCheckbox.Checked = Global.Config.RunLuaDuringTurbo;
|
|
cbMoviesOnDisk.Checked = Global.Config.MoviesOnDisk;
|
|
cbMoviesInAWE.Checked = Global.Config.MoviesInAWE;
|
|
|
|
NLuaRadio.Checked = Global.Config.UseNLua;
|
|
LuaInterfaceRadio.Checked = !Global.Config.UseNLua;
|
|
|
|
if (LogConsole.ConsoleVisible)
|
|
{
|
|
LogWindowAsConsoleCheckbox.Enabled = false;
|
|
toolTip1.SetToolTip(
|
|
LogWindowAsConsoleCheckbox,
|
|
"This can not be changed while the log window is open. I know, it's annoying.");
|
|
}
|
|
}
|
|
|
|
private void OkBtn_Click(object sender, EventArgs e)
|
|
{
|
|
Global.Config.StartFullscreen = StartFullScreenCheckbox.Checked;
|
|
Global.Config.StartPaused = StartPausedCheckbox.Checked;
|
|
Global.Config.PauseWhenMenuActivated = PauseWhenMenuActivatedCheckbox.Checked;
|
|
Global.Config.ShowContextMenu = EnableContextMenuCheckbox.Checked;
|
|
Global.Config.SaveWindowPosition = SaveWindowPositionCheckbox.Checked;
|
|
Global.Config.RunInBackground = RunInBackgroundCheckbox.Checked;
|
|
Global.Config.AcceptBackgroundInput = AcceptBackgroundInputCheckbox.Checked;
|
|
Global.Config.SupressAskSave = NeverAskSaveCheckbox.Checked;
|
|
Global.Config.SingleInstanceMode = SingleInstanceModeCheckbox.Checked;
|
|
|
|
Global.Config.BackupSaveram = BackupSRamCheckbox.Checked;
|
|
Global.Config.AutosaveSaveRAM = AutosaveSRAMCheckbox.Checked;
|
|
Global.Config.FlushSaveRamFrames = AutosaveSaveRAMSeconds * 60;
|
|
if (GlobalWin.MainForm.AutoFlushSaveRamIn > Global.Config.FlushSaveRamFrames)
|
|
GlobalWin.MainForm.AutoFlushSaveRamIn = Global.Config.FlushSaveRamFrames;
|
|
Global.Config.SkipLagFrame = FrameAdvSkipLagCheckbox.Checked;
|
|
Global.Config.WIN32_CONSOLE = LogWindowAsConsoleCheckbox.Checked;
|
|
Global.Config.RunLuaDuringTurbo = LuaDuringTurboCheckbox.Checked;
|
|
Global.Config.MoviesOnDisk = cbMoviesOnDisk.Checked;
|
|
Global.Config.MoviesInAWE = cbMoviesInAWE.Checked;
|
|
|
|
bool changedLua = Global.Config.UseNLua != NLuaRadio.Checked;
|
|
Global.Config.UseNLua = NLuaRadio.Checked;
|
|
|
|
Close();
|
|
DialogResult = DialogResult.OK;
|
|
GlobalWin.OSD.AddMessage("Custom configurations saved.");
|
|
if(changedLua) GlobalWin.OSD.AddMessage("Restart emulator for Lua change to take effect");
|
|
}
|
|
|
|
private void CancelBtn_Click(object sender, EventArgs e)
|
|
{
|
|
Close();
|
|
DialogResult = DialogResult.Cancel;
|
|
GlobalWin.OSD.AddMessage("Customizing aborted.");
|
|
}
|
|
|
|
private void AutosaveSRAMCheckbox_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
groupBox2.Enabled = AutosaveSRAMCheckbox.Checked;
|
|
}
|
|
|
|
private void AutosaveSRAMradioButton3_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
AutosaveSRAMtextBox.Enabled = AutosaveSRAMradioButton3.Checked;
|
|
}
|
|
}
|
|
}
|