Hex Editor - properly check/uncheck memory domain menu items

This commit is contained in:
andres.delikat 2011-03-29 20:06:03 +00:00
parent 9df469a971
commit fe9ee404ee
2 changed files with 26 additions and 13 deletions

View File

@ -45,6 +45,7 @@
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.goToAddressToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.goToAddressToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.addToRamWatchToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); this.addToRamWatchToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.freezeAddressToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.restoreWindowSizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.restoreWindowSizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.autoloadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.autoloadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@ -55,7 +56,7 @@
this.freezeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.freezeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.addToRamWatchToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.addToRamWatchToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.MemoryViewer = new BizHawk.MultiClient.MemoryViewer(); this.MemoryViewer = new BizHawk.MultiClient.MemoryViewer();
this.freezeAddressToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
this.menuStrip1.SuspendLayout(); this.menuStrip1.SuspendLayout();
this.ViewerContextMenuStrip.SuspendLayout(); this.ViewerContextMenuStrip.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
@ -180,12 +181,20 @@
this.addToRamWatchToolStripMenuItem1.Text = "Add to Ram Watch"; this.addToRamWatchToolStripMenuItem1.Text = "Add to Ram Watch";
this.addToRamWatchToolStripMenuItem1.Click += new System.EventHandler(this.addToRamWatchToolStripMenuItem1_Click); this.addToRamWatchToolStripMenuItem1.Click += new System.EventHandler(this.addToRamWatchToolStripMenuItem1_Click);
// //
// freezeAddressToolStripMenuItem
//
this.freezeAddressToolStripMenuItem.Name = "freezeAddressToolStripMenuItem";
this.freezeAddressToolStripMenuItem.Size = new System.Drawing.Size(204, 22);
this.freezeAddressToolStripMenuItem.Text = "&Freeze Address";
this.freezeAddressToolStripMenuItem.Click += new System.EventHandler(this.freezeAddressToolStripMenuItem_Click);
//
// settingsToolStripMenuItem // settingsToolStripMenuItem
// //
this.settingsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { this.settingsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.restoreWindowSizeToolStripMenuItem,
this.autoloadToolStripMenuItem, this.autoloadToolStripMenuItem,
this.saveWindowsSettingsToolStripMenuItem}); this.saveWindowsSettingsToolStripMenuItem,
this.toolStripSeparator3,
this.restoreWindowSizeToolStripMenuItem});
this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem"; this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem";
this.settingsToolStripMenuItem.Size = new System.Drawing.Size(58, 20); this.settingsToolStripMenuItem.Size = new System.Drawing.Size(58, 20);
this.settingsToolStripMenuItem.Text = "&Settings"; this.settingsToolStripMenuItem.Text = "&Settings";
@ -266,12 +275,10 @@
this.MemoryViewer.Paint += new System.Windows.Forms.PaintEventHandler(this.MemoryViewer_Paint); this.MemoryViewer.Paint += new System.Windows.Forms.PaintEventHandler(this.MemoryViewer_Paint);
this.MemoryViewer.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.MemoryViewer_MouseDoubleClick); this.MemoryViewer.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.MemoryViewer_MouseDoubleClick);
// //
// freezeAddressToolStripMenuItem // toolStripSeparator3
// //
this.freezeAddressToolStripMenuItem.Name = "freezeAddressToolStripMenuItem"; this.toolStripSeparator3.Name = "toolStripSeparator3";
this.freezeAddressToolStripMenuItem.Size = new System.Drawing.Size(204, 22); this.toolStripSeparator3.Size = new System.Drawing.Size(191, 6);
this.freezeAddressToolStripMenuItem.Text = "&Freeze Address";
this.freezeAddressToolStripMenuItem.Click += new System.EventHandler(this.freezeAddressToolStripMenuItem_Click);
// //
// HexEditor // HexEditor
// //
@ -323,5 +330,6 @@
private System.Windows.Forms.ToolStripMenuItem addToRamWatchToolStripMenuItem1; private System.Windows.Forms.ToolStripMenuItem addToRamWatchToolStripMenuItem1;
private System.Windows.Forms.ToolStripMenuItem saveWindowsSettingsToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem saveWindowsSettingsToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem freezeAddressToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem freezeAddressToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator3;
} }
} }

View File

@ -26,6 +26,8 @@ namespace BizHawk.MultiClient
int defaultWidth; int defaultWidth;
int defaultHeight; int defaultHeight;
List<ToolStripMenuItem> domainMenuItems = new List<ToolStripMenuItem>();
public HexEditor() public HexEditor()
{ {
@ -123,8 +125,11 @@ namespace BizHawk.MultiClient
} }
} }
private void SetMemoryDomain(int pos) private void SetMemoryDomain(int pos, ToolStripMenuItem item)
{ {
for (int x = 0; x < domainMenuItems.Count; x++)
domainMenuItems[x].Checked = false;
item.Checked = true;
if (pos < Global.Emulator.MemoryDomains.Count) //Sanity check if (pos < Global.Emulator.MemoryDomains.Count) //Sanity check
{ {
MemoryViewer.SetMemoryDomain(Global.Emulator.MemoryDomains[pos]); MemoryViewer.SetMemoryDomain(Global.Emulator.MemoryDomains[pos]);
@ -152,14 +157,14 @@ namespace BizHawk.MultiClient
item.Text = str; item.Text = str;
{ {
int z = x; int z = x;
item.Click += (o, ev) => SetMemoryDomain(z); item.Click += (o, ev) => SetMemoryDomain(z, item);
} }
if (x == 0) if (x == 0)
{ {
//item.Checked = true; //TODO: figure out how to check/uncheck these in SetMemoryDomain SetMemoryDomain(x, item);
SetMemoryDomain(x);
} }
memoryDomainsToolStripMenuItem.DropDownItems.Add(item); memoryDomainsToolStripMenuItem.DropDownItems.Add(item);
domainMenuItems.Add(item);
} }
} }
else else