Packagefeathers.controls
Classpublic class GroupedList
InheritanceGroupedList Inheritance Scroller Inheritance FeathersControl Inheritance starling.display.Sprite
Implements IFocusContainer

Displays a list of items divided into groups or sections. Takes a hierarchical provider limited to two levels of hierarchy. This component supports scrolling, custom item (and header and footer) renderers, and custom layouts.

Layouts may be, and are highly encouraged to be, virtual, meaning that the List is capable of creating a limited number of item renderers to display a subset of the data provider instead of creating a renderer for every single item. This allows for optimal performance with very large data providers.

The following example creates a grouped list, gives it a data provider, tells the item renderer how to interpret the data, and listens for when the selection changes:

     var list:GroupedList = new GroupedList();
     
     list.dataProvider = new HierarchicalCollection(
     [
         {
                header: "Dairy",
                children:
                [
                    { text: "Milk", thumbnail: textureAtlas.getTexture( "milk" ) },
                    { text: "Cheese", thumbnail: textureAtlas.getTexture( "cheese" ) },
                ]
         },
         {
             header: "Bakery",
             children:
             [
                 { text: "Bread", thumbnail: textureAtlas.getTexture( "bread" ) },
             ]
         },
         {
             header: "Produce",
             children:
             [
                 { text: "Bananas", thumbnail: textureAtlas.getTexture( "bananas" ) },
                 { text: "Lettuce", thumbnail: textureAtlas.getTexture( "lettuce" ) },
                 { text: "Onion", thumbnail: textureAtlas.getTexture( "onion" ) },
             ]
         },
     ]);
     
     list.itemRendererFactory = function():IGroupedListItemRenderer
     {
         var renderer:DefaultGroupedListItemRenderer = new DefaultGroupedListItemRenderer();
         renderer.labelField = "text";
         renderer.iconSourceField = "thumbnail";
         return renderer;
     };
     
     list.addEventListener( Event.CHANGE, list_changeHandler );
     
     this.addChild( list );

See also

How to use the Feathers GroupedList component
How to use the Feathers default item renderer
Creating custom item renderers for the Feathers List and GroupedList components
feathers.controls.List


Public Properties
 PropertyDefined By
 InheritedautoHideBackground : Boolean
If true, the background's visible property will be set to false when the scroll position is greater than or equal to the minimum scroll position and less than or equal to the maximum scroll position.
Scroller
 InheritedbackgroundDisabledSkin : DisplayObject
A background to display when the container is disabled.
Scroller
 InheritedbackgroundSkin : DisplayObject
The default background to display.
Scroller
 InheritedclipContent : Boolean
If true, the viewport will be clipped to the scroller's bounds.
Scroller
  customFirstItemRendererStyleName : String
A style name to add to all item renderers in this grouped list that are the first item in a group.
GroupedList
  customFooterRendererStyleName : String
A style name to add to all footer renderers in this grouped list.
GroupedList
  customHeaderRendererStyleName : String
A style name to add to all header renderers in this grouped list.
GroupedList
 InheritedcustomHorizontalScrollBarName : String
DEPRECATED: Replaced by customHorizontalScrollBarName.
Scroller
 InheritedcustomHorizontalScrollBarStyleName : String
A style name to add to the container's horizontal scroll bar sub-component.
Scroller
  customItemRendererStyleName : String
A style name to add to all item renderers in this list.
GroupedList
  customLastItemRendererStyleName : String
A style name to add to all item renderers in this grouped list that are the last item in a group.
GroupedList
  customSingleItemRendererStyleName : String
A style name to add to all item renderers in this grouped list that are a single item in a group with no other items.
GroupedList
 InheritedcustomVerticalScrollBarName : String
DEPRECATED: Replaced by customVerticalScrollBarStyleName.
Scroller
 InheritedcustomVerticalScrollBarStyleName : String
A style name to add to the container's vertical scroll bar sub-component.
Scroller
  dataProvider : HierarchicalCollection
The collection of data displayed by the list.
GroupedList
 InheriteddecelerationRate : Number
This value is used to decelerate the scroller when "thrown".
Scroller
 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
 Inheritedelasticity : Number
If the scroll position goes outside the minimum or maximum bounds when the scroller's content is being actively dragged, the scrolling will be constrained using this multiplier.
Scroller
 InheritedelasticSnapDuration : 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
  firstItemRendererFactory : Function
A function called that is expected to return a new item renderer for the first item in a group.
GroupedList
  firstItemRendererName : String
DEPRECATED: Replaced by customFirstItemRendererStyleName.
GroupedList
  firstItemRendererType : Class
The class used to instantiate the item renderer for the first item in a group.
GroupedList
 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
  footerField : String
The field in a group that contains the data for a footer.
GroupedList
  footerFunction : Function
A function used to generate footer data for a specific group.
GroupedList
  footerRendererFactory : Function
A function called that is expected to return a new footer renderer.
GroupedList
  footerRendererName : String
DEPRECATED: Replaced by customFooterRendererStyleName.
GroupedList
  footerRendererProperties : Object
An object that stores properties for all of the list's footer renderers, and the properties will be passed down to every footer renderer when the list validates.
GroupedList
  footerRendererType : Class
The class used to instantiate footer renderers.
GroupedList
  globalStyleProvider : IStyleProvider
[static] The default IStyleProvider for all GroupedList components.
GroupedList
 InheritedhasElasticEdges : Boolean
Determines if the scrolling can go beyond the edges of the viewport.
Scroller
  headerField : String
The field in a group that contains the data for a header.
GroupedList
  headerFunction : Function
A function used to generate header data for a specific group.
GroupedList
  headerRendererFactory : Function
A function called that is expected to return a new header renderer.
GroupedList
  headerRendererName : String
DEPRECATED: Replaced by customHeaderRendererStyleName.
GroupedList
  headerRendererProperties : Object
An object that stores properties for all of the list's header renderers, and the properties will be passed down to every header renderer when the list validates.
GroupedList
  headerRendererType : Class
The class used to instantiate header renderers.
GroupedList
 Inheritedheight : Number
[override] The height of the component, in pixels.
FeathersControl
 InheritedhideScrollBarAnimationDuration : Number
The duration, in seconds, of the animation when a scroll bar fades out.
Scroller
 InheritedhideScrollBarAnimationEase : Object
The easing function used for hiding the scroll bars, if applicable.
Scroller
 InheritedhorizontalPageCount : int
[read-only] The number of horizontal pages, if snapping is enabled.
Scroller
 InheritedhorizontalPageIndex : int
[read-only] The index of the horizontal page, if snapping is enabled.
Scroller
 InheritedhorizontalScrollBarFactory : Function
Creates the horizontal scroll bar.
Scroller
 InheritedhorizontalScrollBarProperties : Object
An object that stores properties for the container's horizontal scroll bar, and the properties will be passed down to the horizontal scroll bar when the container validates.
Scroller
 InheritedhorizontalScrollPolicy : String
Determines whether the scroller may scroll horizontally (on the x-axis) or not.
Scroller
 InheritedhorizontalScrollPosition : Number
The number of pixels the container has been scrolled horizontally (on the x-axis).
Scroller
 InheritedhorizontalScrollStep : Number
The number of pixels the horizontal scroll position can be adjusted by a "step".
Scroller
 InheritedincludeInLayout : Boolean
Determines if the ILayout should use this object or ignore it.
FeathersControl
 InheritedinteractionMode : String
Determines how the user may interact with the scroller.
Scroller
  isChildFocusEnabled : Boolean
Determines if this component's children can receive focus.
GroupedList
 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
 InheritedisScrolling : Boolean
[read-only] Determines if the scroller is currently scrolling with user interaction or with animation.
Scroller
  isSelectable : Boolean
Determines if an item in the list may be selected.
GroupedList
  itemRendererFactory : Function
A function called that is expected to return a new item renderer.
GroupedList
  itemRendererName : String
DEPRECATED: Replaced by customItemRendererStyleName.
GroupedList
  itemRendererProperties : Object
An object that stores properties for all of the list's item renderers, and the properties will be passed down to every item renderer when the list validates.
GroupedList
  itemRendererType : Class
The class used to instantiate item renderers.
GroupedList
  keyScrollDuration : Number
The duration, in seconds, of the animation when the selected item is changed by keyboard navigation and the item scrolls into view.
GroupedList
  lastItemRendererFactory : Function
A function called that is expected to return a new item renderer for the last item in a group.
GroupedList
  lastItemRendererName : String
DEPRECATED: Replaced by customLastItemRendererStyleName.
GroupedList
  lastItemRendererType : Class
The class used to instantiate the item renderer for the last item in a group.
GroupedList
  layout : ILayout
The layout algorithm used to position and, optionally, size the list's items.
GroupedList
 InheritedlayoutData : ILayoutData
Extra parameters associated with this display object that will be used by the layout algorithm.
FeathersControl
 InheritedmaxHeight : Number
The maximum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedmaxHorizontalPageIndex : int
[read-only] The maximum horizontal page index that may be displayed by this container, if page snapping is enabled.
Scroller
 InheritedmaxHorizontalScrollPosition : Number
[read-only] The number of pixels the scroller may be scrolled horizontally to the right.
Scroller
 InheritedmaxVerticalPageIndex : int
[read-only] The maximum vertical page index that may be displayed by this container, if page snapping is enabled.
Scroller
 InheritedmaxVerticalScrollPosition : Number
[read-only] The number of pixels the scroller may be scrolled vertically beyond the bottom edge.
Scroller
 InheritedmaxWidth : Number
The maximum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedmeasureViewPort : Boolean
Determines if the dimensions of the view port are used when measuring the scroller.
Scroller
 InheritedminHeight : Number
The minimum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminHorizontalPageIndex : int
[read-only] The minimum horizontal page index that may be displayed by this container, if page snapping is enabled.
Scroller
 InheritedminHorizontalScrollPosition : Number
[read-only] The number of pixels the scroller may be scrolled horizontally to the left.
Scroller
 InheritedminimumDragDistance : Number
The minimum physical distance (in inches) that a touch must move before the scroller starts scrolling.
Scroller
 InheritedminimumPageThrowVelocity : Number
The minimum physical velocity (in inches per second) that a touch must move before the scroller will "throw" to the next page.
Scroller
 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
 InheritedminVerticalPageIndex : int
[read-only] The minimum vertical page index that may be displayed by this container, if page snapping is enabled.
Scroller
 InheritedminVerticalScrollPosition : Number
[read-only] The number of pixels the scroller may be scrolled vertically beyond the top edge.
Scroller
 InheritedminWidth : Number
The minimum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedmouseWheelScrollDuration : Number
The duration, in seconds, of the animation when the mouse wheel initiates a scroll action.
Scroller
 InheritednextTabFocus : IFocusDisplayObject
FeathersControl
 Inheritedpadding : Number
Quickly sets all padding properties to the same value.
Scroller
 InheritedpaddingBottom : Number
The minimum space, in pixels, between the container's bottom edge and the container's content.
Scroller
 InheritedpaddingLeft : Number
The minimum space, in pixels, between the container's left edge and the container's content.
Scroller
 InheritedpaddingRight : Number
The minimum space, in pixels, between the container's right edge and the container's content.
Scroller
 InheritedpaddingTop : Number
The minimum space, in pixels, between the container's top edge and the container's content.
Scroller
 InheritedpageHeight : Number
When set, the vertical pages snap to this height value instead of the height of the scroller.
Scroller
 InheritedpageThrowDuration : Number
The duration, in seconds, of the animation when the scroller is thrown to a page.
Scroller
 InheritedpageWidth : Number
When set, the horizontal pages snap to this width value instead of the width of the scroller.
Scroller
 InheritedpreviousTabFocus : IFocusDisplayObject
FeathersControl
 InheritedrevealScrollBarsDuration : Number
The duration, in seconds, that the scroll bars will be shown when calling revealScrollBars()
Scroller
 InheritedscrollBarDisplayMode : String
Determines how the scroll bars are displayed.
Scroller
  selectedGroupIndex : int
[read-only] The group index of the currently selected item.
GroupedList
  selectedItem : Object
The currently selected item.
GroupedList
  selectedItemIndex : int
[read-only] The item index of the currently selected item.
GroupedList
  singleItemRendererFactory : Function
A function called that is expected to return a new item renderer for an item in a group with no other items.
GroupedList
  singleItemRendererName : String
DEPRECATED: Replaced by customLastItemRendererStyleName.
GroupedList
  singleItemRendererType : Class
The class used to instantiate the item renderer for an item in a group with no other items.
GroupedList
 InheritedsnapScrollPositionsToPixels : Boolean
If enabled, the scroll position will always be adjusted to whole pixels.
Scroller
 InheritedsnapToPages : Boolean
Determines if scrolling will snap to the nearest page.
Scroller
 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
 InheritedthrowEase : Object
The easing function used for "throw" animations.
Scroller
 InheritedthrowElasticity : Number
If the scroll position goes outside the minimum or maximum bounds when the scroller's content is "thrown", the scrolling will be constrained using this multiplier.
Scroller
  typicalItem : Object
Used to auto-size the list when a virtualized layout is used.
GroupedList
 InheriteduseFixedThrowDuration : Boolean
If true, the duration of a "throw" animation will be the same no matter the value of the throw's initial velocity.
Scroller
 InheritedverticalMouseWheelScrollDirection : String
The direction of scrolling when the user scrolls the mouse wheel vertically.
Scroller
 InheritedverticalMouseWheelScrollStep : Number
The number of pixels the vertical scroll position can be adjusted by a "step" when using the mouse wheel.
Scroller
 InheritedverticalPageCount : int
[read-only] The number of vertical pages, if snapping is enabled.
Scroller
 InheritedverticalPageIndex : int
[read-only] The index of the vertical page, if snapping is enabled.
Scroller
 InheritedverticalScrollBarFactory : Function
Creates the vertical scroll bar.
Scroller
 InheritedverticalScrollBarPosition : String
Determines where the vertical scroll bar will be positioned.
Scroller
 InheritedverticalScrollBarProperties : Object
An object that stores properties for the container's vertical scroll bar, and the properties will be passed down to the vertical scroll bar when the container validates.
Scroller
 InheritedverticalScrollPolicy : String
Determines whether the scroller may scroll vertically (on the y-axis) or not.
Scroller
 InheritedverticalScrollPosition : Number
The number of pixels the container has been scrolled vertically (on the y-axis).
Scroller
 InheritedverticalScrollStep : Number
The number of pixels the vertical scroll position can be adjusted by a "step".
Scroller
 InheritedviewPort : IViewPort
The display object displayed and scrolled within the Scroller.
Scroller
 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
 InheritedhasPendingHorizontalPageIndex : Boolean = false
A flag that indicates if the scroller should scroll to a new page when it validates.
Scroller
 InheritedhasPendingVerticalPageIndex : Boolean = false
A flag that indicates if the scroller should scroll to a new page when it validates.
Scroller
 InheritedhorizontalScrollBar : IScrollBar
The horizontal scrollbar instance.
Scroller
 InheritedhorizontalScrollBarName : String
DEPRECATED: Replaced by horizontalScrollBarStyleName.
Scroller
 InheritedhorizontalScrollBarStyleName : String = feathers-scroller-horizontal-scroll-bar
The value added to the styleNameList of the horizontal scroll bar.
Scroller
  pendingGroupIndex : int = -1
The pending group index to scroll to after validating.
GroupedList
 InheritedpendingHorizontalPageIndex : int
The pending horizontal page index to scroll to after validating.
Scroller
 InheritedpendingHorizontalScrollPosition : Number = NaN
The pending horizontal scroll position to scroll to after validating.
Scroller
  pendingItemIndex : int = -1
The pending item index to scroll to after validating.
GroupedList
 InheritedpendingScrollDuration : Number
The duration of the pending scroll action.
Scroller
 InheritedpendingVerticalPageIndex : int
The pending vertical page index to scroll to after validating.
Scroller
 InheritedpendingVerticalScrollPosition : Number = NaN
The pending vertical scroll position to scroll to after validating.
Scroller
 InheritedverticalScrollBar : IScrollBar
The vertical scrollbar instance.
Scroller
 InheritedverticalScrollBarName : String
DEPRECATED: Replaced by verticalScrollBarStyleName.
Scroller
 InheritedverticalScrollBarStyleName : String = feathers-scroller-vertical-scroll-bar
The value added to the styleNameList of the vertical scroll bar.
Scroller
Public Methods
 MethodDefined By
  
Constructor.
GroupedList
  
groupToFooterData(group:Object):Object
Extracts footer data from a group object.
GroupedList
  
groupToHeaderData(group:Object):Object
Extracts header data from a group object.
GroupedList
 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
If the scroll bars are floating, briefly show them as a hint to the user.
Scroller
  
scrollToDisplayIndex(groupIndex:int, itemIndex:int = -1, animationDuration:Number = 0):void
After the next validation, scrolls the list so that the specified item is visible.
GroupedList
 Inherited
scrollToPageIndex(horizontalPageIndex:int, verticalPageIndex:int, animationDuration:Number):void
After the next validation, animates the scroll position to a specific page index.
Scroller
 Inherited
scrollToPosition(horizontalScrollPosition:Number, verticalScrollPosition:Number, animationDuration:Number):void
After the next validation, animates the scroll positions to a specific location.
Scroller
  
setSelectedLocation(groupIndex:int, itemIndex:int):void
Sets the selected group and item index.
GroupedList
 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
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
 Inherited
validate():void
Immediately validates the display object, if it is invalid.
FeathersControl
Protected Methods
 MethodDefined By
 Inherited
If the component's dimensions have not been set explicitly, it will measure its content and determine an ideal size for itself.
Scroller
 Inherited
clearInvalidationFlag(flag:String):void
Clears an invalidation flag.
FeathersControl
 Inherited
Prepares the scroller for normal interaction and dispatches FeathersEventType.SCROLL_COMPLETE.
Scroller
 Inherited
Creates and adds the horizontalScrollBar and verticalScrollBar sub-components and removes the old instances, if they exist.
Scroller
 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
Scrolls to a pending scroll position, if required.
Scroller
 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
Positions and sizes children based on the actual width and height values.
Scroller
 Inherited
Choose the appropriate background skin based on the control's current state.
Scroller
 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
 Inherited
If scrolling hasn't already started, prepares the scroller to scroll and dispatches FeathersEventType.SCROLL_START.
Scroller
 Inherited
throwTo(targetHorizontalScrollPosition:Number, targetVerticalScrollPosition:Number, duration:Number = 0.5):void
Immediately throws the scroller to the specified position, with optional animation.
Scroller
 Inherited
throwToPage(targetHorizontalPageIndex:int, targetVerticalPageIndex:int, duration:Number = 0.5):void
Immediately throws the scroller to the specified page index, with optional animation.
Scroller
Events
 Event Summary Defined By
 InheritedDispatched when the user starts dragging the scroller when INTERACTION_MODE_TOUCH is enabled or when the user starts interacting with the scroll bar.Scroller
  Dispatched when the selected item changes.GroupedList
 InheritedDispatched after the component has validated for the first time.FeathersControl
 InheritedDispatched when the user stops dragging the scroller when INTERACTION_MODE_TOUCH is enabled or when the user stops interacting with the scroll bar.Scroller
 InheritedDispatched when the component receives focus.Scroller
 InheritedDispatched when the component loses focus.Scroller
 InheritedDispatched after initialize() has been called, but before the first time that draw() has been called.FeathersControl
  Dispatched when an item renderer is added to the list.GroupedList
  Dispatched when an item renderer is removed from the list.GroupedList
 InheritedDispatched when the width or height of the control changes.FeathersControl
 InheritedDispatched when the scroller scrolls in either direction or when the view port's scrolling bounds have changed.Scroller
 InheritedDispatched when the scroller finishes scrolling in either direction as a result of either user interaction or animation.Scroller
 InheritedDispatched when the scroller starts scrolling in either direction as a result of either user interaction or animation.Scroller
  Dispatched when the the user taps or clicks an item renderer in the list.GroupedList
Public Constants
 ConstantDefined By
  ALTERNATE_CHILD_NAME_INSET_FIRST_ITEM_RENDERER : String = feathers-grouped-list-inset-first-item-renderer
[static] DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_FIRST_ITEM_RENDERER.
GroupedList
  ALTERNATE_CHILD_NAME_INSET_FOOTER_RENDERER : String = feathers-grouped-list-inset-footer-renderer
[static] DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_FOOTER_RENDERER.
GroupedList
  ALTERNATE_CHILD_NAME_INSET_HEADER_RENDERER : String = feathers-grouped-list-inset-header-renderer
[static] DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_HEADER_RENDERER.
GroupedList
  ALTERNATE_CHILD_NAME_INSET_ITEM_RENDERER : String = feathers-grouped-list-inset-item-renderer
[static] DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_ITEM_RENDERER.
GroupedList
  ALTERNATE_CHILD_NAME_INSET_LAST_ITEM_RENDERER : String = feathers-grouped-list-inset-last-item-renderer
[static] DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_LAST_ITEM_RENDERER.
GroupedList
  ALTERNATE_CHILD_NAME_INSET_SINGLE_ITEM_RENDERER : String = feathers-grouped-list-inset-single-item-renderer
[static] DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_SINGLE_ITEM_RENDERER.
GroupedList
  ALTERNATE_CHILD_STYLE_NAME_INSET_FIRST_ITEM_RENDERER : String = feathers-grouped-list-inset-first-item-renderer
[static] An alternate name to use for item renderers to give them an inset style.
GroupedList
  ALTERNATE_CHILD_STYLE_NAME_INSET_FOOTER_RENDERER : String = feathers-grouped-list-inset-footer-renderer
[static] An alternate name to use with footer renderers to give them an inset style.
GroupedList
  ALTERNATE_CHILD_STYLE_NAME_INSET_HEADER_RENDERER : String = feathers-grouped-list-inset-header-renderer
[static] An alternate name to use with header renderers to give them an inset style.
GroupedList
  ALTERNATE_CHILD_STYLE_NAME_INSET_ITEM_RENDERER : String = feathers-grouped-list-inset-item-renderer
[static] An alternate name to use with item renderers to give them an inset style.
GroupedList
  ALTERNATE_CHILD_STYLE_NAME_INSET_LAST_ITEM_RENDERER : String = feathers-grouped-list-inset-last-item-renderer
[static] An alternate name to use for item renderers to give them an inset style.
GroupedList
  ALTERNATE_CHILD_STYLE_NAME_INSET_SINGLE_ITEM_RENDERER : String = feathers-grouped-list-inset-single-item-renderer
[static] An alternate name to use for item renderers to give them an inset style.
GroupedList
  ALTERNATE_NAME_INSET_GROUPED_LIST : String = feathers-inset-grouped-list
[static] DEPRECATED: Replaced by GroupedList.ALTERNATE_STYLE_NAME_INSET_GROUPED_LIST.
GroupedList
  ALTERNATE_STYLE_NAME_INSET_GROUPED_LIST : String = feathers-inset-grouped-list
[static] An alternate style name to use with GroupedList to allow a theme to give it an inset style.
GroupedList
  DECELERATION_RATE_FAST : Number = 0.99
[static] Decelerates a bit faster per millisecond than the default.
GroupedList
  DECELERATION_RATE_NORMAL : Number = 0.998
[static] The default deceleration rate per millisecond.
GroupedList
  DEFAULT_CHILD_NAME_FOOTER_RENDERER : String = feathers-grouped-list-footer-renderer
[static] DEPRECATED: Replaced by GroupedList.DEFAULT_CHILD_STYLE_NAME_FOOTER_RENDERER.
GroupedList
  DEFAULT_CHILD_NAME_HEADER_RENDERER : String = feathers-grouped-list-header-renderer
[static] DEPRECATED: Replaced by GroupedList.DEFAULT_CHILD_STYLE_NAME_HEADER_RENDERER.
GroupedList
 InheritedDEFAULT_CHILD_NAME_HORIZONTAL_SCROLL_BAR : String = feathers-scroller-horizontal-scroll-bar
[static] DEPRECATED: Replaced by Scroller.DEFAULT_CHILD_STYLE_NAME_HORIZONTAL_SCROLL_BAR.
Scroller
 InheritedDEFAULT_CHILD_NAME_VERTICAL_SCROLL_BAR : String = feathers-scroller-vertical-scroll-bar
[static] DEPRECATED: Replaced by Scroller.DEFAULT_CHILD_STYLE_NAME_VERTICAL_SCROLL_BAR.
Scroller
  DEFAULT_CHILD_STYLE_NAME_FOOTER_RENDERER : String = feathers-grouped-list-footer-renderer
[static] The default name to use with footer renderers.
GroupedList
  DEFAULT_CHILD_STYLE_NAME_HEADER_RENDERER : String = feathers-grouped-list-header-renderer
[static] The default name to use with header renderers.
GroupedList
 InheritedDEFAULT_CHILD_STYLE_NAME_HORIZONTAL_SCROLL_BAR : String = feathers-scroller-horizontal-scroll-bar
[static] The default value added to the styleNameList of the horizontal scroll bar.
Scroller
 InheritedDEFAULT_CHILD_STYLE_NAME_VERTICAL_SCROLL_BAR : String = feathers-scroller-vertical-scroll-bar
[static] The default value added to the styleNameList of the vertical scroll bar.
Scroller
  INTERACTION_MODE_MOUSE : String = mouse
[static] The user may only interact with the scroll bars to scroll.
GroupedList
  INTERACTION_MODE_TOUCH : String = touch
[static] The user may touch anywhere on the scroller and drag to scroll.
GroupedList
  INTERACTION_MODE_TOUCH_AND_SCROLL_BARS : String = touchAndScrollBars
[static] The user may touch anywhere on the scroller and drag to scroll, and the scroll bars may be dragged separately.
GroupedList
 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
  MOUSE_WHEEL_SCROLL_DIRECTION_HORIZONTAL : String = horizontal
[static] The scroller will scroll horizontally when the mouse wheel is scrolled.
GroupedList
  MOUSE_WHEEL_SCROLL_DIRECTION_VERTICAL : String = vertical
[static] The scroller will scroll vertically when the mouse wheel is scrolled.
GroupedList
  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.
GroupedList
  SCROLL_BAR_DISPLAY_MODE_FIXED_FLOAT : String = fixedFloat
[static] The scroll bars appear above the scroller's view port, overlapping the content, but they do not fade out when not in use.
GroupedList
  SCROLL_BAR_DISPLAY_MODE_FLOAT : String = float
[static] The scroll bars appear above the scroller's view port, overlapping the content, and they fade out when not in use.
GroupedList
  SCROLL_BAR_DISPLAY_MODE_NONE : String = none
[static] The scroll bars are never visible.
GroupedList
  SCROLL_POLICY_AUTO : String = auto
[static] The scroller may scroll if the view port is larger than the scroller's bounds.
GroupedList
  SCROLL_POLICY_OFF : String = off
[static] The scroller does not scroll at all.
GroupedList
  SCROLL_POLICY_ON : String = on
[static] The scroller will always scroll.
GroupedList
  VERTICAL_SCROLL_BAR_POSITION_LEFT : String = left
[static] The vertical scroll bar will be positioned on the left.
GroupedList
  VERTICAL_SCROLL_BAR_POSITION_RIGHT : String = right
[static] The vertical scroll bar will be positioned on the right.
GroupedList
Protected Constants
 ConstantDefined By
 InheritedINVALIDATION_FLAG_CLIPPING : String = clipping
[static] Flag to indicate that the clipping has changed.
Scroller
Property Detail
customFirstItemRendererStyleNameproperty
customFirstItemRendererStyleName:String

A style name to add to all item renderers in this grouped list that are the first item in a group. Typically used by a theme to provide different styles to different grouped lists, and to differentiate first items from regular items if they are created with the same class. If this value is null, the regular customItemRendererStyleName will be used instead.

The following example provides a style name for the first item renderer in each group:

         list.customFirstItemRendererStyleName = "my-custom-first-item-renderer";

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

         getStyleProviderForClass( DefaultGroupedListItemRenderer ).setFunctionForStyleName( "my-custom-first-item-renderer", setCustomFirstItemRendererStyles );

The default value is null.


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

See also

customFooterRendererStyleNameproperty 
customFooterRendererStyleName:String

A style name to add to all footer renderers in this grouped list. Typically used by a theme to provide different styles to different grouped lists.

The following example sets the footer renderer style name:

         list.customFooterRendererStyleName = "my-custom-footer-renderer";

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

         getStyleProviderForClass( DefaultGroupedListHeaderOrFooterRenderer ).setFunctionForStyleName( "my-custom-footer-renderer", setCustomFooterRendererStyles );

The default value is null.


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

See also

customHeaderRendererStyleNameproperty 
customHeaderRendererStyleName:String

A style name to add to all header renderers in this grouped list. Typically used by a theme to provide different styles to different grouped lists.

The following example sets the header renderer style name:

         list.customHeaderRendererStyleName = "my-custom-header-renderer";

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

         getStyleProviderForClass( DefaultGroupedListHeaderOrFooterRenderer ).setFunctionForStyleName( "my-custom-header-renderer", setCustomHeaderRendererStyles );

The default value is null.


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

See also

customItemRendererStyleNameproperty 
customItemRendererStyleName:String

A style name to add to all item renderers in this list. Typically used by a theme to provide different styles to different grouped lists.

The following example sets the item renderer style name:

         list.customItemRendererStyleName = "my-custom-item-renderer";

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

         getStyleProviderForClass( DefaultGroupedListItemRenderer ).setFunctionForStyleName( "my-custom-item-renderer", setCustomItemRendererStyles );

The default value is null.


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

See also

customLastItemRendererStyleNameproperty 
customLastItemRendererStyleName:String

A style name to add to all item renderers in this grouped list that are the last item in a group. Typically used by a theme to provide different styles to different grouped lists, and to differentiate last items from regular items if they are created with the same class. If this value is null the regular customItemRendererStyleName will be used instead.

The following example provides a style name for the last item renderer in each group:

         list.customLastItemRendererStyleName = "my-custom-last-item-renderer";

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

         getStyleProviderForClass( DefaultGroupedListItemRenderer ).setFunctionForStyleName( "my-custom-last-item-renderer", setCustomLastItemRendererStyles );

The default value is null.


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

See also

customSingleItemRendererStyleNameproperty 
customSingleItemRendererStyleName:String

A style name to add to all item renderers in this grouped list that are a single item in a group with no other items. Typically used by a theme to provide different styles to different grouped lists, and to differentiate single items from regular items if they are created with the same class. If this value is null the regular customItemRendererStyleName will be used instead.

The following example provides a style name for a single item renderer in each group:

         list.customSingleItemRendererStyleName = "my-custom-single-item-renderer";

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

         getStyleProviderForClass( DefaultGroupedListItemRenderer ).setFunctionForStyleName( "my-custom-single-item-renderer", setCustomSingleItemRendererStyles );

The default value is null.


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

See also

dataProviderproperty 
dataProvider:HierarchicalCollection

The collection of data displayed by the list. Changing this property to a new value is considered a drastic change to the list's data, so the horizontal and vertical scroll positions will be reset, and the list's selection will be cleared.

The following example passes in a data provider and tells the item renderer how to interpret the data:

         list.dataProvider = new HierarchicalCollection(
         [
             {
                    header: "Dairy",
                    children:
                    [
                        { text: "Milk", thumbnail: textureAtlas.getTexture( "milk" ) },
                        { text: "Cheese", thumbnail: textureAtlas.getTexture( "cheese" ) },
                    ]
             },
             {
                 header: "Bakery",
                 children:
                 [
                     { text: "Bread", thumbnail: textureAtlas.getTexture( "bread" ) },
                 ]
             },
             {
                 header: "Produce",
                 children:
                 [
                     { text: "Bananas", thumbnail: textureAtlas.getTexture( "bananas" ) },
                     { text: "Lettuce", thumbnail: textureAtlas.getTexture( "lettuce" ) },
                     { text: "Onion", thumbnail: textureAtlas.getTexture( "onion" ) },
                 ]
             },
         ]);
                  list.itemRendererFactory = function():IGroupedListItemRenderer
         {
             var renderer:DefaultGroupedListItemRenderer = new DefaultGroupedListItemRenderer();
             renderer.labelField = "text";
             renderer.iconSourceField = "thumbnail";
             return renderer;
         };

By default, a HierarchicalCollection accepts an Array containing objects for each group. By default, the header and footer fields in each group will contain data to pass to the header and footer renderers of the grouped list. The children field of each group should be be an Array of data where each item is passed to an item renderer.

A custom data descriptor may be passed to the HierarchicalCollection to tell it to parse the data source differently than the default behavior described above. For instance, you might want to use Vector instead of Array or structure the data differently. Custom data descriptors may be implemented with the IHierarchicalCollectionDataDescriptor interface.

Warning: A grouped list's data provider cannot contain duplicate items. To display the same item in multiple item renderers, you must create separate objects with the same properties. This limitation exists because it significantly improves performance.

Warning: If the data provider contains display objects, concrete textures, or anything that needs to be disposed, those objects will not be automatically disposed when the grouped list is disposed. Similar to how starling.display.Image cannot automatically dispose its texture because the texture may be used by other display objects, a list cannot dispose its data provider because the data provider may be used by other lists. See the dispose() function on HierarchicalCollection to see how the data provider can be disposed properly.

The default value is null.


Implementation
    public function get dataProvider():HierarchicalCollection
    public function set dataProvider(value:HierarchicalCollection):void

See also

firstItemRendererFactoryproperty 
firstItemRendererFactory:Function

A function called that is expected to return a new item renderer for the first item in a group. Has a higher priority than firstItemRendererType. Typically, you would use an firstItemRendererFactory instead of an firstItemRendererType if you wanted to initialize some properties on each separate item renderer, such as skins.

The function is expected to have the following signature:

function():IGroupedListItemRenderer

The following example provides a factory for the item renderer used for the first item in a group:

         list.firstItemRendererFactory = function():IGroupedListItemRenderer
         {
             var renderer:CustomItemRendererClass = new CustomItemRendererClass();
             renderer.backgroundSkin = new Quad( 10, 10, 0xff0000 );
             return renderer;
         };

The default value is null.


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

See also

firstItemRendererNameproperty 
firstItemRendererName:String

DEPRECATED: Replaced by customFirstItemRendererStyleName.

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 firstItemRendererName():String
    public function set firstItemRendererName(value:String):void

See also

firstItemRendererTypeproperty 
firstItemRendererType:Class

The class used to instantiate the item renderer for the first item in a group. Must implement the IGroupedListItemRenderer interface.

The following example changes the first item renderer type:

         list.firstItemRendererType = CustomItemRendererClass;

The default value is null.


Implementation
    public function get firstItemRendererType():Class
    public function set firstItemRendererType(value:Class):void

See also

feathers.controls.renderer.IGroupedListItemRenderer
itemRendererType
lastItemRendererType
singleItemRendererType
footerFieldproperty 
footerField:String

The field in a group that contains the data for a footer. If the group does not have this field, and a footerFunction is not defined, then no footer will be displayed for the group. In other words, a footer is optional, and a group may not have one.

All of the footer fields and functions, ordered by priority:

  1. footerFunction
  2. footerField

The following example sets the footer field:

         list.footerField = "controls";

The default value is "footer".


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

See also

footerFunctionproperty 
footerFunction:Function

A function used to generate footer data for a specific group. If this function is not null, then the footerField will be ignored.

The function is expected to have the following signature:

function( item:Object ):Object

All of the footer fields and functions, ordered by priority:

  1. footerFunction
  2. footerField

The following example sets the footer function:

         list.footerFunction = function( group:Object ):Object
         {
            return group.footer;
         };

The default value is null.


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

See also

footerRendererFactoryproperty 
footerRendererFactory:Function

A function called that is expected to return a new footer renderer. Has a higher priority than footerRendererType. Typically, you would use an footerRendererFactory instead of a footerRendererType if you wanted to initialize some properties on each separate footer renderer, such as skins.

The function is expected to have the following signature:

function():IGroupedListHeaderOrFooterRenderer

The following example provides a factory for the footer renderer:

         list.itemRendererFactory = function():IGroupedListHeaderOrFooterRenderer
         {
             var renderer:CustomFooterRendererClass = new CustomFooterRendererClass();
             renderer.backgroundSkin = new Quad( 10, 10, 0xff0000 );
             return renderer;
         };

The default value is null.


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

See also

footerRendererNameproperty 
footerRendererName:String

DEPRECATED: Replaced by customFooterRendererStyleName.

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 footerRendererName():String
    public function set footerRendererName(value:String):void

See also

footerRendererPropertiesproperty 
footerRendererProperties:Object

An object that stores properties for all of the list's footer renderers, and the properties will be passed down to every footer renderer when the list validates. The available properties depend on which IGroupedListHeaderOrFooterRenderer implementation is returned by footerRendererFactory.

By default, the footerRendererFactory will return a DefaultGroupedListHeaderOrFooterRenderer instance. If you aren't using a custom footer renderer, you can refer to feathers.controls.renderers.DefaultGroupedListHeaderOrFooterRenderer for a list of available properties.

These properties are shared by every footer renderer, so anything that cannot be shared (such as display objects, which cannot be added to multiple parents) should be passed to footer renderers using the footerRendererFactory or in the theme.

The following example customizes some footer renderer properties:

         list.footerRendererProperties.contentLabelField = "footerText";
         list.footerRendererProperties.contentLabelStyleName = "custom-footer-renderer-content-label";

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 footerRendererFactory function instead of using footerRendererProperties will result in better performance.

The default value is null.


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

See also

footerRendererTypeproperty 
footerRendererType:Class

The class used to instantiate footer renderers. Must implement the IGroupedListHeaderOrFooterRenderer interface.

The following example changes the footer renderer type:

         list.footerRendererType = CustomFooterRendererClass;

The default value is feathers.controls.renderers.DefaultGroupedListHeaderOrFooterRenderer.


Implementation
    public function get footerRendererType():Class
    public function set footerRendererType(value:Class):void

See also

globalStyleProviderproperty 
public static var globalStyleProvider:IStyleProvider

The default IStyleProvider for all GroupedList components.

The default value is null.

See also

headerFieldproperty 
headerField:String

The field in a group that contains the data for a header. If the group does not have this field, and a headerFunction is not defined, then no header will be displayed for the group. In other words, a header is optional, and a group may not have one.

All of the header fields and functions, ordered by priority:

  1. headerFunction
  2. headerField

The following example sets the header field:

         list.headerField = "alphabet";

The default value is "header".


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

See also

headerFunctionproperty 
headerFunction:Function

A function used to generate header data for a specific group. If this function is not null, then the headerField will be ignored.

The function is expected to have the following signature:

function( item:Object ):Object

All of the header fields and functions, ordered by priority:

  1. headerFunction
  2. headerField

The following example sets the header function:

         list.headerFunction = function( group:Object ):Object
         {
            return group.header;
         };

The default value is null.


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

See also

headerRendererFactoryproperty 
headerRendererFactory:Function

A function called that is expected to return a new header renderer. Has a higher priority than headerRendererType. Typically, you would use an headerRendererFactory instead of a headerRendererType if you wanted to initialize some properties on each separate header renderer, such as skins.

The function is expected to have the following signature:

function():IGroupedListHeaderOrFooterRenderer

The following example provides a factory for the header renderer:

         list.itemRendererFactory = function():IGroupedListHeaderOrFooterRenderer
         {
             var renderer:CustomHeaderRendererClass = new CustomHeaderRendererClass();
             renderer.backgroundSkin = new Quad( 10, 10, 0xff0000 );
             return renderer;
         };

The default value is null.


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

See also

headerRendererNameproperty 
headerRendererName:String

DEPRECATED: Replaced by customHeaderRendererStyleName.

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 headerRendererName():String
    public function set headerRendererName(value:String):void

See also

headerRendererPropertiesproperty 
headerRendererProperties:Object

An object that stores properties for all of the list's header renderers, and the properties will be passed down to every header renderer when the list validates. The available properties depend on which IGroupedListHeaderOrFooterRenderer implementation is returned by headerRendererFactory.

By default, the headerRendererFactory will return a DefaultGroupedListHeaderOrFooterRenderer instance. If you aren't using a custom header renderer, you can refer to feathers.controls.renderers.DefaultGroupedListHeaderOrFooterRenderer for a list of available properties.

These properties are shared by every header renderer, so anything that cannot be shared (such as display objects, which cannot be added to multiple parents) should be passed to header renderers using the headerRendererFactory or in the theme.

The following example customizes some header renderer properties:

         list.headerRendererProperties.contentLabelField = "headerText";
         list.headerRendererProperties.contentLabelStyleName = "custom-header-renderer-content-label";

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 headerRendererFactory function instead of using headerRendererProperties will result in better performance.

The default value is null.


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

See also

headerRendererTypeproperty 
headerRendererType:Class

The class used to instantiate header renderers. Must implement the IGroupedListHeaderOrFooterRenderer interface.

The following example changes the header renderer type:

         list.headerRendererType = CustomHeaderRendererClass;

The default value is feathers.controls.renderers.DefaultGroupedListHeaderOrFooterRenderer.


Implementation
    public function get headerRendererType():Class
    public function set headerRendererType(value:Class):void

See also

isChildFocusEnabledproperty 
isChildFocusEnabled:Boolean

Determines if this component's children can receive focus. This property is completely independent from the isFocusEnabled property. In other words, it's possible to disable focus on this component while still allowing focus on its children (or the other way around).

In the following example, the focus is disabled:

         object.isFocusEnabled = false;

The default value is true.


Implementation
    public function get isChildFocusEnabled():Boolean
    public function set isChildFocusEnabled(value:Boolean):void

See also

isSelectableproperty 
isSelectable:Boolean

Determines if an item in the list may be selected.

The following example disables selection:

          list.isSelectable = false;

The default value is true.


Implementation
    public function get isSelectable():Boolean
    public function set isSelectable(value:Boolean):void
itemRendererFactoryproperty 
itemRendererFactory:Function

A function called that is expected to return a new item renderer. Has a higher priority than itemRendererType. Typically, you would use an itemRendererFactory instead of an itemRendererType if you wanted to initialize some properties on each separate item renderer, such as skins.

The function is expected to have the following signature:

function():IGroupedListItemRenderer

The following example provides a factory for the item renderer:

         list.itemRendererFactory = function():IGroupedListItemRenderer
         {
             var renderer:CustomItemRendererClass = new CustomItemRendererClass();
             renderer.backgroundSkin = new Quad( 10, 10, 0xff0000 );
             return renderer;
         };

The first item and last item in a group may optionally use different item renderer factories, if desired. Use the firstItemRendererFactory and lastItemRendererFactory, respectively. Additionally, if a group contains only one item, it may also have a different factory. Use the singleItemRendererFactory.

The default value is null.


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

See also

itemRendererNameproperty 
itemRendererName:String

DEPRECATED: Replaced by customItemRendererStyleName.

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 itemRendererName():String
    public function set itemRendererName(value:String):void

See also

itemRendererPropertiesproperty 
itemRendererProperties:Object

An object that stores properties for all of the list's item renderers, and the properties will be passed down to every item renderer when the list validates. The available properties depend on which IGroupedListItemRenderer implementation is returned by itemRendererFactory.

By default, the itemRendererFactory will return a DefaultGroupedListItemRenderer instance. If you aren't using a custom item renderer, you can refer to feathers.controls.renderers.DefaultGroupedListItemRenderer for a list of available properties.

These properties are shared by every item renderer, so anything that cannot be shared (such as display objects, which cannot be added to multiple parents) should be passed to item renderers using the itemRendererFactory or in the theme.

The following example customizes some item renderer properties (this example assumes that the item renderer's label text renderer is a BitmapFontTextRenderer):

         list.itemRendererProperties.labelField = "text";
         list.itemRendererProperties.accessoryField = "control";

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 itemRendererFactory function instead of using itemRendererProperties will result in better performance.

The default value is null.


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

See also

itemRendererTypeproperty 
itemRendererType:Class

The class used to instantiate item renderers. Must implement the IGroupedListItemRenderer interface.

To customize properties on the item renderer, use itemRendererFactory instead.

The following example changes the item renderer type:

         list.itemRendererType = CustomItemRendererClass;

The first item and last item in a group may optionally use different item renderer types, if desired. Use the firstItemRendererType and lastItemRendererType, respectively. Additionally, if a group contains only one item, it may also have a different type. Use the singleItemRendererType. Finally, factories for each of these types may also be customized.

The default value is feathers.controls.renderers.DefaultGroupedListItemRenderer.


Implementation
    public function get itemRendererType():Class
    public function set itemRendererType(value:Class):void

See also

keyScrollDurationproperty 
keyScrollDuration:Number

The duration, in seconds, of the animation when the selected item is changed by keyboard navigation and the item scrolls into view.

In the following example, the duration of the animation that scrolls the list to a new selected item is set to 500 milliseconds:

         list.keyScrollDuration = 0.5;

The default value is 0.25.


Implementation
    public function get keyScrollDuration():Number
    public function set keyScrollDuration(value:Number):void
lastItemRendererFactoryproperty 
lastItemRendererFactory:Function

A function called that is expected to return a new item renderer for the last item in a group. Has a higher priority than lastItemRendererType. Typically, you would use an lastItemRendererFactory instead of an lastItemRendererType if you wanted to initialize some properties on each separate item renderer, such as skins.

The function is expected to have the following signature:

function():IGroupedListItemRenderer

The following example provides a factory for the item renderer used for the last item in a group:

         list.firstItemRendererFactory = function():IGroupedListItemRenderer
         {
             var renderer:CustomItemRendererClass = new CustomItemRendererClass();
             renderer.backgroundSkin = new Quad( 10, 10, 0xff0000 );
             return renderer;
         };

The default value is null.


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

See also

lastItemRendererNameproperty 
lastItemRendererName:String

DEPRECATED: Replaced by customLastItemRendererStyleName.

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 lastItemRendererName():String
    public function set lastItemRendererName(value:String):void

See also

lastItemRendererTypeproperty 
lastItemRendererType:Class

The class used to instantiate the item renderer for the last item in a group. Must implement the IGroupedListItemRenderer interface.

The following example changes the last item renderer type:

         list.lastItemRendererType = CustomItemRendererClass;

The default value is null.


Implementation
    public function get lastItemRendererType():Class
    public function set lastItemRendererType(value:Class):void

See also

layoutproperty 
layout:ILayout

The layout algorithm used to position and, optionally, size the list's items.

By default, if no layout is provided by the time that the list initializes, a vertical layout with options targeted at touch screens is created.

The following example tells the list to use a horizontal layout:

         var layout:HorizontalLayout = new HorizontalLayout();
         layout.gap = 20;
         layout.padding = 20;
         list.layout = layout;


Implementation
    public function get layout():ILayout
    public function set layout(value:ILayout):void
pendingGroupIndexproperty 
protected var pendingGroupIndex:int = -1

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

pendingItemIndexproperty 
protected var pendingItemIndex:int = -1

The pending item index to scroll to after validating. A value of -1 means that the scroller won't scroll to an item after validating.

selectedGroupIndexproperty 
selectedGroupIndex:int  [read-only]

The group index of the currently selected item. Returns -1 if no item is selected.

Because the selection consists of both a group index and an item index, this property does not have a setter. To change the selection, call setSelectedLocation() instead.

The following example listens for when selection changes and requests the selected group index and selected item index:

         function list_changeHandler( event:Event ):void
         {
             var list:List = GroupedList(event.currentTarget);
             var groupIndex:int = list.selectedGroupIndex;
             var itemIndex:int = list.selectedItemIndex;
                  }
         list.addEventListener( Event.CHANGE, list_changeHandler );

The default value is -1.


Implementation
    public function get selectedGroupIndex():int

See also

selectedItemproperty 
selectedItem:Object

The currently selected item. Returns null if no item is selected.

The following example listens for when selection changes and requests the selected item:

         function list_changeHandler( event:Event ):void
         {
             var list:GroupedList = GroupedList( event.currentTarget );
             var item:Object = list.selectedItem;
                  }
         list.addEventListener( Event.CHANGE, list_changeHandler );

The default value is null.


Implementation
    public function get selectedItem():Object
    public function set selectedItem(value:Object):void
selectedItemIndexproperty 
selectedItemIndex:int  [read-only]

The item index of the currently selected item. Returns -1 if no item is selected.

Because the selection consists of both a group index and an item index, this property does not have a setter. To change the selection, call setSelectedLocation() instead.

The following example listens for when selection changes and requests the selected group index and selected item index:

         function list_changeHandler( event:Event ):void
         {
             var list:GroupedList = GroupedList( event.currentTarget );
             var groupIndex:int = list.selectedGroupIndex;
             var itemIndex:int = list.selectedItemIndex;
                  }
         list.addEventListener( Event.CHANGE, list_changeHandler );

The default value is -1.


Implementation
    public function get selectedItemIndex():int

See also

singleItemRendererFactoryproperty 
singleItemRendererFactory:Function

A function called that is expected to return a new item renderer for an item in a group with no other items. Has a higher priority than singleItemRendererType. Typically, you would use an singleItemRendererFactory instead of an singleItemRendererType if you wanted to initialize some properties on each separate item renderer, such as skins.

The function is expected to have the following signature:

function():IGroupedListItemRenderer

The following example provides a factory for the item renderer used for when only one item appears in a group:

         list.firstItemRendererFactory = function():IGroupedListItemRenderer
         {
             var renderer:CustomItemRendererClass = new CustomItemRendererClass();
             renderer.backgroundSkin = new Quad( 10, 10, 0xff0000 );
             return renderer;
         };

The default value is null.


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

See also

singleItemRendererNameproperty 
singleItemRendererName:String

DEPRECATED: Replaced by customLastItemRendererStyleName.

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 singleItemRendererName():String
    public function set singleItemRendererName(value:String):void

See also

singleItemRendererTypeproperty 
singleItemRendererType:Class

The class used to instantiate the item renderer for an item in a group with no other items. Must implement the IGroupedListItemRenderer interface.

The following example changes the single item renderer type:

         list.singleItemRendererType = CustomItemRendererClass;

The default value is null.


Implementation
    public function get singleItemRendererType():Class
    public function set singleItemRendererType(value:Class):void

See also

typicalItemproperty 
typicalItem:Object

Used to auto-size the list when a virtualized layout is used. If the list's width or height is unknown, the list will try to automatically pick an ideal size. This item is used to create a sample item renderer to measure item renderers that are virtual and not visible in the viewport.

The following example provides a typical item:

         list.typicalItem = { text: "A typical item", thumbnail: texture };
         list.itemRendererProperties.labelField = "text";
         list.itemRendererProperties.iconSourceField = "thumbnail";

The default value is null.


Implementation
    public function get typicalItem():Object
    public function set typicalItem(value:Object):void
Constructor Detail
GroupedList()Constructor
public function GroupedList()

Constructor.

Method Detail
groupToFooterData()method
public function groupToFooterData(group:Object):Object

Extracts footer data from a group object.

Parameters

group:Object

Returns
Object
groupToHeaderData()method 
public function groupToHeaderData(group:Object):Object

Extracts header data from a group object.

Parameters

group:Object

Returns
Object
scrollToDisplayIndex()method 
public function scrollToDisplayIndex(groupIndex:int, itemIndex:int = -1, animationDuration:Number = 0):void

After the next validation, scrolls the list so that the specified item is visible. If animationDuration is greater than zero, the scroll will animate. The duration is in seconds.

The itemIndex parameter is optional. If set to -1, the list will scroll to the start of the specified group.

In the following example, the list is scrolled to display the third item in the second group:

         list.scrollToDisplayIndex( 1, 2 );

In the following example, the list is scrolled to display the third group:

         list.scrollToDisplayIndex( 2 );

Parameters

groupIndex:int
 
itemIndex:int (default = -1)
 
animationDuration:Number (default = 0)

setSelectedLocation()method 
public function setSelectedLocation(groupIndex:int, itemIndex:int):void

Sets the selected group and item index.

In the following example, the third item in the second group is selected:

         list.setSelectedLocation( 1, 2 );

In the following example, the selection is cleared:

         list.setSelectedLocation( -1, -1 );

Parameters

groupIndex:int
 
itemIndex:int

See also

Event Detail
change Event
Event Object Type: starling.events.Event
Event.type property = starling.events.Event.CHANGE

Dispatched when the selected item 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.

rendererAdd Event  
Event Object Type: starling.events.Event
Event.type property = feathers.events.FeathersEventType.RENDERER_ADD

Dispatched when an item renderer is added to the list. When the layout is virtualized, item renderers may not exist for every item in the data provider. This event can be used to track which items currently have renderers.

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.
dataThe item renderer that was added
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.RENDERER_ADD event type is used by Feathers components with item renderers to indicate when a new renderer has been added. This event type is meant to be used with virtualized layouts where only a limited set of renderers will be created for a data provider that may include a larger number of items.
rendererRemove Event  
Event Object Type: starling.events.Event
Event.type property = feathers.events.FeathersEventType.RENDERER_REMOVE

Dispatched when an item renderer is removed from the list. When the layout is virtualized, item renderers may not exist for every item in the data provider. This event can be used to track which items currently have renderers.

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.
dataThe item renderer that was removed
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.RENDERER_REMOVE event type is used by Feathers controls with item renderers to indicate when a renderer is removed. This event type is meant to be used with virtualized layouts where only a limited set of renderers will be created for a data provider that may include a larger number items.
triggered Event  
Event Object Type: starling.events.Event
Event.type property = starling.events.Event.TRIGGERED

Dispatched when the the user taps or clicks an item renderer in the list. The touch must remain within the bounds of the item renderer on release, and the list must not have scrolled, to register as a tap or a click.

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.
dataThe item associated with the item renderer that was triggered.
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.

Constant Detail
ALTERNATE_CHILD_NAME_INSET_FIRST_ITEM_RENDERERConstant
public static const ALTERNATE_CHILD_NAME_INSET_FIRST_ITEM_RENDERER:String = feathers-grouped-list-inset-first-item-renderer

DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_FIRST_ITEM_RENDERER.

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

ALTERNATE_CHILD_NAME_INSET_FOOTER_RENDERERConstant 
public static const ALTERNATE_CHILD_NAME_INSET_FOOTER_RENDERER:String = feathers-grouped-list-inset-footer-renderer

DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_FOOTER_RENDERER.

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

ALTERNATE_CHILD_NAME_INSET_HEADER_RENDERERConstant 
public static const ALTERNATE_CHILD_NAME_INSET_HEADER_RENDERER:String = feathers-grouped-list-inset-header-renderer

DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_HEADER_RENDERER.

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

ALTERNATE_CHILD_NAME_INSET_ITEM_RENDERERConstant 
public static const ALTERNATE_CHILD_NAME_INSET_ITEM_RENDERER:String = feathers-grouped-list-inset-item-renderer

DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_ITEM_RENDERER.

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

ALTERNATE_CHILD_NAME_INSET_LAST_ITEM_RENDERERConstant 
public static const ALTERNATE_CHILD_NAME_INSET_LAST_ITEM_RENDERER:String = feathers-grouped-list-inset-last-item-renderer

DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_LAST_ITEM_RENDERER.

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

ALTERNATE_CHILD_NAME_INSET_SINGLE_ITEM_RENDERERConstant 
public static const ALTERNATE_CHILD_NAME_INSET_SINGLE_ITEM_RENDERER:String = feathers-grouped-list-inset-single-item-renderer

DEPRECATED: Replaced by GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_SINGLE_ITEM_RENDERER.

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

ALTERNATE_CHILD_STYLE_NAME_INSET_FIRST_ITEM_RENDERERConstant 
public static const ALTERNATE_CHILD_STYLE_NAME_INSET_FIRST_ITEM_RENDERER:String = feathers-grouped-list-inset-first-item-renderer

An alternate name to use for item renderers to give them an inset style. Typically meant to be used for the renderer of the first item in a group. This name is usually only referenced inside themes.

In the following example, the inset style is applied to a grouped list's first item renderer:

         list.customFirstItemRendererStyleName = GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_FIRST_ITEM_RENDERER;

See also

ALTERNATE_CHILD_STYLE_NAME_INSET_FOOTER_RENDERERConstant 
public static const ALTERNATE_CHILD_STYLE_NAME_INSET_FOOTER_RENDERER:String = feathers-grouped-list-inset-footer-renderer

An alternate name to use with footer renderers to give them an inset style. This name is usually only referenced inside themes.

In the following example, the inset style is applied to a grouped list's footer:

         list.customFooterRendererStyleName = GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_FOOTER_RENDERER;

ALTERNATE_CHILD_STYLE_NAME_INSET_HEADER_RENDERERConstant 
public static const ALTERNATE_CHILD_STYLE_NAME_INSET_HEADER_RENDERER:String = feathers-grouped-list-inset-header-renderer

An alternate name to use with header renderers to give them an inset style. This name is usually only referenced inside themes.

In the following example, the inset style is applied to a grouped list's header:

         list.customHeaderRendererStyleName = GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_HEADER_RENDERER;

See also

ALTERNATE_CHILD_STYLE_NAME_INSET_ITEM_RENDERERConstant 
public static const ALTERNATE_CHILD_STYLE_NAME_INSET_ITEM_RENDERER:String = feathers-grouped-list-inset-item-renderer

An alternate name to use with item renderers to give them an inset style. This name is usually only referenced inside themes.

In the following example, the inset style is applied to a grouped list's item renderer:

         list.customItemRendererStyleName = GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_ITEM_RENDERER;

See also

ALTERNATE_CHILD_STYLE_NAME_INSET_LAST_ITEM_RENDERERConstant 
public static const ALTERNATE_CHILD_STYLE_NAME_INSET_LAST_ITEM_RENDERER:String = feathers-grouped-list-inset-last-item-renderer

An alternate name to use for item renderers to give them an inset style. Typically meant to be used for the renderer of the last item in a group. This name is usually only referenced inside themes.

In the following example, the inset style is applied to a grouped list's last item renderer:

         list.customLastItemRendererStyleName = GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_LAST_ITEM_RENDERER;

See also

ALTERNATE_CHILD_STYLE_NAME_INSET_SINGLE_ITEM_RENDERERConstant 
public static const ALTERNATE_CHILD_STYLE_NAME_INSET_SINGLE_ITEM_RENDERER:String = feathers-grouped-list-inset-single-item-renderer

An alternate name to use for item renderers to give them an inset style. Typically meant to be used for the renderer of an item in a group that has no other items. This name is usually only referenced inside themes.

In the following example, the inset style is applied to a grouped list's single item renderer:

         list.customSingleItemRendererStyleName = GroupedList.ALTERNATE_CHILD_STYLE_NAME_INSET_SINGLE_ITEM_RENDERER;

See also

ALTERNATE_NAME_INSET_GROUPED_LISTConstant 
public static const ALTERNATE_NAME_INSET_GROUPED_LIST:String = feathers-inset-grouped-list

DEPRECATED: Replaced by GroupedList.ALTERNATE_STYLE_NAME_INSET_GROUPED_LIST.

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

ALTERNATE_STYLE_NAME_INSET_GROUPED_LISTConstant 
public static const ALTERNATE_STYLE_NAME_INSET_GROUPED_LIST:String = feathers-inset-grouped-list

An alternate style name to use with GroupedList to allow a theme to give it an inset style. If a theme does not provide a style for an inset grouped list, the theme will automatically fall back to using the default grouped list style.

An alternate style name should always be added to a component's styleNameList before the component is initialized. If the style name is added later, it will be ignored.

In the following example, the inset style is applied to a grouped list:

         var list:GroupedList = new GroupedList();
         list.styleNameList.add( GroupedList.ALTERNATE_STYLE_NAME_INSET_GROUPED_LIST );
         this.addChild( list );

See also

DECELERATION_RATE_FASTConstant 
public static const DECELERATION_RATE_FAST:Number = 0.99

Decelerates a bit faster per millisecond than the default.

See also

DECELERATION_RATE_NORMALConstant 
public static const DECELERATION_RATE_NORMAL:Number = 0.998

The default deceleration rate per millisecond.

See also

DEFAULT_CHILD_NAME_FOOTER_RENDERERConstant 
public static const DEFAULT_CHILD_NAME_FOOTER_RENDERER:String = feathers-grouped-list-footer-renderer

DEPRECATED: Replaced by GroupedList.DEFAULT_CHILD_STYLE_NAME_FOOTER_RENDERER.

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_HEADER_RENDERERConstant 
public static const DEFAULT_CHILD_NAME_HEADER_RENDERER:String = feathers-grouped-list-header-renderer

DEPRECATED: Replaced by GroupedList.DEFAULT_CHILD_STYLE_NAME_HEADER_RENDERER.

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_FOOTER_RENDERERConstant 
public static const DEFAULT_CHILD_STYLE_NAME_FOOTER_RENDERER:String = feathers-grouped-list-footer-renderer

The default name to use with footer renderers.

See also

DEFAULT_CHILD_STYLE_NAME_HEADER_RENDERERConstant 
public static const DEFAULT_CHILD_STYLE_NAME_HEADER_RENDERER:String = feathers-grouped-list-header-renderer

The default name to use with header renderers.

See also

INTERACTION_MODE_MOUSEConstant 
public static const INTERACTION_MODE_MOUSE:String = mouse

The user may only interact with the scroll bars to scroll. The user cannot touch anywhere in the scroller's content and drag like a touch interface.

See also

INTERACTION_MODE_TOUCHConstant 
public static const INTERACTION_MODE_TOUCH:String = touch

The user may touch anywhere on the scroller and drag to scroll. The scroll bars will be visual indicator of position, but they will not be interactive.

See also

INTERACTION_MODE_TOUCH_AND_SCROLL_BARSConstant 
public static const INTERACTION_MODE_TOUCH_AND_SCROLL_BARS:String = touchAndScrollBars

The user may touch anywhere on the scroller and drag to scroll, and the scroll bars may be dragged separately. For most touch interfaces, this is not a common behavior. The scroll bar on touch interfaces is often simply a visual indicator and non-interactive.

One case where this mode might be used is a "scroll bar" that displays a tappable alphabetical index to navigate a GroupedList with alphabetical categories.

See also

MOUSE_WHEEL_SCROLL_DIRECTION_HORIZONTALConstant 
public static const MOUSE_WHEEL_SCROLL_DIRECTION_HORIZONTAL:String = horizontal

The scroller will scroll horizontally when the mouse wheel is scrolled.

See also

MOUSE_WHEEL_SCROLL_DIRECTION_VERTICALConstant 
public static const MOUSE_WHEEL_SCROLL_DIRECTION_VERTICAL:String = vertical

The scroller will scroll vertically when the mouse wheel is scrolled.

See also

SCROLL_BAR_DISPLAY_MODE_FIXEDConstant 
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.

See also

SCROLL_BAR_DISPLAY_MODE_FIXED_FLOATConstant 
public static const SCROLL_BAR_DISPLAY_MODE_FIXED_FLOAT:String = fixedFloat

The scroll bars appear above the scroller's view port, overlapping the content, but they do not fade out when not in use.

See also

SCROLL_BAR_DISPLAY_MODE_FLOATConstant 
public static const SCROLL_BAR_DISPLAY_MODE_FLOAT:String = float

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

See also

SCROLL_BAR_DISPLAY_MODE_NONEConstant 
public static const SCROLL_BAR_DISPLAY_MODE_NONE:String = none

The scroll bars are never visible.

See also

SCROLL_POLICY_AUTOConstant 
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.

See also

SCROLL_POLICY_OFFConstant 
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.

See also

SCROLL_POLICY_ONConstant 
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.

See also

VERTICAL_SCROLL_BAR_POSITION_LEFTConstant 
public static const VERTICAL_SCROLL_BAR_POSITION_LEFT:String = left

The vertical scroll bar will be positioned on the left.

See also

VERTICAL_SCROLL_BAR_POSITION_RIGHTConstant 
public static const VERTICAL_SCROLL_BAR_POSITION_RIGHT:String = right

The vertical scroll bar will be positioned on the right.

See also