private void addSlider(UIScrollablePanel panel, Vector3 position, float width, OnValueChanged eventCallback, IDifficultyParameter param) { UISlider slider = panel.AddUIComponent<UISlider>(); slider.size = new Vector2(width, 8); slider.relativePosition = position; slider.minValue = 0; slider.maxValue = param.MaxIndex; slider.stepSize = 1; slider.value = param.SelectedIndex; slider.backgroundSprite = "TextFieldPanel"; // TextFieldPanel, GenericProgressBar UISprite thumb = slider.AddUIComponent<UISprite>(); thumb.size = new Vector2(16, 16); thumb.spriteName = "InfoIconBaseFocused"; // SliderBudget, InfoIconBaseFocused slider.thumbObject = thumb; UILabel label = panel.AddUIComponent<UILabel>(); label.textScale = textScaleSmall; label.text = param.GetValueStr((int)slider.value); label.relativePosition = new Vector3(position.x + width + 10, position.y); slider.eventValueChanged += delegate (UIComponent c, float val) { label.text = param.GetValueStr((int)val); eventCallback(val); }; sliders.Add(slider, param); }
private void addSlider(UIScrollablePanel panel, Vector3 position, float width, OnValueChanged eventCallback, IDifficultyParameter param) { UISlider slider = panel.AddUIComponent <UISlider>(); slider.size = new Vector2(width, 8); slider.relativePosition = position; slider.minValue = 0; slider.maxValue = param.MaxIndex; slider.stepSize = 1; slider.value = param.SelectedIndex; slider.backgroundSprite = "TextFieldPanel"; // TextFieldPanel, GenericProgressBar UISprite thumb = slider.AddUIComponent <UISprite>(); thumb.size = new Vector2(16, 16); thumb.spriteName = "InfoIconBaseFocused"; // SliderBudget, InfoIconBaseFocused slider.thumbObject = thumb; UILabel label = panel.AddUIComponent <UILabel>(); label.textScale = textScaleSmall; label.text = param.GetValueStr((int)slider.value); label.relativePosition = new Vector3(position.x + width + 10, position.y); slider.eventValueChanged += delegate(UIComponent c, float val) { label.text = param.GetValueStr((int)val); eventCallback(val); }; sliders.Add(slider, param); }