Beispiel #1
0
        VisualElement CreateSliderWithField(GUIContent label, float value, float min, float max, EventCallback <ChangeEvent <float> > callback)
        {
            var root = new VisualElement()
            {
                name = "Slider Float Field"
            };

            root.AddToClassList(k_SliderRowClass);

            var slider = new Slider(min, max);

            slider.AddToClassList(k_SliderClass);
            slider.RegisterValueChangedCallback(callback);
            slider.SetValueWithoutNotify(value);

            if (label != null && !string.IsNullOrEmpty(label.text))
            {
                slider.label   = label.text;
                slider.tooltip = label.tooltip;
            }

            var field = new FloatField();

            field.AddToClassList(k_SliderFloatFieldClass);
            field.RegisterValueChangedCallback(callback);
            field.SetValueWithoutNotify(value);

            root.Add(slider);
            root.Add(field);

            return(root);
        }
Beispiel #2
0
        VisualElement CreateLightExposureContent()
        {
            var exposure = SceneView.s_DrawModeExposure;

            var root = new VisualElement();

            root.AddToClassList(k_SliderRowClass);

            var icon = new Image()
            {
                name = "exposure-label"
            };

            m_ExposureSlider = new Slider(-m_ExposureMax, m_ExposureMax)
            {
                name = "exposure-slider"
            };
            m_ExposureSlider.AddToClassList(k_SliderClass);
            m_ExposureSlider.RegisterValueChangedCallback(SetBakedExposure);
            m_ExposureSlider.SetValueWithoutNotify(exposure);

            m_ExposureField = new FloatField()
            {
                name = "exposure-float-field"
            };
            m_ExposureField.AddToClassList(k_SliderFloatFieldClass);
            m_ExposureField.RegisterValueChangedCallback(SetBakedExposure);
            m_ExposureField.SetValueWithoutNotify(exposure);

            root.Add(icon);
            root.Add(m_ExposureSlider);
            root.Add(m_ExposureField);
            return(root);
        }
        public VFXLongSliderField()
        {
            m_Slider = new Slider(0, 1, SliderDirection.Horizontal);
            m_Slider.AddToClassList("textfield");
            m_Slider.RegisterValueChangedCallback(evt => ValueChanged(evt.newValue));

            var integerField = new LongField();

            integerField.RegisterValueChangedCallback(ValueChanged);
            integerField.name = "Field";
            m_Field           = integerField;

            Add(m_Slider);
            Add(integerField);
            RegisterCallBack();
        }
Beispiel #4
0
        public VFXLongSliderField()
        {
            m_Slider = new Slider(0, 1, ValueChanged, SliderDirection.Horizontal, 0.1f);
            m_Slider.AddToClassList("textfield");
            m_Slider.valueChanged += ValueChanged;

            var integerField = new LongField();

            integerField.RegisterCallback <ChangeEvent <long> >(ValueChanged);
            integerField.name = "Field";
            m_Field           = integerField;

            Add(m_Slider);
            Add(integerField);
            RegisterCallBack();
        }
        public VFXFloatSliderField()
        {
            m_Slider = new Slider(0, 1, SliderDirection.Horizontal);
            m_Slider.AddToClassList("textfield");
            m_Slider.RegisterValueChangedCallback(evt => ValueChanged(evt.newValue));

            m_FloatField = new FloatField();
            m_FloatField.RegisterValueChangedCallback(ValueChanged);
            m_FloatField.name = "Field";
            m_Field           = m_FloatField;

            m_IndeterminateLabel = new Label()
            {
                name = "indeterminate",
                text = VFXControlConstants.indeterminateText
            };
            m_IndeterminateLabel.SetEnabled(false);

            Add(m_Slider);
            Add(m_FloatField);
            RegisterCallBack();
        }
Beispiel #6
0
        public VFXFloatSliderField()
        {
            m_Slider = new Slider(0, 1, ValueChanged, SliderDirection.Horizontal, (range.y - range.x) * 0.1f);
            m_Slider.AddToClassList("textfield");
            m_Slider.valueChanged += ValueChanged;

            m_FloatField = new FloatField();
            m_FloatField.RegisterCallback <ChangeEvent <float> >(ValueChanged);
            m_FloatField.name = "Field";
            m_Field           = m_FloatField;

            m_IndeterminateLabel = new Label()
            {
                name = "indeterminate",
                text = VFXControlConstants.indeterminateText
            };
            m_IndeterminateLabel.SetEnabled(false);

            Add(m_Slider);
            Add(m_FloatField);
            RegisterCallBack();
        }
        internal override void Apply(VisualElement container)
        {
            /// <sample>
            // Get a reference to the slider from UXML and assign it its value.
            var uxmlSlider = container.Q <Slider>("the-uxml-slider");

            uxmlSlider.value = 42.2f;

            // Create a new slider, disable it, and give it a style class.
            var csharpSlider = new Slider("C# Slider", 0, 100);

            csharpSlider.SetEnabled(false);
            csharpSlider.AddToClassList("some-styled-slider");
            csharpSlider.value = uxmlSlider.value;
            container.Add(csharpSlider);

            // Mirror value of uxml slider into the C# field.
            uxmlSlider.RegisterCallback <ChangeEvent <float> >((evt) =>
            {
                csharpSlider.value = evt.newValue;
            });
            /// </sample>
        }