Packagefeathers.controls
Classpublic class Slider
InheritanceSlider Inheritance FeathersControl Inheritance starling.display.Sprite
Implements IDirectionalScrollBar, IFocusDisplayObject
Subclasses SeekSlider, VolumeSlider

Select a value between a minimum and a maximum by dragging a thumb over the bounds of a track. The slider's track is divided into two parts split by the thumb.

The following example sets the slider's values and listens for when when the value changes:

     var slider:Slider = new Slider();
     slider.minimum = 0;
     slider.maximum = 100;
     slider.step = 1;
     slider.page = 10;
     slider.value = 12;
     slider.addEventListener( Event.CHANGE, slider_changeHandler );
     this.addChild( slider );

See also

How to use the Feathers Slider component


Public Properties
 PropertyDefined By
  customMaximumTrackName : String
DEPRECATED: Replaced by customMaximumTrackStyleName.
Slider
  customMaximumTrackStyleName : String
A style name to add to the slider's maximum track sub-component.
Slider
  customMinimumTrackName : String
DEPRECATED: Replaced by customMinimumTrackStyleName.
Slider
  customMinimumTrackStyleName : String
A style name to add to the slider's minimum track sub-component.
Slider
  customThumbName : String
DEPRECATED: Replaced by customThumbStyleName.
Slider
  customThumbStyleName : String
A style name to add to the slider's thumb sub-component.
Slider
 InheriteddefaultTextEditorFactory : Function
[static] A function used by all UI controls that support text editor to create an ITextEditor instance.
FeathersControl
 InheriteddefaultTextRendererFactory : Function
[static] A function used by all UI controls that support text renderers to create an ITextRenderer instance.
FeathersControl
 Inheriteddepth : int
[read-only] The component's depth in the display list, relative to the stage.
FeathersControl
  direction : String
Determines if the slider's thumb can be dragged horizontally or vertically.
Slider
 InheritedfocusIndicatorSkin : DisplayObject
If this component supports focus, this optional skin will be displayed above the component when showFocus() is called.
FeathersControl
 InheritedfocusManager : IFocusManager
FeathersControl
 InheritedfocusOwner : IFocusDisplayObject
FeathersControl
 InheritedfocusPadding : Number
Quickly sets all focus padding properties to the same value.
FeathersControl
 InheritedfocusPaddingBottom : Number
The minimum space, in pixels, between the object's bottom edge and the bottom edge of the focus indicator skin.
FeathersControl
 InheritedfocusPaddingLeft : Number
The minimum space, in pixels, between the object's left edge and the left edge of the focus indicator skin.
FeathersControl
 InheritedfocusPaddingRight : Number
The minimum space, in pixels, between the object's right edge and the right edge of the focus indicator skin.
FeathersControl
 InheritedfocusPaddingTop : Number
The minimum space, in pixels, between the object's top edge and the top edge of the focus indicator skin.
FeathersControl
  globalStyleProvider : IStyleProvider
[static] The default IStyleProvider for all Slider components.
Slider
 Inheritedheight : Number
[override] The height of the component, in pixels.
FeathersControl
 InheritedincludeInLayout : Boolean
Determines if the ILayout should use this object or ignore it.
FeathersControl
 InheritedisCreated : Boolean
[read-only] Determines if the component has been initialized and validated for the first time.
FeathersControl
 InheritedisEnabled : Boolean
Indicates whether the control is interactive or not.
FeathersControl
 InheritedisFocusEnabled : Boolean
FeathersControl
 InheritedisInitialized : Boolean
[read-only] Determines if the component has been initialized yet.
FeathersControl
 InheritedisQuickHitAreaEnabled : Boolean
Similar to mouseChildren on the classic display list.
FeathersControl
 InheritedlayoutData : ILayoutData
Extra parameters associated with this display object that will be used by the layout algorithm.
FeathersControl
  liveDragging : Boolean = true
Determines if the slider dispatches the Event.CHANGE event every time the thumb moves, or only once it stops moving.
Slider
 InheritedmaxHeight : Number
The maximum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
  maximum : Number
The slider's value will not go higher than the maximum.
Slider
  maximumPadding : Number
The space, in pixels, between the maximum position of the thumb and the maximum edge of the track.
Slider
  maximumTrackFactory : Function
A function used to generate the slider's maximum track sub-component.
Slider
  maximumTrackProperties : Object
An object that stores properties for the slider's "maximum" track, and the properties will be passed down to the "maximum" track when the slider validates.
Slider
 InheritedmaxWidth : Number
The maximum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminHeight : Number
The minimum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
  minimum : Number
The slider's value will not go lower than the minimum.
Slider
  minimumPadding : Number
The space, in pixels, between the minimum position of the thumb and the minimum edge of the track.
Slider
  minimumTrackFactory : Function
A function used to generate the slider's minimum track sub-component.
Slider
  minimumTrackProperties : Object
An object that stores properties for the slider's "minimum" track, and the properties will be passed down to the "minimum" track when the slider validates.
Slider
 InheritedminTouchHeight : Number
If using isQuickHitAreaEnabled, and the hit area's height is smaller than this value, it will be expanded.
FeathersControl
 InheritedminTouchWidth : Number
If using isQuickHitAreaEnabled, and the hit area's width is smaller than this value, it will be expanded.
FeathersControl
 InheritedminWidth : Number
The minimum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritednextTabFocus : IFocusDisplayObject
FeathersControl
  page : Number
If the trackInteractionMode property is set to Slider.TRACK_INTERACTION_MODE_BY_PAGE, and the slider's track is touched, and the thumb is shown, the slider value will be incremented or decremented by the page value.
Slider
 InheritedpreviousTabFocus : IFocusDisplayObject
FeathersControl
  repeatDelay : Number
The time, in seconds, before actions are repeated.
Slider
  showThumb : Boolean
Determines if the thumb should be displayed.
Slider
  step : Number
As the slider's thumb is dragged, the value is snapped to a multiple of the step.
Slider
 InheritedstyleName : String
The concatenated styleNameList, with values separated by spaces.
FeathersControl
 InheritedstyleNameList : TokenList
[read-only] Contains a list of all "styles" assigned to this control.
FeathersControl
 InheritedstyleProvider : IStyleProvider
When a component initializes, a style provider may be used to set properties that affect the component's visual appearance.
FeathersControl
  thumbFactory : Function
A function used to generate the slider's thumb sub-component.
Slider
  thumbOffset : Number
Offsets the position of the thumb by a certain number of pixels in a direction perpendicular to the track.
Slider
  thumbProperties : Object
An object that stores properties for the slider's thumb, and the properties will be passed down to the thumb when the slider validates.
Slider
  trackInteractionMode : String
Determines how the slider's value changes when the track is touched.
Slider
  trackLayoutMode : String
Determines how the minimum and maximum track skins are positioned and sized.
Slider
  trackScaleMode : String
Determines how the minimum and maximum track skins are positioned and sized.
Slider
  value : Number
The value of the slider, between the minimum and maximum.
Slider
 Inheritedwidth : Number
[override] The width of the component, in pixels.
FeathersControl
Protected Properties
 PropertyDefined By
 InheritedactualHeight : Number = 0
The final height value that should be used for layout.
FeathersControl
 InheritedactualWidth : Number = 0
The final width value that should be used for layout.
FeathersControl
 InheriteddefaultStyleProvider : IStyleProvider
[read-only] When the FeathersControl constructor is called, the globalStyleProvider property is set to this value.
FeathersControl
 InheritedexplicitHeight : Number = NaN
The height value explicitly set by calling the height setter or setSize().
FeathersControl
 InheritedexplicitWidth : Number = NaN
The width value explicitly set by calling the width setter or setSize().
FeathersControl
  maximumTrack : Button
The maximum track sub-component.
Slider
  maximumTrackName : String
DEPRECATED: Replaced by maximumTrackStyleName.
Slider
  maximumTrackStyleName : String = feathers-slider-maximum-track
The value added to the styleNameList of the maximum track.
Slider
  minimumTrack : Button
The minimum track sub-component.
Slider
  minimumTrackName : String
DEPRECATED: Replaced by minimumTrackStyleName.
Slider
  minimumTrackStyleName : String = feathers-slider-minimum-track
The value added to the styleNameList of the minimum track.
Slider
  thumb : Button
The thumb sub-component.
Slider
  thumbName : String
DEPRECATED: Replaced by thumbStyleName.
Slider
  thumbStyleName : String = feathers-slider-thumb
The value added to the styleNameList of the thumb.
Slider
Public Methods
 MethodDefined By
  
Constructor.
Slider
 Inherited
hideFocus():void
If the visual indicator of focus has been displayed by showFocus(), call this function to hide it.
FeathersControl
 Inherited
invalidate(flag:String):void
Call this function to tell the UI control that a redraw is pending.
FeathersControl
 Inherited
isInvalid(flag:String = null):Boolean
Indicates whether the control is pending validation or not.
FeathersControl
 Inherited
move(x:Number, y:Number):void
Sets both the x and the y positions of the control in a single function call.
FeathersControl
 Inherited
setSize(width:Number, height:Number):void
Sets both the width and the height of the control in a single function call.
FeathersControl
 Inherited
showFocus():void
If the object has focus, an additional visual indicator may optionally be displayed to highlight the object.
FeathersControl
 Inherited
validate():void
Immediately validates the display object, if it is invalid.
FeathersControl
Protected Methods
 MethodDefined By
  
If the component's dimensions have not been set explicitly, it will measure its content and determine an ideal size for itself.
Slider
 Inherited
clearInvalidationFlag(flag:String):void
Clears an invalidation flag.
FeathersControl
  
Creates and adds the maximumTrack sub-component and removes the old instance, if one exists.
Slider
  
Creates and adds the minimumTrack sub-component and removes the old instance, if one exists.
Slider
  
Creates and adds the thumb sub-component and removes the old instance, if one exists.
Slider
 Inherited
draw():void
Override to customize layout and to adjust properties of children.
FeathersControl
 Inherited
focusInHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_IN that may be overridden in subclasses to perform additional actions when the component receives focus.
FeathersControl
 Inherited
focusOutHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_OUT that may be overridden in subclasses to perform additional actions when the component loses focus.
FeathersControl
 Inherited
initialize():void
Called the first time that the UI control is added to the stage, and you should override this function to customize the initialization process.
FeathersControl
 Inherited
Updates the focus indicator skin by showing or hiding it and adjusting its position and dimensions.
FeathersControl
 Inherited
setInvalidationFlag(flag:String):void
Sets an invalidation flag.
FeathersControl
 Inherited
setSizeInternal(width:Number, height:Number, canInvalidate:Boolean):Boolean
Sets the width and height of the control, with the option of invalidating or not.
FeathersControl
Events
 Event Summary Defined By
  Dispatched when the user starts dragging the slider's thumb or track.Slider
  Dispatched when the slider's value changes.Slider
 InheritedDispatched after the component has validated for the first time.FeathersControl
  Dispatched when the user stops dragging the slider's thumb or track.Slider
 InheritedDispatched after initialize() has been called, but before the first time that draw() has been called.FeathersControl
 InheritedDispatched when the width or height of the control changes.FeathersControl
Public Constants
 ConstantDefined By
  DEFAULT_CHILD_NAME_MAXIMUM_TRACK : String = feathers-slider-maximum-track
[static] DEPRECATED: Replaced by Slider.DEFAULT_CHILD_STYLE_NAME_MAXIMUM_TRACK.
Slider
  DEFAULT_CHILD_NAME_MINIMUM_TRACK : String = feathers-slider-minimum-track
[static] DEPRECATED: Replaced by Slider.DEFAULT_CHILD_STYLE_NAME_MINIMUM_TRACK.
Slider
  DEFAULT_CHILD_NAME_THUMB : String = feathers-slider-thumb
[static] DEPRECATED: Replaced by Slider.DEFAULT_CHILD_STYLE_NAME_THUMB.
Slider
  DEFAULT_CHILD_STYLE_NAME_MAXIMUM_TRACK : String = feathers-slider-maximum-track
[static] The default value added to the styleNameList of the maximum track.
Slider
  DEFAULT_CHILD_STYLE_NAME_MINIMUM_TRACK : String = feathers-slider-minimum-track
[static] The default value added to the styleNameList of the minimum track.
Slider
  DEFAULT_CHILD_STYLE_NAME_THUMB : String = feathers-slider-thumb
[static] The default value added to the styleNameList of the thumb.
Slider
  DIRECTION_HORIZONTAL : String = horizontal
[static] The slider's thumb may be dragged horizontally (on the x-axis).
Slider
  DIRECTION_VERTICAL : String = vertical
[static] The slider's thumb may be dragged vertically (on the y-axis).
Slider
 InheritedINVALIDATION_FLAG_ALL : String = all
[static] Flag to indicate that everything is invalid and should be redrawn.
FeathersControl
 InheritedINVALIDATION_FLAG_DATA : String = data
[static] Invalidation flag to indicate that the primary data displayed by the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_FOCUS : String = focus
[static] Invalidation flag to indicate that the focus of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_LAYOUT : String = layout
[static] Invalidation flag to indicate that the layout of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SCROLL : String = scroll
[static] Invalidation flag to indicate that the scroll position of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SELECTED : String = selected
[static] Invalidation flag to indicate that the selection of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SIZE : String = size
[static] Invalidation flag to indicate that the dimensions of the UI control have changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SKIN : String = skin
[static] Invalidation flag to indicate that the skin of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_STATE : String = state
[static] Invalidation flag to indicate that the state has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_STYLES : String = styles
[static] Invalidation flag to indicate that the styles or visual appearance of the UI control has changed.
FeathersControl
  TRACK_INTERACTION_MODE_BY_PAGE : String = byPage
[static] When the track is touched, the value is increased or decreased (depending on the location of the touch) by the value of the page property.
Slider
  TRACK_INTERACTION_MODE_TO_VALUE : String = toValue
[static] When the track is touched, the slider's thumb jumps directly to the touch position, and the slider's value property is updated to match as if the thumb were dragged to that position.
Slider
  TRACK_LAYOUT_MODE_MIN_MAX : String = minMax
[static] The slider has two tracks, stretching to fill each side of the slider with the thumb in the middle.
Slider
  TRACK_LAYOUT_MODE_SINGLE : String = single
[static] The slider has only one track, that fills the full length of the slider.
Slider
  TRACK_SCALE_MODE_DIRECTIONAL : String = directional
[static] If the slider's direction is horizontal, the width of the track will fill the full width of the slider, and if the slider's direction is vertical, the height of the track will fill the full height of the slider.
Slider
  TRACK_SCALE_MODE_EXACT_FIT : String = exactFit
[static] The slider's track dimensions fill the full width and height of the slider.
Slider
Property Detail
customMaximumTrackNameproperty
customMaximumTrackName:String

DEPRECATED: Replaced by customMaximumTrackStyleName.

DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.


Implementation
    public function get customMaximumTrackName():String
    public function set customMaximumTrackName(value:String):void

See also

customMaximumTrackStyleNameproperty 
customMaximumTrackStyleName:String

A style name to add to the slider's maximum track sub-component. Typically used by a theme to provide different skins to different sliders.

In the following example, a custom maximum track style name is passed to the slider:

         slider.customMaximumTrackStyleName = "my-custom-maximum-track";

In your theme, you can target this sub-component style name to provide different styles than the default:

         getStyleProviderForClass( Button ).setFunctionForStyleName( "my-custom-maximum-track", setCustomMaximumTrackStyles );

The default value is null.


Implementation
    public function get customMaximumTrackStyleName():String
    public function set customMaximumTrackStyleName(value:String):void

See also

customMinimumTrackNameproperty 
customMinimumTrackName:String

DEPRECATED: Replaced by customMinimumTrackStyleName.

DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.


Implementation
    public function get customMinimumTrackName():String
    public function set customMinimumTrackName(value:String):void

See also

customMinimumTrackStyleNameproperty 
customMinimumTrackStyleName:String

A style name to add to the slider's minimum track sub-component. Typically used by a theme to provide different styles to different sliders.

In the following example, a custom minimum track style name is passed to the slider:

         slider.customMinimumTrackStyleName = "my-custom-minimum-track";

In your theme, you can target this sub-component style name to provide different styles than the default:

         getStyleProviderForClass( Button ).setFunctionForStyleName( "my-custom-minimum-track", setCustomMinimumTrackStyles );

The default value is null.


Implementation
    public function get customMinimumTrackStyleName():String
    public function set customMinimumTrackStyleName(value:String):void

See also

customThumbNameproperty 
customThumbName:String

DEPRECATED: Replaced by customThumbStyleName.

DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.


Implementation
    public function get customThumbName():String
    public function set customThumbName(value:String):void

See also

customThumbStyleNameproperty 
customThumbStyleName:String

A style name to add to the slider's thumb sub-component. Typically used by a theme to provide different styles to different sliders.

In the following example, a custom thumb style name is passed to the slider:

         slider.customThumbStyleName = "my-custom-thumb";

In your theme, you can target this sub-component style name to provide different styles than the default:

         getStyleProviderForClass( Button ).setFunctionForStyleName( "my-custom-thumb", setCustomThumbStyles );

The default value is null.


Implementation
    public function get customThumbStyleName():String
    public function set customThumbStyleName(value:String):void

See also

directionproperty 
direction:String

Determines if the slider's thumb can be dragged horizontally or vertically. When this value changes, the slider's width and height values do not change automatically.

In the following example, the direction is changed to vertical:

         slider.direction = Slider.DIRECTION_VERTICAL;

The default value is Slider.DIRECTION_HORIZONTAL.


Implementation
    public function get direction():String
    public function set direction(value:String):void

See also

globalStyleProviderproperty 
public static var globalStyleProvider:IStyleProvider

The default IStyleProvider for all Slider components.

The default value is null.

See also

liveDraggingproperty 
public var liveDragging:Boolean = true

Determines if the slider dispatches the Event.CHANGE event every time the thumb moves, or only once it stops moving.

In the following example, live dragging is disabled:

         slider.liveDragging = false;

The default value is true.

maximumproperty 
maximum:Number

The slider's value will not go higher than the maximum. The maximum is zero (0), by default, and it should almost always be changed to something more appropriate.

In the following example, the maximum is set to 100:

         slider.minimum = 0;
         slider.maximum = 100;
         slider.step = 1;
         slider.page = 10
         slider.value = 12;

The default value is 0.


Implementation
    public function get maximum():Number
    public function set maximum(value:Number):void

See also

maximumPaddingproperty 
maximumPadding:Number

The space, in pixels, between the maximum position of the thumb and the maximum edge of the track. May be negative to extend the range of the thumb.

In the following example, maximum padding is set to 20 pixels:

         slider.maximumPadding = 20;

The default value is 0.


Implementation
    public function get maximumPadding():Number
    public function set maximumPadding(value:Number):void
maximumTrackproperty 
protected var maximumTrack:Button

The maximum track sub-component.

For internal use in subclasses.

See also

maximumTrackFactoryproperty 
maximumTrackFactory:Function

A function used to generate the slider's maximum track sub-component. The maximum track must be an instance of Button. This factory can be used to change properties on the maximum track when it is first created. For instance, if you are skinning Feathers components without a theme, you might use this factory to set skins and other styles on the maximum track.

The function should have the following signature:

function():Button

In the following example, a custom maximum track factory is passed to the slider:

         slider.maximumTrackFactory = function():Button
         {
             var track:Button = new Button();
             track.defaultSkin = new Image( upTexture );
             track.downSkin = new Image( downTexture );
             return track;
         };

The default value is null.


Implementation
    public function get maximumTrackFactory():Function
    public function set maximumTrackFactory(value:Function):void

See also

maximumTrackNameproperty 
maximumTrackName:String

DEPRECATED: Replaced by maximumTrackStyleName.

DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.


Implementation
    protected function get maximumTrackName():String
    protected function set maximumTrackName(value:String):void

See also

maximumTrackPropertiesproperty 
maximumTrackProperties:Object

An object that stores properties for the slider's "maximum" track, and the properties will be passed down to the "maximum" track when the slider validates. For a list of available properties, refer to feathers.controls.Button.

If the subcomponent has its own subcomponents, their properties can be set too, using attribute @ notation. For example, to set the skin on the thumb which is in a SimpleScrollBar, which is in a List, you can use the following syntax:

list.verticalScrollBarProperties.@thumbProperties.defaultSkin = new Image(texture);

Setting properties in a maximumTrackFactory function instead of using maximumTrackProperties will result in better performance.

In the following example, the slider's maximum track properties are updated:

         slider.maximumTrackProperties.defaultSkin = new Image( upTexture );
         slider.maximumTrackProperties.downSkin = new Image( downTexture );

The default value is null.


Implementation
    public function get maximumTrackProperties():Object
    public function set maximumTrackProperties(value:Object):void

See also

maximumTrackStyleNameproperty 
protected var maximumTrackStyleName:String = feathers-slider-maximum-track

The value added to the styleNameList of the maximum track. This variable is protected so that sub-classes can customize the maximum track style name in their constructors instead of using the default style name defined by DEFAULT_CHILD_STYLE_NAME_MAXIMUM_TRACK.

To customize the maximum track style name without subclassing, see customMaximumTrackStyleName.

See also

minimumproperty 
minimum:Number

The slider's value will not go lower than the minimum.

In the following example, the minimum is set to 0:

         slider.minimum = 0;
         slider.maximum = 100;
         slider.step = 1;
         slider.page = 10
         slider.value = 12;

The default value is 0.


Implementation
    public function get minimum():Number
    public function set minimum(value:Number):void

See also

minimumPaddingproperty 
minimumPadding:Number

The space, in pixels, between the minimum position of the thumb and the minimum edge of the track. May be negative to extend the range of the thumb.

In the following example, minimum padding is set to 20 pixels:

         slider.minimumPadding = 20;

The default value is 0.


Implementation
    public function get minimumPadding():Number
    public function set minimumPadding(value:Number):void
minimumTrackproperty 
protected var minimumTrack:Button

The minimum track sub-component.

For internal use in subclasses.

See also

minimumTrackFactoryproperty 
minimumTrackFactory:Function

A function used to generate the slider's minimum track sub-component. The minimum track must be an instance of Button. This factory can be used to change properties on the minimum track when it is first created. For instance, if you are skinning Feathers components without a theme, you might use this factory to set skins and other styles on the minimum track.

The function should have the following signature:

function():Button

In the following example, a custom minimum track factory is passed to the slider:

         slider.minimumTrackFactory = function():Button
         {
             var track:Button = new Button();
             track.defaultSkin = new Image( upTexture );
             track.downSkin = new Image( downTexture );
             return track;
         };

The default value is null.


Implementation
    public function get minimumTrackFactory():Function
    public function set minimumTrackFactory(value:Function):void

See also

minimumTrackNameproperty 
minimumTrackName:String

DEPRECATED: Replaced by minimumTrackStyleName.

DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.


Implementation
    protected function get minimumTrackName():String
    protected function set minimumTrackName(value:String):void

See also

minimumTrackPropertiesproperty 
minimumTrackProperties:Object

An object that stores properties for the slider's "minimum" track, and the properties will be passed down to the "minimum" track when the slider validates. For a list of available properties, refer to feathers.controls.Button.

If the subcomponent has its own subcomponents, their properties can be set too, using attribute @ notation. For example, to set the skin on the thumb which is in a SimpleScrollBar, which is in a List, you can use the following syntax:

list.verticalScrollBarProperties.@thumbProperties.defaultSkin = new Image(texture);

Setting properties in a minimumTrackFactory function instead of using minimumTrackProperties will result in better performance.

In the following example, the slider's minimum track properties are updated:

         slider.minimumTrackProperties.defaultSkin = new Image( upTexture );
         slider.minimumTrackProperties.downSkin = new Image( downTexture );

The default value is null.


Implementation
    public function get minimumTrackProperties():Object
    public function set minimumTrackProperties(value:Object):void

See also

minimumTrackStyleNameproperty 
protected var minimumTrackStyleName:String = feathers-slider-minimum-track

The value added to the styleNameList of the minimum track. This variable is protected so that sub-classes can customize the minimum track style name in their constructors instead of using the default style name defined by DEFAULT_CHILD_STYLE_NAME_MINIMUM_TRACK.

To customize the minimum track style name without subclassing, see customMinimumTrackStyleName.

See also

pageproperty 
page:Number

If the trackInteractionMode property is set to Slider.TRACK_INTERACTION_MODE_BY_PAGE, and the slider's track is touched, and the thumb is shown, the slider value will be incremented or decremented by the page value.

If this value is NaN, the step value will be used instead. If the step value is zero, paging with the track is not possible.

In the following example, the page is changed to 10:

         slider.minimum = 0;
         slider.maximum = 100;
         slider.step = 1;
         slider.page = 10
         slider.value = 12;

The default value is NaN.


Implementation
    public function get page():Number
    public function set page(value:Number):void

See also

repeatDelayproperty 
repeatDelay:Number

The time, in seconds, before actions are repeated. The first repeat happens after a delay that is five times longer than the following repeats.

In the following example, the slider's repeat delay is set to 500 milliseconds:

         slider.repeatDelay = 0.5;

The default value is 0.05.


Implementation
    public function get repeatDelay():Number
    public function set repeatDelay(value:Number):void
showThumbproperty 
showThumb:Boolean

Determines if the thumb should be displayed.

In the following example, the thumb is hidden:

         slider.showThumb = false;

The default value is true.


Implementation
    public function get showThumb():Boolean
    public function set showThumb(value:Boolean):void
stepproperty 
step:Number

As the slider's thumb is dragged, the value is snapped to a multiple of the step. Paging using the slider's track will use the step value if the page value is NaN. If the step is zero (0), paging with the track will not be possible.

In the following example, the step is changed to 1:

         slider.minimum = 0;
         slider.maximum = 100;
         slider.step = 1;
         slider.page = 10;
         slider.value = 10;

The default value is 0.


Implementation
    public function get step():Number
    public function set step(value:Number):void

See also

thumbproperty 
protected var thumb:Button

The thumb sub-component.

For internal use in subclasses.

See also

thumbFactoryproperty 
thumbFactory:Function

A function used to generate the slider's thumb sub-component. The thumb must be an instance of Button. This factory can be used to change properties on the thumb when it is first created. For instance, if you are skinning Feathers components without a theme, you might use this factory to set skins and other styles on the thumb.

The function should have the following signature:

function():Button

In the following example, a custom thumb factory is passed to the slider:

         slider.thumbFactory = function():Button
         {
             var thumb:Button = new Button();
             thumb.defaultSkin = new Image( upTexture );
             thumb.downSkin = new Image( downTexture );
             return thumb;
         };

The default value is null.


Implementation
    public function get thumbFactory():Function
    public function set thumbFactory(value:Function):void

See also

thumbNameproperty 
thumbName:String

DEPRECATED: Replaced by thumbStyleName.

DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.


Implementation
    protected function get thumbName():String
    protected function set thumbName(value:String):void

See also

thumbOffsetproperty 
thumbOffset:Number

Offsets the position of the thumb by a certain number of pixels in a direction perpendicular to the track. This does not affect the measurement of the slider. The slider will measure itself as if the thumb were not offset from its original position.

In the following example, the thumb is offset by 20 pixels:

         slider.thumbOffset = 20;

The default value is 0.


Implementation
    public function get thumbOffset():Number
    public function set thumbOffset(value:Number):void
thumbPropertiesproperty 
thumbProperties:Object

An object that stores properties for the slider's thumb, and the properties will be passed down to the thumb when the slider validates. For a list of available properties, refer to feathers.controls.Button.

If the subcomponent has its own subcomponents, their properties can be set too, using attribute @ notation. For example, to set the skin on the thumb which is in a SimpleScrollBar, which is in a List, you can use the following syntax:

list.verticalScrollBarProperties.@thumbProperties.defaultSkin = new Image(texture);

Setting properties in a thumbFactory function instead of using thumbProperties will result in better performance.

In the following example, the slider's thumb properties are updated:

         slider.thumbProperties.defaultSkin = new Image( upTexture );
         slider.thumbProperties.downSkin = new Image( downTexture );

The default value is null.


Implementation
    public function get thumbProperties():Object
    public function set thumbProperties(value:Object):void

See also

thumbStyleNameproperty 
protected var thumbStyleName:String = feathers-slider-thumb

The value added to the styleNameList of the thumb. This variable is protected so that sub-classes can customize the thumb style name in their constructors instead of using the default style name defined by DEFAULT_CHILD_STYLE_NAME_THUMB.

To customize the thumb style name without subclassing, see customThumbStyleName.

See also

trackInteractionModeproperty 
trackInteractionMode:String

Determines how the slider's value changes when the track is touched.

If showThumb is set to false, the slider will always behave as if trackInteractionMode has been set to Slider.TRACK_INTERACTION_MODE_TO_VALUE. In other words, the value of trackInteractionMode may be ignored if the thumb is hidden.

In the following example, the slider's track interaction is changed:

         slider.trackScaleMode = Slider.TRACK_INTERACTION_MODE_BY_PAGE;

The default value is Slider.TRACK_INTERACTION_MODE_TO_VALUE.


Implementation
    public function get trackInteractionMode():String
    public function set trackInteractionMode(value:String):void

See also

trackLayoutModeproperty 
trackLayoutMode:String

Determines how the minimum and maximum track skins are positioned and sized.

In the following example, the slider is given two tracks:

         slider.trackLayoutMode = Slider.TRACK_LAYOUT_MODE_MIN_MAX;

The default value is Slider.TRACK_LAYOUT_MODE_SINGLE.


Implementation
    public function get trackLayoutMode():String
    public function set trackLayoutMode(value:String):void

See also

trackScaleModeproperty 
trackScaleMode:String

Determines how the minimum and maximum track skins are positioned and sized.

In the following example, the slider's track layout is customized:

         slider.trackScaleMode = Slider.TRACK_SCALE_MODE_EXACT_FIT;

The default value is Slider.TRACK_SCALE_MODE_DIRECTIONAL.


Implementation
    public function get trackScaleMode():String
    public function set trackScaleMode(value:String):void

See also

valueproperty 
value:Number

The value of the slider, between the minimum and maximum.

In the following example, the value is changed to 12:

         slider.minimum = 0;
         slider.maximum = 100;
         slider.step = 1;
         slider.page = 10
         slider.value = 12;

The default value is 0.


Implementation
    public function get value():Number
    public function set value(value:Number):void

See also

Constructor Detail
Slider()Constructor
public function Slider()

Constructor.

Method Detail
autoSizeIfNeeded()method
protected function autoSizeIfNeeded():Boolean

If the component's dimensions have not been set explicitly, it will measure its content and determine an ideal size for itself. If the explicitWidth or explicitHeight member variables are set, those value will be used without additional measurement. If one is set, but not the other, the dimension with the explicit value will not be measured, but the other non-explicit dimension will still need measurement.

Calls setSizeInternal() to set up the actualWidth and actualHeight member variables used for layout.

Meant for internal use, and subclasses may override this function with a custom implementation.

Returns
Boolean
createMaximumTrack()method 
protected function createMaximumTrack():void

Creates and adds the maximumTrack sub-component and removes the old instance, if one exists. If the maximum track is not needed, it will not be created.

Meant for internal use, and subclasses may override this function with a custom implementation.

See also

createMinimumTrack()method 
protected function createMinimumTrack():void

Creates and adds the minimumTrack sub-component and removes the old instance, if one exists.

Meant for internal use, and subclasses may override this function with a custom implementation.

See also

createThumb()method 
protected function createThumb():void

Creates and adds the thumb sub-component and removes the old instance, if one exists.

Meant for internal use, and subclasses may override this function with a custom implementation.

See also

Event Detail
beginInteraction Event
Event Object Type: starling.events.Event
Event.type property = feathers.events.FeathersEventType.BEGIN_INTERACTION

Dispatched when the user starts dragging the slider's thumb or track.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
datanull
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.

The FeathersEventType.BEGIN_INTERACTION event type is used by many UI controls where a drag or other interaction happens over time. An example is a Slider control where the user touches the thumb to begin dragging.
change Event  
Event Object Type: starling.events.Event
Event.type property = starling.events.Event.CHANGE

Dispatched when the slider's value changes.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
datanull
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.

endInteraction Event  
Event Object Type: starling.events.Event
Event.type property = feathers.events.FeathersEventType.END_INTERACTION

Dispatched when the user stops dragging the slider's thumb or track.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
datanull
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.

The FeathersEventType.END_INTERACTION event type is used by many UI controls where a drag or other interaction happens over time. An example is a Slider control where the user stops touching the thumb after dragging.

Depending on the control, the result of the interaction may continue after the interaction ends. For instance, a Scroller may be "thrown", and the scrolling will continue animating after the user has finished interacting with it.

Constant Detail
DEFAULT_CHILD_NAME_MAXIMUM_TRACKConstant
public static const DEFAULT_CHILD_NAME_MAXIMUM_TRACK:String = feathers-slider-maximum-track

DEPRECATED: Replaced by Slider.DEFAULT_CHILD_STYLE_NAME_MAXIMUM_TRACK.

DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.

See also

DEFAULT_CHILD_NAME_MINIMUM_TRACKConstant 
public static const DEFAULT_CHILD_NAME_MINIMUM_TRACK:String = feathers-slider-minimum-track

DEPRECATED: Replaced by Slider.DEFAULT_CHILD_STYLE_NAME_MINIMUM_TRACK.

DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.

See also

DEFAULT_CHILD_NAME_THUMBConstant 
public static const DEFAULT_CHILD_NAME_THUMB:String = feathers-slider-thumb

DEPRECATED: Replaced by Slider.DEFAULT_CHILD_STYLE_NAME_THUMB.

DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.

See also

DEFAULT_CHILD_STYLE_NAME_MAXIMUM_TRACKConstant 
public static const DEFAULT_CHILD_STYLE_NAME_MAXIMUM_TRACK:String = feathers-slider-maximum-track

The default value added to the styleNameList of the maximum track.

See also

DEFAULT_CHILD_STYLE_NAME_MINIMUM_TRACKConstant 
public static const DEFAULT_CHILD_STYLE_NAME_MINIMUM_TRACK:String = feathers-slider-minimum-track

The default value added to the styleNameList of the minimum track.

See also

DEFAULT_CHILD_STYLE_NAME_THUMBConstant 
public static const DEFAULT_CHILD_STYLE_NAME_THUMB:String = feathers-slider-thumb

The default value added to the styleNameList of the thumb.

See also

DIRECTION_HORIZONTALConstant 
public static const DIRECTION_HORIZONTAL:String = horizontal

The slider's thumb may be dragged horizontally (on the x-axis).

See also

DIRECTION_VERTICALConstant 
public static const DIRECTION_VERTICAL:String = vertical

The slider's thumb may be dragged vertically (on the y-axis).

See also

TRACK_INTERACTION_MODE_BY_PAGEConstant 
public static const TRACK_INTERACTION_MODE_BY_PAGE:String = byPage

When the track is touched, the value is increased or decreased (depending on the location of the touch) by the value of the page property.

See also

TRACK_INTERACTION_MODE_TO_VALUEConstant 
public static const TRACK_INTERACTION_MODE_TO_VALUE:String = toValue

When the track is touched, the slider's thumb jumps directly to the touch position, and the slider's value property is updated to match as if the thumb were dragged to that position.

See also

TRACK_LAYOUT_MODE_MIN_MAXConstant 
public static const TRACK_LAYOUT_MODE_MIN_MAX:String = minMax

The slider has two tracks, stretching to fill each side of the slider with the thumb in the middle. The tracks will be resized as the thumb moves. This layout mode is designed for sliders where the two sides of the track may be colored differently to show the value "filling up" as the slider is dragged.

Since the width and height of the tracks will change, consider using a special display object such as a Scale9Image, Scale3Image or a TiledImage that is designed to be resized dynamically.

See also

TRACK_LAYOUT_MODE_SINGLEConstant 
public static const TRACK_LAYOUT_MODE_SINGLE:String = single

The slider has only one track, that fills the full length of the slider. In this layout mode, the "minimum" track is displayed and fills the entire length of the slider. The maximum track will not exist.

See also

TRACK_SCALE_MODE_DIRECTIONALConstant 
public static const TRACK_SCALE_MODE_DIRECTIONAL:String = directional

If the slider's direction is horizontal, the width of the track will fill the full width of the slider, and if the slider's direction is vertical, the height of the track will fill the full height of the slider. The other edge will not be scaled.

See also

TRACK_SCALE_MODE_EXACT_FITConstant 
public static const TRACK_SCALE_MODE_EXACT_FIT:String = exactFit

The slider's track dimensions fill the full width and height of the slider.

See also