diff --git a/BizHawk.Client.Common/movie/tasproj/TasStateManagerSettings.cs b/BizHawk.Client.Common/movie/tasproj/TasStateManagerSettings.cs index d4c1ef52b5..6d9dc252cd 100644 --- a/BizHawk.Client.Common/movie/tasproj/TasStateManagerSettings.cs +++ b/BizHawk.Client.Common/movie/tasproj/TasStateManagerSettings.cs @@ -1,7 +1,9 @@ using System; +using System.ComponentModel; using System.Text; using Newtonsoft.Json; + namespace BizHawk.Client.Common { public class TasStateManagerSettings @@ -21,14 +23,19 @@ namespace BizHawk.Client.Common /// /// Whether or not to save greenzone information to disk /// + [DisplayName("Save History")] + [Description("Whether or not to use savestate history")] public bool SaveGreenzone { get; set; } /// /// The total amount of memory to devote to greenzone in megabytes /// + [DisplayName("Capacity (in megabytes))")] + [Description("The size limit of the state history buffer. When this limit is reached it will start removing previous savestates")] public int Capacitymb { get; set; } [JsonIgnore] + [Browsable(false)] public int Cap { get { return Capacitymb * 1024 * 1024; } diff --git a/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj b/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj index 8a24ab5dff..fcf8932e94 100644 --- a/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj +++ b/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj @@ -839,6 +839,12 @@ BookmarksBranchesBox.cs + + Form + + + DefaultGreenzoneSettings.cs + Form @@ -1291,6 +1297,9 @@ BookmarksBranchesBox.cs + + DefaultGreenzoneSettings.cs + FramesPrompt.cs diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/DefaultGreenzoneSettings.Designer.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/DefaultGreenzoneSettings.Designer.cs new file mode 100644 index 0000000000..5899fe1c2a --- /dev/null +++ b/BizHawk.Client.EmuHawk/tools/TAStudio/DefaultGreenzoneSettings.Designer.cs @@ -0,0 +1,110 @@ +namespace BizHawk.Client.EmuHawk +{ + partial class DefaultGreenzoneSettings + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DefaultGreenzoneSettings)); + this.OkBtn = new System.Windows.Forms.Button(); + this.CancelBtn = new System.Windows.Forms.Button(); + this.DefaultsButton = new System.Windows.Forms.Button(); + this.SettingsPropertyGrid = new System.Windows.Forms.PropertyGrid(); + this.SuspendLayout(); + // + // OkBtn + // + this.OkBtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.OkBtn.Location = new System.Drawing.Point(227, 266); + this.OkBtn.Name = "OkBtn"; + this.OkBtn.Size = new System.Drawing.Size(60, 23); + this.OkBtn.TabIndex = 3; + this.OkBtn.Text = "&Ok"; + this.OkBtn.UseVisualStyleBackColor = true; + this.OkBtn.Click += new System.EventHandler(this.OkBtn_Click); + // + // CancelBtn + // + this.CancelBtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.CancelBtn.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.CancelBtn.Location = new System.Drawing.Point(293, 266); + this.CancelBtn.Name = "CancelBtn"; + this.CancelBtn.Size = new System.Drawing.Size(60, 23); + this.CancelBtn.TabIndex = 2; + this.CancelBtn.Text = "&Cancel"; + this.CancelBtn.UseVisualStyleBackColor = true; + this.CancelBtn.Click += new System.EventHandler(this.CancelBtn_Click); + // + // DefaultsButton + // + this.DefaultsButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.DefaultsButton.Location = new System.Drawing.Point(12, 266); + this.DefaultsButton.Name = "DefaultsButton"; + this.DefaultsButton.Size = new System.Drawing.Size(101, 23); + this.DefaultsButton.TabIndex = 4; + this.DefaultsButton.Text = "Restore &Defaults"; + this.DefaultsButton.UseVisualStyleBackColor = true; + this.DefaultsButton.Click += new System.EventHandler(this.DefaultsButton_Click); + // + // SettingsPropertyGrid + // + this.SettingsPropertyGrid.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.SettingsPropertyGrid.Location = new System.Drawing.Point(12, 8); + this.SettingsPropertyGrid.Name = "SettingsPropertyGrid"; + this.SettingsPropertyGrid.PropertySort = System.Windows.Forms.PropertySort.NoSort; + this.SettingsPropertyGrid.Size = new System.Drawing.Size(341, 252); + this.SettingsPropertyGrid.TabIndex = 5; + this.SettingsPropertyGrid.ToolbarVisible = false; + // + // DefaultGreenzoneSettings + // + this.AcceptButton = this.OkBtn; + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.CancelButton = this.CancelBtn; + this.ClientSize = new System.Drawing.Size(365, 301); + this.Controls.Add(this.SettingsPropertyGrid); + this.Controls.Add(this.DefaultsButton); + this.Controls.Add(this.OkBtn); + this.Controls.Add(this.CancelBtn); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Name = "DefaultGreenzoneSettings"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; + this.Text = "Default Savestate History Settings"; + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Button OkBtn; + private System.Windows.Forms.Button CancelBtn; + private System.Windows.Forms.Button DefaultsButton; + private System.Windows.Forms.PropertyGrid SettingsPropertyGrid; + } +} \ No newline at end of file diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/DefaultGreenzoneSettings.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/DefaultGreenzoneSettings.cs new file mode 100644 index 0000000000..96f8e5322f --- /dev/null +++ b/BizHawk.Client.EmuHawk/tools/TAStudio/DefaultGreenzoneSettings.cs @@ -0,0 +1,44 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; + +using BizHawk.Client.Common; + +namespace BizHawk.Client.EmuHawk +{ + public partial class DefaultGreenzoneSettings : Form + { + TasStateManagerSettings settings; + + public DefaultGreenzoneSettings() + { + InitializeComponent(); + + settings = new TasStateManagerSettings(Global.Config.DefaultTasProjSettings); + + SettingsPropertyGrid.SelectedObject = settings; + } + + private void OkBtn_Click(object sender, EventArgs e) + { + Global.Config.DefaultTasProjSettings = settings; + this.Close(); + } + + private void CancelBtn_Click(object sender, EventArgs e) + { + this.Close(); + } + + private void DefaultsButton_Click(object sender, EventArgs e) + { + settings = new TasStateManagerSettings(); + SettingsPropertyGrid.SelectedObject = settings; + } + } +} diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/DefaultGreenzoneSettings.resx b/BizHawk.Client.EmuHawk/tools/TAStudio/DefaultGreenzoneSettings.resx new file mode 100644 index 0000000000..76776a95aa --- /dev/null +++ b/BizHawk.Client.EmuHawk/tools/TAStudio/DefaultGreenzoneSettings.resx @@ -0,0 +1,149 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////AP64aABQUFAAwNjwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAMDAAMDAwAAAAAAAAAAAAMCAgMDAwMDAwAAAAMDAAADAgICAwMDAwMDAwMCAgMAAAMCAwMD + AwMDAwMDAgIDAAMEBAQDAgMDAwMDAwICAgMDBAQEAwICAwQDAwQDAgIDAAMDAwICAgMCAgIDAwMDAAAA + AwICAgMCAgIDAgMAAAAAAAAAAwMEBAQEBAQCAwAAAAAAAwMEBAQDAwMDAwMAAAAAAwQEAwMEBAMEBAQC + AwAAAAMEBAMDBAMEBAQEAgMAAAAAAwMDBAQDBAMDAwIDAAAAAAMCAgICAgICAgMEBAMAAAAAAwICAgIC + AwMEBAQDAAAAAAADAwMDAwAAAwMDAJH/AAAAcwAAAAEAAIABAAAAAAAAAAAAAIABAADABwAA8AMAAOAD + AADAAQAAwAEAAOABAADgAAAA8AAAAPgxAAA= + + + \ No newline at end of file diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs index 6a879b5d77..5a1eab6e3b 100644 --- a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs +++ b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs @@ -129,6 +129,8 @@ namespace BizHawk.Client.EmuHawk this.InsertNumFramesContextMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripSeparator18 = new System.Windows.Forms.ToolStripSeparator(); this.TruncateContextMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator21 = new System.Windows.Forms.ToolStripSeparator(); + this.DefaultStateSettingsMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.TASMenu.SuspendLayout(); this.TasStatusStrip.SuspendLayout(); this.RightClickMenu.SuspendLayout(); @@ -454,9 +456,9 @@ namespace BizHawk.Client.EmuHawk this.GreenzoneICheckSeparator.Name = "GreenzoneICheckSeparator"; this.GreenzoneICheckSeparator.Size = new System.Drawing.Size(279, 6); // - // GreenZzoneIntegrityCheckMenuItem + // GreenZoneIntegrityCheckMenuItem // - this.GreenZoneIntegrityCheckMenuItem.Name = "GreenZzoneIntegrityCheckMenuItem"; + this.GreenZoneIntegrityCheckMenuItem.Name = "GreenZoneIntegrityCheckMenuItem"; this.GreenZoneIntegrityCheckMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Shift) | System.Windows.Forms.Keys.I))); this.GreenZoneIntegrityCheckMenuItem.Size = new System.Drawing.Size(282, 22); @@ -601,7 +603,9 @@ namespace BizHawk.Client.EmuHawk this.HeaderMenuItem, this.GreenzoneSettingsMenuItem, this.CommentsMenuItem, - this.SubtitlesMenuItem}); + this.SubtitlesMenuItem, + this.toolStripSeparator21, + this.DefaultStateSettingsMenuItem}); this.MetaSubMenu.Name = "MetaSubMenu"; this.MetaSubMenu.Size = new System.Drawing.Size(69, 20); this.MetaSubMenu.Text = "&Metadata"; @@ -609,28 +613,28 @@ namespace BizHawk.Client.EmuHawk // HeaderMenuItem // this.HeaderMenuItem.Name = "HeaderMenuItem"; - this.HeaderMenuItem.Size = new System.Drawing.Size(184, 22); + this.HeaderMenuItem.Size = new System.Drawing.Size(236, 22); this.HeaderMenuItem.Text = "&Header..."; this.HeaderMenuItem.Click += new System.EventHandler(this.HeaderMenuItem_Click); // // GreenzoneSettingsMenuItem // this.GreenzoneSettingsMenuItem.Name = "GreenzoneSettingsMenuItem"; - this.GreenzoneSettingsMenuItem.Size = new System.Drawing.Size(184, 22); - this.GreenzoneSettingsMenuItem.Text = "&Greenzone Settings..."; + this.GreenzoneSettingsMenuItem.Size = new System.Drawing.Size(236, 22); + this.GreenzoneSettingsMenuItem.Text = "&Savestate History Settings..."; this.GreenzoneSettingsMenuItem.Click += new System.EventHandler(this.GreenzoneSettingsMenuItem_Click); // // CommentsMenuItem // this.CommentsMenuItem.Name = "CommentsMenuItem"; - this.CommentsMenuItem.Size = new System.Drawing.Size(184, 22); + this.CommentsMenuItem.Size = new System.Drawing.Size(236, 22); this.CommentsMenuItem.Text = "&Comments..."; this.CommentsMenuItem.Click += new System.EventHandler(this.CommentsMenuItem_Click); // // SubtitlesMenuItem // this.SubtitlesMenuItem.Name = "SubtitlesMenuItem"; - this.SubtitlesMenuItem.Size = new System.Drawing.Size(184, 22); + this.SubtitlesMenuItem.Size = new System.Drawing.Size(236, 22); this.SubtitlesMenuItem.Text = "&Subtitles..."; this.SubtitlesMenuItem.Click += new System.EventHandler(this.SubtitlesMenuItem_Click); // @@ -708,7 +712,7 @@ namespace BizHawk.Client.EmuHawk // toolStripSeparator19 // this.toolStripSeparator19.Name = "toolStripSeparator19"; - this.toolStripSeparator19.Size = new System.Drawing.Size(149, 6); + this.toolStripSeparator19.Size = new System.Drawing.Size(57, 6); // // HelpSubMenu // @@ -937,6 +941,18 @@ namespace BizHawk.Client.EmuHawk this.TruncateContextMenuItem.Text = "Truncate Movie"; this.TruncateContextMenuItem.Click += new System.EventHandler(this.TruncateMenuItem_Click); // + // toolStripSeparator21 + // + this.toolStripSeparator21.Name = "toolStripSeparator21"; + this.toolStripSeparator21.Size = new System.Drawing.Size(233, 6); + // + // DefaultStateSettingsMenuItem + // + this.DefaultStateSettingsMenuItem.Name = "DefaultStateSettingsMenuItem"; + this.DefaultStateSettingsMenuItem.Size = new System.Drawing.Size(236, 22); + this.DefaultStateSettingsMenuItem.Text = "&Default State History Settings..."; + this.DefaultStateSettingsMenuItem.Click += new System.EventHandler(this.DefaultStateSettingsMenuItem_Click); + // // TAStudio // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -1064,5 +1080,7 @@ namespace BizHawk.Client.EmuHawk private System.Windows.Forms.ToolStripSeparator toolStripSeparator19; private System.Windows.Forms.ToolStripSeparator toolStripSeparator20; private System.Windows.Forms.ToolStripMenuItem RotateMenuItem; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator21; + private System.Windows.Forms.ToolStripMenuItem DefaultStateSettingsMenuItem; } } \ No newline at end of file diff --git a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs index 5f8e4d326e..b4cd384562 100644 --- a/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs +++ b/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs @@ -511,6 +511,11 @@ namespace BizHawk.Client.EmuHawk form.ShowDialog(); } + private void DefaultStateSettingsMenuItem_Click(object sender, EventArgs e) + { + new DefaultGreenzoneSettings().ShowDialog(); + } + #endregion #region Settings Menu