67 lines
1.6 KiB
C#
67 lines
1.6 KiB
C#
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.Emulation.Cores.PCEngine;
|
|
using BizHawk.Client.Common;
|
|
using BizHawk.Common;
|
|
|
|
namespace BizHawk.Client.EmuHawk
|
|
{
|
|
public partial class PCEControllerConfig : Form
|
|
{
|
|
public PCEControllerConfig()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void PCEControllerConfig_Load(object sender, EventArgs e)
|
|
{
|
|
var pceSettings = ((PCEngine)Global.Emulator).GetSyncSettings();
|
|
for (int i = 0; i < 5; i++)
|
|
{
|
|
Controls.Add(new Label
|
|
{
|
|
Text = "Controller " + (i + 1),
|
|
Location = new Point(15, 15 + (i * 25))
|
|
});
|
|
Controls.Add(new CheckBox
|
|
{
|
|
Text = "Connected",
|
|
Name = "Controller" + i,
|
|
Location = new Point(135, 15 + (i * 25)),
|
|
Checked = pceSettings.Controllers[i].IsConnected
|
|
});
|
|
}
|
|
}
|
|
|
|
private void OkBtn_Click(object sender, EventArgs e)
|
|
{
|
|
var pceSettings = ((PCEngine)Global.Emulator).GetSyncSettings();
|
|
|
|
Controls
|
|
.OfType<CheckBox>()
|
|
.OrderBy(c => c.Name)
|
|
.ToList()
|
|
.ForEach(c => {
|
|
var index = int.Parse(c.Name.Replace("Controller", ""));
|
|
pceSettings.Controllers[index].IsConnected = c.Checked;
|
|
});
|
|
GlobalWin.MainForm.PutCoreSyncSettings(pceSettings);
|
|
DialogResult = DialogResult.OK;
|
|
Close();
|
|
}
|
|
|
|
private void CancelBtn_Click(object sender, EventArgs e)
|
|
{
|
|
DialogResult = DialogResult.Cancel;
|
|
Close();
|
|
}
|
|
}
|
|
}
|