From fe9ee404ee2747474f2497b0f3a59e54bbd56a08 Mon Sep 17 00:00:00 2001 From: "andres.delikat" Date: Tue, 29 Mar 2011 20:06:03 +0000 Subject: [PATCH] Hex Editor - properly check/uncheck memory domain menu items --- .../tools/HexEditor.Designer.cs | 24 ++++++++++++------- BizHawk.MultiClient/tools/HexEditor.cs | 15 ++++++++---- 2 files changed, 26 insertions(+), 13 deletions(-) diff --git a/BizHawk.MultiClient/tools/HexEditor.Designer.cs b/BizHawk.MultiClient/tools/HexEditor.Designer.cs index 1f0416610e..143edd19aa 100644 --- a/BizHawk.MultiClient/tools/HexEditor.Designer.cs +++ b/BizHawk.MultiClient/tools/HexEditor.Designer.cs @@ -45,6 +45,7 @@ this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); this.goToAddressToolStripMenuItem = 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.restoreWindowSizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.autoloadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); @@ -55,7 +56,7 @@ this.freezeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.addToRamWatchToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.MemoryViewer = new BizHawk.MultiClient.MemoryViewer(); - this.freezeAddressToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator(); this.menuStrip1.SuspendLayout(); this.ViewerContextMenuStrip.SuspendLayout(); this.SuspendLayout(); @@ -180,12 +181,20 @@ this.addToRamWatchToolStripMenuItem1.Text = "Add to Ram Watch"; 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 // this.settingsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.restoreWindowSizeToolStripMenuItem, this.autoloadToolStripMenuItem, - this.saveWindowsSettingsToolStripMenuItem}); + this.saveWindowsSettingsToolStripMenuItem, + this.toolStripSeparator3, + this.restoreWindowSizeToolStripMenuItem}); this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem"; this.settingsToolStripMenuItem.Size = new System.Drawing.Size(58, 20); this.settingsToolStripMenuItem.Text = "&Settings"; @@ -266,12 +275,10 @@ this.MemoryViewer.Paint += new System.Windows.Forms.PaintEventHandler(this.MemoryViewer_Paint); this.MemoryViewer.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.MemoryViewer_MouseDoubleClick); // - // freezeAddressToolStripMenuItem + // toolStripSeparator3 // - 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); + this.toolStripSeparator3.Name = "toolStripSeparator3"; + this.toolStripSeparator3.Size = new System.Drawing.Size(191, 6); // // HexEditor // @@ -323,5 +330,6 @@ private System.Windows.Forms.ToolStripMenuItem addToRamWatchToolStripMenuItem1; private System.Windows.Forms.ToolStripMenuItem saveWindowsSettingsToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem freezeAddressToolStripMenuItem; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator3; } } \ No newline at end of file diff --git a/BizHawk.MultiClient/tools/HexEditor.cs b/BizHawk.MultiClient/tools/HexEditor.cs index 6ea142f526..fdf4928498 100644 --- a/BizHawk.MultiClient/tools/HexEditor.cs +++ b/BizHawk.MultiClient/tools/HexEditor.cs @@ -26,7 +26,9 @@ namespace BizHawk.MultiClient int defaultWidth; int defaultHeight; - + List domainMenuItems = new List(); + + public HexEditor() { InitializeComponent(); @@ -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 { MemoryViewer.SetMemoryDomain(Global.Emulator.MemoryDomains[pos]); @@ -152,14 +157,14 @@ namespace BizHawk.MultiClient item.Text = str; { int z = x; - item.Click += (o, ev) => SetMemoryDomain(z); + item.Click += (o, ev) => SetMemoryDomain(z, item); } if (x == 0) { - //item.Checked = true; //TODO: figure out how to check/uncheck these in SetMemoryDomain - SetMemoryDomain(x); + SetMemoryDomain(x, item); } memoryDomainsToolStripMenuItem.DropDownItems.Add(item); + domainMenuItems.Add(item); } } else