public virtual void Initialize(SettingsControlModel controlConfig, SettingsControlController settingsControlController) { this.controlConfig = controlConfig; this.settingsControlController = settingsControlController; this.settingsControlController.Initialize(); title.text = controlConfig.title; betaIndicator.SetActive(controlConfig.isBeta); originalTitleColor = title.color; originalLabelColor = valueLabels.Count > 0 ? valueLabels[0].color : Color.white; originalHandlerColor = handleImages.Count > 0 ? handleImages[0].color : Color.white; originalControlBackgroundAlpha = controlBackgroundCanvasGroups.Count > 0 ? controlBackgroundCanvasGroups[0].alpha : 1f; foreach (BooleanVariable flag in controlConfig.flagsThatDisableMe) { flag.OnChange += OnAnyDisableFlagChange; OnAnyDisableFlagChange(flag.Get(), false); } foreach (BooleanVariable flag in controlConfig.flagsThatDeactivateMe) { flag.OnChange += OnAnyDeactivationFlagChange; OnAnyDeactivationFlagChange(flag.Get(), false); } RefreshControl(); Settings.i.OnGeneralSettingsChanged += OnGeneralSettingsChanged; Settings.i.OnQualitySettingsChanged += OnQualitySettingsChanged; Settings.i.OnResetAllSettings += OnResetSettingsControl; }
public override void Initialize(SettingsControlModel controlConfig, SettingsControlController settingsControlController) { this.sliderControlConfig = (SliderControlModel)controlConfig; slider.maxValue = this.sliderControlConfig.sliderMaxValue; slider.minValue = this.sliderControlConfig.sliderMinValue; slider.wholeNumbers = this.sliderControlConfig.sliderWholeNumbers; sliderController = (SliderSettingsControlController)settingsControlController; sliderController.OnIndicatorLabelChange += OverrideIndicatorLabel; base.Initialize(controlConfig, sliderController); OverrideIndicatorLabel(slider.value.ToString()); sliderController.UpdateSetting(this.sliderControlConfig.storeValueAsNormalized ? RemapSliderValueTo01(slider.value) : slider.value); slider.onValueChanged.AddListener(sliderValue => { OverrideIndicatorLabel(sliderValue.ToString()); ApplySetting(this.sliderControlConfig.storeValueAsNormalized ? RemapSliderValueTo01(sliderValue) : sliderValue); }); }
public override void Initialize(SettingsControlModel controlConfig, SettingsControlController settingsControlController) { sliderController = (SliderSettingsControlController)settingsControlController; sliderController.OnIndicatorLabelChange += OverrideIndicatorLabel; this.sliderControlConfig = (SliderControlModel)controlConfig; slider.maxValue = this.sliderControlConfig.sliderMaxValue; slider.minValue = this.sliderControlConfig.sliderMinValue; slider.wholeNumbers = false; base.Initialize(controlConfig, sliderController); OverrideIndicatorLabel(slider.value.ToString()); sliderController.UpdateSetting(this.sliderControlConfig.storeValueAsNormalized ? RemapSliderValueTo01(slider.value) : slider.value); slider.onValueChanged.AddListener(sliderValue => { // https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings // FX = floating point with X precision digits string stringFormat = sliderControlConfig.wholeNumbers ? "F0" : "F1"; OverrideIndicatorLabel(sliderValue.ToString(stringFormat)); ApplySetting(this.sliderControlConfig.storeValueAsNormalized ? RemapSliderValueTo01(sliderValue) : sliderValue); }); }