protected override void CalibrateInput(string inputName) { _leftCalibration = inputName == "swpL"; string targetCalibration = _leftCalibration ? App.CAL_SWP_LJOYSTICK : App.CAL_SWP_RJOYSTICK; NintrollerLib.Joystick nonCalibrated = new NintrollerLib.Joystick { minX = 0, minY = 0, maxX = 65535, maxY = 65535, centerX = 32767, centerY = 32767 }; NintrollerLib.Joystick curCalibration = new NintrollerLib.Joystick { minX = _leftCalibration ? leftXCalibration.min : rightXCalibration.min, minY = _leftCalibration ? leftYCalibration.min : rightYCalibration.min, maxX = _leftCalibration ? leftXCalibration.max : rightXCalibration.max, maxY = _leftCalibration ? leftYCalibration.max : rightYCalibration.max, centerX = _leftCalibration ? leftXCalibration.center : rightXCalibration.center, centerY = _leftCalibration ? leftYCalibration.center : rightYCalibration.center, deadXn = _leftCalibration ? leftXCalibration.deadNeg : rightXCalibration.deadNeg, deadXp = _leftCalibration ? leftXCalibration.deadPos : rightXCalibration.deadPos, deadYn = _leftCalibration ? leftYCalibration.deadNeg : rightYCalibration.deadNeg, deadYp = _leftCalibration ? leftYCalibration.deadPos : rightYCalibration.deadPos }; Windows.JoyCalibrationWindow joyCal = new Windows.JoyCalibrationWindow(nonCalibrated, curCalibration); _openJoyWindow = joyCal; joyCal.ShowDialog(); if (joyCal.Apply) { OnJoystickCalibrated?.Invoke(joyCal.Calibration, targetCalibration, joyCal.FileName); } _openJoyWindow = null; }
protected void CalibrateJoystick_Click(object sender, RoutedEventArgs e) { _leftCalibration = (sender as FrameworkElement).Tag.ToString() == "swpL"; string targetCalibration = _leftCalibration ? App.CAL_SWP_LJOYSTICK : App.CAL_SWP_RJOYSTICK; NintrollerLib.Joystick nonCalibrated = new NintrollerLib.Joystick { minX = 0, minY = 0, maxX = 65535, maxY = 65535, centerX = 32767, centerY = 32767 }; NintrollerLib.Joystick curCalibration = new NintrollerLib.Joystick { minX = _leftCalibration ? leftXCalibration.min : rightXCalibration.min, minY = _leftCalibration ? leftYCalibration.min : rightYCalibration.min, maxX = _leftCalibration ? leftXCalibration.max : rightXCalibration.max, maxY = _leftCalibration ? leftYCalibration.max : rightYCalibration.max, centerX = _leftCalibration ? leftXCalibration.center : rightXCalibration.center, centerY = _leftCalibration ? leftYCalibration.center : rightYCalibration.center, deadXn = _leftCalibration ? leftXCalibration.deadNeg : rightXCalibration.deadNeg, deadXp = _leftCalibration ? leftXCalibration.deadPos : rightXCalibration.deadPos, deadYn = _leftCalibration ? leftYCalibration.deadNeg : rightYCalibration.deadNeg, deadYp = _leftCalibration ? leftYCalibration.deadPos : rightYCalibration.deadPos }; Windows.JoyCalibrationWindow joyCal = new Windows.JoyCalibrationWindow(nonCalibrated, curCalibration); _openJoyWindow = joyCal; joyCal.ShowDialog(); if (joyCal.Apply) { OnJoystickCalibrated?.Invoke(joyCal.Calibration, targetCalibration, joyCal.FileName); } _openJoyWindow = null; }
private void CalibrateJoystick_Click(object sender, RoutedEventArgs e) { _calibrationTarget = (sender as FrameworkElement).Tag.ToString(); Joystick nonCalibrated = new Joystick(); Joystick curCalibration = new Joystick(); switch (_calibrationTarget) { case App.CAL_NUN_JOYSTICK: nonCalibrated = Calibrations.None.NunchukRaw.joystick; if (_lastState is Nunchuk) { curCalibration = ((Nunchuk)_lastState).joystick; } break; case App.CAL_CC_LJOYSTICK: nonCalibrated = Calibrations.None.ClassicControllerRaw.LJoy; if (_lastState is ClassicController) { curCalibration = ((ClassicController)_lastState).LJoy; } break; case App.CAL_CC_RJOYSTICK: nonCalibrated = Calibrations.None.ClassicControllerRaw.RJoy; if (_lastState is ClassicController) { curCalibration = ((ClassicController)_lastState).RJoy; } break; case App.CAL_CCP_LJOYSTICK: nonCalibrated = Calibrations.None.ClassicControllerProRaw.LJoy; if (_lastState is ClassicControllerPro) { curCalibration = ((ClassicControllerPro)_lastState).LJoy; } break; case App.CAL_CCP_RJOYSTICK: nonCalibrated = Calibrations.None.ClassicControllerProRaw.RJoy; if (_lastState is ClassicControllerPro) { curCalibration = ((ClassicControllerPro)_lastState).RJoy; } break; default: return; } Windows.JoyCalibrationWindow joyCal = new Windows.JoyCalibrationWindow(nonCalibrated, curCalibration); _openJoyWindow = joyCal; joyCal.ShowDialog(); if (joyCal.Apply) { OnJoystickCalibrated?.Invoke(joyCal.Calibration, _calibrationTarget, joyCal.FileName); } _openJoyWindow = null; }
private void CalibrateJoystick_Click(object sender, RoutedEventArgs e) { _calibrationTarget = (sender as FrameworkElement).Tag.ToString(); Joystick nonCalibrated = new Joystick(); Joystick curCalibration = new Joystick(); switch (_calibrationTarget) { case App.CAL_NUN_JOYSTICK: nonCalibrated = Calibrations.None.NunchukRaw.joystick; if (_lastState is Nunchuk) { curCalibration = ((Nunchuk)_lastState).joystick; } break; case App.CAL_CC_LJOYSTICK: nonCalibrated = Calibrations.None.ClassicControllerRaw.LJoy; if (_lastState is ClassicController) { curCalibration = ((ClassicController)_lastState).LJoy; } break; case App.CAL_CC_RJOYSTICK: nonCalibrated = Calibrations.None.ClassicControllerRaw.RJoy; if (_lastState is ClassicController) { curCalibration = ((ClassicController)_lastState).RJoy; } break; case App.CAL_CCP_LJOYSTICK: nonCalibrated = Calibrations.None.ClassicControllerProRaw.LJoy; if (_lastState is ClassicControllerPro) { curCalibration = ((ClassicControllerPro)_lastState).LJoy; } break; case App.CAL_CCP_RJOYSTICK: nonCalibrated = Calibrations.None.ClassicControllerProRaw.RJoy; if (_lastState is ClassicControllerPro) { curCalibration = ((ClassicControllerPro)_lastState).RJoy; } break; case App.CAL_GUT_JOYSTICK: nonCalibrated = Calibrations.None.GuitarRaw.joystick; if (_lastState is Guitar) { curCalibration = ((Guitar)_lastState).joystick; } break; default: return; } Windows.JoyCalibrationWindow joyCal = new Windows.JoyCalibrationWindow(nonCalibrated, curCalibration); _openJoyWindow = joyCal; #if DEBUG // This will allow for the dummy device window to retain focus if (DeviceID.StartsWith("Dummy")) { joyCal.Closed += (obj, args) => { if (joyCal.Apply) { OnJoystickCalibrated?.Invoke(joyCal.Calibration, _calibrationTarget, joyCal.FileName); } _openJoyWindow = null; }; joyCal.Show(); return; } #endif joyCal.ShowDialog(); if (joyCal.Apply) { OnJoystickCalibrated?.Invoke(joyCal.Calibration, _calibrationTarget, joyCal.FileName); } _openJoyWindow = null; }