GODPAPER | All Packages | All Classes | Index | Frames No Frames |
Scroller

Package | feathers.controls
Class | public class Scroller
Inheritance | Scroller FeathersControl Sprite DisplayObjectContainer DisplayObject EventDispatcher Object
Subclasses | GroupedList, List, ScrollContainer, ScrollText

Allows horizontal and vertical scrolling of a view port. Not meant to be used as a standalone container or component. Generally meant to be the super class of another component that needs to support scrolling. To put components in a generic scrollable container (with optional layout), see `ScrollContainer`. To scroll long passages of text, see `ScrollText`.

See also

http://wiki.starling-framework.org/feathers/scroller
ScrollContainer
ScrollText

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | alpha : Number The opacity of the object. | DisplayObject
|  | backgroundDisabledSkin : DisplayObject A background to display when the container is disabled. | Scroller
|  | backgroundSkin : DisplayObject The default background to display. | Scroller
|  | base : DisplayObject [read-only] The topmost object in the display tree the object is part of. | DisplayObject
|  | blendMode : String The blend mode determines how the object is blended with the objects underneath. | DisplayObject
|  | bounds : Rectangle [read-only] The bounds of the object relative to the local coordinates of the parent. | DisplayObject
|  | clipContent : Boolean If true, the viewport will be clipped to the scroller's bounds. | Scroller
|  | clipRect : Rectangle [override] | FeathersControl
|  | defaultTextEditorFactory : Function [static] A function used by all UI controls that support text editor to create an ITextEditor instance. | FeathersControl
|  | defaultTextRendererFactory : Function [static] A function used by all UI controls that support text renderers to create an ITextRenderer instance. | FeathersControl
|  | elasticity : Number If the scroll position goes outside the minimum or maximum bounds, the scrolling will be constrained using this multiplier. | Scroller
|  | elasticSnapDuration : Number The duration, in seconds, of the animation when a the scroller snaps back to the minimum or maximum position after going out of bounds. | Scroller
|  | filter : FragmentFilter The filter that is attached to the display object. | DisplayObject
|  | focusManager : IFocusManager The current focus manager for this component. | FeathersControl
|  | hasElasticEdges : Boolean Determines if the scrolling can go beyond the edges of the viewport. | Scroller
|  | hasVisibleArea : Boolean [read-only] Indicates if an object occupies any visible area. | DisplayObject
|  | height : Number [override] The height of the component, in pixels. | FeathersControl
|  | hideScrollBarAnimationDuration : Number The duration, in seconds, of the animation when a scroll bar fades out. | Scroller
|  | hideScrollBarAnimationEase : Object The easing function used for hiding the scroll bars, if applicable. | Scroller
|  | horizontalPageIndex : int [read-only] The index of the horizontal page, if snapping is enabled. | Scroller
|  | horizontalScrollBarFactory : Function Creates the horizontal scroll bar. | Scroller
|  | horizontalScrollBarProperties : Object A set of key/value pairs to be passed down to the scroller's horizontal scroll bar instance (if it exists). | Scroller
|  | horizontalScrollPolicy : String Determines whether the scroller may scroll horizontally (on the x-axis) or not. | Scroller
|  | horizontalScrollPosition : Number The number of pixels the scroller has been scrolled horizontally (on the x-axis). | Scroller
|  | horizontalScrollStep : Number The number of pixels the scroller can be stepped horizontally. | Scroller
|  | includeInLayout : Boolean Determines if the ILayout should use this object or ignore it. | FeathersControl
|  | interactionMode : String Determines how the user may interact with the scroller. | Scroller
|  | isEnabled : Boolean Indicates whether the control is interactive or not. | FeathersControl
|  | isFlattened : Boolean [read-only] Indicates if the sprite was flattened. | Sprite
|  | isFocusEnabled : Boolean Determines if this component can receive focus. | FeathersControl
|  | isInitialized : Boolean [read-only] Determines if the component has been initialized yet. | FeathersControl
|  | isQuickHitAreaEnabled : Boolean Similar to mouseChildren on the classic display list. | FeathersControl
|  | layoutData : ILayoutData Extra parameters associated with this display object that will be used by the layout algorithm. | FeathersControl
|  | maxHeight : Number The maximum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component. | FeathersControl
|  | maxHorizontalScrollPosition : Number [read-only] The maximum number of pixels the scroller may be scrolled horizontally (on the x-axis). | Scroller
|  | maxVerticalScrollPosition : Number [read-only] The maximum number of pixels the scroller may be scrolled vertically (on the y-axis). | Scroller
|  | maxWidth : Number The maximum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component. | FeathersControl
|  | minHeight : Number The minimum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component. | FeathersControl
|  | minTouchHeight : Number If using isQuickHitAreaEnabled, and the hit area's height is smaller than this value, it will be expanded. | FeathersControl
|  | minTouchWidth : Number If using isQuickHitAreaEnabled, and the hit area's width is smaller than this value, it will be expanded. | FeathersControl
|  | minWidth : Number The minimum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component. | FeathersControl
|  | mouseWheelScrollDuration : Number The duration, in seconds, of the animation when the mouse wheel initiates a scroll action. | Scroller
|  | name : String [override] The concatenated nameList, with each name separated by spaces. | FeathersControl
|  | nameList : TokenList [read-only] Contains a list of all "names" assigned to this control. | FeathersControl
|  | nextTabFocus : IFocusDisplayObject The next object that will receive focus when the tab key is pressed. | FeathersControl
|  | numChildren : int [read-only] The number of children of this container. | DisplayObjectContainer
|  | padding : Number Quickly sets all padding properties to the same value. | Scroller
|  | paddingBottom : Number The minimum space, in pixels, between the container's bottom edge and the container's content. | Scroller
|  | paddingLeft : Number The minimum space, in pixels, between the container's left edge and the container's content. | Scroller
|  | paddingRight : Number The minimum space, in pixels, between the container's right edge and the container's content. | Scroller
|  | paddingTop : Number The minimum space, in pixels, between the container's top edge and the container's content. | Scroller
|  | pageThrowDuration : Number The duration, in seconds, of the animation when the scroller is thrown to a page. | Scroller
|  | parent : DisplayObjectContainer [read-only] The display object container that contains this display object. | DisplayObject
|  | pivotX : Number The x coordinate of the object's origin in its own coordinate space (default: 0). | DisplayObject
|  | pivotY : Number The y coordinate of the object's origin in its own coordinate space (default: 0). | DisplayObject
|  | root : DisplayObject [read-only] The root object the display object is connected to (i.e. | DisplayObject
|  | rotation : Number The rotation of the object in radians. | DisplayObject
|  | scaleX : Number The horizontal scale factor. | DisplayObject
|  | scaleY : Number The vertical scale factor. | DisplayObject
|  | scrollBarDisplayMode : String Determines how the scroll bars are displayed. | Scroller
|  | scrollerProperties : Object DEPRECATED: A set of key/value pairs to be passed down to the container's scroller sub-component. | Scroller
|  | skewX : Number The horizontal skew angle in radians. | DisplayObject
|  | skewY : Number The vertical skew angle in radians. | DisplayObject
|  | snapScrollPositionsToPixels : Boolean If enabled, the scroll position will always be adjusted to whole pixels. | Scroller
|  | snapToPages : Boolean Determines if scrolling will snap to the nearest page. | Scroller
|  | stage : Stage [read-only] The stage the display object is connected to, or null if it is not connected to the stage. | DisplayObject
|  | throwEase : Object The easing function used for "throw" animations. | Scroller
|  | touchable : Boolean Indicates if this object (and its children) will receive touch events. | DisplayObject
|  | transformationMatrix : Matrix The transformation matrix of the object relative to its parent. | DisplayObject
|  | useHandCursor : Boolean Indicates if the mouse cursor should transform into a hand while it's over the sprite. | DisplayObject
|  | verticalPageIndex : int [read-only] The index of the vertical page, if snapping is enabled. | Scroller
|  | verticalScrollBarFactory : Function Creates the vertical scroll bar. | Scroller
|  | verticalScrollBarProperties : Object A set of key/value pairs to be passed down to the scroller's vertical scroll bar instance (if it exists). | Scroller
|  | verticalScrollPolicy : String Determines whether the scroller may scroll vertically (on the y-axis) or not. | Scroller
|  | verticalScrollPosition : Number The number of pixels the scroller has been scrolled vertically (on the y-axis). | Scroller
|  | verticalScrollStep : Number The number of pixels the scroller can be stepped vertically. | Scroller
|  | viewPort : IViewPort The display object displayed and scrolled within the Scroller. | Scroller
|  | visible : Boolean The visibility of the object. | DisplayObject
|  | width : Number [override] The width of the component, in pixels. | FeathersControl
|  | x : Number The x coordinate of the object relative to the local coordinates of the parent. | DisplayObject
|  | y : Number The y coordinate of the object relative to the local coordinates of the parent. | DisplayObject

Protected Properties
Hide Inherited Protected Properties
Show Inherited Protected Properties

| Property | Defined By
--- | --- | ---
|  | actualHeight : Number = 0 The final height value that should be used for layout. | FeathersControl
|  | actualWidth : Number = 0 The final width value that should be used for layout. | FeathersControl
|  | explicitHeight : Number = NaN The height value explicitly set by calling the height setter or setSize(). | FeathersControl
|  | explicitWidth : Number = NaN The width value explicitly set by calling the width setter or setSize(). | FeathersControl
|  | horizontalScrollBar : IScrollBar The horizontal scrollbar instance. | Scroller
|  | horizontalScrollBarName : String = feathers-scroller-horizontal-scroll-bar The value added to the nameList of the horizontal scroll bar. | Scroller
|  | pendingHorizontalPageIndex : int = -1 The pending horizontal page index to scroll to after validating. | Scroller
|  | pendingHorizontalScrollPosition : Number = NaN The pending horizontal scroll position to scroll to after validating. | Scroller
|  | pendingScrollDuration : Number The duration of the pending scroll action. | Scroller
|  | pendingVerticalPageIndex : int = -1 The pending vertical page index to scroll to after validating. | Scroller
|  | pendingVerticalScrollPosition : Number = NaN The pending vertical scroll position to scroll to after validating. | Scroller
|  | verticalScrollBar : IScrollBar The vertical scrollbar instance. | Scroller
|  | verticalScrollBarName : String = feathers-scroller-vertical-scroll-bar The value added to the nameList of the vertical scroll bar. | Scroller

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | Scroller() Constructor. | Scroller
|  | addChild(child:DisplayObject):DisplayObject Adds a child to the container. | DisplayObjectContainer
|  | addChildAt(child:DisplayObject, index:int):DisplayObject Adds a child to the container at a certain index. | DisplayObjectContainer
|  | addEventListener(type:String, listener:Function):void [override] | DisplayObject
|  | alignPivot(hAlign:String = center, vAlign:String = center):void Moves the pivot point to a certain position within the local coordinate system of the object. | DisplayObject
|  | broadcastEvent(event:Event):void Dispatches an event on all children (recursively). | DisplayObjectContainer
|  | broadcastEventWith(type:String, data:Object = null):void Dispatches an event with the given parameters on all children (recursively). | DisplayObjectContainer
|  | contains(child:DisplayObject):Boolean Determines if a certain object is a child of the container (recursively). | DisplayObjectContainer
|  | dispatchEvent(event:Event):void Dispatches an event to all objects that have registered listeners for its type. | EventDispatcher
|  | dispatchEventWith(type:String, bubbles:Boolean = false, data:Object = null):void Dispatches an event with the given parameters to all objects that have registered listeners for the given type. | EventDispatcher
|  | dispose():void [override] Disposes the resources of all children. | Sprite
|  | flatten():void Optimizes the sprite for optimal rendering performance. | Sprite
|  | getBounds(targetSpace:DisplayObject, resultRect:Rectangle = null):Rectangle [override] Returns a rectangle that completely encloses the object as it appears in another coordinate system. | Sprite
|  | getChildAt(index:int):DisplayObject Returns a child object at a certain index. | DisplayObjectContainer
|  | getChildByName(name:String):DisplayObject Returns a child object with a certain name (non-recursively). | DisplayObjectContainer
|  | getChildIndex(child:DisplayObject):int Returns the index of a child within the container, or "-1" if it is not found. | DisplayObjectContainer
|  | getClipRect(targetSpace:DisplayObject, resultRect:Rectangle = null):Rectangle Returns the bounds of the container's clipRect in the given coordinate space, or null if the sprite doens't have a clipRect. | Sprite
|  | getTransformationMatrix(targetSpace:DisplayObject, resultMatrix:Matrix = null):Matrix Creates a matrix that represents the transformation from the local coordinate system to another. | DisplayObject
|  | globalToLocal(globalPoint:Point, resultPoint:Point = null):Point Transforms a point from global (stage) coordinates to the local coordinate system. | DisplayObject
|  | hasEventListener(type:String):Boolean Returns if there are listeners registered for a certain event type. | EventDispatcher
|  | hitTest(localPoint:Point, forTouch:Boolean = false):DisplayObject [override] Returns the object that is found topmost beneath a point in local coordinates, or nil if the test fails. | Sprite
|  | invalidate(flag:String):void Call this function to tell the UI control that a redraw is pending. | FeathersControl
|  | isInvalid(flag:String = null):Boolean Indicates whether the control is pending validation or not. | FeathersControl
|  | localToGlobal(localPoint:Point, resultPoint:Point = null):Point Transforms a point from the local coordinate system to global (stage) coordinates. | DisplayObject
|  | removeChild(child:DisplayObject, dispose:Boolean = false):DisplayObject Removes a child from the container. | DisplayObjectContainer
|  | removeChildAt(index:int, dispose:Boolean = false):DisplayObject Removes a child at a certain index. | DisplayObjectContainer
|  | removeChildren(beginIndex:int = 0, endIndex:int = -1, dispose:Boolean = false):void Removes a range of children from the container (endIndex included). | DisplayObjectContainer
|  | removeEventListener(type:String, listener:Function):void [override] | DisplayObject
|  | removeEventListeners(type:String = null):void [override] | DisplayObject
|  | removeFromParent(dispose:Boolean = false):void Removes the object from its parent, if it has one, and optionally disposes it. | DisplayObject
|  | render(support:RenderSupport, parentAlpha:Number):void [override] Renders the display object with the help of a support object. | Sprite
|  | scrollToPageIndex(horizontalPageIndex:int, verticalPageIndex:int, animationDuration:Number = 0):void After the next validation, scrolls to a specific page index. | Scroller
|  | scrollToPosition(horizontalScrollPosition:Number, verticalScrollPosition:Number, animationDuration:Number = 0):void After the next validation, scrolls to a specific position. | Scroller
|  | setChildIndex(child:DisplayObject, index:int):void Moves a child to a certain index. | DisplayObjectContainer
|  | setSize(width:Number, height:Number):void Sets both the width and the height of the control. | FeathersControl
|  | sortChildren(compareFunction:Function):void Sorts the children according to a given function (that works just like the sort function of the Vector class). | DisplayObjectContainer
|  | stopScrolling():void If the user is scrolling with touch or if the scrolling is animated, calling stopScrolling() will cause the scroller to ignore the drag and stop animations. | Scroller
|  | swapChildren(child1:DisplayObject, child2:DisplayObject):void Swaps the indexes of two children. | DisplayObjectContainer
|  | swapChildrenAt(index1:int, index2:int):void Swaps the indexes of two children. | DisplayObjectContainer
|  | unflatten():void Removes the rendering optimizations that were created when flattening the sprite. | Sprite
|  | validate():void Immediately validates the control, which triggers a redraw, if one is pending. | FeathersControl

Protected Methods
Show Inherited Protected Methods
Show Inherited Protected Methods

| Method | Defined By
--- | --- | ---
|  | autoSizeIfNeeded():Boolean Automatically determines the ideal width and height of the control, if required. | Scroller
|  | createScrollBars():void Creates the scroll bars from the provided factories. | Scroller
|  | draw():void Override to customize layout and to adjust properties of children. | FeathersControl
|  | handlePendingScroll():void Scrolls to a pending scroll position, if required. | Scroller
|  | 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
|  | layoutChildren():void Positions and sizes children based on the actual width and height values. | Scroller
|  | refreshBackgroundSkin():void Choose the appropriate background skin based on the control's current state. | Scroller
|  | setSizeInternal(width:Number, height:Number, canInvalidate:Boolean):Boolean Sets the width and height of the control, with the option of invalidating or not. | FeathersControl
|  | throwTo(targetHorizontalScrollPosition:Number, targetVerticalScrollPosition:Number, duration:Number = 0.5):void Immediately throws the scroller to the specified position, with optional animation. | Scroller
|  | throwToPage(targetHorizontalPageIndex:int = -1, targetVerticalPageIndex:int = -1, duration:Number = 0.5):void Immediately throws the scroller to the specified page index, with optional animation. | Scroller

Events
Hide Inherited Events
Show Inherited Events

| Event | Summary | Defined By
--- | --- | --- | ---
|  | added | Dispatched when an object is added to a parent. | DisplayObject
|  | addedToStage | Dispatched when an object is connected to the stage (directly or indirectly). | DisplayObject
|  | beginInteraction | Dispatched when the user starts dragging the scroller. | Scroller
|  | endInteraction | Dispatched when the user stops dragging the scroller. | Scroller
|  | enterFrame | Dispatched once every frame on every object that is connected to the stage. | DisplayObject
|  | flatten | Dispatched on all children when the object is flattened. | Sprite
|  | initialize | Dispatched after initialize() has been called, but before the first time that draw() has been called. | FeathersControl
|  | keyDown | Dispatched when a key on the keyboard is pressed. | DisplayObject
|  | keyUp | Dispatched when a key on the keyboard is released. | DisplayObject
|  | removed | Dispatched when an object is removed from its parent. | DisplayObject
|  | removedFromStage | Dispatched when an object is removed from the stage and won't be rendered any longer. | DisplayObject
|  | resize | Dispatched when the width or height of the control changes. | FeathersControl
|  | scroll | Dispatched when the scroller scrolls in either direction. | Scroller
|  | scrollComplete | Dispatched when the scroller finishes scrolling in either direction after being thrown. | Scroller
|  | touch | Dispatched when an object is touched. | DisplayObject

Public Constants
Hide Inherited Public Constants
Show Inherited Public Constants

| Constant | Defined By
--- | --- | ---
|  | DEFAULT_CHILD_NAME_HORIZONTAL_SCROLL_BAR : String = feathers-scroller-horizontal-scroll-bar [static] The default value added to the nameList of the horizontal scroll bar. | Scroller
|  | DEFAULT_CHILD_NAME_VERTICAL_SCROLL_BAR : String = feathers-scroller-vertical-scroll-bar [static] The default value added to the nameList of the vertical scroll bar. | Scroller
|  | INTERACTION_MODE_MOUSE : String = mouse [static] The user may interact with the scroll bars to scroll. | Scroller
|  | INTERACTION_MODE_TOUCH : String = touch [static] The user may touch anywhere on the scroller and drag to scroll. | Scroller
|  | INVALIDATION_FLAG_ALL : String = all [static] Flag to indicate that everything is invalid and should be redrawn. | FeathersControl
|  | INVALIDATION_FLAG_DATA : String = data [static] Invalidation flag to indicate that the primary data displayed by the UI control has changed. | FeathersControl
|  | INVALIDATION_FLAG_LAYOUT : String = layout [static] Invalidation flag to indicate that the layout of the UI control has changed. | FeathersControl
|  | INVALIDATION_FLAG_SCROLL : String = scroll [static] Invalidation flag to indicate that the scroll position of the UI control has changed. | FeathersControl
|  | INVALIDATION_FLAG_SELECTED : String = selected [static] Invalidation flag to indicate that the selection of the UI control has changed. | FeathersControl
|  | INVALIDATION_FLAG_SIZE : String = size [static] Invalidation flag to indicate that the dimensions of the UI control have changed. | FeathersControl
|  | INVALIDATION_FLAG_SKIN : String = skin [static] Invalidation flag to indicate that the skin of the UI control has changed. | FeathersControl
|  | INVALIDATION_FLAG_STATE : String = state [static] Invalidation flag to indicate that the state has changed. | FeathersControl
|  | INVALIDATION_FLAG_STYLES : String = styles [static] Invalidation flag to indicate that the styles or visual appearance of the UI control has changed. | FeathersControl
|  | SCROLL_BAR_DISPLAY_MODE_FIXED : String = fixed [static] The scroll bars are always visible and appear next to the scroller's view port, making the view port smaller than the scroller. | Scroller
|  | SCROLL_BAR_DISPLAY_MODE_FLOAT : String = float [static] The scroll bars appear above the scroller's view port, and fade out when not in use. | Scroller
|  | SCROLL_BAR_DISPLAY_MODE_NONE : String = none [static] The scroll bars are never visible. | Scroller
|  | SCROLL_POLICY_AUTO : String = auto [static] The scroller may scroll if the view port is larger than the scroller's bounds. | Scroller
|  | SCROLL_POLICY_OFF : String = off [static] The scroller does not scroll at all. | Scroller
|  | SCROLL_POLICY_ON : String = on [static] The scroller will always scroll. | Scroller

Protected Constants

| Constant | Defined By
--- | --- | ---
|  | INVALIDATION_FLAG_CLIPPING : String = clipping [static] Flag to indicate that the clipping has changed. | Scroller

Property Detail

backgroundDisabledSkin | property

`backgroundDisabledSkin:DisplayObject`

A background to display when the container is disabled.

Implementation
`public function get backgroundDisabledSkin():DisplayObject`
`public function set backgroundDisabledSkin(value:DisplayObject):void`

backgroundSkin | property |

`backgroundSkin:DisplayObject`

The default background to display.

Implementation
`public function get backgroundSkin():DisplayObject`
`public function set backgroundSkin(value:DisplayObject):void`

clipContent | property |

`clipContent:Boolean`

If true, the viewport will be clipped to the scroller's bounds. In other words, anything appearing outside the scroller's bounds will not be visible.

To improve performance, turn off clipping and place other display objects over the edges of the scroller to hide the content that bleeds outside of the scroller's bounds.

Implementation
`public function get clipContent():Boolean`
`public function set clipContent(value:Boolean):void`

elasticity | property |

`elasticity:Number`

If the scroll position goes outside the minimum or maximum bounds, the scrolling will be constrained using this multiplier.

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

elasticSnapDuration | property |

`elasticSnapDuration:Number`

The duration, in seconds, of the animation when a the scroller snaps back to the minimum or maximum position after going out of bounds.

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

hasElasticEdges | property |

`hasElasticEdges:Boolean`

Determines if the scrolling can go beyond the edges of the viewport.

Implementation
`public function get hasElasticEdges():Boolean`
`public function set hasElasticEdges(value:Boolean):void`

hideScrollBarAnimationDuration | property |

`hideScrollBarAnimationDuration:Number`

The duration, in seconds, of the animation when a scroll bar fades out.

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

hideScrollBarAnimationEase | property |

`hideScrollBarAnimationEase:Object`

The easing function used for hiding the scroll bars, if applicable.

Implementation
`public function get hideScrollBarAnimationEase():Object`
`public function set hideScrollBarAnimationEase(value:Object):void`

horizontalPageIndex | property |

`horizontalPageIndex:int` [read-only]

The index of the horizontal page, if snapping is enabled. If snapping is disabled, the index will always be `0`.

Implementation
`public function get horizontalPageIndex():int`

horizontalScrollBar | property |

`protected var horizontalScrollBar:IScrollBar`

The horizontal scrollbar instance. May be null.

horizontalScrollBarFactory | property |

`horizontalScrollBarFactory:Function`

Creates the horizontal scroll bar.

This function is expected to have the following signature:

    function():IScrollBar

Implementation
`public function get horizontalScrollBarFactory():Function`
`public function set horizontalScrollBarFactory(value:Function):void`

See also

feathers.controls.IScrollBar

horizontalScrollBarName | property |

`protected var horizontalScrollBarName:String = feathers-scroller-horizontal-scroll-bar`

The value added to the `nameList` of the horizontal scroll bar.

horizontalScrollBarProperties | property |

`horizontalScrollBarProperties:Object`

A set of key/value pairs to be passed down to the scroller's horizontal scroll bar instance (if it exists). The scroll bar is an `IScrollBar` implementation.

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 of a `SimpleScrollBar` which is in a `Scroller` which is in a `List`, you can use the following syntax:

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

Implementation
`public function get horizontalScrollBarProperties():Object`
`public function set horizontalScrollBarProperties(value:Object):void`

See also

feathers.controls.IScrollBar
horizontalScrollBarFactory

horizontalScrollPolicy | property |

`horizontalScrollPolicy:String`

Determines whether the scroller may scroll horizontally (on the x-axis) or not.

Implementation
`public function get horizontalScrollPolicy():String`
`public function set horizontalScrollPolicy(value:String):void`

See also

SCROLL_POLICY_AUTO
SCROLL_POLICY_ON
SCROLL_POLICY_OFF

horizontalScrollPosition | property |

`horizontalScrollPosition:Number`

The number of pixels the scroller has been scrolled horizontally (on the x-axis).

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

horizontalScrollStep | property |

`horizontalScrollStep:Number`

The number of pixels the scroller can be stepped horizontally. Passed to the horizontal scroll bar, if one exists. Touch scrolling is not affected by the step value.

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

interactionMode | property |

`interactionMode:String`

Determines how the user may interact with the scroller.

Implementation
`public function get interactionMode():String`
`public function set interactionMode(value:String):void`

See also

INTERACTION_MODE_TOUCH
INTERACTION_MODE_MOUSE

maxHorizontalScrollPosition | property |

`maxHorizontalScrollPosition:Number` [read-only]

The maximum number of pixels the scroller may be scrolled horizontally (on the x-axis). This value is automatically calculated based on the width of the viewport. The `horizontalScrollPosition` property may have a higher value than the maximum due to elastic edges. However, once the user stops interacting with the scroller, it will automatically animate back to the maximum (or minimum, if below 0).

Implementation
`public function get maxHorizontalScrollPosition():Number`

maxVerticalScrollPosition | property |

`maxVerticalScrollPosition:Number` [read-only]

The maximum number of pixels the scroller may be scrolled vertically (on the y-axis). This value is automatically calculated based on the height of the viewport. The `verticalScrollPosition` property may have a higher value than the maximum due to elastic edges. However, once the user stops interacting with the scroller, it will automatically animate back to the maximum (or minimum, if below 0).

Implementation
`public function get maxVerticalScrollPosition():Number`

mouseWheelScrollDuration | property |

`mouseWheelScrollDuration:Number`

The duration, in seconds, of the animation when the mouse wheel initiates a scroll action.

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

padding | property |

`padding:Number`

Quickly sets all padding properties to the same value. The `padding` getter always returns the value of `paddingTop`, but the other padding values may be different.

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

paddingBottom | property |

`paddingBottom:Number`

The minimum space, in pixels, between the container's bottom edge and the container's content.

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

paddingLeft | property |

`paddingLeft:Number`

The minimum space, in pixels, between the container's left edge and the container's content.

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

paddingRight | property |

`paddingRight:Number`

The minimum space, in pixels, between the container's right edge and the container's content.

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

paddingTop | property |

`paddingTop:Number`

The minimum space, in pixels, between the container's top edge and the container's content.

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

pageThrowDuration | property |

`pageThrowDuration:Number`

The duration, in seconds, of the animation when the scroller is thrown to a page.

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

pendingHorizontalPageIndex | property |

`protected var pendingHorizontalPageIndex:int = -1`

The pending horizontal page index to scroll to after validating. A value of `-1` means that the scroller won't scroll to a horizontal page after validating.

pendingHorizontalScrollPosition | property |

`protected var pendingHorizontalScrollPosition:Number = NaN`

The pending horizontal scroll position to scroll to after validating. A value of `NaN` means that the scroller won't scroll to a horizontal position after validating.

pendingScrollDuration | property |

`protected var pendingScrollDuration:Number`

The duration of the pending scroll action.

pendingVerticalPageIndex | property |

`protected var pendingVerticalPageIndex:int = -1`

The pending vertical page index to scroll to after validating. A value of `-1` means that the scroller won't scroll to a vertical page after validating.

pendingVerticalScrollPosition | property |

`protected var pendingVerticalScrollPosition:Number = NaN`

The pending vertical scroll position to scroll to after validating. A value of `NaN` means that the scroller won't scroll to a vertical position after validating.

scrollBarDisplayMode | property |

`scrollBarDisplayMode:String`

Determines how the scroll bars are displayed.

Implementation
`public function get scrollBarDisplayMode():String`
`public function set scrollBarDisplayMode(value:String):void`

See also

SCROLL_BAR_DISPLAY_MODE_FLOAT
SCROLL_BAR_DISPLAY_MODE_FIXED
SCROLL_BAR_DISPLAY_MODE_NONE

scrollerProperties | property |

`scrollerProperties:Object`

DEPRECATED: A set of key/value pairs to be passed down to the container's scroller sub-component.

DEPRECATION WARNING: This property is deprecated starting with Feathers 1.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy. The properties of `Scroller` are now exposed individually.

Implementation
`public function get scrollerProperties():Object`
`public function set scrollerProperties(value:Object):void`

snapScrollPositionsToPixels | property |

`snapScrollPositionsToPixels:Boolean`

If enabled, the scroll position will always be adjusted to whole pixels.

Implementation
`public function get snapScrollPositionsToPixels():Boolean`
`public function set snapScrollPositionsToPixels(value:Boolean):void`

snapToPages | property |

`snapToPages:Boolean`

Determines if scrolling will snap to the nearest page.

Implementation
`public function get snapToPages():Boolean`
`public function set snapToPages(value:Boolean):void`

throwEase | property |

`throwEase:Object`

The easing function used for "throw" animations.

Implementation
`public function get throwEase():Object`
`public function set throwEase(value:Object):void`

verticalPageIndex | property |

`verticalPageIndex:int` [read-only]

The index of the vertical page, if snapping is enabled. If snapping is disabled, the index will always be `0`.

Implementation
`public function get verticalPageIndex():int`

verticalScrollBar | property |

`protected var verticalScrollBar:IScrollBar`

The vertical scrollbar instance. May be null.

verticalScrollBarFactory | property |

`verticalScrollBarFactory:Function`

Creates the vertical scroll bar.

This function is expected to have the following signature:

    function():IScrollBar

Implementation
`public function get verticalScrollBarFactory():Function`
`public function set verticalScrollBarFactory(value:Function):void`

See also

feathers.controls.IScrollBar

verticalScrollBarName | property |

`protected var verticalScrollBarName:String = feathers-scroller-vertical-scroll-bar`

The value added to the `nameList` of the vertical scroll bar.

verticalScrollBarProperties | property |

`verticalScrollBarProperties:Object`

A set of key/value pairs to be passed down to the scroller's vertical scroll bar instance (if it exists). The scroll bar is an `IScrollBar` implementation.

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 of a `SimpleScrollBar` which is in a `Scroller` which is in a `List`, you can use the following syntax:

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

Implementation
`public function get verticalScrollBarProperties():Object`
`public function set verticalScrollBarProperties(value:Object):void`

See also

feathers.controls.IScrollBar
verticalScrollBarFactory

verticalScrollPolicy | property |

`verticalScrollPolicy:String`

Determines whether the scroller may scroll vertically (on the y-axis) or not.

Implementation
`public function get verticalScrollPolicy():String`
`public function set verticalScrollPolicy(value:String):void`

See also

SCROLL_POLICY_AUTO
SCROLL_POLICY_ON
SCROLL_POLICY_OFF

verticalScrollPosition | property |

`verticalScrollPosition:Number`

The number of pixels the scroller has been scrolled vertically (on the y-axis).

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

verticalScrollStep | property |

`verticalScrollStep:Number`

The number of pixels the scroller can be stepped vertically. Passed to the vertical scroll bar, if it exists, and used for scrolling with the mouse wheel. Touch scrolling is not affected by the step value.

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

viewPort | property |

`viewPort:IViewPort`

The display object displayed and scrolled within the Scroller.

Implementation
`public function get viewPort():IViewPort`
`public function set viewPort(value:IViewPort):void`
Constructor Detail

Scroller | () | Constructor

`public function Scroller()`

Constructor.

Method Detail

autoSizeIfNeeded | () | method

`protected function autoSizeIfNeeded():Boolean`

Automatically determines the ideal width and height of the control, if required. If an explicit width or height is provided, that value is used instead.

Returns

| `Boolean`

createScrollBars | () | method |

`protected function createScrollBars():void`

Creates the scroll bars from the provided factories.

handlePendingScroll | () | method |

`protected function handlePendingScroll():void`

Scrolls to a pending scroll position, if required.

layoutChildren | () | method |

`protected function layoutChildren():void`

Positions and sizes children based on the actual width and height values.

refreshBackgroundSkin | () | method |

`protected function refreshBackgroundSkin():void`

Choose the appropriate background skin based on the control's current state.

scrollToPageIndex | () | method |

`public function scrollToPageIndex(horizontalPageIndex:int, verticalPageIndex:int, animationDuration:Number = 0):void`

After the next validation, scrolls to a specific page index. May scroll in only one direction by passing in a value of `-1` for either page index. If the `animationDuration` argument is greater than zero, the scroll will animate. The duration is in seconds.

Parameters

| `horizontalPageIndex:int`
| `verticalPageIndex:int`
| `animationDuration:Number` (default = `0`)``

scrollToPosition | () | method |

`public function scrollToPosition(horizontalScrollPosition:Number, verticalScrollPosition:Number, animationDuration:Number = 0):void`

After the next validation, scrolls to a specific position. May scroll in only one direction by passing in a value of `NaN` for either scroll position. If the `animationDuration` argument is greater than zero, the scroll will animate. The duration is in seconds.

Parameters

| `horizontalScrollPosition:Number`
| `verticalScrollPosition:Number`
| `animationDuration:Number` (default = `0`)``

stopScrolling | () | method |

`public function stopScrolling():void`

If the user is scrolling with touch or if the scrolling is animated, calling stopScrolling() will cause the scroller to ignore the drag and stop animations.

throwTo | () | method |

`protected function throwTo(targetHorizontalScrollPosition:Number, targetVerticalScrollPosition:Number, duration:Number = 0.5):void`

Immediately throws the scroller to the specified position, with optional animation. If you want to throw in only one direction, pass in `NaN` for the value that you do not want to change. The scroller should be validated before throwing.

Parameters

| `targetHorizontalScrollPosition:Number` (default = `NaN`)``
| `targetVerticalScrollPosition:Number` (default = `NaN`)``
| `duration:Number` (default = `0.5`)``

See also

scrollToPosition()

throwToPage | () | method |

`protected function throwToPage(targetHorizontalPageIndex:int = -1, targetVerticalPageIndex:int = -1, duration:Number = 0.5):void`

Immediately throws the scroller to the specified page index, with optional animation. If you want to throw in only one direction, pass in a parameter value of `-1` for the direction that should not change. The scroller should be validated before throwing.

Parameters

| `targetHorizontalPageIndex:int` (default = `-1`)``
| `targetVerticalPageIndex:int` (default = `-1`)``
| `duration:Number` (default = `0.5`)``

See also

scrollToPageIndex()
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 scroller.

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.

endInteraction | Event |

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

Dispatched when the user stops dragging the scroller.

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.

scroll | Event |

Event Object Type: `starling.events.Event`
Event.type property = `starling.events.Event.SCROLL`

Dispatched when the scroller scrolls in either direction.

An event type to be utilized in custom events. Not used by Starling right now.

scrollComplete | Event |

Event Object Type: `starling.events.Event`
Event.type property = `feathers.events.FeathersEventType.SCROLL_COMPLETE`

Dispatched when the scroller finishes scrolling in either direction after being thrown.

The `FeathersEventType.SCROLL_COMPLETE` event type is used when a "throw" completes in a scrolling control.
Constant Detail

DEFAULT_CHILD_NAME_HORIZONTAL_SCROLL_BAR | Constant

`public static const DEFAULT_CHILD_NAME_HORIZONTAL_SCROLL_BAR:String = feathers-scroller-horizontal-scroll-bar`

The default value added to the `nameList` of the horizontal scroll bar.

DEFAULT_CHILD_NAME_VERTICAL_SCROLL_BAR | Constant |

`public static const DEFAULT_CHILD_NAME_VERTICAL_SCROLL_BAR:String = feathers-scroller-vertical-scroll-bar`

The default value added to the `nameList` of the vertical scroll bar.

INTERACTION_MODE_MOUSE | Constant |

`public static const INTERACTION_MODE_MOUSE:String = mouse`

The user may interact with the scroll bars to scroll.

INTERACTION_MODE_TOUCH | Constant |

`public static const INTERACTION_MODE_TOUCH:String = touch`

The user may touch anywhere on the scroller and drag to scroll.

INVALIDATION_FLAG_CLIPPING | Constant |

`protected static const INVALIDATION_FLAG_CLIPPING:String = clipping`

Flag to indicate that the clipping has changed.

SCROLL_BAR_DISPLAY_MODE_FIXED | Constant |

`public static const SCROLL_BAR_DISPLAY_MODE_FIXED:String = fixed`

The scroll bars are always visible and appear next to the scroller's view port, making the view port smaller than the scroller.

SCROLL_BAR_DISPLAY_MODE_FLOAT | Constant |

`public static const SCROLL_BAR_DISPLAY_MODE_FLOAT:String = float`

The scroll bars appear above the scroller's view port, and fade out when not in use.

SCROLL_BAR_DISPLAY_MODE_NONE | Constant |

`public static const SCROLL_BAR_DISPLAY_MODE_NONE:String = none`

The scroll bars are never visible.

SCROLL_POLICY_AUTO | Constant |

`public static const SCROLL_POLICY_AUTO:String = auto`

The scroller may scroll if the view port is larger than the scroller's bounds. If the interaction mode is touch, the elastic edges will only be active if the maximum scroll position is greater than zero. If the scroll bar display mode is fixed, the scroll bar will only be visible when the maximum scroll position is greater than zero.

SCROLL_POLICY_OFF | Constant |

`public static const SCROLL_POLICY_OFF:String = off`

The scroller does not scroll at all. If the scroll bar display mode is fixed or float, the scroll bar will never be visible.

SCROLL_POLICY_ON | Constant |

`public static const SCROLL_POLICY_ON:String = on`

The scroller will always scroll. If the interaction mode is touch, elastic edges will always be active, even when the maximum scroll position is zero. If the scroll bar display mode is fixed, the scroll bar will always be visible.

Thu Jan 16 2014, 01:11 PM +08:00