| Package | feathers.controls | 
| Class | public class GroupedList | 
| Inheritance | GroupedList    Scroller   FeathersControl   starling.display.Sprite | 
| Implements | IFocusContainer | 
| Product Version : | Feathers 1.0.0 | 
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 ArrayHierarchicalCollection(
[
    {
        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
| Property | Defined By | ||
|---|---|---|---|
![]()  | addedEffect : Function 
		 An optional effect that is activated when the component is added to
		 the stage.  | FeathersControl | |
![]()  | bottomPullView : DisplayObject 
		 A view that is displayed at the bottom of the scroller's view port
		 when dragging up.  | Scroller | |
![]()  | bottomPullViewDisplayMode : String 
		 Indicates whether the bottom pull view may be dragged with the
		 content, or if its position is fixed to the edge of the scroller.  | Scroller | |
| dataProvider : IHierarchicalCollection 
		 The collection of data displayed by the list.  | GroupedList | ||
![]()  | 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 | |
![]()  | depth : int [read-only] 
		 The component's depth in the display list, relative to the stage.  | FeathersControl | |
![]()  | effectsSuspended : Boolean [read-only] 
		 Indicates if effects have been suspended.  | FeathersControl | |
![]()  | explicitHeight : Number [read-only] 
		 The height value explicitly set by passing a value to the
		 height setter or by calling the setSize()
		 function.  | FeathersControl | |
![]()  | explicitMaxHeight : Number [read-only] 
		 The maximum height value explicitly set by passing a value to the
		 maxHeight setter.  | FeathersControl | |
![]()  | explicitMaxWidth : Number [read-only] 
		 The maximum width value explicitly set by passing a value to the
		 maxWidth setter.  | FeathersControl | |
![]()  | explicitMinHeight : Number [read-only] 
		 The minimum height value explicitly set by passing a value to the
		 minHeight setter.  | FeathersControl | |
![]()  | explicitMinWidth : Number [read-only] 
		 The minimum width value explicitly set by passing a value to the
		 minWidth setter.  | FeathersControl | |
![]()  | explicitWidth : Number [read-only] 
		 The width value explicitly set by passing a value to the
		 width setter or to the setSize() method.  | FeathersControl | |
| factoryIDFunction : Function 
		 When a list requires multiple item renderer types, this function is
		 used to determine which type of item renderer is required for a
		 specific item (or index).  | GroupedList | ||
| firstItemRendererFactory : Function 
		 A function called that is expected to return a new item renderer for
		 the first item in a group.  | GroupedList | ||
| firstItemRendererType : Class 
		 The class used to instantiate the item renderer for the first item in
		 a group.  | GroupedList | ||
![]()  | focusInEffect : Function 
		 An optional effect that is activated when the component receives
		 focus.  | FeathersControl | |
![]()  | focusManager : IFocusManager 
		 The implementation of this property is provided for convenience,
		 but it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 
		 
		 The current focus manager for this component.  | FeathersControl | |
![]()  | focusOutEffect : Function 
		 An optional effect that is activated when the component loses focus.  | FeathersControl | |
![]()  | focusOwner : IFocusDisplayObject 
		 The implementation of this property is provided for convenience,
		 but it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 
		 
		 Used for associating focusable display objects that are not direct
		 children with an "owner" focusable display object, such as pop-ups.  | FeathersControl | |
| footerFactoryIDFunction : Function 
		 When a list requires multiple footer renderer types, this function is
		 used to determine which type of footer renderer is required for a
		 specific footer (or group index).  | GroupedList | ||
| 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 | ||
| 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 | ||
| headerFactoryIDFunction : Function 
		 When a list requires multiple header renderer types, this function is
		 used to determine which type of header renderer is required for a
		 specific header (or group index).  | GroupedList | ||
| 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 | ||
| 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 | ||
![]()  | height : Number [override] 
		 The height of the component, in pixels.  | FeathersControl | |
![]()  | hideEffect : Function 
		 An optional effect that is activated when the component is hidden.  | FeathersControl | |
![]()  | horizontalPageCount : int [read-only] 
		 The number of horizontal pages, if snapping is enabled.  | Scroller | |
![]()  | horizontalPageIndex : int 
		 The index of the horizontal page, if snapping is enabled.  | Scroller | |
![]()  | horizontalScrollBarFactory : Function 
		 Creates the horizontal scroll bar.  | Scroller | |
![]()  | horizontalScrollBarProperties : 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 | |
![]()  | horizontalScrollPolicy : String 
		 Determines whether the scroller may scroll horizontally (on the
		 x-axis) or not.  | Scroller | |
![]()  | horizontalScrollPosition : Number 
		 The number of pixels the container has been scrolled horizontally (on
		 the x-axis).  | Scroller | |
![]()  | horizontalScrollStep : Number 
		 The number of pixels the horizontal scroll position can be adjusted
		 by a "step".  | Scroller | |
![]()  | includeInLayout : Boolean 
		 
		 Determines if the ILayout should use this object or ignore it.  | FeathersControl | |
![]()  | isBottomPullViewActive : Boolean 
		 Indicates if the bottomPullView has been activated.  | Scroller | |
| isChildFocusEnabled : Boolean 
		 Determines if this component's children can receive focus.  | GroupedList | ||
![]()  | isCreated : Boolean [read-only] 
		 Determines if the component has been initialized and validated for
		 the first time.  | FeathersControl | |
![]()  | isEnabled : Boolean 
		 Indicates whether the control is interactive or not.  | FeathersControl | |
![]()  | isFocusEnabled : Boolean 
		 The implementation of this property is provided for convenience,
		 but it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		 
		 Determines if this component can receive focus.  | FeathersControl | |
![]()  | isInitialized : Boolean [read-only] 
		 Determines if the component has been initialized yet.  | FeathersControl | |
![]()  | isLeftPullViewActive : Boolean 
		 Indicates if the leftPullView has been activated.  | Scroller | |
![]()  | isQuickHitAreaEnabled : Boolean 
		 Similar to mouseChildren on the classic display list.  | FeathersControl | |
![]()  | isRightPullViewActive : Boolean 
		 Indicates if the rightPullView has been activated.  | Scroller | |
![]()  | isScrolling : 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 | ||
![]()  | isShowingFocus : Boolean [read-only] 
		 The implementation of this method is provided for convenience, but
		 it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		 
		 Indicates if the showFocus() method has been called on
		 the object when it has focus.  | FeathersControl | |
![]()  | isTopPullViewActive : Boolean 
		 Indicates if the topPullView has been activated.  | Scroller | |
| itemRendererFactory : Function 
		 A function called that is expected to return a new item renderer.  | 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 | ||
| lastItemRendererFactory : Function 
		 A function called that is expected to return a new item renderer for
		 the last item in a group.  | GroupedList | ||
| lastItemRendererType : Class 
		 The class used to instantiate the item renderer for the last item in
		 a group.  | GroupedList | ||
![]()  | layoutData : ILayoutData 
		 
		 Extra parameters associated with this display object that will be
		 used by the layout algorithm.  | FeathersControl | |
![]()  | leftPullView : DisplayObject 
		 A view that is displayed to the left of the scroller's view port
		 when dragging to the right.  | Scroller | |
![]()  | leftPullViewDisplayMode : String 
		 Indicates whether the left pull view may be dragged with the content,
		 or if its position is fixed to the edge of the scroller.  | Scroller | |
![]()  | maintainTouchFocus : Boolean [read-only] 
		 The implementation of this method is provided for convenience, but
		 it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		 
		 If true, the display object should remain in focus,
		 even if something else is touched.  | FeathersControl | |
![]()  | maxHeight : Number 
		 The maximum recommended height to be used for self-measurement and,
		 optionally, by any code that is resizing this component.  | FeathersControl | |
![]()  | maxHorizontalPageIndex : int [read-only] 
		 The maximum horizontal page index that may be displayed by this
		 container, if page snapping is enabled.  | Scroller | |
![]()  | maxHorizontalScrollPosition : Number [read-only] 
		 The number of pixels the scroller may be scrolled horizontally to the
		 right.  | Scroller | |
![]()  | maxVerticalPageIndex : int [read-only] 
		 The maximum vertical page index that may be displayed by this
		 container, if page snapping is enabled.  | Scroller | |
![]()  | maxVerticalScrollPosition : Number [read-only] 
		 The number of pixels the scroller may be scrolled vertically beyond
		 the bottom edge.  | Scroller | |
![]()  | maxWidth : Number 
		 The maximum recommended width to be used for self-measurement and,
		 optionally, by any code that is resizing this component.  | FeathersControl | |
![]()  | measureViewPort : Boolean 
		 Determines if the dimensions of the view port are used when measuring
		 the scroller.  | Scroller | |
![]()  | minHeight : Number 
		 The minimum recommended height to be used for self-measurement and,
		 optionally, by any code that is resizing this component.  | FeathersControl | |
![]()  | minHorizontalPageIndex : int [read-only] 
		 The minimum horizontal page index that may be displayed by this
		 container, if page snapping is enabled.  | Scroller | |
![]()  | minHorizontalScrollPosition : Number [read-only] 
		 The number of pixels the scroller may be scrolled horizontally to the
		 left.  | Scroller | |
![]()  | minimumDragDistance : Number 
		 The minimum physical distance (in inches) that a touch must move
		 before the scroller starts scrolling.  | Scroller | |
![]()  | minimumPageThrowVelocity : Number 
		 The minimum physical velocity (in inches per second) that a touch
		 must move before the scroller will "throw" to the next page.  | Scroller | |
![]()  | 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 | |
![]()  | minVerticalPageIndex : int [read-only] 
		 The minimum vertical page index that may be displayed by this
		 container, if page snapping is enabled.  | Scroller | |
![]()  | minVerticalScrollPosition : Number [read-only] 
		 The number of pixels the scroller may be scrolled vertically beyond
		 the top edge.  | Scroller | |
![]()  | minWidth : Number 
		 The minimum recommended width to be used for self-measurement and,
		 optionally, by any code that is resizing this component.  | FeathersControl | |
![]()  | moveEffect : Function 
		 An optional effect that is activated when the component is moved to
		 a new position.  | FeathersControl | |
![]()  | nextDownFocus : IFocusDisplayObject 
		 The implementation of this property is provided for convenience,
		 but it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		 
		 The next object that will receive focus when
		 Keyboard.DOWN is pressed at
		 KeyLocation.D_PAD and a focus manager is enabled.  | FeathersControl | |
![]()  | nextLeftFocus : IFocusDisplayObject 
		 The implementation of this property is provided for convenience,
		 but it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		 
		 The next object that will receive focus when
		 Keyboard.LEFT is pressed at
		 KeyLocation.D_PAD and a focus manager is enabled.  | FeathersControl | |
![]()  | nextRightFocus : IFocusDisplayObject 
		 The implementation of this property is provided for convenience,
		 but it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		 
		 The next object that will receive focus when
		 Keyboard.RIGHT is pressed at
		 KeyLocation.D_PAD and a focus manager is enabled.  | FeathersControl | |
![]()  | nextTabFocus : IFocusDisplayObject 
		 The implementation of this property is provided for convenience,
		 but it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		 
		 The next object that will receive focus when the tab key is pressed
		 when a focus manager is enabled.  | FeathersControl | |
![]()  | nextUpFocus : IFocusDisplayObject 
		 The implementation of this property is provided for convenience,
		 but it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		 
		 The next object that will receive focus when
		 Keyboard.UP is pressed at
		 KeyLocation.D_PAD and a focus manager is enabled.  | FeathersControl | |
![]()  | pageHeight : Number 
		 When set, the vertical pages snap to this height value instead of
		 the height of the scroller.  | Scroller | |
![]()  | pageWidth : Number 
		 When set, the horizontal pages snap to this width value instead of
		 the width of the scroller.  | Scroller | |
![]()  | previousTabFocus : IFocusDisplayObject 
		 The implementation of this property is provided for convenience,
		 but it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		 
		 The previous object that will receive focus when the tab key is
		 pressed while holding shift when a focus manager is enabled.  | FeathersControl | |
![]()  | resizeEffect : Function 
		 An optional effect that is activated when the component is resized
		 with new dimensions.  | FeathersControl | |
![]()  | rightPullView : DisplayObject 
		 A view that is displayed to the right of the scroller's view port
		 when dragging to the left.  | Scroller | |
![]()  | rightPullViewDisplayMode : String 
		 Indicates whether the right pull view may be dragged with the
		 content, or if its position is fixed to the edge of the scroller.  | 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 | ||
![]()  | showEffect : Function 
		 An optional effect that is activated when the component is shown.  | FeathersControl | |
| 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 | ||
| singleItemRendererType : Class 
		 The class used to instantiate the item renderer for an item in a
		 group with no other items.  | GroupedList | ||
![]()  | styleName : String 
		 The concatenated styleNameList, with values separated
		 by spaces.  | FeathersControl | |
![]()  | styleNameList : TokenList [read-only] 
		 Contains a list of all "styles" assigned to this control.  | FeathersControl | |
![]()  | styleProvider : IStyleProvider 
		 When a component initializes, a style provider may be used to set
		 properties that affect the component's visual appearance.  | FeathersControl | |
![]()  | toolTip : String 
		 Text to display in a tool tip to when hovering over this component,
		 if the ToolTipManager is enabled.  | FeathersControl | |
![]()  | topPullView : DisplayObject 
		 A view that is displayed at the top of the scroller's view port when
		 dragging down.  | Scroller | |
![]()  | topPullViewDisplayMode : String 
		 Indicates whether the top pull view may be dragged with the content,
		 or if its position is fixed to the edge of the scroller.  | Scroller | |
| typicalItem : Object 
		 Used to auto-size the list when a virtualized layout is used.  | GroupedList | ||
![]()  | verticalMouseWheelScrollDirection : String 
		 The direction of scrolling when the user scrolls the mouse wheel
		 vertically.  | Scroller | |
![]()  | verticalMouseWheelScrollStep : Number 
		 The number of pixels the vertical scroll position can be adjusted by
		 a "step" when using the mouse wheel.  | Scroller | |
![]()  | verticalPageCount : int [read-only] 
		 The number of vertical pages, if snapping is enabled.  | Scroller | |
![]()  | verticalPageIndex : int 
		 The index of the vertical page, if snapping is enabled.  | Scroller | |
![]()  | verticalScrollBarFactory : Function 
		 Creates the vertical scroll bar.  | Scroller | |
![]()  | verticalScrollBarProperties : 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 | |
![]()  | verticalScrollPolicy : String 
		 Determines whether the scroller may scroll vertically (on the
		 y-axis) or not.  | Scroller | |
![]()  | verticalScrollPosition : Number 
		 The number of pixels the container has been scrolled vertically (on
		 the y-axis).  | Scroller | |
![]()  | verticalScrollStep : Number 
		 The number of pixels the vertical scroll position can be adjusted
		 by a "step".  | Scroller | |
![]()  | viewPort : IViewPort 
		 The display object displayed and scrolled within the Scroller.  | Scroller | |
![]()  | width : Number [override] 
		 The width of the component, in pixels.  | FeathersControl | |
| Property | Defined By | ||
|---|---|---|---|
![]()  | actualHeight : Number = 0 
		 The final height value that should be used for layout.  | FeathersControl | |
![]()  | actualMinHeight : Number = 0 
		 The final minimum height value that should be used for layout.  | FeathersControl | |
![]()  | actualMinWidth : Number = 0 
		 The final minimum width value that should be used for layout.  | FeathersControl | |
![]()  | actualWidth : Number = 0 
		 The final width value that should be used for layout.  | FeathersControl | |
![]()  | defaultStyleProvider : IStyleProvider [read-only] 
		 When the FeathersControl constructor is called, the
		 styleProvider property is set to this value.  | FeathersControl | |
![]()  | hasPendingHorizontalPageIndex : Boolean = false 
		 A flag that indicates if the scroller should scroll to a new page
		 when it validates.  | Scroller | |
![]()  | hasPendingVerticalPageIndex : Boolean = false 
		 A flag that indicates if the scroller should scroll to a new page
		 when it validates.  | Scroller | |
![]()  | horizontalScrollBar : IScrollBar 
		 The horizontal scrollbar instance.  | Scroller | |
![]()  | horizontalScrollBarStyleName : 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 | ||
![]()  | pendingHorizontalPageIndex : int 
		 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 | |
| pendingItemIndex : int = -1 
		 The pending item index to scroll to after validating.  | GroupedList | ||
![]()  | pendingScrollDuration : Number 
		 The duration of the pending scroll action.  | Scroller | |
![]()  | pendingVerticalPageIndex : int 
		 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 | |
![]()  | verticalScrollBarStyleName : String = "feathers-scroller-vertical-scroll-bar" 
		 The value added to the styleNameList of the vertical
		 scroll bar.  | Scroller | |
| Method | Defined By | ||
|---|---|---|---|
		 Constructor.  | GroupedList | ||
footerDataToFooterRenderer(footerData:Object):IGroupedListFooterRenderer 
		 Returns the current footer renderer used to render specific footer
		 data.  | GroupedList | ||
![]()  | getBounds(targetSpace:DisplayObject, resultRect:Rectangle = null):Rectangle [override] 
		 Feathers components use an optimized getBounds()
		 implementation that may sometimes behave differently than regular
		 Starling display objects.  | FeathersControl | |
getFooterRendererFactoryWithID(id:String):Function 
		 Returns the footer renderer factory associated with a specific ID.  | GroupedList | ||
getHeaderRendererFactoryWithID(id:String):Function 
		 Returns the header renderer factory associated with a specific ID.  | GroupedList | ||
getItemRendererFactoryWithID(id:String):Function 
		 Returns the item renderer factory associated with a specific ID.  | 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 | ||
headerDataToHeaderRenderer(headerData:Object):IGroupedListHeaderRenderer 
		 Returns the current header renderer used to render specific header
		 data.  | GroupedList | ||
![]()  | hideFocus():void 
		 The implementation of this method is provided for convenience, but
		 it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		   | FeathersControl | |
![]()  | initializeNow():void 
		 If the component has not yet initialized, initializes immediately.  | FeathersControl | |
![]()  | 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 | |
itemToItemRenderer(item:Object):IGroupedListItemRenderer 
		 Returns the current item renderer used to render a specific item.  | GroupedList | ||
![]()  | move(x:Number, y:Number):void 
		 Sets both the x and the y positions of the control in a single
		 function call.  | FeathersControl | |
![]()  | removeFromParentWithEffect(effect:Function, dispose:Boolean = false):void 
		 Plays an effect before removing the component from its parent.  | FeathersControl | |
![]()  | resetStyleProvider():void 
		 Resets the styleProvider property to its default value,
		 which is usually the global style provider for the component.  | FeathersControl | |
![]()  | resumeEffects():void 
		 Indicates that effects should be re-activated after being suspended.  | FeathersControl | |
![]()  | revealScrollBars():void 
		 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 | ||
![]()  | scrollToPageIndex(horizontalPageIndex:int, verticalPageIndex:int, animationDuration:Number):void 
		 After the next validation, animates the scroll position to a specific
		 page index.  | Scroller | |
![]()  | scrollToPosition(horizontalScrollPosition:Number, verticalScrollPosition:Number, animationDuration:Number):void 
		 After the next validation, animates the scroll positions to a
		 specific location.  | Scroller | |
setFooterRendererFactoryWithID(id:String, factory:Function):void 
		 Associates a footer renderer factory with an ID to allow multiple
		 types of footer renderers may be displayed in the list.  | GroupedList | ||
setHeaderRendererFactoryWithID(id:String, factory:Function):void 
		 Associates a header renderer factory with an ID to allow multiple
		 types of header renderers may be displayed in the list.  | GroupedList | ||
setItemRendererFactoryWithID(id:String, factory:Function):void 
		 Associates an item renderer factory with an ID to allow multiple
		 types of item renderers may be displayed in the list.  | GroupedList | ||
setSelectedLocation(groupIndex:int, itemIndex:int):void 
		 Sets the selected group and item index.  | GroupedList | ||
![]()  | setSize(width:Number, height:Number):void 
		 Sets both the width and the height of the control in a single
		 function call.  | FeathersControl | |
![]()  | showFocus():void 
		 The implementation of this method is provided for convenience, but
		 it cannot be used unless a subclass implements the
		 IFocusDisplayObject interface.
		 		   | FeathersControl | |
![]()  | 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 | |
![]()  | suspendEffects():void 
		 Indicates that effects should not be activated temporarily.  | FeathersControl | |
![]()  | validate():void 
		 Immediately validates the display object, if it is invalid.  | FeathersControl | |
| Event | Summary | Defined By | ||
|---|---|---|---|---|
![]()  | Dispatched when the user starts dragging the scroller when ScrollInteractionMode.TOUCH is enabled or when the user starts interacting with the scroll bar. | Scroller | ||
| Dispatched when the selected item changes. | GroupedList | |||
![]()  | Dispatched after the component has validated for the first time. | FeathersControl | ||
![]()  | Dispatched when the user stops dragging the scroller when ScrollInteractionMode.TOUCH is enabled or when the user stops interacting with the scroll bar. | Scroller | ||
![]()  | Dispatched when the component receives focus. | Scroller | ||
![]()  | Dispatched when the component loses focus. | Scroller | ||
![]()  | Dispatched 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 | |||
![]()  | Dispatched when the width or height of the control changes. | FeathersControl | ||
![]()  | Dispatched when the scroller scrolls in either direction or when the view port's scrolling bounds have changed. | Scroller | ||
![]()  | Dispatched when the scroller finishes scrolling in either direction as a result of either user interaction or animation. | Scroller | ||
![]()  | Dispatched 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 | |||
![]()  | Dispatched when a pull view is activated. | Scroller | ||
| Style | Defined By | ||
|---|---|---|---|
![]()  | autoHideBackground : 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 | |
![]()  | backgroundDisabledSkin : DisplayObject A background to display when the container is disabled.  | Scroller | |
![]()  | backgroundSkin : DisplayObject The default background to display.  | Scroller | |
![]()  | clipContent : 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 | ||
![]()  | customHorizontalScrollBarStyleName : 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 | ||
![]()  | customVerticalScrollBarStyleName : String A style name to add to the container's vertical scroll bar sub-component.  | Scroller | |
![]()  | decelerationRate : Number This value is used to decelerate the scroller when "thrown".  | Scroller | |
![]()  | elasticity : 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 | |
![]()  | 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 | |
![]()  | focusIndicatorSkin : DisplayObject If this component supports focus, this optional skin will be displayed above the component when showFocus() is called.  | FeathersControl | |
![]()  | focusPadding : Number Quickly sets all focus padding properties to the same value.  | FeathersControl | |
![]()  | focusPaddingBottom : Number The minimum space, in pixels, between the object's bottom edge and the bottom edge of the focus indicator skin.  | FeathersControl | |
![]()  | focusPaddingLeft : Number The minimum space, in pixels, between the object's left edge and the left edge of the focus indicator skin.  | FeathersControl | |
![]()  | focusPaddingRight : Number The minimum space, in pixels, between the object's right edge and the right edge of the focus indicator skin.  | FeathersControl | |
![]()  | focusPaddingTop : Number The minimum space, in pixels, between the object's top edge and the top edge of the focus indicator skin.  | FeathersControl | |
![]()  | hasElasticEdges : Boolean Determines if the scrolling can go beyond the edges of the viewport.  | Scroller | |
![]()  | 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 | |
![]()  | horizontalScrollBarPosition : String Determines where the horizontal scroll bar will be positioned.  | Scroller | |
![]()  | interactionMode : String Determines how the user may interact with the scroller.  | Scroller | |
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 | ||
layout : ILayout The layout algorithm used to position and, optionally, size the list's items.  | GroupedList | ||
![]()  | mouseWheelScrollDuration : Number The duration, in seconds, of the animation when the mouse wheel initiates a scroll action.  | Scroller | |
![]()  | 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 | |
![]()  | revealScrollBarsDuration : Number The duration, in seconds, that the scroll bars will be shown when calling revealScrollBars().  | Scroller | |
![]()  | scrollBarDisplayMode : String Determines how the scroll bars are displayed.  | Scroller | |
![]()  | snapScrollPositionsToPixels : Boolean If enabled, the scroll position will always be adjusted to the nearest pixel on the physical screen.  | Scroller | |
![]()  | snapToPages : Boolean Determines if scrolling will snap to the nearest page.  | Scroller | |
![]()  | throwEase : Object The easing function used for "throw" animations.  | Scroller | |
![]()  | throwElasticity : 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 | |
![]()  | useFixedThrowDuration : Boolean If true, the duration of a "throw" animation will be the same no matter the value of the throw's initial velocity.  | Scroller | |
![]()  | verticalScrollBarPosition : String Determines where the vertical scroll bar will be positioned.  | Scroller | |
| Constant | Defined By | ||
|---|---|---|---|
| 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_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 | ||
| 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 | ||
![]()  | DEFAULT_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 | |
![]()  | DEFAULT_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 | |
![]()  | 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_FOCUS : String = "focus" [static] 
		 Invalidation flag to indicate that the focus of 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 | |
| dataProvider | property | 
dataProvider:IHierarchicalCollectionThe 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 ArrayHierarchicalCollection(
[
    {
      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;
};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 restriction 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 IHierarchicalCollection
		 to see how the data provider can be disposed properly.
 The default value is null.
    public function get dataProvider():IHierarchicalCollection    public function set dataProvider(value:IHierarchicalCollection):voidSee also
| factoryIDFunction | property | 
factoryIDFunction:Function
		 When a list requires multiple item renderer types, this function is
		 used to determine which type of item renderer is required for a
		 specific item (or index). Returns the ID of the item renderer type
		 to use for the item, or null if the default
		 itemRendererFactory should be used.
		 		 
The function is expected to have one of the following signatures:
function(item:Object):String
function(item:Object, groupIndex:int, itemIndex:int):String
The following example provides a factoryIDFunction:
function regularItemFactory():IGroupedListItemRenderer
{
    return new DefaultGroupedListItemRenderer();
}
function firstItemFactory():IGroupedListItemRenderer
{
    return new CustomItemRenderer();
}
list.setItemRendererFactoryWithID( "regular-item", regularItemFactory );
list.setItemRendererFactoryWithID( "first-item", firstItemFactory );
list.factoryIDFunction = function( item:Object, groupIndex:int, itemIndex:int ):String
{
    if(index == 0)
    {
        return "first-item";
    }
    return "regular-item";
}; The default value is null.
    public function get factoryIDFunction():Function    public function set factoryIDFunction(value:Function):voidSee also
| firstItemRendererFactory | property | 
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.
    public function get firstItemRendererFactory():Function    public function set firstItemRendererFactory(value:Function):voidSee also
| firstItemRendererType | property | 
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.
    public function get firstItemRendererType():Class    public function set firstItemRendererType(value:Class):voidSee also
| footerFactoryIDFunction | property | 
footerFactoryIDFunction:Function
		 When a list requires multiple footer renderer types, this function is
		 used to determine which type of footer renderer is required for a
		 specific footer (or group index). Returns the ID of the factory
		 to use for the footer, or null if the default
		 footerRendererFactory should be used.
		 		 
The function is expected to have one of the following signatures:
function(footer:Object):String
function(footer:Object, groupIndex:int):String
The following example provides a footerFactoryIDFunction:
function regularFooterFactory():IGroupedListFooterRenderer
{
    return new DefaultGroupedListHeaderOrFooterRenderer();
}
function customFooterFactory():IGroupedListFooterRenderer
{
    return new CustomFooterRenderer();
}
list.setFooterRendererFactoryWithID( "regular-footer", regularFooterFactory );
list.setFooterRendererFactoryWithID( "custom-footer", customFooterFactory );
list.footerFactoryIDFunction = function( footer:Object, groupIndex:int ):String
{
    //check if the footerAccessory property exists in the footer data
    if( "footerAccessory" in footer )
    {
        return "custom-footer";
    }
    return "regular-footer";
}; The default value is null.
    public function get footerFactoryIDFunction():Function    public function set footerFactoryIDFunction(value:Function):voidSee also
| footerField | property | 
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:
footerFunctionfooterFieldThe following example sets the footer field:
list.footerField = "controls";
 The default value is "footer".
    public function get footerField():String    public function set footerField(value:String):voidSee also
| footerFunction | property | 
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:
footerFunctionfooterFieldThe following example sets the footer function:
list.footerFunction = function( group:Object ):Object
{
   return group.footer;
}; The default value is null.
    public function get footerFunction():Function    public function set footerFunction(value:Function):voidSee also
| footerRendererFactory | property | 
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.
    public function get footerRendererFactory():Function    public function set footerRendererFactory(value:Function):voidSee also
| footerRendererProperties | property | 
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.
    public function get footerRendererProperties():Object    public function set footerRendererProperties(value:Object):voidSee also
| footerRendererType | property | 
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.
    public function get footerRendererType():Class    public function set footerRendererType(value:Class):voidSee also
| globalStyleProvider | property | 
public static var globalStyleProvider:IStyleProvider
		 The default IStyleProvider for all GroupedList
		 components.
		 		 
 The default value is null.
See also
| headerFactoryIDFunction | property | 
headerFactoryIDFunction:Function
		 When a list requires multiple header renderer types, this function is
		 used to determine which type of header renderer is required for a
		 specific header (or group index). Returns the ID of the factory
		 to use for the header, or null if the default
		 headerRendererFactory should be used.
		 		 
The function is expected to have one of the following signatures:
function(header:Object):String
function(header:Object, groupIndex:int):String
The following example provides a headerFactoryIDFunction:
function regularHeaderFactory():IGroupedListHeaderRenderer
{
    return new DefaultGroupedListHeaderOrFooterRenderer();
}
function customHeaderFactory():IGroupedListHeaderRenderer
{
    return new CustomHeaderRenderer();
}
list.setHeaderRendererFactoryWithID( "regular-header", regularHeaderFactory );
list.setHeaderRendererFactoryWithID( "custom-header", customHeaderFactory );
list.headerFactoryIDFunction = function( header:Object, groupIndex:int ):String
{
    //check if the subTitle property exists in the header data
    if( "subTitle" in header )
    {
        return "custom-header";
    }
    return "regular-header";
}; The default value is null.
    public function get headerFactoryIDFunction():Function    public function set headerFactoryIDFunction(value:Function):voidSee also
| headerField | property | 
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:
headerFunctionheaderFieldThe following example sets the header field:
list.headerField = "alphabet";
 The default value is "header".
    public function get headerField():String    public function set headerField(value:String):voidSee also
| headerFunction | property | 
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:
headerFunctionheaderFieldThe following example sets the header function:
list.headerFunction = function( group:Object ):Object
{
   return group.header;
}; The default value is null.
    public function get headerFunction():Function    public function set headerFunction(value:Function):voidSee also
| headerRendererFactory | property | 
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.
    public function get headerRendererFactory():Function    public function set headerRendererFactory(value:Function):voidSee also
| headerRendererProperties | property | 
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.
    public function get headerRendererProperties():Object    public function set headerRendererProperties(value:Object):voidSee also
| headerRendererType | property | 
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.
    public function get headerRendererType():Class    public function set headerRendererType(value:Class):voidSee also
| isChildFocusEnabled | property | 
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.
    public function get isChildFocusEnabled():Boolean    public function set isChildFocusEnabled(value:Boolean):voidSee also
| isSelectable | property | 
isSelectable:BooleanDetermines if an item in the list may be selected.
The following example disables selection:
list.isSelectable = false;
 The default value is true.
    public function get isSelectable():Boolean    public function set isSelectable(value:Boolean):voidSee also
| itemRendererFactory | property | 
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.
    public function get itemRendererFactory():Function    public function set itemRendererFactory(value:Function):voidSee also
| itemRendererProperties | property | 
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.
    public function get itemRendererProperties():Object    public function set itemRendererProperties(value:Object):voidSee also
| itemRendererType | property | 
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.
    public function get itemRendererType():Class    public function set itemRendererType(value:Class):voidSee also
| lastItemRendererFactory | property | 
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.
    public function get lastItemRendererFactory():Function    public function set lastItemRendererFactory(value:Function):voidSee also
| lastItemRendererType | property | 
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.
    public function get lastItemRendererType():Class    public function set lastItemRendererType(value:Class):voidSee also
| pendingGroupIndex | property | 
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.
		 
| pendingItemIndex | property | 
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.
		 
| selectedGroupIndex | property | 
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.
    public function get selectedGroupIndex():intSee also
| selectedItem | property | 
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.
    public function get selectedItem():Object    public function set selectedItem(value:Object):void| selectedItemIndex | property | 
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.
    public function get selectedItemIndex():intSee also
| singleItemRendererFactory | property | 
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.
    public function get singleItemRendererFactory():Function    public function set singleItemRendererFactory(value:Function):voidSee also
| singleItemRendererType | property | 
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.
    public function get singleItemRendererType():Class    public function set singleItemRendererType(value:Class):voidSee also
| typicalItem | property | 
typicalItem:ObjectUsed 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 }; The default value is null.
    public function get typicalItem():Object    public function set typicalItem(value:Object):void| GroupedList | () | Constructor | 
public function GroupedList()Constructor.
| footerDataToFooterRenderer | () | method | 
 public function footerDataToFooterRenderer(footerData:Object):IGroupedListFooterRenderer
		 Returns the current footer renderer used to render specific footer
		 data. May return null if the footer data doesn't
		 currently have a footer renderer. Most lists use virtual layouts
		 where only the visible footers will have a footer renderer, so the
		 result will usually be null for most footer data in the
		 data provider.
		 		 
Parameters
footerData:Object | 
IGroupedListFooterRenderer | 
See also
| getFooterRendererFactoryWithID | () | method | 
 public function getFooterRendererFactoryWithID(id:String):Function
		 Returns the footer renderer factory associated with a specific ID.
		 Returns null if no factory is associated with the ID.
		 		 
Parameters
id:String | 
Function | 
See also
| getHeaderRendererFactoryWithID | () | method | 
 public function getHeaderRendererFactoryWithID(id:String):Function
		 Returns the header renderer factory associated with a specific ID.
		 Returns null if no factory is associated with the ID.
		 		 
Parameters
id:String | 
Function | 
See also
| getItemRendererFactoryWithID | () | method | 
 public function getItemRendererFactoryWithID(id:String):Function
		 Returns the item renderer factory associated with a specific ID.
		 Returns null if no factory is associated with the ID.
		 		 
Parameters
id:String | 
Function | 
See also
| groupToFooterData | () | method | 
 public function groupToFooterData(group:Object):ObjectExtracts footer data from a group object.
Parameters
group:Object | 
Object | 
| groupToHeaderData | () | method | 
 public function groupToHeaderData(group:Object):ObjectExtracts header data from a group object.
Parameters
group:Object | 
Object | 
| headerDataToHeaderRenderer | () | method | 
 public function headerDataToHeaderRenderer(headerData:Object):IGroupedListHeaderRenderer
		 Returns the current header renderer used to render specific header
		 data. May return null if the header data doesn't
		 currently have a header renderer. Most lists use virtual layouts
		 where only the visible headers will have a header renderer, so the
		 result will usually be null for most header data in the
		 data provider.
		 
		 
Parameters
headerData:Object | 
IGroupedListHeaderRenderer | 
See also
| itemToItemRenderer | () | method | 
 public function itemToItemRenderer(item:Object):IGroupedListItemRenderer
		 Returns the current item renderer used to render a specific item. May
		 return null if an item doesn't currently have an item
		 renderer. Most lists use virtual layouts where only the visible items
		 will have an item renderer, so the result will usually be
		 null for most items in the data provider.
		 		 
Parameters
item:Object | 
IGroupedListItemRenderer | 
See also
| 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) | 
| setFooterRendererFactoryWithID | () | method | 
 public function setFooterRendererFactoryWithID(id:String, factory:Function):void
		 Associates a footer renderer factory with an ID to allow multiple
		 types of footer renderers may be displayed in the list. A custom
		 footerFactoryIDFunction may be specified to return the
		 ID of the factory to use for a specific footer in the data provider.
		 		 
Parameters
id:String | |
factory:Function | 
See also
| setHeaderRendererFactoryWithID | () | method | 
 public function setHeaderRendererFactoryWithID(id:String, factory:Function):void
		 Associates a header renderer factory with an ID to allow multiple
		 types of header renderers may be displayed in the list. A custom
		 headerFactoryIDFunction may be specified to return the
		 ID of the factory to use for a specific header in the data provider.
		 		 
Parameters
id:String | |
factory:Function | 
See also
| setItemRendererFactoryWithID | () | method | 
 public function setItemRendererFactoryWithID(id:String, factory:Function):void
		 Associates an item renderer factory with an ID to allow multiple
		 types of item renderers may be displayed in the list. A custom
		 factoryIDFunction may be specified to return the ID of
		 the factory to use for a specific item in the data provider.
		 		 
Parameters
id:String | |
factory:Function | 
See also
| setSelectedLocation | () | method | 
 public function setSelectedLocation(groupIndex:int, itemIndex:int):voidSets 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
| change | Event | 
starling.events.Eventstarling.events.Event.CHANGEDispatched when the selected item changes.
The properties of the event object have the following values:
| Property | Value | 
|---|---|
bubbles | false | 
currentTarget | The 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. | 
data | null | 
target | The 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. | 
See also
| rendererAdd | Event | 
starling.events.Eventfeathers.events.FeathersEventType.RENDERER_ADDDispatched 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:
| Property | Value | 
|---|---|
bubbles | false | 
currentTarget | The 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. | 
data | The item renderer that was added | 
target | The 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. | 
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 | 
starling.events.Eventfeathers.events.FeathersEventType.RENDERER_REMOVEDispatched 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:
| Property | Value | 
|---|---|
bubbles | false | 
currentTarget | The 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. | 
data | The item renderer that was removed | 
target | The 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. | 
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 | 
starling.events.Eventstarling.events.Event.TRIGGEREDDispatched 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:
| Property | Value | 
|---|---|
bubbles | false | 
currentTarget | The 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. | 
data | The item associated with the item renderer that was triggered. | 
target | The 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. | 
| layout | style | 
layout:ILayoutThe 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;
| keyScrollDuration | style | 
keyScrollDuration:NumberThe 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.
| customFooterRendererStyleName | style | 
customFooterRendererStyleName:StringA 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.
See also
| customHeaderRendererStyleName | style | 
customHeaderRendererStyleName:StringA 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.
See also
| customSingleItemRendererStyleName | style | 
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.
See also
| customLastItemRendererStyleName | style | 
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.
See also
| customFirstItemRendererStyleName | style | 
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.
See also
| customItemRendererStyleName | style | 
customItemRendererStyleName:StringA 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.
See also
| ALTERNATE_CHILD_STYLE_NAME_INSET_FIRST_ITEM_RENDERER | Constant | 
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_RENDERER | Constant | 
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_RENDERER | Constant | 
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_RENDERER | Constant | 
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_RENDERER | Constant | 
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_RENDERER | Constant | 
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_STYLE_NAME_INSET_GROUPED_LIST | Constant | 
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
| DEFAULT_CHILD_STYLE_NAME_FOOTER_RENDERER | Constant | 
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_RENDERER | Constant | 
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