docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class RangeSliderBase<TRangeType, TValueType>

    Base class for Sliders (RangeSliderFloat, RangeSliderInt).

    Inheritance
    object
    CallbackEventHandler
    Focusable
    VisualElement
    BaseVisualElement
    ExVisualElement
    BaseSlider<TRangeType, TValueType>
    RangeSliderBase<TRangeType, TValueType>
    RangeSliderFloat
    RangeSliderInt
    Implements
    IEventHandler
    ITransform
    ITransitionAnimations
    IExperimentalFeatures
    IVisualElementScheduler
    IResolvedStyle
    IContextOverrideElement
    IInputElement<TRangeType>
    IValidatableElement<TRangeType>
    INotifyValueChanging<TRangeType>
    INotifyValueChanged<TRangeType>
    Inherited Members
    BaseSlider<TRangeType, TValueType>.m_DraggerManipulator
    BaseSlider<TRangeType, TValueType>.m_HighValue
    BaseSlider<TRangeType, TValueType>.m_LowValue
    BaseSlider<TRangeType, TValueType>.m_PreviousValue
    BaseSlider<TRangeType, TValueType>.m_Value
    BaseSlider<TRangeType, TValueType>.m_CurrentDirection
    BaseSlider<TRangeType, TValueType>.lowValue
    BaseSlider<TRangeType, TValueType>.highValue
    BaseSlider<TRangeType, TValueType>.formatString
    BaseSlider<TRangeType, TValueType>.SetValueWithoutNotify(TRangeType)
    BaseSlider<TRangeType, TValueType>.value
    BaseSlider<TRangeType, TValueType>.invalid
    BaseSlider<TRangeType, TValueType>.validateValue
    BaseSlider<TRangeType, TValueType>.OnSliderRangeChanged()
    BaseSlider<TRangeType, TValueType>.InvokeValueChangedCallbacks()
    BaseSlider<TRangeType, TValueType>.OnGeometryChanged(GeometryChangedEvent)
    BaseSlider<TRangeType, TValueType>.OnDirectionChanged(ContextChangedEvent<DirContext>)
    BaseSlider<TRangeType, TValueType>.OnTrackUp(Draggable)
    BaseSlider<TRangeType, TValueType>.OnTrackDown(Draggable)
    BaseSlider<TRangeType, TValueType>.OnTrackDragged(Draggable)
    BaseSlider<TRangeType, TValueType>.SetValueFromDrag(float)
    BaseSlider<TRangeType, TValueType>.GetSliderRect()
    BaseSlider<TRangeType, TValueType>.ComputeValueFromHandlePosition(float, float)
    BaseSlider<TRangeType, TValueType>.OnTrackClicked()
    BaseSlider<TRangeType, TValueType>.GetClampedValue(TRangeType)
    BaseSlider<TRangeType, TValueType>.ClampValue()
    BaseSlider<TRangeType, TValueType>.Clamp(TRangeType, TValueType, TValueType)
    BaseSlider<TRangeType, TValueType>.ParseValueToString(TRangeType)
    BaseSlider<TRangeType, TValueType>.ParseRawValueToString(TRangeType)
    BaseSlider<TRangeType, TValueType>.ParseHandleValueToString(TValueType)
    BaseSlider<TRangeType, TValueType>.ParseStringToValue(string, out TRangeType)
    BaseSlider<TRangeType, TValueType>.SliderLerpUnclamped(TValueType, TValueType, float)
    BaseSlider<TRangeType, TValueType>.SliderNormalizeValue(TValueType, TValueType, TValueType)
    BaseSlider<TRangeType, TValueType>.Decrement(TValueType)
    BaseSlider<TRangeType, TValueType>.Increment(TValueType)
    ExVisualElement.contentContainer
    ExVisualElement.outlineColor
    ExVisualElement.backgroundColor
    ExVisualElement.passMask
    BaseVisualElement.contextPrefix
    BaseVisualElement.scaleOverride
    BaseVisualElement.themeOverride
    BaseVisualElement.langOverride
    BaseVisualElement.layoutDirectionOverride
    BaseVisualElement.preferredTooltipPlacementOverride
    BaseVisualElement.tooltipDelayMsOverride
    BaseVisualElement.GetLayoutDirectionUssClassName(Dir)
    VisualElement.disabledUssClassName
    VisualElement.ExecuteDefaultAction(EventBase)
    VisualElement.Focus()
    VisualElement.SendEvent(EventBase)
    VisualElement.SetEnabledFromHierarchy(bool)
    VisualElement.SetEnabled(bool)
    VisualElement.MarkDirtyRepaint()
    VisualElement.ContainsPoint(Vector2)
    VisualElement.Overlaps(Rect)
    VisualElement.DoMeasure(float, VisualElement.MeasureMode, float, VisualElement.MeasureMode)
    VisualElement.ToString()
    VisualElement.GetClasses()
    VisualElement.ClearClassList()
    VisualElement.AddToClassList(string)
    VisualElement.RemoveFromClassList(string)
    VisualElement.ToggleInClassList(string)
    VisualElement.EnableInClassList(string, bool)
    VisualElement.ClassListContains(string)
    VisualElement.FindAncestorUserData()
    VisualElement.Add(VisualElement)
    VisualElement.Insert(int, VisualElement)
    VisualElement.Remove(VisualElement)
    VisualElement.RemoveAt(int)
    VisualElement.Clear()
    VisualElement.ElementAt(int)
    VisualElement.IndexOf(VisualElement)
    VisualElement.Children()
    VisualElement.Sort(Comparison<VisualElement>)
    VisualElement.BringToFront()
    VisualElement.SendToBack()
    VisualElement.PlaceBehind(VisualElement)
    VisualElement.PlaceInFront(VisualElement)
    VisualElement.RemoveFromHierarchy()
    VisualElement.GetFirstOfType<T>()
    VisualElement.GetFirstAncestorOfType<T>()
    VisualElement.Contains(VisualElement)
    VisualElement.FindCommonAncestor(VisualElement)
    VisualElement.viewDataKey
    VisualElement.userData
    VisualElement.canGrabFocus
    VisualElement.focusController
    VisualElement.usageHints
    VisualElement.transform
    VisualElement.layout
    VisualElement.contentRect
    VisualElement.paddingRect
    VisualElement.worldBound
    VisualElement.localBound
    VisualElement.worldTransform
    VisualElement.pickingMode
    VisualElement.name
    VisualElement.enabledInHierarchy
    VisualElement.enabledSelf
    VisualElement.visible
    VisualElement.generateVisualContent
    VisualElement.experimental
    VisualElement.hierarchy
    VisualElement.cacheAsBitmap
    VisualElement.parent
    VisualElement.panel
    VisualElement.visualTreeAssetSource
    VisualElement.this[int]
    VisualElement.childCount
    VisualElement.schedule
    VisualElement.style
    VisualElement.customStyle
    VisualElement.styleSheets
    VisualElement.tooltip
    VisualElement.resolvedStyle
    Focusable.Blur()
    Focusable.focusable
    Focusable.tabIndex
    Focusable.delegatesFocus
    CallbackEventHandler.RegisterCallback<TEventType>(EventCallback<TEventType>, TrickleDown)
    CallbackEventHandler.RegisterCallback<TEventType, TUserArgsType>(EventCallback<TEventType, TUserArgsType>, TUserArgsType, TrickleDown)
    CallbackEventHandler.UnregisterCallback<TEventType>(EventCallback<TEventType>, TrickleDown)
    CallbackEventHandler.UnregisterCallback<TEventType, TUserArgsType>(EventCallback<TEventType, TUserArgsType>, TrickleDown)
    CallbackEventHandler.HandleEvent(EventBase)
    CallbackEventHandler.HasTrickleDownHandlers()
    CallbackEventHandler.HasBubbleUpHandlers()
    CallbackEventHandler.ExecuteDefaultActionAtTarget(EventBase)
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: Unity.AppUI.UI
    Assembly: Unity.AppUI.dll
    Syntax
    public abstract class RangeSliderBase<TRangeType, TValueType> : BaseSlider<TRangeType, TValueType>, IEventHandler, ITransform, ITransitionAnimations, IExperimentalFeatures, IVisualElementScheduler, IResolvedStyle, IContextOverrideElement, IInputElement<TRangeType>, IValidatableElement<TRangeType>, INotifyValueChanging<TRangeType>, INotifyValueChanged<TRangeType> where TRangeType : IEquatable<TRangeType> where TValueType : struct, IComparable, IEquatable<TValueType>
    Type Parameters
    Name Description
    TRangeType

    The range type.

    TValueType

    A comparable value type.

    Constructors

    RangeSliderBase()

    Default constructor.

    Declaration
    protected RangeSliderBase()

    Fields

    controlContainerUssClassName

    The Slider control container styling class.

    Declaration
    public const string controlContainerUssClassName = "appui-slider__control-container"
    Field Value
    Type Description
    string

    controlsUssClassName

    The Slider controls styling class.

    Declaration
    public const string controlsUssClassName = "appui-slider__controls"
    Field Value
    Type Description
    string

    handleContainerUssClassName

    The Slider handle container styling class.

    Declaration
    public const string handleContainerUssClassName = "appui-slider__handle-container"
    Field Value
    Type Description
    string

    handleUssClassName

    The Slider handle styling class.

    Declaration
    public const string handleUssClassName = "appui-slider__handle"
    Field Value
    Type Description
    string

    inlineValueLabelUssClassName

    The Slider inline value label styling class.

    Declaration
    public const string inlineValueLabelUssClassName = "appui-slider__inline-valuelabel"
    Field Value
    Type Description
    string

    inlineValueUssClassName

    The Slider inline value styling class.

    Declaration
    public const string inlineValueUssClassName = "appui-slider--inline-value-"
    Field Value
    Type Description
    string

    labelContainerUssClassName

    The Slider label container styling class.

    Declaration
    public const string labelContainerUssClassName = "appui-slider__labelcontainer"
    Field Value
    Type Description
    string

    labelUssClassName

    The Slider label styling class.

    Declaration
    public const string labelUssClassName = "appui-slider__label"
    Field Value
    Type Description
    string

    noLabelUssClassName

    The Slider no label variant styling class.

    Declaration
    public const string noLabelUssClassName = "appui-slider--no-label"
    Field Value
    Type Description
    string

    paddedContainerUssClassName

    The Slider padded container styling class.

    Declaration
    public const string paddedContainerUssClassName = "appui-slider__padded-container"
    Field Value
    Type Description
    string

    progressContainerUssClassName

    The Slider progress container styling class.

    Declaration
    public const string progressContainerUssClassName = "appui-slider__interactive-area"
    Field Value
    Type Description
    string

    progressUssClassName

    The Slider progress styling class.

    Declaration
    public const string progressUssClassName = "appui-slider__progress"
    Field Value
    Type Description
    string

    sizeUssClassName

    The Slider size styling class.

    Declaration
    public const string sizeUssClassName = "appui-slider--size-"
    Field Value
    Type Description
    string

    tickLabelUssClassName

    The Slider tick label styling class.

    Declaration
    public const string tickLabelUssClassName = "appui-slider__ticklabel"
    Field Value
    Type Description
    string

    tickLabelVariantUssClassName

    The Slider with tick labels variant styling class.

    Declaration
    public const string tickLabelVariantUssClassName = "appui-slider--tick-labels"
    Field Value
    Type Description
    string

    tickUssClassName

    The Slider tick styling class.

    Declaration
    public const string tickUssClassName = "appui-slider__tick"
    Field Value
    Type Description
    string

    ticksUssClassName

    The Slider ticks container styling class.

    Declaration
    public const string ticksUssClassName = "appui-slider__ticks"
    Field Value
    Type Description
    string

    trackUssClassName

    The Slider track styling class.

    Declaration
    public const string trackUssClassName = "appui-slider__track"
    Field Value
    Type Description
    string

    ussClassName

    The Slider main styling class.

    Declaration
    public const string ussClassName = "appui-slider"
    Field Value
    Type Description
    string

    valueLabelUssClassName

    The Slider value label styling class.

    Declaration
    public const string valueLabelUssClassName = "appui-slider__valuelabel"
    Field Value
    Type Description
    string

    Properties

    filled

    If the slider progress is filled.

    Declaration
    public bool filled { get; set; }
    Property Value
    Type Description
    bool

    inlineValue

    The inline mode for the slider value element.

    Declaration
    public InlineValue inlineValue { get; set; }
    Property Value
    Type Description
    InlineValue

    label

    Text which will be used for the Slider label.

    Declaration
    public string label { get; set; }
    Property Value
    Type Description
    string

    maxValue

    The value of the right handle.

    Declaration
    public abstract TValueType maxValue { get; set; }
    Property Value
    Type Description
    TValueType
    Remarks

    This is not the same as the highValue which is the maximum value of the slider.

    minValue

    The value of the left handle.

    Declaration
    public abstract TValueType minValue { get; set; }
    Property Value
    Type Description
    TValueType
    Remarks

    This is not the same as the lowValue which is the minimum value of the slider.

    size

    The size of the slider.

    Declaration
    public Size size { get; set; }
    Property Value
    Type Description
    Size

    tickCount

    The number of ticks to display on the slider.

    Declaration
    public int tickCount { get; set; }
    Property Value
    Type Description
    int

    tickLabel

    Should the tick labels be displayed.

    Declaration
    public bool tickLabel { get; set; }
    Property Value
    Type Description
    bool

    Methods

    Clamp(TRangeType, TValueType, TValueType)

    Utility method to clamp a TValueType value between specified bounds.

    Declaration
    protected override TRangeType Clamp(TRangeType v, TValueType lowBound, TValueType highBound)
    Parameters
    Type Name Description
    TRangeType v

    The value to clamp.

    TValueType lowBound

    Minimum

    TValueType highBound

    Maximum

    Returns
    Type Description
    TRangeType

    The clamped value.

    Overrides
    BaseSlider<TRangeType, TValueType>.Clamp(TRangeType, TValueType, TValueType)

    ClosestHandleIndex(float)

    Find the closest handle index to the mouse position.

    Declaration
    protected int ClosestHandleIndex(float mousePosition)
    Parameters
    Type Name Description
    float mousePosition

    The mouse position.

    Returns
    Type Description
    int

    The closest handle index.

    ComputeValueFromHandlePosition(float, float)

    Returns the value to set as slider value based on a given dragger position.

    Declaration
    protected override TRangeType ComputeValueFromHandlePosition(float sliderLength, float dragElementPos)
    Parameters
    Type Name Description
    float sliderLength

    The length of the slider.

    float dragElementPos

    The position of the dragger.

    Returns
    Type Description
    TRangeType

    The value to set as slider value based on a given dragger position.

    Overrides
    BaseSlider<TRangeType, TValueType>.ComputeValueFromHandlePosition(float, float)

    GetClampedValue(TValueType, TValueType, TValueType)

    Get the clamped value.

    Declaration
    protected abstract TValueType GetClampedValue(TValueType value, TValueType lowerValue, TValueType higherValue)
    Parameters
    Type Name Description
    TValueType value

    The value to clamp.

    TValueType lowerValue

    The lower bound.

    TValueType higherValue

    The higher bound.

    Returns
    Type Description
    TValueType

    The clamped value.

    GetInlineValueUssClassName(InlineValue)

    Declaration
    public static string GetInlineValueUssClassName(InlineValue enumValue)
    Parameters
    Type Name Description
    InlineValue enumValue
    Returns
    Type Description
    string

    GetMaxValue(TRangeType)

    Get the maximum value from the range value.

    Declaration
    protected abstract TValueType GetMaxValue(TRangeType rangeValue)
    Parameters
    Type Name Description
    TRangeType rangeValue

    The range value.

    Returns
    Type Description
    TValueType

    The maximum value of the range.

    GetMinValue(TRangeType)

    Get the minimum value from the range value.

    Declaration
    protected abstract TValueType GetMinValue(TRangeType rangeValue)
    Parameters
    Type Name Description
    TRangeType rangeValue

    The range value.

    Returns
    Type Description
    TValueType

    The minimum value of the range.

    GetSizeUssClassName(Size)

    Declaration
    public static string GetSizeUssClassName(Size enumValue)
    Parameters
    Type Name Description
    Size enumValue
    Returns
    Type Description
    string

    GetSliderRect()

    Returns the rect of the interactive part of the slider.

    Declaration
    protected override Rect GetSliderRect()
    Returns
    Type Description
    Rect

    The rect of the interactive part of the slider.

    Overrides
    BaseSlider<TRangeType, TValueType>.GetSliderRect()

    LerpUnclamped(TValueType, TValueType, float)

    Lerp between two values.

    Declaration
    protected abstract TValueType LerpUnclamped(TValueType a, TValueType b, float interpolant)
    Parameters
    Type Name Description
    TValueType a

    The first value.

    TValueType b

    The second value.

    float interpolant

    The interpolant.

    Returns
    Type Description
    TValueType

    The lerped value.

    MakeRangeValue(TValueType, TValueType)

    Create a range value from the min and max values.

    Declaration
    protected abstract TRangeType MakeRangeValue(TValueType minValue, TValueType maxValue)
    Parameters
    Type Name Description
    TValueType minValue

    The minimum value of the range.

    TValueType maxValue

    The maximum value of the range.

    Returns
    Type Description
    TRangeType

    A new range object of type TRangeType.

    OnSliderRangeChanged()

    Called when the low or high value of Slider has changed.

    Declaration
    protected override void OnSliderRangeChanged()
    Overrides
    BaseSlider<TRangeType, TValueType>.OnSliderRangeChanged()

    SetValueWithoutNotify(TRangeType)

    Set the value of the slider without notifying the change.

    Declaration
    public override void SetValueWithoutNotify(TRangeType newValue)
    Parameters
    Type Name Description
    TRangeType newValue

    The new value of the slider.

    Overrides
    BaseSlider<TRangeType, TValueType>.SetValueWithoutNotify(TRangeType)

    Implements

    IEventHandler
    ITransform
    ITransitionAnimations
    IExperimentalFeatures
    IVisualElementScheduler
    IResolvedStyle
    IContextOverrideElement
    IInputElement<TValueType>
    IValidatableElement<TValueType>
    INotifyValueChanging<TValueType>
    INotifyValueChanged<T>

    Extension Methods

    NotifyValueChangingExtensions.RegisterValueChangingCallback<TValueType>(INotifyValueChanging<TValueType>, EventCallback<ChangingEvent<TValueType>>)
    NotifyValueChangingExtensions.UnregisterValueChangingCallback<TValueType>(INotifyValueChanging<TValueType>, EventCallback<ChangingEvent<TValueType>>)
    VisualElementExtensions.FindNavController(VisualElement)
    VisualElementExtensions.GetChildren<T>(VisualElement, bool)
    VisualElementExtensions.GetContextProvider<T>(VisualElement)
    VisualElementExtensions.GetContext<T>(VisualElement)
    VisualElementExtensions.GetPreferredTooltipPlacement(VisualElement)
    VisualElementExtensions.GetSelfContext<T>(VisualElement)
    VisualElementExtensions.GetTooltipTemplate(VisualElement)
    VisualElementExtensions.IsContextProvider<T>(VisualElement)
    VisualElementExtensions.ProvideContext<T>(VisualElement, T)
    VisualElementExtensions.RegisterContextChangedCallback<T>(VisualElement, EventCallback<ContextChangedEvent<T>>)
    VisualElementExtensions.SetPreferredTooltipPlacement(VisualElement, OptionalEnum<PopoverPlacement>)
    VisualElementExtensions.SetTooltipTemplate(VisualElement, VisualElement)
    VisualElementExtensions.UnregisterContextChangedCallback<T>(VisualElement, EventCallback<ContextChangedEvent<T>>)
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)