aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx/Ui/ControllerWindow.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx/Ui/ControllerWindow.cs')
-rw-r--r--Ryujinx/Ui/ControllerWindow.cs133
1 files changed, 101 insertions, 32 deletions
diff --git a/Ryujinx/Ui/ControllerWindow.cs b/Ryujinx/Ui/ControllerWindow.cs
index 1d879eb5..40612874 100644
--- a/Ryujinx/Ui/ControllerWindow.cs
+++ b/Ryujinx/Ui/ControllerWindow.cs
@@ -28,10 +28,19 @@ namespace Ryujinx.Ui
[GUI] Adjustment _controllerDeadzoneLeft;
[GUI] Adjustment _controllerDeadzoneRight;
[GUI] Adjustment _controllerTriggerThreshold;
+ [GUI] Adjustment _slotNumber;
+ [GUI] Adjustment _altSlotNumber;
+ [GUI] Adjustment _sensitivity;
+ [GUI] Adjustment _gyroDeadzone;
+ [GUI] CheckButton _enableMotion;
+ [GUI] CheckButton _mirrorInput;
+ [GUI] Entry _dsuServerHost;
+ [GUI] Entry _dsuServerPort;
[GUI] ComboBoxText _inputDevice;
[GUI] ComboBoxText _profile;
[GUI] ToggleButton _refreshInputDevicesButton;
[GUI] Box _settingsBox;
+ [GUI] Box _altBox;
[GUI] Grid _leftStickKeyboard;
[GUI] Grid _leftStickController;
[GUI] Box _deadZoneLeftBox;
@@ -225,6 +234,7 @@ namespace Ryujinx.Ui
{
_leftSideTriggerBox.Hide();
_rightSideTriggerBox.Hide();
+ _altBox.Hide();
switch (_controllerType.ActiveId)
{
@@ -234,6 +244,9 @@ namespace Ryujinx.Ui
case "JoyconRight":
_rightSideTriggerBox.Show();
break;
+ case "JoyconPair":
+ _altBox.Show();
+ break;
}
switch (_controllerType.ActiveId)
@@ -290,6 +303,14 @@ namespace Ryujinx.Ui
_controllerDeadzoneLeft.Value = 0;
_controllerDeadzoneRight.Value = 0;
_controllerTriggerThreshold.Value = 0;
+ _mirrorInput.Active = false;
+ _enableMotion.Active = false;
+ _slotNumber.Value = 0;
+ _altSlotNumber.Value = 0;
+ _sensitivity.Value = 100;
+ _gyroDeadzone.Value = 1;
+ _dsuServerHost.Buffer.Text = "";
+ _dsuServerPort.Buffer.Text = "";
}
private void SetValues(InputConfig config)
@@ -304,34 +325,42 @@ namespace Ryujinx.Ui
: ControllerType.ProController.ToString());
}
- _lStickUp.Label = keyboardConfig.LeftJoycon.StickUp.ToString();
- _lStickDown.Label = keyboardConfig.LeftJoycon.StickDown.ToString();
- _lStickLeft.Label = keyboardConfig.LeftJoycon.StickLeft.ToString();
- _lStickRight.Label = keyboardConfig.LeftJoycon.StickRight.ToString();
- _lStickButton.Label = keyboardConfig.LeftJoycon.StickButton.ToString();
- _dpadUp.Label = keyboardConfig.LeftJoycon.DPadUp.ToString();
- _dpadDown.Label = keyboardConfig.LeftJoycon.DPadDown.ToString();
- _dpadLeft.Label = keyboardConfig.LeftJoycon.DPadLeft.ToString();
- _dpadRight.Label = keyboardConfig.LeftJoycon.DPadRight.ToString();
- _minus.Label = keyboardConfig.LeftJoycon.ButtonMinus.ToString();
- _l.Label = keyboardConfig.LeftJoycon.ButtonL.ToString();
- _zL.Label = keyboardConfig.LeftJoycon.ButtonZl.ToString();
- _lSl.Label = keyboardConfig.LeftJoycon.ButtonSl.ToString();
- _lSr.Label = keyboardConfig.LeftJoycon.ButtonSr.ToString();
- _rStickUp.Label = keyboardConfig.RightJoycon.StickUp.ToString();
- _rStickDown.Label = keyboardConfig.RightJoycon.StickDown.ToString();
- _rStickLeft.Label = keyboardConfig.RightJoycon.StickLeft.ToString();
- _rStickRight.Label = keyboardConfig.RightJoycon.StickRight.ToString();
- _rStickButton.Label = keyboardConfig.RightJoycon.StickButton.ToString();
- _a.Label = keyboardConfig.RightJoycon.ButtonA.ToString();
- _b.Label = keyboardConfig.RightJoycon.ButtonB.ToString();
- _x.Label = keyboardConfig.RightJoycon.ButtonX.ToString();
- _y.Label = keyboardConfig.RightJoycon.ButtonY.ToString();
- _plus.Label = keyboardConfig.RightJoycon.ButtonPlus.ToString();
- _r.Label = keyboardConfig.RightJoycon.ButtonR.ToString();
- _zR.Label = keyboardConfig.RightJoycon.ButtonZr.ToString();
- _rSl.Label = keyboardConfig.RightJoycon.ButtonSl.ToString();
- _rSr.Label = keyboardConfig.RightJoycon.ButtonSr.ToString();
+ _lStickUp.Label = keyboardConfig.LeftJoycon.StickUp.ToString();
+ _lStickDown.Label = keyboardConfig.LeftJoycon.StickDown.ToString();
+ _lStickLeft.Label = keyboardConfig.LeftJoycon.StickLeft.ToString();
+ _lStickRight.Label = keyboardConfig.LeftJoycon.StickRight.ToString();
+ _lStickButton.Label = keyboardConfig.LeftJoycon.StickButton.ToString();
+ _dpadUp.Label = keyboardConfig.LeftJoycon.DPadUp.ToString();
+ _dpadDown.Label = keyboardConfig.LeftJoycon.DPadDown.ToString();
+ _dpadLeft.Label = keyboardConfig.LeftJoycon.DPadLeft.ToString();
+ _dpadRight.Label = keyboardConfig.LeftJoycon.DPadRight.ToString();
+ _minus.Label = keyboardConfig.LeftJoycon.ButtonMinus.ToString();
+ _l.Label = keyboardConfig.LeftJoycon.ButtonL.ToString();
+ _zL.Label = keyboardConfig.LeftJoycon.ButtonZl.ToString();
+ _lSl.Label = keyboardConfig.LeftJoycon.ButtonSl.ToString();
+ _lSr.Label = keyboardConfig.LeftJoycon.ButtonSr.ToString();
+ _rStickUp.Label = keyboardConfig.RightJoycon.StickUp.ToString();
+ _rStickDown.Label = keyboardConfig.RightJoycon.StickDown.ToString();
+ _rStickLeft.Label = keyboardConfig.RightJoycon.StickLeft.ToString();
+ _rStickRight.Label = keyboardConfig.RightJoycon.StickRight.ToString();
+ _rStickButton.Label = keyboardConfig.RightJoycon.StickButton.ToString();
+ _a.Label = keyboardConfig.RightJoycon.ButtonA.ToString();
+ _b.Label = keyboardConfig.RightJoycon.ButtonB.ToString();
+ _x.Label = keyboardConfig.RightJoycon.ButtonX.ToString();
+ _y.Label = keyboardConfig.RightJoycon.ButtonY.ToString();
+ _plus.Label = keyboardConfig.RightJoycon.ButtonPlus.ToString();
+ _r.Label = keyboardConfig.RightJoycon.ButtonR.ToString();
+ _zR.Label = keyboardConfig.RightJoycon.ButtonZr.ToString();
+ _rSl.Label = keyboardConfig.RightJoycon.ButtonSl.ToString();
+ _rSr.Label = keyboardConfig.RightJoycon.ButtonSr.ToString();
+ _slotNumber.Value = keyboardConfig.Slot;
+ _altSlotNumber.Value = keyboardConfig.AltSlot;
+ _sensitivity.Value = keyboardConfig.Sensitivity;
+ _gyroDeadzone.Value = keyboardConfig.GyroDeadzone;
+ _enableMotion.Active = keyboardConfig.EnableMotion;
+ _mirrorInput.Active = keyboardConfig.MirrorInput;
+ _dsuServerHost.Buffer.Text = keyboardConfig.DsuServerHost;
+ _dsuServerPort.Buffer.Text = keyboardConfig.DsuServerPort.ToString();
break;
case ControllerConfig controllerConfig:
if (!_controllerType.SetActiveId(controllerConfig.ControllerType.ToString()))
@@ -372,6 +401,14 @@ namespace Ryujinx.Ui
_controllerDeadzoneLeft.Value = controllerConfig.DeadzoneLeft;
_controllerDeadzoneRight.Value = controllerConfig.DeadzoneRight;
_controllerTriggerThreshold.Value = controllerConfig.TriggerThreshold;
+ _slotNumber.Value = controllerConfig.Slot;
+ _altSlotNumber.Value = controllerConfig.AltSlot;
+ _sensitivity.Value = controllerConfig.Sensitivity;
+ _gyroDeadzone.Value = controllerConfig.GyroDeadzone;
+ _enableMotion.Active = controllerConfig.EnableMotion;
+ _mirrorInput.Active = controllerConfig.MirrorInput;
+ _dsuServerHost.Buffer.Text = controllerConfig.DsuServerHost;
+ _dsuServerPort.Buffer.Text = controllerConfig.DsuServerPort.ToString();
break;
}
}
@@ -448,7 +485,15 @@ namespace Ryujinx.Ui
ButtonZr = rButtonZr,
ButtonSl = rButtonSl,
ButtonSr = rButtonSr
- }
+ },
+ EnableMotion = _enableMotion.Active,
+ MirrorInput = _mirrorInput.Active,
+ Slot = (int)_slotNumber.Value,
+ AltSlot = (int)_slotNumber.Value,
+ Sensitivity = (int)_sensitivity.Value,
+ GyroDeadzone = _gyroDeadzone.Value,
+ DsuServerHost = _dsuServerHost.Buffer.Text,
+ DsuServerPort = int.Parse(_dsuServerPort.Buffer.Text)
};
}
@@ -521,7 +566,15 @@ namespace Ryujinx.Ui
ButtonZr = rButtonZr,
ButtonSl = rButtonSl,
ButtonSr = rButtonSr
- }
+ },
+ EnableMotion = _enableMotion.Active,
+ MirrorInput = _mirrorInput.Active,
+ Slot = (int)_slotNumber.Value,
+ AltSlot = (int)_slotNumber.Value,
+ Sensitivity = (int)_sensitivity.Value,
+ GyroDeadzone = _gyroDeadzone.Value,
+ DsuServerHost = _dsuServerHost.Buffer.Text,
+ DsuServerPort = int.Parse(_dsuServerPort.Buffer.Text)
};
}
@@ -779,7 +832,15 @@ namespace Ryujinx.Ui
ButtonZr = Key.O,
ButtonSl = Key.Unbound,
ButtonSr = Key.Unbound
- }
+ },
+ EnableMotion = false,
+ MirrorInput = false,
+ Slot = 0,
+ AltSlot = 0,
+ Sensitivity = 100,
+ GyroDeadzone = 1,
+ DsuServerHost = "127.0.0.1",
+ DsuServerPort = 26760
};
}
else if (_inputDevice.ActiveId.StartsWith("controller"))
@@ -824,7 +885,15 @@ namespace Ryujinx.Ui
ButtonSr = ControllerInputId.Unbound,
InvertStickX = false,
InvertStickY = false
- }
+ },
+ EnableMotion = false,
+ MirrorInput = false,
+ Slot = 0,
+ AltSlot = 0,
+ Sensitivity = 100,
+ GyroDeadzone = 1,
+ DsuServerHost = "127.0.0.1",
+ DsuServerPort = 26760
};
}
}