New Ram Search - add restart icon notification on settings that require a new search, also fix bug in big endian and check mis-aligned options

This commit is contained in:
adelikat 2013-09-27 00:55:53 +00:00
parent f1b394a877
commit 0490b128ad
2 changed files with 1228 additions and 1193 deletions

File diff suppressed because it is too large Load Diff

View File

@ -63,6 +63,7 @@ namespace BizHawk.MultiClient
Searches = new RamSearchEngine(Settings); Searches = new RamSearchEngine(Settings);
TopMost = Global.Config.RamSearchAlwaysOnTop; TopMost = Global.Config.RamSearchAlwaysOnTop;
SetReboot(false);
} }
private void RamSearch_Load(object sender, EventArgs e) private void RamSearch_Load(object sender, EventArgs e)
@ -217,6 +218,7 @@ namespace BizHawk.MultiClient
SetTotal(); SetTotal();
WatchListView.ItemCount = Searches.Count; WatchListView.ItemCount = Searches.Count;
ToggleSearchDependentToolBarItems(); ToggleSearchDependentToolBarItems();
SetReboot(false);
} }
private void ToggleSearchDependentToolBarItems() private void ToggleSearchDependentToolBarItems()
@ -289,6 +291,7 @@ namespace BizHawk.MultiClient
{ {
Settings.Domain = Global.Emulator.MemoryDomains[pos]; Settings.Domain = Global.Emulator.MemoryDomains[pos];
SetDomainLabel(); SetDomainLabel();
SetReboot(true);
} }
} }
@ -397,6 +400,7 @@ namespace BizHawk.MultiClient
private void SetSize(Watch.WatchSize size) private void SetSize(Watch.WatchSize size)
{ {
SpecificValueBox.ByteSize = Settings.Size = size; SpecificValueBox.ByteSize = Settings.Size = size;
SetReboot(true);
} }
private void SetComparisonOperator(RamSearchEngine.ComparisonOperator op) private void SetComparisonOperator(RamSearchEngine.ComparisonOperator op)
@ -414,6 +418,13 @@ namespace BizHawk.MultiClient
Searches.CompareValue = value; Searches.CompareValue = value;
} }
private void SetReboot(bool rebootNeeded)
{
RebootToolBarSeparator.Visible =
RebootToolbarButton.Visible =
rebootNeeded;
}
private void SetToDetailedMode() private void SetToDetailedMode()
{ {
Settings.Mode = RamSearchEngine.Settings.SearchMode.Detailed; Settings.Mode = RamSearchEngine.Settings.SearchMode.Detailed;
@ -423,6 +434,7 @@ namespace BizHawk.MultiClient
DifferentByBox.Enabled = true; DifferentByBox.Enabled = true;
ClearChangeCountsToolBarItem.Enabled = true; ClearChangeCountsToolBarItem.Enabled = true;
WatchListView.Columns[CHANGES].Width = Global.Config.RamSearchColumnWidths[CHANGES]; WatchListView.Columns[CHANGES].Width = Global.Config.RamSearchColumnWidths[CHANGES];
SetReboot(true);
} }
private void SetToFastMode() private void SetToFastMode()
@ -446,6 +458,7 @@ namespace BizHawk.MultiClient
Global.Config.RamSearchColumnWidths[CHANGES] = WatchListView.Columns[CHANGES].Width; Global.Config.RamSearchColumnWidths[CHANGES] = WatchListView.Columns[CHANGES].Width;
WatchListView.Columns[CHANGES].Width = 0; WatchListView.Columns[CHANGES].Width = 0;
SetReboot(true);
} }
private void RemoveAddresses() private void RemoveAddresses()
@ -790,7 +803,8 @@ namespace BizHawk.MultiClient
private void CheckMisalignedMenuItem_Click(object sender, EventArgs e) private void CheckMisalignedMenuItem_Click(object sender, EventArgs e)
{ {
Settings.CheckMisAligned = CheckMisalignedMenuItem.Checked; Settings.CheckMisAligned ^= true;
SetReboot(true);
} }
private void Previous_LastFrameMenuItem_Click(object sender, EventArgs e) private void Previous_LastFrameMenuItem_Click(object sender, EventArgs e)
@ -815,8 +829,8 @@ namespace BizHawk.MultiClient
private void BigEndianMenuItem_Click(object sender, EventArgs e) private void BigEndianMenuItem_Click(object sender, EventArgs e)
{ {
Settings.BigEndian = BigEndianMenuItem.Checked; Settings.BigEndian ^= true;
Searches.SetEndian(BigEndianMenuItem.Checked); Searches.SetEndian(Settings.BigEndian);
} }
#endregion #endregion
@ -1028,7 +1042,7 @@ namespace BizHawk.MultiClient
#endregion #endregion
#region ContextMenu #region ContextMenu and Toolbar
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
{ {