using System.Collections.Generic; using System.Drawing; using BizHawk.Emulation.Common; namespace BizHawk.Client.EmuHawk { [SchemaAttributes("A26")] public class A26Schema : IVirtualPadSchema { public IEnumerable GetPadSchemas(IEmulator core) { yield return StandardController(1); yield return StandardController(2); yield return ConsoleButtons(); } private static PadSchema StandardController(int controller) { return new PadSchema { DisplayName = "Player " + controller, IsConsole = false, DefaultSize = new Size(174, 74), MaxSize = new Size(174, 74), Buttons = new[] { new PadSchema.ButtonScema { Name = "P" + controller + " Up", DisplayName = "", Icon = Properties.Resources.BlueUp, Location = new Point(23, 15), Type = PadSchema.PadInputType.Boolean }, new PadSchema.ButtonScema { Name = "P" + controller + " Down", DisplayName = "", Icon = Properties.Resources.BlueDown, Location = new Point(23, 36), Type = PadSchema.PadInputType.Boolean }, new PadSchema.ButtonScema { Name = "P" + controller + " Left", DisplayName = "", Icon = Properties.Resources.Back, Location = new Point(2, 24), Type = PadSchema.PadInputType.Boolean }, new PadSchema.ButtonScema { Name = "P" + controller + " Right", DisplayName = "", Icon = Properties.Resources.Forward, Location = new Point(44, 24), Type = PadSchema.PadInputType.Boolean }, new PadSchema.ButtonScema { Name = "P" + controller + " Button", DisplayName = "B", Location = new Point(124, 24), Type = PadSchema.PadInputType.Boolean } } }; } private static PadSchema ConsoleButtons() { return new PadSchema { DisplayName = "Console", IsConsole = true, DefaultSize = new Size(160, 50), Buttons = new[] { new PadSchema.ButtonScema { Name = "Select", DisplayName = "Select", Location = new Point(10, 15), Type = PadSchema.PadInputType.Boolean }, new PadSchema.ButtonScema { Name = "Reset", DisplayName = "Reset", Location = new Point(60, 15), Type = PadSchema.PadInputType.Boolean }, new PadSchema.ButtonScema { Name = "Power", DisplayName = "Power", Location = new Point(108, 15), Type = PadSchema.PadInputType.Boolean } } }; } } }