snes graphics debugger: use autoconfig

This commit is contained in:
goyuken 2014-12-28 17:15:36 +00:00
parent e80de55210
commit 87c064c6ac
4 changed files with 2689 additions and 2747 deletions

View File

@ -409,6 +409,7 @@ namespace BizHawk.Client.Common
public Dictionary<string, ToolDialogSettings> CommonToolSettings = new Dictionary<string, ToolDialogSettings>();
public Dictionary<string, Dictionary<string, object>> CustomToolSettings = new Dictionary<string, Dictionary<string, object>>();
/*
// SNES Graphics Debugger Dialog Settings
public bool AutoLoadSNESGraphicsDebugger = false;
public bool SNESGraphicsDebuggerSaveWindowPosition = true;
@ -417,6 +418,7 @@ namespace BizHawk.Client.Common
public int SNESGraphicsDebuggerRefreshRate = 4;
public bool SNESGraphicsUseUserBackdropColor = false;
public int SNESGraphicsUserBackdropColor = -1;
*/
// PCE Sound Debugger settings
public ToolDialogSettings PceSoundDebuggerSettings = new ToolDialogSettings();

View File

@ -402,11 +402,6 @@ namespace BizHawk.Client.EmuHawk
GlobalWin.Tools.Load<PCESoundDebugger>();
}
if (Global.Config.AutoLoadSNESGraphicsDebugger)
{
GlobalWin.Tools.Load<SNESGraphicsDebugger>();
}
if (Global.Config.DisplayStatusBar == false)
{
MainStatusBar.Visible = false;

View File

@ -36,9 +36,6 @@
this.saveScreenshotToClipboardToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.optionsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.autoloadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveWindowPositionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.panel1 = new System.Windows.Forms.Panel();
this.groupFreeze = new System.Windows.Forms.GroupBox();
@ -276,8 +273,7 @@
//
this.menuStrip1.ClickThrough = true;
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.fileToolStripMenuItem,
this.optionsToolStripMenuItem});
this.fileToolStripMenuItem});
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Size = new System.Drawing.Size(1086, 24);
@ -292,14 +288,14 @@
this.toolStripSeparator1,
this.exitToolStripMenuItem});
this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20);
this.fileToolStripMenuItem.Size = new System.Drawing.Size(35, 20);
this.fileToolStripMenuItem.Text = "&File";
//
// saveScreenshotAsToolStripMenuItem
//
this.saveScreenshotAsToolStripMenuItem.Enabled = false;
this.saveScreenshotAsToolStripMenuItem.Name = "saveScreenshotAsToolStripMenuItem";
this.saveScreenshotAsToolStripMenuItem.Size = new System.Drawing.Size(270, 22);
this.saveScreenshotAsToolStripMenuItem.Size = new System.Drawing.Size(255, 22);
this.saveScreenshotAsToolStripMenuItem.Text = "Save Screenshot &As...";
//
// saveScreenshotToClipboardToolStripMenuItem
@ -307,46 +303,22 @@
this.saveScreenshotToClipboardToolStripMenuItem.Enabled = false;
this.saveScreenshotToClipboardToolStripMenuItem.Name = "saveScreenshotToClipboardToolStripMenuItem";
this.saveScreenshotToClipboardToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.C)));
this.saveScreenshotToClipboardToolStripMenuItem.Size = new System.Drawing.Size(270, 22);
this.saveScreenshotToClipboardToolStripMenuItem.Size = new System.Drawing.Size(255, 22);
this.saveScreenshotToClipboardToolStripMenuItem.Text = "Save Screenshot to Clipboard";
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(267, 6);
this.toolStripSeparator1.Size = new System.Drawing.Size(252, 6);
//
// exitToolStripMenuItem
//
this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
this.exitToolStripMenuItem.ShortcutKeyDisplayString = "Alt+F4";
this.exitToolStripMenuItem.Size = new System.Drawing.Size(270, 22);
this.exitToolStripMenuItem.Size = new System.Drawing.Size(255, 22);
this.exitToolStripMenuItem.Text = "E&xit";
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
//
// optionsToolStripMenuItem
//
this.optionsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.autoloadToolStripMenuItem,
this.saveWindowPositionToolStripMenuItem});
this.optionsToolStripMenuItem.Name = "optionsToolStripMenuItem";
this.optionsToolStripMenuItem.Size = new System.Drawing.Size(61, 20);
this.optionsToolStripMenuItem.Text = "&Options";
this.optionsToolStripMenuItem.DropDownOpened += new System.EventHandler(this.optionsToolStripMenuItem_DropDownOpened);
//
// autoloadToolStripMenuItem
//
this.autoloadToolStripMenuItem.Name = "autoloadToolStripMenuItem";
this.autoloadToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.autoloadToolStripMenuItem.Text = "Autoload";
this.autoloadToolStripMenuItem.Click += new System.EventHandler(this.autoloadToolStripMenuItem_Click);
//
// saveWindowPositionToolStripMenuItem
//
this.saveWindowPositionToolStripMenuItem.Name = "saveWindowPositionToolStripMenuItem";
this.saveWindowPositionToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.saveWindowPositionToolStripMenuItem.Text = "&Save Window Position";
this.saveWindowPositionToolStripMenuItem.Click += new System.EventHandler(this.saveWindowPositionToolStripMenuItem_Click);
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.ColumnCount = 2;
@ -2746,14 +2718,11 @@
#endregion
private MenuStripEx menuStrip1;
private System.Windows.Forms.ToolStripMenuItem optionsToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem saveScreenshotAsToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem saveScreenshotToClipboardToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem autoloadToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem saveWindowPositionToolStripMenuItem;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.GroupBox groupBox2;

View File

@ -37,11 +37,8 @@ using BizHawk.Emulation.Common;
namespace BizHawk.Client.EmuHawk
{
public unsafe partial class SNESGraphicsDebugger : Form, IToolForm
public unsafe partial class SNESGraphicsDebugger : Form, IToolFormAutoConfig
{
int defaultWidth; //For saving the default size of the dialog, so the user can restore if desired
int defaultHeight;
List<DisplayTypeItem> displayTypeItems = new List<DisplayTypeItem>();
public bool UpdateBefore { get { return false; } }
@ -50,6 +47,16 @@ namespace BizHawk.Client.EmuHawk
[RequiredService]
private LibsnesCore Emulator { get; set; }
[ConfigPersist]
public bool UseUserBackdropColor
{
get { return checkBackdropColor.Checked; }
set { checkBackdropColor.Checked = value; }
}
[ConfigPersist]
public int UserBackdropColor { get; set; }
public void Restart()
{
@ -58,7 +65,6 @@ namespace BizHawk.Client.EmuHawk
public SNESGraphicsDebugger()
{
InitializeComponent();
Closing += (o, e) => SaveConfigSettings();
viewerTile.ScaleImage = true;
viewer.ScaleImage = false;
@ -101,6 +107,8 @@ namespace BizHawk.Client.EmuHawk
//tabctrlDetails.SelectedIndex = 1;
SetTab(null);
UserBackdropColor = -1;
}
LibsnesCore currentSnesCore;
@ -535,36 +543,11 @@ namespace BizHawk.Client.EmuHawk
Close();
}
private void optionsToolStripMenuItem_DropDownOpened(object sender, EventArgs e)
{
autoloadToolStripMenuItem.Checked = Global.Config.AutoLoadSNESGraphicsDebugger;
saveWindowPositionToolStripMenuItem.Checked = Global.Config.SNESGraphicsDebuggerSaveWindowPosition;
}
private void autoloadToolStripMenuItem_Click(object sender, EventArgs e)
{
Global.Config.AutoLoadSNESGraphicsDebugger ^= true;
}
private void saveWindowPositionToolStripMenuItem_Click(object sender, EventArgs e)
{
Global.Config.SNESGraphicsDebuggerSaveWindowPosition ^= true;
}
private void SNESGraphicsDebugger_Load(object sender, EventArgs e)
{
defaultWidth = Size.Width; //Save these first so that the user can restore to its original size
defaultHeight = Size.Height;
if (Global.Config.SNESGraphicsDebuggerSaveWindowPosition && Global.Config.SNESGraphicsDebuggerWndx >= 0 && Global.Config.SNESGraphicsDebuggerWndy >= 0)
if (UserBackdropColor != -1)
{
Location = new Point(Global.Config.SNESGraphicsDebuggerWndx, Global.Config.SNESGraphicsDebuggerWndy);
}
checkBackdropColor.Checked = Global.Config.SNESGraphicsUseUserBackdropColor;
if (Global.Config.SNESGraphicsUserBackdropColor != -1)
{
pnBackdropColor.BackColor = Color.FromArgb(Global.Config.SNESGraphicsUserBackdropColor);
pnBackdropColor.BackColor = Color.FromArgb(UserBackdropColor);
}
if (checkBackdropColor.Checked)
{
@ -574,12 +557,6 @@ namespace BizHawk.Client.EmuHawk
UpdateToolsLoadstate();
}
private void SaveConfigSettings()
{
Global.Config.SNESGraphicsDebuggerWndx = Location.X;
Global.Config.SNESGraphicsDebuggerWndy = Location.Y;
}
bool suppression = false;
private void rbBGX_CheckedChanged(object sender, EventArgs e)
{
@ -1268,7 +1245,6 @@ namespace BizHawk.Client.EmuHawk
private void checkBackdropColor_CheckedChanged(object sender, EventArgs e)
{
Global.Config.SNESGraphicsUseUserBackdropColor = checkBackdropColor.Checked;
SyncBackdropColor();
RegenerateData();
}
@ -1280,7 +1256,7 @@ namespace BizHawk.Client.EmuHawk
if (cd.ShowDialog(this) == DialogResult.OK)
{
pnBackdropColor.BackColor = cd.Color;
Global.Config.SNESGraphicsUserBackdropColor = pnBackdropColor.BackColor.ToArgb();
UserBackdropColor = pnBackdropColor.BackColor.ToArgb();
SyncBackdropColor();
}
}