mirror of
https://github.com/cemu-project/DS4Windows.git
synced 2024-12-26 08:31:49 +01:00
794cefe2e6
Works with both the sticks and the buttons (Sens. setting in options) Signed-off-by: jays2kings <jays2kings@gmail.com>
108 lines
3.8 KiB
C#
108 lines
3.8 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;
|
|
|
|
namespace ScpServer
|
|
{
|
|
public partial class KBM360 : Form
|
|
{
|
|
private DS4Control.Control scpDevice;
|
|
private int device;
|
|
private Button button;
|
|
private Options ops;
|
|
public KBM360(DS4Control.Control bus_device, int deviceNum, Options ooo, Button buton, int tabStart)
|
|
{
|
|
InitializeComponent();
|
|
device = deviceNum;
|
|
scpDevice = bus_device;
|
|
ops = ooo;
|
|
button = buton;
|
|
if (button.ForeColor == Color.Red)
|
|
cbRepeat.Checked = true;
|
|
if (button.Font.Bold)
|
|
cbScanCode.Checked = true;
|
|
Text = "Select an action for " + button.Name.Substring(2);
|
|
foreach (System.Windows.Forms.Control control in tabKBM.Controls)
|
|
if (control is Button)
|
|
((Button)control).Click += new System.EventHandler(anybtn_Click);
|
|
foreach (System.Windows.Forms.Control control in tab360.Controls)
|
|
if (control is Button)
|
|
((Button)control).Click += new System.EventHandler(anybtn_Click360);
|
|
if (button.Name.Contains("Touch"))
|
|
{
|
|
bnMOUSEDOWN.Visible = false;
|
|
bnMOUSELEFT.Visible = false;
|
|
bnMOUSERIGHT.Visible = false;
|
|
bnMOUSEUP.Visible = false;
|
|
}
|
|
if (tabStart < 2)
|
|
tabControl1.SelectedIndex = tabStart;
|
|
else
|
|
tabControl1.SelectedIndex = 0;
|
|
ReFocus();
|
|
}
|
|
|
|
public void anybtn_Click(object sender, EventArgs e)
|
|
{
|
|
if (sender is Button)
|
|
{
|
|
string keyname;
|
|
if (((Button)sender).Text.Contains('↑') || ((Button)sender).Text.Contains('↓') || ((Button)sender).Text.Contains('→') || ((Button)sender).Text.Contains('←') || ((Button)sender).Text.Contains('Ø'))
|
|
keyname = ((Button)sender).Text.Substring(1);
|
|
else if (((Button)sender).Font.Name == "Webdings")
|
|
{
|
|
if (((Button)sender).Text == "9")
|
|
keyname = "Previous Track";
|
|
else if (((Button)sender).Text == "<")
|
|
keyname = "Stop Track";
|
|
else if (((Button)sender).Text == "4")
|
|
keyname = "Play/Pause";
|
|
else if (((Button)sender).Text == ":")
|
|
keyname = "Next Track";
|
|
else
|
|
keyname = "How did you get here?";
|
|
}
|
|
else
|
|
keyname = ((Button)sender).Text;
|
|
object keytag = ((Button)sender).Tag;
|
|
ops.ChangeButtonText(keyname, keytag);
|
|
this.Close();
|
|
}
|
|
}
|
|
|
|
private void ReFocus()
|
|
{
|
|
if (ops.Focused)
|
|
this.Enabled = false;
|
|
}
|
|
public void anybtn_Click360(object sender, EventArgs e)
|
|
{
|
|
if (sender is Button)
|
|
{
|
|
string keyname = ((Button)sender).Text;
|
|
ops.ChangeButtonText(keyname);
|
|
this.Close();
|
|
}
|
|
}
|
|
|
|
private void finalMeasure(object sender, FormClosedEventArgs e)
|
|
{
|
|
ops.Toggle_Repeat(cbRepeat.Checked);
|
|
ops.Toggle_ScanCode(cbScanCode.Checked);
|
|
ops.UpdateLists();
|
|
}
|
|
|
|
private void Key_Down_Action(object sender, KeyEventArgs e)
|
|
{
|
|
ops.ChangeButtonText(e.KeyCode.ToString(), e.KeyValue);
|
|
this.Close();
|
|
}
|
|
|
|
}
|
|
}
|