コード例 #1
0
        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;
        }
コード例 #2
0
        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;
        }
コード例 #3
0
ファイル: WiiControl.xaml.cs プロジェクト: zw5/WiinUPro
        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;
        }
コード例 #4
0
        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;
        }