diff --git a/BizHawk.MultiClient/Config.cs b/BizHawk.MultiClient/Config.cs index 3a4252228b..82646a645c 100644 --- a/BizHawk.MultiClient/Config.cs +++ b/BizHawk.MultiClient/Config.cs @@ -238,17 +238,19 @@ namespace BizHawk.MultiClient public int RamWatchHeight = -1; public bool RamWatchShowChangeColumn = true; public bool RamWatchShowPrevColumn = false; - public bool RamWatchShowChangeFromPrev = true; + public bool RamWatchShowDiffColumn = false; public int RamWatchAddressWidth = -1; public int RamWatchValueWidth = -1; public int RamWatchPrevWidth = -1; public int RamWatchChangeWidth = -1; + public int RamWatchDiffWidth = -1; public int RamWatchNotesWidth = -1; public int RamWatchAddressIndex = 0; public int RamWatchValueIndex = 1; public int RamWatchPrevIndex = 2; public int RamWatchChangeIndex = 3; - public int RamWatchNotesIndex = 4; + public int RamWatchDiffIndex = 4; + public int RamWatchNotesIndex = 5; // RamSearch Settings public bool AutoLoadRamSearch = false; diff --git a/BizHawk.MultiClient/tools/RamWatch.Designer.cs b/BizHawk.MultiClient/tools/RamWatch.Designer.cs index 6b1f00e076..c56f060663 100644 --- a/BizHawk.MultiClient/tools/RamWatch.Designer.cs +++ b/BizHawk.MultiClient/tools/RamWatch.Designer.cs @@ -62,8 +62,8 @@ this.viewToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.showPreviousValueToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.showChangeCountsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.diffToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.optionsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.prevValueShowsChangeAmountToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.displayWatchesOnScreenToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripSeparator7 = new System.Windows.Forms.ToolStripSeparator(); this.saveWindowPositionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); @@ -73,6 +73,7 @@ this.Value = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.Prev = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.ChangeCounts = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.Diff = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.Notes = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components); this.editToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); @@ -88,7 +89,6 @@ this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); this.showChangeCountsToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); this.showPreviousValueToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); - this.prevValueAsChangeAmountToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.toolStrip1 = new ToolStripEx(); this.newToolStripButton = new System.Windows.Forms.ToolStripButton(); this.openToolStripButton = new System.Windows.Forms.ToolStripButton(); @@ -108,6 +108,7 @@ this.WatchCountLabel = new System.Windows.Forms.Label(); this.MessageLabel = new System.Windows.Forms.Label(); this.MemDomainLabel = new System.Windows.Forms.Label(); + this.showDifferenceToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.menuStrip1.SuspendLayout(); this.contextMenuStrip1.SuspendLayout(); this.toolStrip1.SuspendLayout(); @@ -172,8 +173,8 @@ // saveAsToolStripMenuItem // this.saveAsToolStripMenuItem.Name = "saveAsToolStripMenuItem"; - this.saveAsToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Shift) - | System.Windows.Forms.Keys.S))); + this.saveAsToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Shift) + | System.Windows.Forms.Keys.S))); this.saveAsToolStripMenuItem.Size = new System.Drawing.Size(195, 22); this.saveAsToolStripMenuItem.Text = "Save &As..."; this.saveAsToolStripMenuItem.Click += new System.EventHandler(this.saveAsToolStripMenuItem_Click); @@ -374,10 +375,12 @@ // this.viewToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { this.showPreviousValueToolStripMenuItem, - this.showChangeCountsToolStripMenuItem}); + this.showChangeCountsToolStripMenuItem, + this.diffToolStripMenuItem}); this.viewToolStripMenuItem.Name = "viewToolStripMenuItem"; this.viewToolStripMenuItem.Size = new System.Drawing.Size(44, 20); this.viewToolStripMenuItem.Text = "&View"; + this.viewToolStripMenuItem.DropDownOpened += new System.EventHandler(this.viewToolStripMenuItem_DropDownOpened); // // showPreviousValueToolStripMenuItem // @@ -395,26 +398,25 @@ this.showChangeCountsToolStripMenuItem.Text = "Change Counts"; this.showChangeCountsToolStripMenuItem.Click += new System.EventHandler(this.showChangeCountsToolStripMenuItem_Click_1); // + // diffToolStripMenuItem + // + this.diffToolStripMenuItem.Name = "diffToolStripMenuItem"; + this.diffToolStripMenuItem.Size = new System.Drawing.Size(156, 22); + this.diffToolStripMenuItem.Text = "Diff"; + this.diffToolStripMenuItem.Click += new System.EventHandler(this.diffToolStripMenuItem_Click); + // // optionsToolStripMenuItem // this.optionsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.prevValueShowsChangeAmountToolStripMenuItem, this.displayWatchesOnScreenToolStripMenuItem, - this.toolStripSeparator7, this.saveWindowPositionToolStripMenuItem, + this.toolStripSeparator7, this.restoreWindowSizeToolStripMenuItem}); 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); // - // prevValueShowsChangeAmountToolStripMenuItem - // - this.prevValueShowsChangeAmountToolStripMenuItem.Name = "prevValueShowsChangeAmountToolStripMenuItem"; - this.prevValueShowsChangeAmountToolStripMenuItem.Size = new System.Drawing.Size(217, 22); - this.prevValueShowsChangeAmountToolStripMenuItem.Text = "Prev Value as change"; - this.prevValueShowsChangeAmountToolStripMenuItem.Click += new System.EventHandler(this.prevValueShowsChangeAmountToolStripMenuItem_Click); - // // displayWatchesOnScreenToolStripMenuItem // this.displayWatchesOnScreenToolStripMenuItem.Name = "displayWatchesOnScreenToolStripMenuItem"; @@ -444,15 +446,16 @@ // WatchListView // this.WatchListView.AllowColumnReorder = true; - this.WatchListView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) - | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); + this.WatchListView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); this.WatchListView.AutoArrange = false; this.WatchListView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { this.Address, this.Value, this.Prev, this.ChangeCounts, + this.Diff, this.Notes}); this.WatchListView.ContextMenuStrip = this.contextMenuStrip1; this.WatchListView.FullRowSelect = true; @@ -495,8 +498,15 @@ this.ChangeCounts.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; this.ChangeCounts.Width = 54; // + // Diff + // + this.Diff.DisplayIndex = 5; + this.Diff.Text = "Diff"; + this.Diff.Width = 59; + // // Notes // + this.Notes.DisplayIndex = 4; this.Notes.Text = "Notes"; this.Notes.Width = 160; // @@ -516,16 +526,16 @@ this.toolStripSeparator2, this.showChangeCountsToolStripMenuItem1, this.showPreviousValueToolStripMenuItem1, - this.prevValueAsChangeAmountToolStripMenuItem}); + this.showDifferenceToolStripMenuItem}); this.contextMenuStrip1.Name = "contextMenuStrip1"; - this.contextMenuStrip1.Size = new System.Drawing.Size(228, 280); + this.contextMenuStrip1.Size = new System.Drawing.Size(189, 302); this.contextMenuStrip1.Opening += new System.ComponentModel.CancelEventHandler(this.contextMenuStrip1_Opening); // // editToolStripMenuItem // this.editToolStripMenuItem.Image = global::BizHawk.MultiClient.Properties.Resources.CutHS; this.editToolStripMenuItem.Name = "editToolStripMenuItem"; - this.editToolStripMenuItem.Size = new System.Drawing.Size(227, 22); + this.editToolStripMenuItem.Size = new System.Drawing.Size(230, 22); this.editToolStripMenuItem.Text = "&Edit"; this.editToolStripMenuItem.Click += new System.EventHandler(this.editToolStripMenuItem_Click); // @@ -533,7 +543,7 @@ // this.removeToolStripMenuItem.Image = global::BizHawk.MultiClient.Properties.Resources.Delete; this.removeToolStripMenuItem.Name = "removeToolStripMenuItem"; - this.removeToolStripMenuItem.Size = new System.Drawing.Size(227, 22); + this.removeToolStripMenuItem.Size = new System.Drawing.Size(230, 22); this.removeToolStripMenuItem.Text = "&Remove"; this.removeToolStripMenuItem.Click += new System.EventHandler(this.removeToolStripMenuItem_Click); // @@ -541,7 +551,7 @@ // this.duplicateToolStripMenuItem.Image = global::BizHawk.MultiClient.Properties.Resources.Duplicate; this.duplicateToolStripMenuItem.Name = "duplicateToolStripMenuItem"; - this.duplicateToolStripMenuItem.Size = new System.Drawing.Size(227, 22); + this.duplicateToolStripMenuItem.Size = new System.Drawing.Size(230, 22); this.duplicateToolStripMenuItem.Text = "&Duplicate"; this.duplicateToolStripMenuItem.Click += new System.EventHandler(this.duplicateToolStripMenuItem_Click); // @@ -549,7 +559,7 @@ // this.pokeToolStripMenuItem.Image = global::BizHawk.MultiClient.Properties.Resources.poke; this.pokeToolStripMenuItem.Name = "pokeToolStripMenuItem"; - this.pokeToolStripMenuItem.Size = new System.Drawing.Size(227, 22); + this.pokeToolStripMenuItem.Size = new System.Drawing.Size(230, 22); this.pokeToolStripMenuItem.Text = "&Poke"; this.pokeToolStripMenuItem.Click += new System.EventHandler(this.pokeToolStripMenuItem_Click); // @@ -557,27 +567,27 @@ // this.freezeToolStripMenuItem.Image = global::BizHawk.MultiClient.Properties.Resources.Freeze; this.freezeToolStripMenuItem.Name = "freezeToolStripMenuItem"; - this.freezeToolStripMenuItem.Size = new System.Drawing.Size(227, 22); + this.freezeToolStripMenuItem.Size = new System.Drawing.Size(230, 22); this.freezeToolStripMenuItem.Text = "&Freeze"; this.freezeToolStripMenuItem.Click += new System.EventHandler(this.freezeToolStripMenuItem_Click); // // viewInHexEditorToolStripMenuItem // this.viewInHexEditorToolStripMenuItem.Name = "viewInHexEditorToolStripMenuItem"; - this.viewInHexEditorToolStripMenuItem.Size = new System.Drawing.Size(227, 22); + this.viewInHexEditorToolStripMenuItem.Size = new System.Drawing.Size(230, 22); this.viewInHexEditorToolStripMenuItem.Text = "View in Hex Editor"; this.viewInHexEditorToolStripMenuItem.Click += new System.EventHandler(this.viewInHexEditorToolStripMenuItem_Click); // // toolStripSeparator6 // this.toolStripSeparator6.Name = "toolStripSeparator6"; - this.toolStripSeparator6.Size = new System.Drawing.Size(224, 6); + this.toolStripSeparator6.Size = new System.Drawing.Size(227, 6); // // insertSeperatorToolStripMenuItem // this.insertSeperatorToolStripMenuItem.Image = global::BizHawk.MultiClient.Properties.Resources.InsertSeparator; this.insertSeperatorToolStripMenuItem.Name = "insertSeperatorToolStripMenuItem"; - this.insertSeperatorToolStripMenuItem.Size = new System.Drawing.Size(227, 22); + this.insertSeperatorToolStripMenuItem.Size = new System.Drawing.Size(230, 22); this.insertSeperatorToolStripMenuItem.Text = "&Insert Separator"; this.insertSeperatorToolStripMenuItem.Click += new System.EventHandler(this.insertSeperatorToolStripMenuItem_Click); // @@ -585,7 +595,7 @@ // this.moveUpToolStripMenuItem1.Image = global::BizHawk.MultiClient.Properties.Resources.MoveUp; this.moveUpToolStripMenuItem1.Name = "moveUpToolStripMenuItem1"; - this.moveUpToolStripMenuItem1.Size = new System.Drawing.Size(227, 22); + this.moveUpToolStripMenuItem1.Size = new System.Drawing.Size(230, 22); this.moveUpToolStripMenuItem1.Text = "Move &Up"; this.moveUpToolStripMenuItem1.Click += new System.EventHandler(this.moveUpToolStripMenuItem1_Click); // @@ -593,36 +603,29 @@ // this.moveDownToolStripMenuItem1.Image = global::BizHawk.MultiClient.Properties.Resources.MoveDown; this.moveDownToolStripMenuItem1.Name = "moveDownToolStripMenuItem1"; - this.moveDownToolStripMenuItem1.Size = new System.Drawing.Size(227, 22); + this.moveDownToolStripMenuItem1.Size = new System.Drawing.Size(230, 22); this.moveDownToolStripMenuItem1.Text = "Move &Down"; this.moveDownToolStripMenuItem1.Click += new System.EventHandler(this.moveDownToolStripMenuItem1_Click); // // toolStripSeparator2 // this.toolStripSeparator2.Name = "toolStripSeparator2"; - this.toolStripSeparator2.Size = new System.Drawing.Size(224, 6); + this.toolStripSeparator2.Size = new System.Drawing.Size(227, 6); // // showChangeCountsToolStripMenuItem1 // this.showChangeCountsToolStripMenuItem1.Name = "showChangeCountsToolStripMenuItem1"; - this.showChangeCountsToolStripMenuItem1.Size = new System.Drawing.Size(227, 22); + this.showChangeCountsToolStripMenuItem1.Size = new System.Drawing.Size(230, 22); this.showChangeCountsToolStripMenuItem1.Text = "Show Change Counts"; this.showChangeCountsToolStripMenuItem1.Click += new System.EventHandler(this.showChangeCountsToolStripMenuItem_Click); // // showPreviousValueToolStripMenuItem1 // this.showPreviousValueToolStripMenuItem1.Name = "showPreviousValueToolStripMenuItem1"; - this.showPreviousValueToolStripMenuItem1.Size = new System.Drawing.Size(227, 22); + this.showPreviousValueToolStripMenuItem1.Size = new System.Drawing.Size(230, 22); this.showPreviousValueToolStripMenuItem1.Text = "Show Previous Value"; this.showPreviousValueToolStripMenuItem1.Click += new System.EventHandler(this.showPreviousValueToolStripMenuItem_Click); // - // prevValueAsChangeAmountToolStripMenuItem - // - this.prevValueAsChangeAmountToolStripMenuItem.Name = "prevValueAsChangeAmountToolStripMenuItem"; - this.prevValueAsChangeAmountToolStripMenuItem.Size = new System.Drawing.Size(227, 22); - this.prevValueAsChangeAmountToolStripMenuItem.Text = "Prev Value as change amount"; - this.prevValueAsChangeAmountToolStripMenuItem.Click += new System.EventHandler(this.prevValueShowsChangeAmountToolStripMenuItem_Click); - // // toolStrip1 // this.toolStrip1.ClickThrough = true; @@ -821,6 +824,13 @@ this.MemDomainLabel.Size = new System.Drawing.Size(0, 13); this.MemDomainLabel.TabIndex = 6; // + // showDifferenceToolStripMenuItem + // + this.showDifferenceToolStripMenuItem.Name = "showDifferenceToolStripMenuItem"; + this.showDifferenceToolStripMenuItem.Size = new System.Drawing.Size(188, 22); + this.showDifferenceToolStripMenuItem.Text = "Show Difference"; + this.showDifferenceToolStripMenuItem.Click += new System.EventHandler(this.showDifferenceToolStripMenuItem_Click); + // // RamWatch // this.AllowDrop = true; @@ -915,11 +925,9 @@ private System.Windows.Forms.ToolStripMenuItem clearChangeCountsToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem optionsToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem restoreWindowSizeToolStripMenuItem; - private System.Windows.Forms.ToolStripMenuItem prevValueShowsChangeAmountToolStripMenuItem; private System.Windows.Forms.ToolStripSeparator toolStripSeparator2; private System.Windows.Forms.ToolStripMenuItem showChangeCountsToolStripMenuItem1; - private System.Windows.Forms.ToolStripMenuItem showPreviousValueToolStripMenuItem1; - private System.Windows.Forms.ToolStripMenuItem prevValueAsChangeAmountToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem showPreviousValueToolStripMenuItem1; private System.Windows.Forms.ToolStripMenuItem viewInHexEditorToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem freezeToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem freezeAddressToolStripMenuItem; @@ -934,5 +942,8 @@ private System.Windows.Forms.ToolStripMenuItem viewToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem showPreviousValueToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem showChangeCountsToolStripMenuItem; + private System.Windows.Forms.ColumnHeader Diff; + private System.Windows.Forms.ToolStripMenuItem diffToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem showDifferenceToolStripMenuItem; } } \ No newline at end of file diff --git a/BizHawk.MultiClient/tools/RamWatch.cs b/BizHawk.MultiClient/tools/RamWatch.cs index 4f404515a0..18da6b2848 100644 --- a/BizHawk.MultiClient/tools/RamWatch.cs +++ b/BizHawk.MultiClient/tools/RamWatch.cs @@ -28,6 +28,7 @@ namespace BizHawk.MultiClient int defaultValueWidth; int defaultPrevWidth; int defaultChangeWidth; + int defaultDiffWidth; int NotesWidth; string systemID = "NULL"; @@ -110,6 +111,7 @@ namespace BizHawk.MultiClient defaultValueWidth = WatchListView.Columns[Global.Config.RamWatchValueIndex].Width; defaultPrevWidth = WatchListView.Columns[Global.Config.RamWatchPrevIndex].Width; defaultChangeWidth = WatchListView.Columns[Global.Config.RamWatchChangeIndex].Width; + defaultDiffWidth = WatchListView.Columns[Global.Config.RamWatchDiffIndex].Width; NotesWidth = WatchListView.Columns[Global.Config.RamWatchNotesIndex].Width; @@ -130,10 +132,10 @@ namespace BizHawk.MultiClient WatchListView.Columns[Global.Config.RamWatchPrevIndex].Width = Global.Config.RamWatchPrevWidth; if (Global.Config.RamWatchChangeWidth > 0) WatchListView.Columns[Global.Config.RamWatchChangeIndex].Width = Global.Config.RamWatchChangeWidth; + if (Global.Config.RamWatchDiffWidth > 0) + WatchListView.Columns[Global.Config.RamWatchDiffIndex].Width = Global.Config.RamWatchDiffWidth; if (Global.Config.RamWatchNotesWidth > 0) WatchListView.Columns[Global.Config.RamWatchNotesIndex].Width = Global.Config.RamWatchNotesWidth; - - } public void SaveConfigSettings() @@ -143,6 +145,7 @@ namespace BizHawk.MultiClient Global.Config.RamWatchValueWidth = WatchListView.Columns[Global.Config.RamWatchValueIndex].Width; Global.Config.RamWatchPrevWidth = WatchListView.Columns[Global.Config.RamWatchPrevIndex].Width; Global.Config.RamWatchChangeWidth = WatchListView.Columns[Global.Config.RamWatchChangeIndex].Width; + Global.Config.RamWatchDiffWidth = WatchListView.Columns[Global.Config.RamWatchDiffIndex].Width; Global.Config.RamWatchNotesWidth = WatchListView.Columns[Global.Config.RamWatchNotesIndex].Width; Global.Config.RamWatchWndx = this.Location.X; @@ -200,18 +203,7 @@ namespace BizHawk.MultiClient text = ""; else { - if (Global.Config.RamWatchShowChangeFromPrev) - { - int x = watchList[index].value - watchList[index].prev; - if (x < 0) - text = x.ToString(); - else - text = "+" + x.ToString(); - } - else - { - text = watchList[index].PrevToString(); - } + text = watchList[index].PrevToString(); } } if (column == 3) //Change Counts @@ -219,7 +211,12 @@ namespace BizHawk.MultiClient if (watchList[index].type != atype.SEPARATOR) text = watchList[index].changecount.ToString(); } - if (column == 4) //Notes + if (column == 4) //Diff Counts + { + if (watchList[index].type != atype.SEPARATOR) + text = watchList[index].DiffToString(watchList[index].diffPrev); + } + if (column == 5) //Notes { if (watchList[index].type == atype.SEPARATOR) text = ""; @@ -732,19 +729,21 @@ namespace BizHawk.MultiClient Global.Config.RamWatchValueIndex = 1; Global.Config.RamWatchPrevIndex = 2; Global.Config.RamWatchChangeIndex = 3; - Global.Config.RamWatchNotesIndex = 4; + Global.Config.RamWatchDiffIndex = 4; + Global.Config.RamWatchNotesIndex = 5; ColumnPositionSet(); showPreviousValueToolStripMenuItem.Checked = false; Global.Config.RamWatchShowPrevColumn = false; showChangeCountsToolStripMenuItem.Checked = true; Global.Config.RamWatchShowChangeColumn = true; + Global.Config.RamWatchShowDiffColumn = false; WatchListView.Columns[0].Width = defaultAddressWidth; WatchListView.Columns[1].Width = defaultValueWidth; WatchListView.Columns[2].Width = 0; WatchListView.Columns[3].Width = defaultChangeWidth; - WatchListView.Columns[4].Width = NotesWidth; - Global.Config.RamWatchShowChangeFromPrev = false; + WatchListView.Columns[4].Width = 0; + WatchListView.Columns[5].Width = NotesWidth; Global.Config.DisplayRamWatch = false; Global.Config.RamWatchSaveWindowPosition = false; } @@ -962,10 +961,10 @@ namespace BizHawk.MultiClient else contextMenuStrip1.Items[12].Text = "Show previous value"; - if (Global.Config.RamWatchShowChangeFromPrev) - contextMenuStrip1.Items[13].Text = "Display Previous value as previous"; + if (Global.Config.RamWatchShowDiffColumn) + contextMenuStrip1.Items[13].Text = "Hide difference value"; else - contextMenuStrip1.Items[13].Text = "Display Previosu value as change amount"; + contextMenuStrip1.Items[13].Text = "Show difference value"; } private void WatchListView_MouseDoubleClick(object sender, MouseEventArgs e) @@ -1018,6 +1017,16 @@ namespace BizHawk.MultiClient SetChangesColumn(Global.Config.RamWatchShowChangeColumn); } + private void SetDiffColumn(bool show) + { + Global.Config.RamWatchShowDiffColumn = show; + diffToolStripMenuItem.Checked = show; + if (show) + WatchListView.Columns[Global.Config.RamWatchDiffIndex].Width = 59; + else + WatchListView.Columns[Global.Config.RamWatchDiffIndex].Width = 0; + + } private void SetChangesColumn(bool show) { Global.Config.RamWatchShowChangeColumn = show; @@ -1044,16 +1053,9 @@ namespace BizHawk.MultiClient SetPrevColumn(Global.Config.RamWatchShowPrevColumn); } - private void prevValueShowsChangeAmountToolStripMenuItem_Click(object sender, EventArgs e) - { - Global.Config.RamWatchShowChangeFromPrev ^= true; - DisplayWatchList(); - } - private void optionsToolStripMenuItem_DropDownOpened(object sender, EventArgs e) { displayWatchesOnScreenToolStripMenuItem.Checked = Global.Config.DisplayRamWatch; - prevValueShowsChangeAmountToolStripMenuItem.Checked = Global.Config.RamWatchShowChangeFromPrev; saveWindowPositionToolStripMenuItem.Checked = Global.Config.RamWatchSaveWindowPosition; } @@ -1296,6 +1298,8 @@ namespace BizHawk.MultiClient Global.Config.RamWatchPrevIndex += changeIndex; if (Global.Config.RamWatchChangeIndex >= lowIndex && Global.Config.RamWatchChangeIndex <= highIndex) Global.Config.RamWatchChangeIndex += changeIndex; + if (Global.Config.RamWatchDiffIndex >= lowIndex && Global.Config.RamWatchDiffIndex <= highIndex) + Global.Config.RamWatchDiffIndex += changeIndex; if (Global.Config.RamWatchNotesIndex >= lowIndex && Global.Config.RamWatchNotesIndex <= highIndex) Global.Config.RamWatchNotesIndex += changeIndex; @@ -1307,6 +1311,8 @@ namespace BizHawk.MultiClient Global.Config.RamWatchPrevIndex = e.NewDisplayIndex; else if (header.Text == "Changes") Global.Config.RamWatchChangeIndex = e.NewDisplayIndex; + else if (header.Text == "Diff") + Global.Config.RamWatchDiffIndex = e.NewDisplayIndex; else if (header.Text == "Notes") Global.Config.RamWatchNotesIndex = e.NewDisplayIndex; } @@ -1332,6 +1338,8 @@ namespace BizHawk.MultiClient column = "Prev"; else if (Global.Config.RamWatchChangeIndex == i) column = "Changes"; + else if (Global.Config.RamWatchDiffIndex == i) + column = "Diff"; else if (Global.Config.RamWatchNotesIndex == i) column = "Notes"; @@ -1426,5 +1434,28 @@ namespace BizHawk.MultiClient Global.Config.RamWatchShowChangeColumn ^= true; SetChangesColumn(Global.Config.RamWatchShowChangeColumn); } + + private void diffToolStripMenuItem_Click(object sender, EventArgs e) + { + ShowDifference(); + } + + private void viewToolStripMenuItem_DropDownOpened(object sender, EventArgs e) + { + showPreviousValueToolStripMenuItem.Checked = Global.Config.RamWatchShowPrevColumn; + showChangeCountsToolStripMenuItem.Checked = Global.Config.RamWatchShowChangeColumn; + diffToolStripMenuItem.Checked = Global.Config.RamWatchShowDiffColumn; + } + + private void showDifferenceToolStripMenuItem_Click(object sender, EventArgs e) + { + ShowDifference(); + } + + private void ShowDifference() + { + Global.Config.RamWatchShowDiffColumn ^= true; + SetDiffColumn(Global.Config.RamWatchShowDiffColumn); + } } } \ No newline at end of file diff --git a/BizHawk.MultiClient/tools/Watch.cs b/BizHawk.MultiClient/tools/Watch.cs index 38b5970e59..c751cda0d1 100644 --- a/BizHawk.MultiClient/tools/Watch.cs +++ b/BizHawk.MultiClient/tools/Watch.cs @@ -665,7 +665,7 @@ namespace BizHawk.MultiClient } } - else if (parameter == "Prev") + else if (parameter == "Diff") { compare = CompareDiff(Other, previous); if (compare == 0)