From cce98bcfe4b1bba56107fd3520eb7ef441431afc Mon Sep 17 00:00:00 2001 From: adelikat Date: Sat, 16 Nov 2013 02:36:42 +0000 Subject: [PATCH] VirtualPads - allow smaller minimum size, add a clear button for people who don't think to right-click --- .../VirtualPads/VirtualPadForm.Designer.cs | 292 +++++++++--------- .../tools/VirtualPads/VirtualPadForm.cs | 225 +++++++------- 2 files changed, 268 insertions(+), 249 deletions(-) diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/VirtualPadForm.Designer.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/VirtualPadForm.Designer.cs index 49f43c9fa5..caeefc3bdf 100644 --- a/BizHawk.Client.EmuHawk/tools/VirtualPads/VirtualPadForm.Designer.cs +++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/VirtualPadForm.Designer.cs @@ -28,66 +28,67 @@ /// private void InitializeComponent() { - this.components = new System.ComponentModel.Container(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(VirtualPadForm)); - this.ControllerBox = new System.Windows.Forms.GroupBox(); - this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components); - this.clearToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.menuStrip1 = new MenuStripEx(); - this.optionsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.alwaysOnTopToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.autolaodToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.saveWindowPositionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); - this.restoreDefaultSettingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); - this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.StickyBox = new System.Windows.Forms.CheckBox(); - this.contextMenuStrip1.SuspendLayout(); - this.menuStrip1.SuspendLayout(); - this.SuspendLayout(); - // - // ControllerBox - // - this.ControllerBox.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(VirtualPadForm)); + this.ControllerBox = new System.Windows.Forms.GroupBox(); + this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components); + this.clearToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.menuStrip1 = new MenuStripEx(); + this.optionsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.alwaysOnTopToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.autolaodToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.saveWindowPositionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); + this.restoreDefaultSettingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); + this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.StickyBox = new System.Windows.Forms.CheckBox(); + this.button1 = new System.Windows.Forms.Button(); + this.contextMenuStrip1.SuspendLayout(); + this.menuStrip1.SuspendLayout(); + this.SuspendLayout(); + // + // ControllerBox + // + this.ControllerBox.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.ControllerBox.ContextMenuStrip = this.contextMenuStrip1; - this.ControllerBox.Location = new System.Drawing.Point(9, 26); - this.ControllerBox.Name = "ControllerBox"; - this.ControllerBox.Size = new System.Drawing.Size(431, 251); - this.ControllerBox.TabIndex = 5; - this.ControllerBox.TabStop = false; - this.ControllerBox.Text = "Controllers"; - // - // contextMenuStrip1 - // - this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.ControllerBox.ContextMenuStrip = this.contextMenuStrip1; + this.ControllerBox.Location = new System.Drawing.Point(9, 26); + this.ControllerBox.Name = "ControllerBox"; + this.ControllerBox.Size = new System.Drawing.Size(431, 251); + this.ControllerBox.TabIndex = 5; + this.ControllerBox.TabStop = false; + this.ControllerBox.Text = "Controllers"; + // + // contextMenuStrip1 + // + this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.clearToolStripMenuItem}); - this.contextMenuStrip1.Name = "contextMenuStrip1"; - this.contextMenuStrip1.Size = new System.Drawing.Size(102, 26); - // - // clearToolStripMenuItem - // - this.clearToolStripMenuItem.Name = "clearToolStripMenuItem"; - this.clearToolStripMenuItem.Size = new System.Drawing.Size(101, 22); - this.clearToolStripMenuItem.Text = "&Clear"; - this.clearToolStripMenuItem.Click += new System.EventHandler(this.clearToolStripMenuItem_Click); - // - // menuStrip1 - // - this.menuStrip1.ClickThrough = true; - this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.contextMenuStrip1.Name = "contextMenuStrip1"; + this.contextMenuStrip1.Size = new System.Drawing.Size(102, 26); + // + // clearToolStripMenuItem + // + this.clearToolStripMenuItem.Name = "clearToolStripMenuItem"; + this.clearToolStripMenuItem.Size = new System.Drawing.Size(101, 22); + this.clearToolStripMenuItem.Text = "&Clear"; + this.clearToolStripMenuItem.Click += new System.EventHandler(this.clearToolStripMenuItem_Click); + // + // menuStrip1 + // + this.menuStrip1.ClickThrough = true; + this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.optionsToolStripMenuItem}); - this.menuStrip1.Location = new System.Drawing.Point(0, 0); - this.menuStrip1.Name = "menuStrip1"; - this.menuStrip1.Size = new System.Drawing.Size(452, 24); - this.menuStrip1.TabIndex = 6; - this.menuStrip1.Text = "menuStrip1"; - // - // optionsToolStripMenuItem - // - this.optionsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.menuStrip1.Location = new System.Drawing.Point(0, 0); + this.menuStrip1.Name = "menuStrip1"; + this.menuStrip1.Size = new System.Drawing.Size(452, 24); + this.menuStrip1.TabIndex = 6; + this.menuStrip1.Text = "menuStrip1"; + // + // optionsToolStripMenuItem + // + this.optionsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { this.alwaysOnTopToolStripMenuItem, this.autolaodToolStripMenuItem, this.saveWindowPositionToolStripMenuItem, @@ -95,89 +96,101 @@ this.restoreDefaultSettingsToolStripMenuItem, this.toolStripSeparator1, this.exitToolStripMenuItem}); - 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); - // - // alwaysOnTopToolStripMenuItem - // - this.alwaysOnTopToolStripMenuItem.Name = "alwaysOnTopToolStripMenuItem"; - this.alwaysOnTopToolStripMenuItem.Size = new System.Drawing.Size(199, 22); - this.alwaysOnTopToolStripMenuItem.Text = "Always On Top"; - this.alwaysOnTopToolStripMenuItem.Click += new System.EventHandler(this.alwaysOnTopToolStripMenuItem_Click); - // - // autolaodToolStripMenuItem - // - this.autolaodToolStripMenuItem.Name = "autolaodToolStripMenuItem"; - this.autolaodToolStripMenuItem.Size = new System.Drawing.Size(199, 22); - this.autolaodToolStripMenuItem.Text = "&Autoload"; - this.autolaodToolStripMenuItem.Click += new System.EventHandler(this.autolaodToolStripMenuItem_Click); - // - // saveWindowPositionToolStripMenuItem - // - this.saveWindowPositionToolStripMenuItem.Name = "saveWindowPositionToolStripMenuItem"; - this.saveWindowPositionToolStripMenuItem.Size = new System.Drawing.Size(199, 22); - this.saveWindowPositionToolStripMenuItem.Text = "&Save Window Position"; - this.saveWindowPositionToolStripMenuItem.Click += new System.EventHandler(this.saveWindowPositionToolStripMenuItem_Click); - // - // toolStripSeparator2 - // - this.toolStripSeparator2.Name = "toolStripSeparator2"; - this.toolStripSeparator2.Size = new System.Drawing.Size(196, 6); - // - // restoreDefaultSettingsToolStripMenuItem - // - this.restoreDefaultSettingsToolStripMenuItem.Name = "restoreDefaultSettingsToolStripMenuItem"; - this.restoreDefaultSettingsToolStripMenuItem.Size = new System.Drawing.Size(199, 22); - this.restoreDefaultSettingsToolStripMenuItem.Text = "Restore Default Settings"; - this.restoreDefaultSettingsToolStripMenuItem.Click += new System.EventHandler(this.restoreDefaultSettingsToolStripMenuItem_Click); - // - // toolStripSeparator1 - // - this.toolStripSeparator1.Name = "toolStripSeparator1"; - this.toolStripSeparator1.Size = new System.Drawing.Size(196, 6); - // - // exitToolStripMenuItem - // - this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; - this.exitToolStripMenuItem.ShortcutKeyDisplayString = "Alt+F4"; - this.exitToolStripMenuItem.Size = new System.Drawing.Size(199, 22); - this.exitToolStripMenuItem.Text = "E&xit"; - this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click); - // - // StickyBox - // - this.StickyBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.StickyBox.AutoSize = true; - this.StickyBox.Location = new System.Drawing.Point(9, 283); - this.StickyBox.Name = "StickyBox"; - this.StickyBox.Size = new System.Drawing.Size(55, 17); - this.StickyBox.TabIndex = 7; - this.StickyBox.Text = "Sticky"; - this.StickyBox.UseVisualStyleBackColor = true; - this.StickyBox.CheckedChanged += new System.EventHandler(this.StickyBox_CheckedChanged); - // - // VirtualPadForm - // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(452, 312); - this.Controls.Add(this.ControllerBox); - this.Controls.Add(this.StickyBox); - this.Controls.Add(this.menuStrip1); - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.MainMenuStrip = this.menuStrip1; - this.MinimumSize = new System.Drawing.Size(400, 100); - this.Name = "VirtualPadForm"; - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; - this.Text = "Virtual Pads"; - this.Load += new System.EventHandler(this.VirtualPadForm_Load); - this.contextMenuStrip1.ResumeLayout(false); - this.menuStrip1.ResumeLayout(false); - this.menuStrip1.PerformLayout(); - this.ResumeLayout(false); - this.PerformLayout(); + 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); + // + // alwaysOnTopToolStripMenuItem + // + this.alwaysOnTopToolStripMenuItem.Name = "alwaysOnTopToolStripMenuItem"; + this.alwaysOnTopToolStripMenuItem.Size = new System.Drawing.Size(199, 22); + this.alwaysOnTopToolStripMenuItem.Text = "Always On Top"; + this.alwaysOnTopToolStripMenuItem.Click += new System.EventHandler(this.alwaysOnTopToolStripMenuItem_Click); + // + // autolaodToolStripMenuItem + // + this.autolaodToolStripMenuItem.Name = "autolaodToolStripMenuItem"; + this.autolaodToolStripMenuItem.Size = new System.Drawing.Size(199, 22); + this.autolaodToolStripMenuItem.Text = "&Autoload"; + this.autolaodToolStripMenuItem.Click += new System.EventHandler(this.autolaodToolStripMenuItem_Click); + // + // saveWindowPositionToolStripMenuItem + // + this.saveWindowPositionToolStripMenuItem.Name = "saveWindowPositionToolStripMenuItem"; + this.saveWindowPositionToolStripMenuItem.Size = new System.Drawing.Size(199, 22); + this.saveWindowPositionToolStripMenuItem.Text = "&Save Window Position"; + this.saveWindowPositionToolStripMenuItem.Click += new System.EventHandler(this.saveWindowPositionToolStripMenuItem_Click); + // + // toolStripSeparator2 + // + this.toolStripSeparator2.Name = "toolStripSeparator2"; + this.toolStripSeparator2.Size = new System.Drawing.Size(196, 6); + // + // restoreDefaultSettingsToolStripMenuItem + // + this.restoreDefaultSettingsToolStripMenuItem.Name = "restoreDefaultSettingsToolStripMenuItem"; + this.restoreDefaultSettingsToolStripMenuItem.Size = new System.Drawing.Size(199, 22); + this.restoreDefaultSettingsToolStripMenuItem.Text = "Restore Default Settings"; + this.restoreDefaultSettingsToolStripMenuItem.Click += new System.EventHandler(this.restoreDefaultSettingsToolStripMenuItem_Click); + // + // toolStripSeparator1 + // + this.toolStripSeparator1.Name = "toolStripSeparator1"; + this.toolStripSeparator1.Size = new System.Drawing.Size(196, 6); + // + // exitToolStripMenuItem + // + this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; + this.exitToolStripMenuItem.ShortcutKeyDisplayString = "Alt+F4"; + this.exitToolStripMenuItem.Size = new System.Drawing.Size(199, 22); + this.exitToolStripMenuItem.Text = "E&xit"; + this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click); + // + // StickyBox + // + this.StickyBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.StickyBox.AutoSize = true; + this.StickyBox.Location = new System.Drawing.Point(9, 283); + this.StickyBox.Name = "StickyBox"; + this.StickyBox.Size = new System.Drawing.Size(55, 17); + this.StickyBox.TabIndex = 7; + this.StickyBox.Text = "Sticky"; + this.StickyBox.UseVisualStyleBackColor = true; + this.StickyBox.CheckedChanged += new System.EventHandler(this.StickyBox_CheckedChanged); + // + // button1 + // + this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.button1.Location = new System.Drawing.Point(79, 279); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(75, 23); + this.button1.TabIndex = 8; + this.button1.Text = "&Clear"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // VirtualPadForm + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(452, 312); + this.Controls.Add(this.button1); + this.Controls.Add(this.ControllerBox); + this.Controls.Add(this.StickyBox); + this.Controls.Add(this.menuStrip1); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MainMenuStrip = this.menuStrip1; + this.MinimumSize = new System.Drawing.Size(100, 100); + this.Name = "VirtualPadForm"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; + this.Text = "Virtual Pads"; + this.Load += new System.EventHandler(this.VirtualPadForm_Load); + this.contextMenuStrip1.ResumeLayout(false); + this.menuStrip1.ResumeLayout(false); + this.menuStrip1.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); } @@ -196,5 +209,6 @@ private System.Windows.Forms.ToolStripMenuItem restoreDefaultSettingsToolStripMenuItem; private System.Windows.Forms.ToolStripSeparator toolStripSeparator1; private System.Windows.Forms.ToolStripMenuItem alwaysOnTopToolStripMenuItem; + private System.Windows.Forms.Button button1; } } \ No newline at end of file diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/VirtualPadForm.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/VirtualPadForm.cs index 2d1803e363..55c4aa8750 100644 --- a/BizHawk.Client.EmuHawk/tools/VirtualPads/VirtualPadForm.cs +++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/VirtualPadForm.cs @@ -13,7 +13,7 @@ namespace BizHawk.Client.EmuHawk { private int defaultWidth; //For saving the default size of the dialog, so the user can restore if desired private int defaultHeight; - private readonly List Pads = new List(); + private readonly List _pads = new List(); public bool AskSave() { return true; } public bool UpdateBefore { get { return false; } } @@ -42,7 +42,7 @@ namespace BizHawk.Client.EmuHawk Location = new Point(Global.Config.VPadWndx, Global.Config.VPadWndy); } - if (Global.Config.VirtualPadSaveWindowPosition && Global.Config.VPadWidth >= 0 && Global.Config.VPadHeight >= 0) + if (Global.Config.VirtualPadSaveWindowPosition && Global.Config.VPadWidth >= 0 && Global.Config.VPadHeight >= 0) { Size = new Size(Global.Config.VPadWidth, Global.Config.VPadHeight); } @@ -56,7 +56,7 @@ namespace BizHawk.Client.EmuHawk Global.Config.VPadWidth = Right - Left; Global.Config.VPadHeight = Bottom - Top; - Pads.Clear(); + _pads.Clear(); } private void LoadPads() @@ -64,36 +64,36 @@ namespace BizHawk.Client.EmuHawk switch (Global.Emulator.SystemId) { case "A26": - VirtualPadA26 ataripad1 = new VirtualPadA26 {Location = new Point(8, 19), Controller = "P1"}; - VirtualPadA26 ataripad2 = new VirtualPadA26 {Location = new Point(188, 19), Controller = "P2"}; - Pads.Add(ataripad1); - Pads.Add(ataripad2); + VirtualPadA26 ataripad1 = new VirtualPadA26 { Location = new Point(8, 19), Controller = "P1" }; + VirtualPadA26 ataripad2 = new VirtualPadA26 { Location = new Point(188, 19), Controller = "P2" }; + _pads.Add(ataripad1); + _pads.Add(ataripad2); ControllerBox.Controls.Add(ataripad1); ControllerBox.Controls.Add(ataripad2); - VirtualPadA26Control ataricontrols = new VirtualPadA26Control {Location = new Point(8, 109)}; - Pads.Add(ataricontrols); - ControllerBox.Controls.Add(Pads[2] as Control); + VirtualPadA26Control ataricontrols = new VirtualPadA26Control { Location = new Point(8, 109) }; + _pads.Add(ataricontrols); + ControllerBox.Controls.Add(_pads[2] as Control); break; case "A78": - VirtualPadA78 atari78pad1 = new VirtualPadA78 {Location = new Point(8, 19), Controller = "P1"}; - VirtualPadA78 atari78pad2 = new VirtualPadA78 {Location = new Point(150, 19), Controller = "P2"}; - Pads.Add(atari78pad1); - Pads.Add(atari78pad2); + VirtualPadA78 atari78pad1 = new VirtualPadA78 { Location = new Point(8, 19), Controller = "P1" }; + VirtualPadA78 atari78pad2 = new VirtualPadA78 { Location = new Point(150, 19), Controller = "P2" }; + _pads.Add(atari78pad1); + _pads.Add(atari78pad2); ControllerBox.Controls.Add(atari78pad1); ControllerBox.Controls.Add(atari78pad2); - VirtualPadA78Control atari78controls = new VirtualPadA78Control {Location = new Point(8, 125)}; - Pads.Add(atari78controls); - ControllerBox.Controls.Add(Pads[2] as Control); + VirtualPadA78Control atari78controls = new VirtualPadA78Control { Location = new Point(8, 125) }; + _pads.Add(atari78controls); + ControllerBox.Controls.Add(_pads[2] as Control); break; case "NES": - VirtualPadNES nespad1 = new VirtualPadNES {Location = new Point(8, 19), Controller = "P1"}; - VirtualPadNES nespad2 = new VirtualPadNES {Location = new Point(188, 19), Controller = "P2"}; - Pads.Add(nespad1); - Pads.Add(nespad2); + VirtualPadNES nespad1 = new VirtualPadNES { Location = new Point(8, 19), Controller = "P1" }; + VirtualPadNES nespad2 = new VirtualPadNES { Location = new Point(188, 19), Controller = "P2" }; + _pads.Add(nespad1); + _pads.Add(nespad2); ControllerBox.Controls.Add(nespad1); ControllerBox.Controls.Add(nespad2); - VirtualPadNESControl controlpad1 = new VirtualPadNESControl {Location = new Point(8, 109)}; - Pads.Add(controlpad1); + VirtualPadNESControl controlpad1 = new VirtualPadNESControl { Location = new Point(8, 109) }; + _pads.Add(controlpad1); ControllerBox.Controls.Add(controlpad1); break; case "N64": @@ -101,58 +101,58 @@ namespace BizHawk.Client.EmuHawk VirtualPadN64 n64pad2 = new VirtualPadN64 { Location = new Point(208, 19), Controller = "P2" }; VirtualPadN64 n64pad3 = new VirtualPadN64 { Location = new Point(408, 19), Controller = "P3" }; VirtualPadN64 n64pad4 = new VirtualPadN64 { Location = new Point(608, 19), Controller = "P4" }; - Pads.Add(n64pad1); - Pads.Add(n64pad2); - Pads.Add(n64pad3); - Pads.Add(n64pad4); + _pads.Add(n64pad1); + _pads.Add(n64pad2); + _pads.Add(n64pad3); + _pads.Add(n64pad4); ControllerBox.Controls.Add(n64pad1); ControllerBox.Controls.Add(n64pad2); ControllerBox.Controls.Add(n64pad3); ControllerBox.Controls.Add(n64pad4); VirtualPadN64Control n64controlpad1 = new VirtualPadN64Control { Location = new Point(8, 350) }; - Pads.Add(n64controlpad1); + _pads.Add(n64controlpad1); ControllerBox.Controls.Add(n64controlpad1); break; case "SMS": case "SG": case "GG": - VirtualPadSMS smspad1 = new VirtualPadSMS {Location = new Point(8, 19), Controller = "P1"}; - VirtualPadSMS smspad2 = new VirtualPadSMS {Location = new Point(188, 19), Controller = "P2"}; - Pads.Add(smspad1); - Pads.Add(smspad2); + VirtualPadSMS smspad1 = new VirtualPadSMS { Location = new Point(8, 19), Controller = "P1" }; + VirtualPadSMS smspad2 = new VirtualPadSMS { Location = new Point(188, 19), Controller = "P2" }; + _pads.Add(smspad1); + _pads.Add(smspad2); ControllerBox.Controls.Add(smspad1); ControllerBox.Controls.Add(smspad2); - VirtualPadSMSControl controlpad2 = new VirtualPadSMSControl {Location = new Point(8, 109)}; - Pads.Add(controlpad2); - ControllerBox.Controls.Add(Pads[2] as Control); + VirtualPadSMSControl controlpad2 = new VirtualPadSMSControl { Location = new Point(8, 109) }; + _pads.Add(controlpad2); + ControllerBox.Controls.Add(_pads[2] as Control); break; case "PCE": case "PCECD": case "SGX": - VirtualPadPCE pcepad1 = new VirtualPadPCE {Location = new Point(8, 19), Controller = "P1"}; - VirtualPadPCE pcepad2 = new VirtualPadPCE {Location = new Point(188, 19), Controller = "P2"}; - VirtualPadPCE pcepad3 = new VirtualPadPCE {Location = new Point(8, 109), Controller = "P3"}; - VirtualPadPCE pcepad4 = new VirtualPadPCE {Location = new Point(188, 109), Controller = "P4"}; - Pads.Add(pcepad1); - Pads.Add(pcepad2); - Pads.Add(pcepad3); - Pads.Add(pcepad4); + VirtualPadPCE pcepad1 = new VirtualPadPCE { Location = new Point(8, 19), Controller = "P1" }; + VirtualPadPCE pcepad2 = new VirtualPadPCE { Location = new Point(188, 19), Controller = "P2" }; + VirtualPadPCE pcepad3 = new VirtualPadPCE { Location = new Point(8, 109), Controller = "P3" }; + VirtualPadPCE pcepad4 = new VirtualPadPCE { Location = new Point(188, 109), Controller = "P4" }; + _pads.Add(pcepad1); + _pads.Add(pcepad2); + _pads.Add(pcepad3); + _pads.Add(pcepad4); ControllerBox.Controls.Add(pcepad1); ControllerBox.Controls.Add(pcepad2); ControllerBox.Controls.Add(pcepad3); ControllerBox.Controls.Add(pcepad4); break; case "SNES": - VirtualPadSNES snespad1 = new VirtualPadSNES {Location = new Point(8, 19), Controller = "P1"}; - VirtualPadSNES snespad2 = new VirtualPadSNES {Location = new Point(188, 19), Controller = "P2"}; - VirtualPadSNES snespad3 = new VirtualPadSNES {Location = new Point(8, 95), Controller = "P3"}; - VirtualPadSNES snespad4 = new VirtualPadSNES {Location = new Point(188, 95), Controller = "P4"}; - VirtualPadSNESControl snescontrolpad = new VirtualPadSNESControl {Location = new Point(8, 170)}; - Pads.Add(snespad1); - Pads.Add(snespad2); - Pads.Add(snespad3); - Pads.Add(snespad4); - Pads.Add(snescontrolpad); + VirtualPadSNES snespad1 = new VirtualPadSNES { Location = new Point(8, 19), Controller = "P1" }; + VirtualPadSNES snespad2 = new VirtualPadSNES { Location = new Point(188, 19), Controller = "P2" }; + VirtualPadSNES snespad3 = new VirtualPadSNES { Location = new Point(8, 95), Controller = "P3" }; + VirtualPadSNES snespad4 = new VirtualPadSNES { Location = new Point(188, 95), Controller = "P4" }; + VirtualPadSNESControl snescontrolpad = new VirtualPadSNESControl { Location = new Point(8, 170) }; + _pads.Add(snespad1); + _pads.Add(snespad2); + _pads.Add(snespad3); + _pads.Add(snespad4); + _pads.Add(snescontrolpad); ControllerBox.Controls.Add(snespad1); ControllerBox.Controls.Add(snespad2); ControllerBox.Controls.Add(snespad3); @@ -161,52 +161,52 @@ namespace BizHawk.Client.EmuHawk break; case "GB": case "GBC": - VirtualPadGB gbpad1 = new VirtualPadGB {Location = new Point(8, 19), Controller = ""}; - Pads.Add(gbpad1); + VirtualPadGB gbpad1 = new VirtualPadGB { Location = new Point(8, 19), Controller = "" }; + _pads.Add(gbpad1); ControllerBox.Controls.Add(gbpad1); - VirtualPadGBControl gbcontrolpad = new VirtualPadGBControl {Location = new Point(8, 109)}; - Pads.Add(gbcontrolpad); + VirtualPadGBControl gbcontrolpad = new VirtualPadGBControl { Location = new Point(8, 109) }; + _pads.Add(gbcontrolpad); ControllerBox.Controls.Add(gbcontrolpad); break; case "GBA": - VirtualPadGBA gbapad1 = new VirtualPadGBA {Location = new Point(8, 19), Controller = ""}; - Pads.Add(gbapad1); + VirtualPadGBA gbapad1 = new VirtualPadGBA { Location = new Point(8, 19), Controller = "" }; + _pads.Add(gbapad1); ControllerBox.Controls.Add(gbapad1); break; case "GEN": - VirtualPadGen3Button genpad1 = new VirtualPadGen3Button {Location = new Point(8, 19), Controller = "P1"}; - Pads.Add(genpad1); + VirtualPadGen3Button genpad1 = new VirtualPadGen3Button { Location = new Point(8, 19), Controller = "P1" }; + _pads.Add(genpad1); ControllerBox.Controls.Add(genpad1); break; case "Coleco": - VirtualPadColeco coleco1 = new VirtualPadColeco {Location = new Point(8, 19), Controller = "P1"}; - VirtualPadColeco coleco2 = new VirtualPadColeco {Location = new Point(130, 19), Controller = "P2"}; - Pads.Add(coleco1); - Pads.Add(coleco2); + VirtualPadColeco coleco1 = new VirtualPadColeco { Location = new Point(8, 19), Controller = "P1" }; + VirtualPadColeco coleco2 = new VirtualPadColeco { Location = new Point(130, 19), Controller = "P2" }; + _pads.Add(coleco1); + _pads.Add(coleco2); ControllerBox.Controls.Add(coleco1); ControllerBox.Controls.Add(coleco2); break; case "C64": - VirtualPadC64Keyboard c64k = new VirtualPadC64Keyboard {Location = new Point(8, 19)}; - Pads.Add(c64k); + VirtualPadC64Keyboard c64k = new VirtualPadC64Keyboard { Location = new Point(8, 19) }; + _pads.Add(c64k); ControllerBox.Controls.Add(c64k); - VirtualPadA26 _ataripad1 = new VirtualPadA26 {Location = new Point(8, 159), Controller = "P1"}; - VirtualPadA26 _ataripad2 = new VirtualPadA26 {Location = new Point(218, 159), Controller = "P2"}; - Pads.Add(_ataripad1); - Pads.Add(_ataripad2); + VirtualPadA26 _ataripad1 = new VirtualPadA26 { Location = new Point(8, 159), Controller = "P1" }; + VirtualPadA26 _ataripad2 = new VirtualPadA26 { Location = new Point(218, 159), Controller = "P2" }; + _pads.Add(_ataripad1); + _pads.Add(_ataripad2); ControllerBox.Controls.Add(_ataripad1); ControllerBox.Controls.Add(_ataripad2); break; - + case "SAT": VirtualPadSaturn saturnpad1 = new VirtualPadSaturn { Location = new Point(8, 19), Controller = "P1" }; VirtualPadSaturn saturnpad2 = new VirtualPadSaturn { Location = new Point(213, 19), Controller = "P2" }; - Pads.Add(saturnpad1); - Pads.Add(saturnpad2); + _pads.Add(saturnpad1); + _pads.Add(saturnpad2); ControllerBox.Controls.Add(saturnpad1); ControllerBox.Controls.Add(saturnpad2); VirtualPadSaturnControl saturncontrols = new VirtualPadSaturnControl { Location = new Point(8, 125) }; - Pads.Add(saturncontrols); + _pads.Add(saturncontrols); ControllerBox.Controls.Add(saturncontrols); break; } @@ -249,7 +249,7 @@ namespace BizHawk.Client.EmuHawk { if (!IsHandleCreated || IsDisposed) return; ControllerBox.Controls.Clear(); - Pads.Clear(); + _pads.Clear(); LoadPads(); } @@ -265,56 +265,56 @@ namespace BizHawk.Client.EmuHawk switch (Global.Emulator.SystemId) { case "NES": - Pads[0].SetButtons(str.Substring(3, 8)); - Pads[1].SetButtons(str.Substring(12, 8)); - Pads[2].SetButtons(str[1].ToString()); + _pads[0].SetButtons(str.Substring(3, 8)); + _pads[1].SetButtons(str.Substring(12, 8)); + _pads[2].SetButtons(str[1].ToString()); break; case "A26": - Pads[0].SetButtons(str.Substring(4, 5)); - Pads[1].SetButtons(str.Substring(10, 5)); - Pads[2].SetButtons(str.Substring(1, 2)); + _pads[0].SetButtons(str.Substring(4, 5)); + _pads[1].SetButtons(str.Substring(10, 5)); + _pads[2].SetButtons(str.Substring(1, 2)); break; case "SMS": case "GG": case "SG": - Pads[0].SetButtons(str.Substring(1, 6)); - Pads[1].SetButtons(str.Substring(8, 6)); - Pads[2].SetButtons(str.Substring(15, 2)); + _pads[0].SetButtons(str.Substring(1, 6)); + _pads[1].SetButtons(str.Substring(8, 6)); + _pads[2].SetButtons(str.Substring(15, 2)); break; case "PCE": case "SGX": - Pads[0].SetButtons(str.Substring(3, 8)); - Pads[1].SetButtons(str.Substring(12, 8)); - Pads[2].SetButtons(str.Substring(21, 8)); - Pads[3].SetButtons(str.Substring(30, 8)); + _pads[0].SetButtons(str.Substring(3, 8)); + _pads[1].SetButtons(str.Substring(12, 8)); + _pads[2].SetButtons(str.Substring(21, 8)); + _pads[3].SetButtons(str.Substring(30, 8)); break; case "TI83": - Pads[0].SetButtons(str.Substring(2, 50)); + _pads[0].SetButtons(str.Substring(2, 50)); break; case "SNES": - Pads[0].SetButtons(str.Substring(3, 12)); - Pads[1].SetButtons(str.Substring(16, 12)); - Pads[2].SetButtons(str.Substring(29, 12)); - Pads[3].SetButtons(str.Substring(42, 12)); + _pads[0].SetButtons(str.Substring(3, 12)); + _pads[1].SetButtons(str.Substring(16, 12)); + _pads[2].SetButtons(str.Substring(29, 12)); + _pads[3].SetButtons(str.Substring(42, 12)); break; case "GEN": - Pads[0].SetButtons(str.Substring(3, 8)); - Pads[1].SetButtons(str.Substring(12, 8)); + _pads[0].SetButtons(str.Substring(3, 8)); + _pads[1].SetButtons(str.Substring(12, 8)); break; case "GB": - Pads[0].SetButtons(str.Substring(3, 8)); + _pads[0].SetButtons(str.Substring(3, 8)); break; case "Coleco": - Pads[0].SetButtons(str.Substring(1, 18)); - Pads[1].SetButtons(str.Substring(20, 18)); + _pads[0].SetButtons(str.Substring(1, 18)); + _pads[1].SetButtons(str.Substring(20, 18)); break; case "C64": break; case "N64": - Pads[0].SetButtons(str.Substring(3, 23)); - Pads[1].SetButtons(str.Substring(27, 23)); - Pads[2].SetButtons(str.Substring(51, 23)); - Pads[3].SetButtons(str.Substring(75, 23)); + _pads[0].SetButtons(str.Substring(3, 23)); + _pads[1].SetButtons(str.Substring(27, 23)); + _pads[2].SetButtons(str.Substring(51, 23)); + _pads[3].SetButtons(str.Substring(75, 23)); break; } } @@ -323,7 +323,7 @@ namespace BizHawk.Client.EmuHawk { if (!Global.Config.VirtualPadSticky) { - foreach (IVirtualPad v in Pads) + foreach (IVirtualPad v in _pads) { v.Clear(); } @@ -377,17 +377,22 @@ namespace BizHawk.Client.EmuHawk //TODO: make an analog flag in virtualpads that have it, and check the virtualpads loaded, instead of doing this hardcoded if (Global.Emulator is N64) { - (Pads[0] as VirtualPadN64).FudgeAnalog(dx, dy); + (_pads[0] as VirtualPadN64).FudgeAnalog(dx, dy); UpdateValues(); } } - private void alwaysOnTopToolStripMenuItem_Click(object sender, EventArgs e) - { - alwaysOnTopToolStripMenuItem.Checked = alwaysOnTopToolStripMenuItem.Checked == false; - this.TopMost = alwaysOnTopToolStripMenuItem.Checked; - } + private void alwaysOnTopToolStripMenuItem_Click(object sender, EventArgs e) + { + alwaysOnTopToolStripMenuItem.Checked = alwaysOnTopToolStripMenuItem.Checked == false; + TopMost = alwaysOnTopToolStripMenuItem.Checked; + } + + private void button1_Click(object sender, EventArgs e) + { + ClearVirtualPadHolds(); + } } }