Beispiel #1
0
        public void SetBinding(MapTo mappedTo, PadSetting ps)
        {
            _MappedTo = mappedTo;
            if (_padSetting != null)
            {
                _padSetting.PropertyChanged -= _padSetting_PropertyChanged;
            }
            LeftForceFeedbackMotorPanel.TestUpDown.ValueChanged  -= TestUpDown_ValueChanged;
            RightForceFeedbackMotorPanel.TestUpDown.ValueChanged -= TestUpDown_ValueChanged;
            // Unbind first.
            SettingsManager.UnLoadMonitor(ForceEnabledCheckBox);
            SettingsManager.UnLoadMonitor(SwapMotorsCheckBox);
            SettingsManager.UnLoadMonitor(ForceTypeComboBox);
            SettingsManager.UnLoadMonitor(StrengthUpDown);
            if (ps == null)
            {
                return;
            }
            _padSetting = ps;
            var intConverter  = new Converters.PadSettingToNumericConverter <decimal>();
            var boolConverter = new Converters.PadSettingToBoolConverter();
            var enumConverter = new Converters.PadSettingToEnumConverter <ForceEffectType>();

            // Set binding.
            SettingsManager.LoadAndMonitor(ps, nameof(ps.ForceEnable), ForceEnabledCheckBox, null, boolConverter);
            SettingsManager.LoadAndMonitor(ps, nameof(ps.ForceSwapMotor), SwapMotorsCheckBox, null, boolConverter);
            SettingsManager.LoadAndMonitor(ps, nameof(ps.ForceType), ForceTypeComboBox, null, enumConverter);
            SettingsManager.LoadAndMonitor(ps, nameof(ps.ForceOverall), StrengthUpDown, null, intConverter);
            _padSetting.PropertyChanged += _padSetting_PropertyChanged;
            LeftForceFeedbackMotorPanel.TestUpDown.ValueChanged  += TestUpDown_ValueChanged;
            RightForceFeedbackMotorPanel.TestUpDown.ValueChanged += TestUpDown_ValueChanged;
        }
        public void SetBinding(PadSetting ps, int motor)
        {
            // Unbind first.
            SettingsManager.UnLoadMonitor(DirectionComboBox);
            SettingsManager.UnLoadMonitor(StrengthUpDown);
            SettingsManager.UnLoadMonitor(PeriodUpDown);
            if (ps == null)
            {
                return;
            }
            switch (motor)
            {
            case 0:
                MainGroupBox.Header = "Left Motor(Big, Strong, Low-Frequency)";
                break;

            case 1:
                MainGroupBox.Header = "Right Motor (Small, Gentle, High-Frequency)";
                break;

            default:
                break;
            }
            var converter     = new Converters.PadSettingToNumericConverter <decimal>();
            var enumConverter = new Converters.PadSettingToEnumConverter <ForceEffectDirection>();

            // Set binding.
            SettingsManager.LoadAndMonitor(ps, nameof(ps.LeftMotorDirection), DirectionComboBox, null, enumConverter);
            SettingsManager.LoadAndMonitor(ps, nameof(ps.LeftMotorStrength), StrengthUpDown, null, converter);
            SettingsManager.LoadAndMonitor(ps, nameof(ps.LeftMotorPeriod), PeriodUpDown, null, converter);
        }
Beispiel #3
0
        public void SetBinding(PadSetting ps)
        {
            // Unbind first.
            SettingsManager.UnLoadMonitor(EnabledCheckBox);
            SettingsManager.UnLoadMonitor(DeadZoneUpDown);
            SettingsManager.UnLoadMonitor(OffsetUpDown);
            if (ps == null)
            {
                return;
            }
            // Set binding.
            var intConverter  = new Converters.PadSettingToNumericConverter <decimal>();
            var boolConverter = new Converters.PadSettingToBoolConverter();

            SettingsManager.LoadAndMonitor(ps, nameof(ps.AxisToDPadEnabled), EnabledCheckBox, null, boolConverter);
            SettingsManager.LoadAndMonitor(ps, nameof(ps.AxisToDPadDeadZone), DeadZoneUpDown, null, intConverter);
            SettingsManager.LoadAndMonitor(ps, nameof(ps.AxisToDPadOffset), OffsetUpDown, null, intConverter);
        }