diff --git a/BizHawk.MultiClient/Config.cs b/BizHawk.MultiClient/Config.cs index e1830070fa..16a00279ef 100644 --- a/BizHawk.MultiClient/Config.cs +++ b/BizHawk.MultiClient/Config.cs @@ -335,6 +335,15 @@ namespace BizHawk.MultiClient public Color HexHighlightColor = Color.Pink; public Color HexHighlightFreezeColor = Color.Violet; + //Trace Logger Settings + public bool TraceLoggerAutoLoad = false; + public bool TraceLoggerSaveWindowPosition = true; + public int TraceLoggerMaxLines = 100000; + public int TraceLoggerWndx = -1; + public int TraceLoggerWndy = -1; + public int TraceLoggerWidth = -1; + public int TraceLoggerHeight = -1; + // Video dumping settings public string VideoWriter = ""; public int JMDCompression = 3; diff --git a/BizHawk.MultiClient/MainForm.cs b/BizHawk.MultiClient/MainForm.cs index c724d0d241..5c6a4d5606 100644 --- a/BizHawk.MultiClient/MainForm.cs +++ b/BizHawk.MultiClient/MainForm.cs @@ -286,6 +286,8 @@ namespace BizHawk.MultiClient LoadPCEBGViewer(); if (Global.Config.AutoLoadSNESGraphicsDebugger && Global.Emulator is LibsnesCore) LoadSNESGraphicsDebugger(); + if (Global.Config.TraceLoggerAutoLoad) + LoadTraceLogger(); if (Global.Config.MainWndx >= 0 && Global.Config.MainWndy >= 0 && Global.Config.SaveWindowPosition) this.Location = new Point(Global.Config.MainWndx, Global.Config.MainWndy); diff --git a/BizHawk.MultiClient/tools/TraceLogger.Designer.cs b/BizHawk.MultiClient/tools/TraceLogger.Designer.cs index 60b005bab4..725ea1e9e9 100644 --- a/BizHawk.MultiClient/tools/TraceLogger.Designer.cs +++ b/BizHawk.MultiClient/tools/TraceLogger.Designer.cs @@ -31,6 +31,7 @@ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TraceLogger)); this.TraceView = new BizHawk.VirtualListView(); this.columnHeader1 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.columnHeader2 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.groupBox1 = new System.Windows.Forms.GroupBox(); this.menuStrip1 = new System.Windows.Forms.MenuStrip(); this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); @@ -41,7 +42,8 @@ this.groupBox2 = new System.Windows.Forms.GroupBox(); this.ClearButton = new System.Windows.Forms.Button(); this.LoggingEnabled = new System.Windows.Forms.CheckBox(); - this.columnHeader2 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.optionsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.autoloadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.groupBox1.SuspendLayout(); this.menuStrip1.SuspendLayout(); this.groupBox2.SuspendLayout(); @@ -91,7 +93,8 @@ // this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.toolStripMenuItem1, - this.fileToolStripMenuItem}); + this.fileToolStripMenuItem, + this.optionsToolStripMenuItem}); this.menuStrip1.Location = new System.Drawing.Point(0, 0); this.menuStrip1.Name = "menuStrip1"; this.menuStrip1.Size = new System.Drawing.Size(555, 24); @@ -117,19 +120,19 @@ // this.saveLogToolStripMenuItem.Enabled = false; this.saveLogToolStripMenuItem.Name = "saveLogToolStripMenuItem"; - this.saveLogToolStripMenuItem.Size = new System.Drawing.Size(134, 22); + this.saveLogToolStripMenuItem.Size = new System.Drawing.Size(152, 22); this.saveLogToolStripMenuItem.Text = "&Save Log"; // // toolStripSeparator1 // this.toolStripSeparator1.Name = "toolStripSeparator1"; - this.toolStripSeparator1.Size = new System.Drawing.Size(131, 6); + this.toolStripSeparator1.Size = new System.Drawing.Size(149, 6); // // exitToolStripMenuItem // this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; this.exitToolStripMenuItem.ShortcutKeyDisplayString = "Alt+F4"; - this.exitToolStripMenuItem.Size = new System.Drawing.Size(134, 22); + this.exitToolStripMenuItem.Size = new System.Drawing.Size(152, 22); this.exitToolStripMenuItem.Text = "E&xit"; this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click); // @@ -168,6 +171,22 @@ this.LoggingEnabled.UseVisualStyleBackColor = true; this.LoggingEnabled.CheckedChanged += new System.EventHandler(this.LoggingEnabled_CheckedChanged); // + // optionsToolStripMenuItem + // + this.optionsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.autoloadToolStripMenuItem}); + 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); + // + // autoloadToolStripMenuItem + // + this.autoloadToolStripMenuItem.Name = "autoloadToolStripMenuItem"; + this.autoloadToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.autoloadToolStripMenuItem.Text = "&Autoload"; + this.autoloadToolStripMenuItem.Click += new System.EventHandler(this.autoloadToolStripMenuItem_Click); + // // TraceLogger // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -206,5 +225,7 @@ private System.Windows.Forms.Button ClearButton; private System.Windows.Forms.ColumnHeader columnHeader1; private System.Windows.Forms.ColumnHeader columnHeader2; + private System.Windows.Forms.ToolStripMenuItem optionsToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem autoloadToolStripMenuItem; } } \ No newline at end of file diff --git a/BizHawk.MultiClient/tools/TraceLogger.cs b/BizHawk.MultiClient/tools/TraceLogger.cs index 1c96d117a5..a05a6d0081 100644 --- a/BizHawk.MultiClient/tools/TraceLogger.cs +++ b/BizHawk.MultiClient/tools/TraceLogger.cs @@ -32,9 +32,13 @@ namespace BizHawk.MultiClient //TODO } - void TraceView_QueryItemText(int index, int column, out string text) + private void TraceView_QueryItemText(int index, int column, out string text) { + int x = 0; + x++; + int y = 0; text = Instructions[index]; + y = x + text.Length; } private void TraceLogger_Load(object sender, EventArgs e) @@ -92,5 +96,15 @@ namespace BizHawk.MultiClient } TraceView.ItemCount = Instructions.Count; } + + private void autoloadToolStripMenuItem_Click(object sender, EventArgs e) + { + Global.Config.TraceLoggerAutoLoad ^= true; + } + + private void optionsToolStripMenuItem_DropDownOpened(object sender, EventArgs e) + { + autoloadToolStripMenuItem.Checked = Global.Config.TraceLoggerAutoLoad; + } } }