Packagefeathers.controls
Classpublic class TabBar
InheritanceTabBar Inheritance FeathersControl Inheritance Sprite Inheritance DisplayObjectContainer Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object
Subclasses PluginButtonBar

A line of tabs (vertical or horizontal), where one may be selected at a time.

Default MXML PropertydataProvider

See also

http://wiki.starling-framework.org/feathers/tab-bar


Public Properties
 PropertyDefined By
 Inheritedalpha : Number
The opacity of the object.
DisplayObject
 Inheritedbase : DisplayObject
[read-only] The topmost object in the display tree the object is part of.
DisplayObject
 InheritedblendMode : String
The blend mode determines how the object is blended with the objects underneath.
DisplayObject
 Inheritedbounds : Rectangle
[read-only] The bounds of the object relative to the local coordinates of the parent.
DisplayObject
 InheritedclipRect : Rectangle
[override]
FeathersControl
  customFirstTabName : String
A name to add to the first tab in this tab bar.
TabBar
  customLastTabName : String
A name to add to the last tab in this tab bar.
TabBar
  customTabName : String
A name to add to all tabs in this tab bar.
TabBar
  dataProvider : ListCollection
The collection of data to be displayed with tabs.
TabBar
 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
  direction : String
The tab bar layout is either vertical or horizontal.
TabBar
 Inheritedfilter : FragmentFilter
The filter that is attached to the display object.
DisplayObject
  firstTabFactory : Function
Creates a new first tab.
TabBar
 InheritedfocusManager : IFocusManager
The current focus manager for this component.
FeathersControl
  gap : Number
Space, in pixels, between tabs.
TabBar
 InheritedhasVisibleArea : Boolean
[read-only] Indicates if an object occupies any visible area.
DisplayObject
 Inheritedheight : Number
[override] The height of the component, in pixels.
FeathersControl
 InheritedincludeInLayout : Boolean
Determines if the ILayout should use this object or ignore it.
FeathersControl
 InheritedisEnabled : Boolean
Indicates whether the control is interactive or not.
FeathersControl
 InheritedisFlattened : Boolean
[read-only] Indicates if the sprite was flattened.
Sprite
 InheritedisFocusEnabled : Boolean
Determines if this component can receive focus.
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
  lastTabFactory : Function
Creates a new last tab.
TabBar
 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
 InheritedmaxWidth : Number
The maximum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminHeight : Number
The minimum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminTouchHeight : Number
If using isQuickHitAreaEnabled, and the hit area's height is smaller than this value, it will be expanded.
FeathersControl
 InheritedminTouchWidth : Number
If using isQuickHitAreaEnabled, and the hit area's width is smaller than this value, it will be expanded.
FeathersControl
 InheritedminWidth : Number
The minimum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 Inheritedname : String
[override] The concatenated nameList, with each name separated by spaces.
FeathersControl
 InheritednameList : TokenList
[read-only] Contains a list of all "names" assigned to this control.
FeathersControl
 InheritednextTabFocus : IFocusDisplayObject
The next object that will receive focus when the tab key is pressed.
FeathersControl
 InheritednumChildren : int
[read-only] The number of children of this container.
DisplayObjectContainer
 Inheritedparent : DisplayObjectContainer
[read-only] The display object container that contains this display object.
DisplayObject
 InheritedpivotX : Number
The x coordinate of the object's origin in its own coordinate space (default: 0).
DisplayObject
 InheritedpivotY : Number
The y coordinate of the object's origin in its own coordinate space (default: 0).
DisplayObject
 Inheritedroot : DisplayObject
[read-only] The root object the display object is connected to (i.e.
DisplayObject
 Inheritedrotation : Number
The rotation of the object in radians.
DisplayObject
 InheritedscaleX : Number
The horizontal scale factor.
DisplayObject
 InheritedscaleY : Number
The vertical scale factor.
DisplayObject
  selectedIndex : int
The index of the currently selected tab.
TabBar
  selectedItem : Object
The currently selected item from the data provider.
TabBar
 InheritedskewX : Number
The horizontal skew angle in radians.
DisplayObject
 InheritedskewY : Number
The vertical skew angle in radians.
DisplayObject
 Inheritedstage : Stage
[read-only] The stage the display object is connected to, or null if it is not connected to the stage.
DisplayObject
  tabFactory : Function
Creates a new tab.
TabBar
  tabInitializer : Function
Modifies a tab, perhaps by changing its label and icons, based on the item from the data provider that the tab is meant to represent.
TabBar
  tabProperties : Object
A set of key/value pairs to be passed down to all of the tab bar's tabs.
TabBar
 Inheritedtouchable : Boolean
Indicates if this object (and its children) will receive touch events.
DisplayObject
 InheritedtransformationMatrix : Matrix
The transformation matrix of the object relative to its parent.
DisplayObject
 InheriteduseHandCursor : Boolean
Indicates if the mouse cursor should transform into a hand while it's over the sprite.
DisplayObject
 Inheritedvisible : Boolean
The visibility of the object.
DisplayObject
 Inheritedwidth : Number
[override] The width of the component, in pixels.
FeathersControl
 Inheritedx : Number
The x coordinate of the object relative to the local coordinates of the parent.
DisplayObject
 Inheritedy : Number
The y coordinate of the object relative to the local coordinates of the parent.
DisplayObject
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
 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
  firstTabName : String = feathers-tab-bar-tab
The value added to the nameList of the first tab.
TabBar
  lastTabName : String = feathers-tab-bar-tab
The value added to the nameList of the last tab.
TabBar
  tabName : String = feathers-tab-bar-tab
The value added to the nameList of the tabs.
TabBar
  toggleGroup : ToggleGroup
The toggle group.
TabBar
Public Methods
 MethodDefined By
  
Constructor.
TabBar
 Inherited
Adds a child to the container.
DisplayObjectContainer
 Inherited
Adds a child to the container at a certain index.
DisplayObjectContainer
 Inherited
addEventListener(type:String, listener:Function):void
[override]
DisplayObject
 Inherited
alignPivot(hAlign:String = center, vAlign:String = center):void
Moves the pivot point to a certain position within the local coordinate system of the object.
DisplayObject
 Inherited
broadcastEvent(event:Event):void
Dispatches an event on all children (recursively).
DisplayObjectContainer
 Inherited
broadcastEventWith(type:String, data:Object = null):void
Dispatches an event with the given parameters on all children (recursively).
DisplayObjectContainer
 Inherited
contains(child:DisplayObject):Boolean
Determines if a certain object is a child of the container (recursively).
DisplayObjectContainer
 Inherited
dispatchEvent(event:Event):void
Dispatches an event to all objects that have registered listeners for its type.
EventDispatcher
 Inherited
dispatchEventWith(type:String, bubbles:Boolean = false, data:Object = null):void
Dispatches an event with the given parameters to all objects that have registered listeners for the given type.
EventDispatcher
 Inherited
dispose():void
[override] Disposes the resources of all children.
Sprite
 Inherited
flatten():void
Optimizes the sprite for optimal rendering performance.
Sprite
 Inherited
getBounds(targetSpace:DisplayObject, resultRect:Rectangle = null):Rectangle
[override] Returns a rectangle that completely encloses the object as it appears in another coordinate system.
Sprite
 Inherited
Returns a child object at a certain index.
DisplayObjectContainer
 Inherited
Returns a child object with a certain name (non-recursively).
DisplayObjectContainer
 Inherited
Returns the index of a child within the container, or "-1" if it is not found.
DisplayObjectContainer
 Inherited
getClipRect(targetSpace:DisplayObject, resultRect:Rectangle = null):Rectangle
Returns the bounds of the container's clipRect in the given coordinate space, or null if the sprite doens't have a clipRect.
Sprite
 Inherited
getTransformationMatrix(targetSpace:DisplayObject, resultMatrix:Matrix = null):Matrix
Creates a matrix that represents the transformation from the local coordinate system to another.
DisplayObject
 Inherited
globalToLocal(globalPoint:Point, resultPoint:Point = null):Point
Transforms a point from global (stage) coordinates to the local coordinate system.
DisplayObject
 Inherited
hasEventListener(type:String):Boolean
Returns if there are listeners registered for a certain event type.
EventDispatcher
 Inherited
hitTest(localPoint:Point, forTouch:Boolean = false):DisplayObject
[override] Returns the object that is found topmost beneath a point in local coordinates, or nil if the test fails.
Sprite
 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
localToGlobal(localPoint:Point, resultPoint:Point = null):Point
Transforms a point from the local coordinate system to global (stage) coordinates.
DisplayObject
 Inherited
removeChild(child:DisplayObject, dispose:Boolean = false):DisplayObject
Removes a child from the container.
DisplayObjectContainer
 Inherited
removeChildAt(index:int, dispose:Boolean = false):DisplayObject
Removes a child at a certain index.
DisplayObjectContainer
 Inherited
removeChildren(beginIndex:int = 0, endIndex:int = -1, dispose:Boolean = false):void
Removes a range of children from the container (endIndex included).
DisplayObjectContainer
 Inherited
removeEventListener(type:String, listener:Function):void
[override]
DisplayObject
 Inherited
removeEventListeners(type:String = null):void
[override]
DisplayObject
 Inherited
removeFromParent(dispose:Boolean = false):void
Removes the object from its parent, if it has one, and optionally disposes it.
DisplayObject
 Inherited
render(support:RenderSupport, parentAlpha:Number):void
[override] Renders the display object with the help of a support object.
Sprite
 Inherited
setChildIndex(child:DisplayObject, index:int):void
Moves a child to a certain index.
DisplayObjectContainer
 Inherited
setSize(width:Number, height:Number):void
Sets both the width and the height of the control.
FeathersControl
 Inherited
sortChildren(compareFunction:Function):void
Sorts the children according to a given function (that works just like the sort function of the Vector class).
DisplayObjectContainer
 Inherited
Swaps the indexes of two children.
DisplayObjectContainer
 Inherited
swapChildrenAt(index1:int, index2:int):void
Swaps the indexes of two children.
DisplayObjectContainer
 Inherited
unflatten():void
Removes the rendering optimizations that were created when flattening the sprite.
Sprite
 Inherited
validate():void
Immediately validates the control, which triggers a redraw, if one is pending.
FeathersControl
Protected Methods
 MethodDefined By
 Inherited
draw():void
Override to customize layout and to adjust properties of children.
FeathersControl
 Inherited
initialize():void
Called the first time that the UI control is added to the stage, and you should override this function to customize the initialization process.
FeathersControl
 Inherited
setSizeInternal(width:Number, height:Number, canInvalidate:Boolean):Boolean
Sets the width and height of the control, with the option of invalidating or not.
FeathersControl
Events
 Event Summary Defined By
 InheritedDispatched when an object is added to a parent.DisplayObject
 InheritedDispatched when an object is connected to the stage (directly or indirectly).DisplayObject
  Dispatched when the selected tab changes.TabBar
 InheritedDispatched once every frame on every object that is connected to the stage.DisplayObject
 InheritedDispatched on all children when the object is flattened.Sprite
 InheritedDispatched after initialize() has been called, but before the first time that draw() has been called.FeathersControl
 InheritedDispatched when a key on the keyboard is pressed.DisplayObject
 InheritedDispatched when a key on the keyboard is released.DisplayObject
 InheritedDispatched when an object is removed from its parent.DisplayObject
 InheritedDispatched when an object is removed from the stage and won't be rendered any longer.DisplayObject
 InheritedDispatched when the width or height of the control changes.FeathersControl
 InheritedDispatched when an object is touched.DisplayObject
Public Constants
 ConstantDefined By
  DEFAULT_CHILD_NAME_TAB : String = feathers-tab-bar-tab
[static] The default value added to the nameList of the tabs.
TabBar
  DIRECTION_HORIZONTAL : String = horizontal
[static] The tabs are displayed in order from left to right.
TabBar
  DIRECTION_VERTICAL : String = vertical
[static] The tabs are displayed in order from top to bottom.
TabBar
 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_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
Property Detail
customFirstTabNameproperty
customFirstTabName:String

A name to add to the first tab in this tab bar. Typically used by a theme to provide different skins to the first tab.


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

See also

customLastTabNameproperty 
customLastTabName:String

A name to add to the last tab in this tab bar. Typically used by a theme to provide different skins to the last tab.


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

See also

customTabNameproperty 
customTabName:String

A name to add to all tabs in this tab bar. Typically used by a theme to provide different skins to different tab bars.


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

See also

dataProviderproperty 
dataProvider:ListCollection

The collection of data to be displayed with tabs.


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

See also

directionproperty 
direction:String

The tab bar layout is either vertical or horizontal.


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

See also

firstTabFactoryproperty 
firstTabFactory:Function

Creates a new first tab. If the firstTabFactory is null, then the TabBar will use the tabFactory.

This function is expected to have the following signature:

function():Button


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

See also

firstTabNameproperty 
protected var firstTabName:String = feathers-tab-bar-tab

The value added to the nameList of the first tab.

gapproperty 
gap:Number

Space, in pixels, between tabs.


Implementation
    public function get gap():Number
    public function set gap(value:Number):void
lastTabFactoryproperty 
lastTabFactory:Function

Creates a new last tab. If the lastTabFactory is null, then the TabBar will use the tabFactory.

This function is expected to have the following signature:

function():Button


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

See also

lastTabNameproperty 
protected var lastTabName:String = feathers-tab-bar-tab

The value added to the nameList of the last tab.

selectedIndexproperty 
selectedIndex:int

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


Implementation
    public function get selectedIndex():int
    public function set selectedIndex(value:int):void
selectedItemproperty 
selectedItem:Object

The currently selected item from the data provider. Returns null if no item is selected.


Implementation
    public function get selectedItem():Object
    public function set selectedItem(value:Object):void
tabFactoryproperty 
tabFactory:Function

Creates a new tab.

This function is expected to have the following signature:

function():Button


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

See also

tabInitializerproperty 
tabInitializer:Function

Modifies a tab, perhaps by changing its label and icons, based on the item from the data provider that the tab is meant to represent. The default tabInitializer function can set the tab's label and icons if label and/or any of the Button icon fields (defaultIcon, upIcon, etc.) are present in the item.

This function is expected to have the following signature:

function( tab:Button, item:Object ):void


Implementation
    public function get tabInitializer():Function
    public function set tabInitializer(value:Function):void
tabNameproperty 
protected var tabName:String = feathers-tab-bar-tab

The value added to the nameList of the tabs.

tabPropertiesproperty 
tabProperties:Object

A set of key/value pairs to be passed down to all of the tab bar's tabs. These values are shared by each tabs, so values that cannot be shared (such as display objects that need to be added to the display list) should be passed to tabs in another way (such as with an DisplayListWatcher).

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

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


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

See also

toggleGroupproperty 
protected var toggleGroup:ToggleGroup

The toggle group.

Constructor Detail
TabBar()Constructor
public function TabBar()

Constructor.

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

Dispatched when the selected tab changes.

An event type to be utilized in custom events. Not used by Starling right now.
Constant Detail
DEFAULT_CHILD_NAME_TABConstant
public static const DEFAULT_CHILD_NAME_TAB:String = feathers-tab-bar-tab

The default value added to the nameList of the tabs.

DIRECTION_HORIZONTALConstant 
public static const DIRECTION_HORIZONTAL:String = horizontal

The tabs are displayed in order from left to right.

DIRECTION_VERTICALConstant 
public static const DIRECTION_VERTICAL:String = vertical

The tabs are displayed in order from top to bottom.