Status Bar - right-clicking the status slots will invoke a savestate

This commit is contained in:
adelikat 2012-10-07 19:52:09 +00:00
parent 972d8f2f5b
commit 8545f94315
4 changed files with 267 additions and 39 deletions

View File

@ -220,6 +220,7 @@
this.smsForceStereoSeparationToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.smsSpriteLimitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.showClippedRegionsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.highlightActiveDisplayRegionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator24 = new System.Windows.Forms.ToolStripSeparator();
this.smsGraphicsSettingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.tI83ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@ -293,7 +294,6 @@
this.cmiScreenshotClipboard = new System.Windows.Forms.ToolStripMenuItem();
this.cmiCloseRom = new System.Windows.Forms.ToolStripMenuItem();
this.cmiShowMenu = new System.Windows.Forms.ToolStripMenuItem();
this.highlightActiveDisplayRegionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuStrip1.SuspendLayout();
this.StatusSlot0.SuspendLayout();
this.contextMenuStrip1.SuspendLayout();
@ -1926,6 +1926,13 @@
this.showClippedRegionsToolStripMenuItem.Text = "&Show Clipped Regions";
this.showClippedRegionsToolStripMenuItem.Click += new System.EventHandler(this.showClippedRegionsToolStripMenuItem_Click);
//
// highlightActiveDisplayRegionToolStripMenuItem
//
this.highlightActiveDisplayRegionToolStripMenuItem.Name = "highlightActiveDisplayRegionToolStripMenuItem";
this.highlightActiveDisplayRegionToolStripMenuItem.Size = new System.Drawing.Size(241, 22);
this.highlightActiveDisplayRegionToolStripMenuItem.Text = "&Highlight Active Display Region";
this.highlightActiveDisplayRegionToolStripMenuItem.Click += new System.EventHandler(this.highlightActiveDisplayRegionToolStripMenuItem_Click);
//
// toolStripSeparator24
//
this.toolStripSeparator24.Name = "toolStripSeparator24";
@ -2294,70 +2301,70 @@
this.StatusSlot1.Name = "StatusSlot1";
this.StatusSlot1.Size = new System.Drawing.Size(13, 17);
this.StatusSlot1.Text = "1";
this.StatusSlot1.Click += new System.EventHandler(this.StatusSlot1_Click);
this.StatusSlot1.MouseUp += new System.Windows.Forms.MouseEventHandler(this.StatusSlot1_MouseUp);
//
// StatusSlot2
//
this.StatusSlot2.Name = "StatusSlot2";
this.StatusSlot2.Size = new System.Drawing.Size(13, 17);
this.StatusSlot2.Text = "2";
this.StatusSlot2.Click += new System.EventHandler(this.StatusSlot2_Click);
this.StatusSlot2.MouseUp += new System.Windows.Forms.MouseEventHandler(this.StatusSlot2_MouseUp);
//
// StatusSlot3
//
this.StatusSlot3.Name = "StatusSlot3";
this.StatusSlot3.Size = new System.Drawing.Size(13, 17);
this.StatusSlot3.Text = "3";
this.StatusSlot3.Click += new System.EventHandler(this.StatusSlot3_Click);
this.StatusSlot3.MouseUp += new System.Windows.Forms.MouseEventHandler(this.StatusSlot3_MouseUp);
//
// StatusSlot4
//
this.StatusSlot4.Name = "StatusSlot4";
this.StatusSlot4.Size = new System.Drawing.Size(13, 17);
this.StatusSlot4.Text = "4";
this.StatusSlot4.Click += new System.EventHandler(this.StatusSlot4_Click);
this.StatusSlot4.MouseUp += new System.Windows.Forms.MouseEventHandler(this.StatusSlot4_MouseUp);
//
// StatusSlot5
//
this.StatusSlot5.Name = "StatusSlot5";
this.StatusSlot5.Size = new System.Drawing.Size(13, 17);
this.StatusSlot5.Text = "5";
this.StatusSlot5.Click += new System.EventHandler(this.StatusSlot5_Click);
this.StatusSlot5.MouseUp += new System.Windows.Forms.MouseEventHandler(this.StatusSlot5_MouseUp);
//
// StatusSlot6
//
this.StatusSlot6.Name = "StatusSlot6";
this.StatusSlot6.Size = new System.Drawing.Size(13, 17);
this.StatusSlot6.Text = "6";
this.StatusSlot6.Click += new System.EventHandler(this.StatusSlot6_Click);
this.StatusSlot6.MouseUp += new System.Windows.Forms.MouseEventHandler(this.StatusSlot6_MouseUp);
//
// StatusSlot7
//
this.StatusSlot7.Name = "StatusSlot7";
this.StatusSlot7.Size = new System.Drawing.Size(13, 17);
this.StatusSlot7.Text = "7";
this.StatusSlot7.Click += new System.EventHandler(this.StatusSlot7_Click);
this.StatusSlot7.MouseUp += new System.Windows.Forms.MouseEventHandler(this.StatusSlot7_MouseUp);
//
// StatusSlot8
//
this.StatusSlot8.Name = "StatusSlot8";
this.StatusSlot8.Size = new System.Drawing.Size(13, 17);
this.StatusSlot8.Text = "8";
this.StatusSlot8.Click += new System.EventHandler(this.StatusSlot8_Click);
this.StatusSlot8.MouseUp += new System.Windows.Forms.MouseEventHandler(this.StatusSlot8_MouseUp);
//
// StatusSlot9
//
this.StatusSlot9.Name = "StatusSlot9";
this.StatusSlot9.Size = new System.Drawing.Size(13, 17);
this.StatusSlot9.Text = "9";
this.StatusSlot9.Click += new System.EventHandler(this.StatusSlot9_Click);
this.StatusSlot9.MouseUp += new System.Windows.Forms.MouseEventHandler(this.StatusSlot9_MouseUp);
//
// StatusSlot10
//
this.StatusSlot10.Name = "StatusSlot10";
this.StatusSlot10.Size = new System.Drawing.Size(13, 17);
this.StatusSlot10.Text = "0";
this.StatusSlot10.Click += new System.EventHandler(this.StatusSlot10_Click);
this.StatusSlot10.MouseUp += new System.Windows.Forms.MouseEventHandler(this.StatusSlot10_MouseUp);
//
// CheatStatus
//
@ -2529,13 +2536,6 @@
this.cmiShowMenu.Text = "Show Menu";
this.cmiShowMenu.Click += new System.EventHandler(this.showMenuToolStripMenuItem_Click);
//
// highlightActiveDisplayRegionToolStripMenuItem
//
this.highlightActiveDisplayRegionToolStripMenuItem.Name = "highlightActiveDisplayRegionToolStripMenuItem";
this.highlightActiveDisplayRegionToolStripMenuItem.Size = new System.Drawing.Size(241, 22);
this.highlightActiveDisplayRegionToolStripMenuItem.Text = "&Highlight Active Display Region";
this.highlightActiveDisplayRegionToolStripMenuItem.Click += new System.EventHandler(this.highlightActiveDisplayRegionToolStripMenuItem_Click);
//
// MainForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 14F);

View File

@ -1163,17 +1163,6 @@ namespace BizHawk.MultiClient
}
}
private void StatusSlot1_Click(object sender, EventArgs e) { LoadState("QuickSave1"); }
private void StatusSlot2_Click(object sender, EventArgs e) { LoadState("QuickSave2"); }
private void StatusSlot3_Click(object sender, EventArgs e) { LoadState("QuickSave3"); }
private void StatusSlot4_Click(object sender, EventArgs e) { LoadState("QuickSave4"); }
private void StatusSlot5_Click(object sender, EventArgs e) { LoadState("QuickSave5"); }
private void StatusSlot6_Click(object sender, EventArgs e) { LoadState("QuickSave6"); }
private void StatusSlot7_Click(object sender, EventArgs e) { LoadState("QuickSave7"); }
private void StatusSlot8_Click(object sender, EventArgs e) { LoadState("QuickSave8"); }
private void StatusSlot9_Click(object sender, EventArgs e) { LoadState("QuickSave9"); }
private void StatusSlot10_Click(object sender, EventArgs e) { LoadState("QuickSave0"); }
private void viewCommentsToolStripMenuItem_Click(object sender, EventArgs e)
{
if (Global.MovieSession.Movie.IsActive)
@ -1976,5 +1965,155 @@ namespace BizHawk.MultiClient
Global.Config.GB_MulticartCompat ^= true;
FlagNeedsReboot();
}
private void StatusSlot1_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (StateSlots.HasSlot(1))
{
LoadState("QuickSave1");
}
}
else if (e.Button == MouseButtons.Right)
{
SaveState("QuickSave1");
}
}
private void StatusSlot2_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (StateSlots.HasSlot(2))
{
LoadState("QuickSave2");
}
}
else if (e.Button == MouseButtons.Right)
{
SaveState("QuickSave2");
}
}
private void StatusSlot3_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (StateSlots.HasSlot(3))
{
LoadState("QuickSave3");
}
}
else if (e.Button == MouseButtons.Right)
{
SaveState("QuickSave3");
}
}
private void StatusSlot4_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (StateSlots.HasSlot(4))
{
LoadState("QuickSave4");
}
}
else if (e.Button == MouseButtons.Right)
{
SaveState("QuickSave4");
}
}
private void StatusSlot5_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (StateSlots.HasSlot(5))
{
LoadState("QuickSave5");
}
}
else if (e.Button == MouseButtons.Right)
{
SaveState("QuickSave5");
}
}
private void StatusSlot6_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (StateSlots.HasSlot(6))
{
LoadState("QuickSave6");
}
}
else if (e.Button == MouseButtons.Right)
{
SaveState("QuickSave6");
}
}
private void StatusSlot7_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (StateSlots.HasSlot(7))
{
LoadState("QuickSave7");
}
}
else if (e.Button == MouseButtons.Right)
{
SaveState("QuickSave7");
}
}
private void StatusSlot8_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (StateSlots.HasSlot(8))
{
LoadState("QuickSave8");
}
}
else if (e.Button == MouseButtons.Right)
{
SaveState("QuickSave8");
}
}
private void StatusSlot9_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (StateSlots.HasSlot(9))
{
LoadState("QuickSave9");
}
}
else if (e.Button == MouseButtons.Right)
{
SaveState("QuickSave9");
}
}
private void StatusSlot10_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (StateSlots.HasSlot(0))
{
LoadState("QuickSave0");
}
}
else if (e.Button == MouseButtons.Right)
{
SaveState("QuickSave0");
}
}
}
}

View File

@ -3118,17 +3118,106 @@ namespace BizHawk.MultiClient
public void UpdateStatusSlots()
{
StateSlots.Update();
StatusSlot1.Enabled = StateSlots.HasSlot(1);
StatusSlot2.Enabled = StateSlots.HasSlot(2);
StatusSlot3.Enabled = StateSlots.HasSlot(3);
StatusSlot4.Enabled = StateSlots.HasSlot(4);
StatusSlot5.Enabled = StateSlots.HasSlot(5);
StatusSlot6.Enabled = StateSlots.HasSlot(6);
StatusSlot7.Enabled = StateSlots.HasSlot(7);
StatusSlot8.Enabled = StateSlots.HasSlot(8);
StatusSlot9.Enabled = StateSlots.HasSlot(9);
StatusSlot10.Enabled = StateSlots.HasSlot(0);
if (StateSlots.HasSlot(1))
{
StatusSlot1.ForeColor = Color.Black;
}
else
{
StatusSlot1.ForeColor = Color.Gray;
}
if (StateSlots.HasSlot(2))
{
StatusSlot2.ForeColor = Color.Black;
}
else
{
StatusSlot2.ForeColor = Color.Gray;
}
if (StateSlots.HasSlot(3))
{
StatusSlot3.ForeColor = Color.Black;
}
else
{
StatusSlot3.ForeColor = Color.Gray;
}
if (StateSlots.HasSlot(3))
{
StatusSlot3.ForeColor = Color.Black;
}
else
{
StatusSlot3.ForeColor = Color.Gray;
}
if (StateSlots.HasSlot(4))
{
StatusSlot4.ForeColor = Color.Black;
}
else
{
StatusSlot4.ForeColor = Color.Gray;
}
if (StateSlots.HasSlot(5))
{
StatusSlot5.ForeColor = Color.Black;
}
else
{
StatusSlot5.ForeColor = Color.Gray;
}
if (StateSlots.HasSlot(6))
{
StatusSlot6.ForeColor = Color.Black;
}
else
{
StatusSlot6.ForeColor = Color.Gray;
}
if (StateSlots.HasSlot(7))
{
StatusSlot7.ForeColor = Color.Black;
}
else
{
StatusSlot7.ForeColor = Color.Gray;
}
if (StateSlots.HasSlot(8))
{
StatusSlot8.ForeColor = Color.Black;
}
else
{
StatusSlot8.ForeColor = Color.Gray;
}
if (StateSlots.HasSlot(9))
{
StatusSlot9.ForeColor = Color.Black;
}
else
{
StatusSlot9.ForeColor = Color.Gray;
}
if (StateSlots.HasSlot(0))
{
StatusSlot0.ForeColor = Color.Black;
}
else
{
StatusSlot0.ForeColor = Color.Gray;
}
StatusSlot1.BackColor = SystemColors.Control;
StatusSlot2.BackColor = SystemColors.Control;
StatusSlot3.BackColor = SystemColors.Control;