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); }
public void SetBinding(PadSetting ps) { // Unbind first. SettingsManager.UnLoadMonitor(DeviceSubTypeComboBox); SettingsManager.UnLoadMonitor(PassThroughCheckBox); //SettingsManager.UnLoadMonitor(ForceFeedbackPassThroughCheckBox); if (ps == null) { return; } // Set binding. var enumConverter = new Converters.PadSettingToEnumConverter <DeviceSubType>(); var boolConverter = new Converters.PadSettingToBoolConverter(); SettingsManager.LoadAndMonitor(ps, nameof(ps.GamePadType), DeviceSubTypeComboBox, null, enumConverter); SettingsManager.LoadAndMonitor(ps, nameof(ps.PassThrough), PassThroughCheckBox, null, boolConverter); }