Package | feathers.controls |
Class | public class DataGrid |
Inheritance | DataGrid Scroller FeathersControl starling.display.Sprite |
Implements | IDragSource, IDropTarget |
Product Version : | Feathers 3.4.0 |
The following example creates a data grid, gives it a data provider, defines its columns, and listens for when the selection changes:
var grid:DataGrid = new DataGrid(); grid.dataProvider = new ArrayCollection( [ { item: "Chicken breast", dept: "Meat", price: "5.90" }, { item: "Butter", dept: "Dairy", price: "4.69" }, { item: "Broccoli", dept: "Produce", price: "2.99" }, { item: "Whole Wheat Bread", dept: "Bakery", price: "2.49" }, ]); grid.columns = new ArrayCollection( [ new DataGridColumn("item", "Item"), new DataGridColumn("dept", "Department"), new DataGridColumn("price", "Unit Price"), ]); grid.addEventListener( Event.CHANGE, grid_changeHandler ); this.addChild( grid );
See also
Property | Defined By | ||
---|---|---|---|
addedEffect : Function
An optional effect that is activated when the component is added to
the stage. | FeathersControl | ||
allowMultipleSelection : Boolean
If true multiple items may be selected at a time. | DataGrid | ||
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 | ||
cellRendererFactory : Function
Specifies a default factory for cell renderers that will be used if
the cellRendererFactory from a
DataGridColumn is null. | DataGrid | ||
columns : IListCollection
Defines the columns to display for each item in the data provider. | DataGrid | ||
dataProvider : IListCollection
The collection of data displayed by the data grid. | DataGrid | ||
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 | ||
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 | ||
globalStyleProvider : IStyleProvider [static]
The default IStyleProvider for all List
components. | DataGrid | ||
headerRendererFactory : Function
Specifies a default factory for header renderers that will be used if
the headerRendererFactory from a
DataGridColumn is null. | DataGrid | ||
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. | DataGrid | ||
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 items in the data grid may be selected. | DataGrid | ||
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 | ||
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 | ||
reorderColumns : Boolean
Determines if the data grid's columns may be reordered using drag
and drop. | DataGrid | ||
resizableColumns : Boolean
Determines if the data grid's columns may be resized. | DataGrid | ||
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 | ||
selectedIndex : int
The index of the currently selected item. | DataGrid | ||
selectedIndices : Vector.<int>
The indices of the currently selected items. | DataGrid | ||
selectedItem : Object
The currently selected item. | DataGrid | ||
selectedItems : Vector.<Object>
The currently selected item. | DataGrid | ||
showEffect : Function
An optional effect that is activated when the component is shown. | FeathersControl | ||
sortableColumns : Boolean
Determines if the data grid's columns may be sorted. | DataGrid | ||
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 data grid when a virtualized layout is used. | DataGrid | ||
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 | ||
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. | DataGrid | ||
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 | ||
---|---|---|---|
DataGrid()
Constructor. | DataGrid | ||
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 | ||
getSelectedItems(result:Vector.<Object> = null):Vector.<Object>
Returns the selected items, with the ability to pass in an optional
result vector. | DataGrid | ||
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 | ||
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(index:int, animationDuration:Number = 0):void
Scrolls the data grid so that the specified item is visible. | DataGrid | ||
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 | ||
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 |
Method | Defined By | ||
---|---|---|---|
autoSizeIfNeeded():Boolean [override]
If the component's dimensions have not been set explicitly, it will
measure its content and determine an ideal size for itself. | DataGrid | ||
clearInvalidationFlag(flag:String):void
Clears an invalidation flag. | FeathersControl | ||
completeScroll():void
Prepares the scroller for normal interaction and dispatches
FeathersEventType.SCROLL_COMPLETE. | Scroller | ||
createScrollBars():void
Creates and adds the horizontalScrollBar and
verticalScrollBar sub-components and removes the old
instances, if they exist. | Scroller | ||
draw():void
Override to customize layout and to adjust properties of children. | FeathersControl | ||
focusInHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_IN
that may be overridden in subclasses to perform additional actions
when the component receives focus. | FeathersControl | ||
focusOutHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_OUT
that may be overridden in subclasses to perform additional actions
when the component loses focus. | FeathersControl | ||
handlePendingScroll():void
Scrolls to a pending scroll position, if required. | Scroller | ||
ignoreNextStyleRestriction():void
The next style that is set will not be restricted. | FeathersControl | ||
initialize():void
Called the first time that the UI control is added to the stage, and
you should override this function to customize the initialization
process. | FeathersControl | ||
layoutChildren():void
Positions and sizes children based on the actual width and height
values. | Scroller | ||
processStyleRestriction(key:Object):Boolean
Used by setters for properties that are considered "styles" to
determine if the setter has been called directly on the component or
from a style provider. | FeathersControl | ||
refreshBackgroundSkin():void
Choose the appropriate background skin based on the control's current
state. | Scroller | ||
refreshFocusIndicator():void
Updates the focus indicator skin by showing or hiding it and
adjusting its position and dimensions. | FeathersControl | ||
saveMeasurements(width:Number, height:Number, minWidth:Number = 0, minHeight:Number = 0):Boolean
Saves the dimensions and minimum dimensions calculated for the
component. | FeathersControl | ||
setInvalidationFlag(flag:String):void
Sets an invalidation flag. | FeathersControl | ||
setSizeInternal(width:Number, height:Number, canInvalidate:Boolean):Boolean
Sets the width and height of the control, with the option of
invalidating or not. | FeathersControl | ||
startScroll():void
If scrolling hasn't already started, prepares the scroller to scroll
and dispatches FeathersEventType.SCROLL_START. | Scroller | ||
throwTo(targetHorizontalScrollPosition:Number, targetVerticalScrollPosition:Number, duration:Number = 0.5):void
Immediately throws the scroller to the specified position, with
optional animation. | Scroller | ||
throwToPage(targetHorizontalPageIndex:int, targetVerticalPageIndex:int, duration:Number = 0.5):void
Immediately throws the scroller to the specified page index, with
optional animation. | Scroller |
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. | DataGrid | |||
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 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 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 | ||
columnDragAvatarAlpha : Number The alpha value used for the column's drag avatar. | DataGrid | ||
columnDragOverlaySkin : DisplayObject A skin to display when dragging one of the data grid's headers to highlight the column where it was orignally located. | DataGrid | ||
columnDropIndicatorSkin : DisplayObject A skin to display when dragging one of the data grid's headers to indicate where it can be dropped. | DataGrid | ||
columnResizeSkin : DisplayObject A skin to display when resizing one of the data grid's headers to indicate how it will be resized. | DataGrid | ||
customCellRendererStyleName : String Specifies a custom style name for cell renderers that will be used if the customCellRendererStyleName property from a DataGridColumn is null. | DataGrid | ||
customHeaderRendererStyleName : String Specifies a custom style name for header renderers that will be used if the customHeaderRendererStyleName property from a DataGridColumn is null. | DataGrid | ||
customHorizontalScrollBarStyleName : String A style name to add to the container's horizontal scroll bar sub-component. | Scroller | ||
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 | ||
extendedColumnDropIndicator : Boolean Determines if the height of the column drop indicator is equal to the height of the headers, or if it extends to the full height of the data grid's view port. | DataGrid | ||
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 | ||
headerBackgroundDisabledSkin : DisplayObject A background to display in the data grid's header when the container is disabled. | DataGrid | ||
headerBackgroundSkin : DisplayObject The default background to display in the data grid's header. | DataGrid | ||
headerDividerFactory : Function A function that returns new dividers that separate each of the data grid's header renderers. | DataGrid | ||
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. | DataGrid | ||
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 | ||
verticalDividerFactory : Function A function that returns new dividers that separate each of the data grid's columns. | DataGrid | ||
verticalScrollBarPosition : String Determines where the vertical scroll bar will be positioned. | Scroller |
allowMultipleSelection | property |
allowMultipleSelection:Boolean
If true
multiple items may be selected at a time. If
false
, then only a single item may be selected at a
time, and if the selection changes, other items are deselected. Has
no effect if isSelectable
is false
.
In the following example, multiple selection is enabled:
grid.allowMultipleSelection = true;
The default value is false
.
public function get allowMultipleSelection():Boolean
public function set allowMultipleSelection(value:Boolean):void
See also
cellRendererFactory | property |
cellRendererFactory:Function
Specifies a default factory for cell renderers that will be used if
the cellRendererFactory
from a
DataGridColumn
is null
.
The function is expected to have the following signature:
function():IDataGridCellRenderer
The following example provides a factory for the data grid:
grid.cellRendererFactory = function():IDataGridCellRenderer { var cellRenderer:CustomCellRendererClass = new CustomCellRendererClass(); cellRenderer.backgroundSkin = new Quad( 10, 10, 0xff0000 ); return cellRenderer; };
The default value is null
.
public function get cellRendererFactory():Function
public function set cellRendererFactory(value:Function):void
See also
columns | property |
columns:IListCollection
Defines the columns to display for each item in the data provider.
If null
, the data grid will attempt to populate the
columns automatically.
The following example passes in a data provider and columns:
grid.dataProvider = new ArrayCollection( [ { item: "Chicken breast", dept: "Meat", price: "5.90" }, { item: "Butter", dept: "Dairy", price: "4.69" }, { item: "Broccoli", dept: "Produce", price: "2.99" }, { item: "Whole Wheat Bread", dept: "Bakery", price: "2.49" }, ]); grid.columns = new ArrayCollection( [ new DataGridColumn("item", "Item"), new DataGridColumn("dept", "Department"), new DataGridColumn("price", "Unit Price"), ]);
The default value is null
.
public function get columns():IListCollection
public function set columns(value:IListCollection):void
See also
dataProvider | property |
dataProvider:IListCollection
The collection of data displayed by the data grid. Changing this property to a new value is considered a drastic change to the data grid's data, so the horizontal and vertical scroll positions will be reset, and the data grid's selection will be cleared.
The following example passes in a data provider and columns:
grid.dataProvider = new ArrayCollection( [ { item: "Chicken breast", dept: "Meat", price: "5.90" }, { item: "Butter", dept: "Dairy", price: "4.69" }, { item: "Broccoli", dept: "Produce", price: "2.99" }, { item: "Whole Wheat Bread", dept: "Bakery", price: "2.49" }, ]); grid.columns = new ArrayCollection( [ new DataGridColumn("item", "Item"), new DataGridColumn("dept", "Department"), new DataGridColumn("price", "Unit Price"), ]);
Warning: A data grid'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 data grid is
disposed. Similar to how starling.display.Image
cannot
automatically dispose its texture because the texture may be used
by other display objects, a data grid cannot dispose its data
provider because the data provider may be used by other data grids.
See the dispose()
function on
IListCollection
to see how the data provider can be
disposed properly.
The default value is null
.
public function get dataProvider():IListCollection
public function set dataProvider(value:IListCollection):void
See also
globalStyleProvider | property |
public static var globalStyleProvider:IStyleProvider
The default IStyleProvider
for all List
components.
The default value is null
.
See also
headerRendererFactory | property |
headerRendererFactory:Function
Specifies a default factory for header renderers that will be used if
the headerRendererFactory
from a
DataGridColumn
is null
.
The function is expected to have the following signature:
function():IDataGridHeaderRenderer
The following example provides a factory for the data grid:
grid.headerRendererFactory = function():IDataGridHeaderRenderer { var headerRenderer:CustomHeaderRendererClass = new CustomHeaderRendererClass(); headerRenderer.backgroundSkin = new Quad( 10, 10, 0xff0000 ); return headerRenderer; };
The default value is null
.
public function get headerRendererFactory():Function
public function set headerRendererFactory(value:Function):void
See 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):void
See also
isSelectable | property |
isSelectable:Boolean
Determines if items in the data grid may be selected. By default
only a single item may be selected at any given time. In other
words, if item A is selected, and the user selects item B, item A
will be deselected automatically. Set
allowMultipleSelection
to true
to select
more than one item without automatically deselecting other items.
The following example disables selection:
grid.isSelectable = false;
The default value is true
.
public function get isSelectable():Boolean
public function set isSelectable(value:Boolean):void
See also
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.
reorderColumns | property |
reorderColumns:Boolean
Determines if the data grid's columns may be reordered using drag and drop.
The following example enables column reordering:
grid.reorderColumns = true;
The default value is false
.
public function get reorderColumns():Boolean
public function set reorderColumns(value:Boolean):void
resizableColumns | property |
resizableColumns:Boolean
Determines if the data grid's columns may be resized.
The following example enables column resizing:
grid.resizableColumns = true;
The default value is false
.
public function get resizableColumns():Boolean
public function set resizableColumns(value:Boolean):void
See also
selectedIndex | property |
selectedIndex:int
The index of the currently selected item. Returns -1
if
no item is selected.
The following example selects an item by its index:
grid.selectedIndex = 2;
The following example clears the selected index:
grid.selectedIndex = -1;
The following example listens for when selection changes and requests the selected index:
function grid_changeHandler( event:Event ):void { var grid:DataGrid = DataGrid( event.currentTarget ); var index:int = grid.selectedIndex; } grid.addEventListener( Event.CHANGE, grid_changeHandler );
The default value is -1
.
public function get selectedIndex():int
public function set selectedIndex(value:int):void
See also
selectedIndices | property |
selectedIndices:Vector.<int>
The indices of the currently selected items. Returns an empty Vector.<int>
if no items are selected. If allowMultipleSelection
is
false
, only one item may be selected at a time.
The following example selects two items by their indices:
grid.selectedIndices = new <int>[ 2, 3 ];
The following example clears the selected indices:
grid.selectedIndices = null;
The following example listens for when selection changes and requests the selected indices:
function grid_changeHandler( event:Event ):void { var grid:DataGrid = DataGrid( event.currentTarget ); var indices:Vector.<int> = grid.selectedIndices; } grid.addEventListener( Event.CHANGE, grid_changeHandler );
public function get selectedIndices():Vector.<int>
public function set selectedIndices(value:Vector.<int>):void
See also
selectedItem | property |
selectedItem:Object
The currently selected item. Returns null
if no item is
selected.
The following example changes the selected item:
grid.selectedItem = grid.dataProvider.getItemAt(0);
The following example clears the selected item:
grid.selectedItem = null;
The following example listens for when selection changes and requests the selected item:
function grid_changeHandler( event:Event ):void { var grid:DataGrid = DataGrid( event.currentTarget ); var item:Object = grid.selectedItem; } grid.addEventListener( Event.CHANGE, grid_changeHandler );
The default value is null
.
public function get selectedItem():Object
public function set selectedItem(value:Object):void
See also
selectedItems | property |
selectedItems:Vector.<Object>
The currently selected item. The getter returns an empty
Vector.<Object>
if no item is selected. If any
items are selected, the getter creates a new
Vector.<Object>
to return a list of selected
items.
The following example selects two items:
grid.selectedItems = new <Object>[ grid.dataProvider.getItemAt(2) , grid.dataProvider.getItemAt(3) ];
The following example clears the selected items:
grid.selectedItems = null;
The following example listens for when selection changes and requests the selected items:
function grid_changeHandler( event:Event ):void { var grid:DataGrid = DataGrid( event.currentTarget ); var items:Vector.<Object> = grid.selectedItems; } grid.addEventListener( Event.CHANGE, grid_changeHandler );
public function get selectedItems():Vector.<Object>
public function set selectedItems(value:Vector.<Object>):void
See also
sortableColumns | property |
sortableColumns:Boolean
Determines if the data grid's columns may be sorted.
The following example enables column sorting:
grid.sortableColumns = true;
The default value is false
.
public function get sortableColumns():Boolean
public function set sortableColumns(value:Boolean):void
See also
typicalItem | property |
typicalItem:Object
Used to auto-size the data grid when a virtualized layout is used. If the data grid's width or height is unknown, the data grid 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:
grid.typicalItem = { text: "A typical item", thumbnail: texture };
The default value is null
.
public function get typicalItem():Object
public function set typicalItem(value:Object):void
DataGrid | () | Constructor |
public function DataGrid()
Constructor.
autoSizeIfNeeded | () | method |
override protected function autoSizeIfNeeded():Boolean
If the component's dimensions have not been set explicitly, it will
measure its content and determine an ideal size for itself. If the
explicitWidth
or explicitHeight
member
variables are set, those value will be used without additional
measurement. If one is set, but not the other, the dimension with the
explicit value will not be measured, but the other non-explicit
dimension will still need measurement.
Calls saveMeasurements()
to set up the
actualWidth
and actualHeight
member
variables used for layout.
Meant for internal use, and subclasses may override this function with a custom implementation.
ReturnsBoolean |
getSelectedItems | () | method |
public function getSelectedItems(result:Vector.<Object> = null):Vector.<Object>
Returns the selected items, with the ability to pass in an optional
result vector. Better for performance than the selectedItems
getter because it can avoid the allocation, and possibly garbage
collection, of the result object.
Parameters
result:Vector.<Object> (default = null )
|
Vector.<Object> |
See also
scrollToDisplayIndex | () | method |
public function scrollToDisplayIndex(index:int, animationDuration:Number = 0):void
Scrolls the data grid so that the specified item is visible. If
animationDuration
is greater than zero, the scroll will
animate. The duration is in seconds.
If the layout is virtual with variable item dimensions, this function may not accurately scroll to the exact correct position. A virtual layout with variable item dimensions is often forced to estimate positions, so the results aren't guaranteed to be accurate.
If you want to scroll to the end of the data grid, it is better
to use scrollToPosition()
with
maxHorizontalScrollPosition
or
maxVerticalScrollPosition
.
In the following example, the data grid is scrolled to display index 10:
grid.scrollToDisplayIndex( 10 );
Parameters
index:int — The integer index of an item from the data provider.
| |
animationDuration:Number (default = 0 ) — The length of time, in seconds, of the animation. May be zero to scroll instantly.
|
See also
change | Event |
starling.events.Event
starling.events.Event.CHANGE
Dispatched 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
verticalDividerFactory | style |
verticalDividerFactory:Function
A function that returns new dividers that separate each of the data
grid's columns. If null
, no dividers will appear between
columns.
The function is expected to have the following signature:
function():DisplayObject
The following example provides a factory for the vertical dividers:
grid.verticalDividerFactory = function():DisplayObject { return = new ImageSkin( texture ); };
The default value is null
.
keyScrollDuration | style |
keyScrollDuration:Number
The duration, in seconds, of the animation when the selected item is changed by keyboard navigation and the item scrolls into view.
In the following example, the duration of the animation that scrolls the list to a new selected item is set to 500 milliseconds:
list.keyScrollDuration = 0.5;
The default value is 0.25
.
columnDropIndicatorSkin | style |
columnDropIndicatorSkin:DisplayObject
A skin to display when dragging one of the data grid's headers to indicate where it can be dropped.
In the following example, the data grid's header drag indicator is provided:
grid.columnDropIndicatorSkin = new Image( texture );
The default value is null
.
See also
columnDragAvatarAlpha | style |
columnDragAvatarAlpha:Number
The alpha value used for the column's drag avatar.
In the following example, the data grid's column drag avatar alpha value is customized:
grid.columnDragAvatarAlpha = 0.5;
The default value is 0.8
.
See also
headerBackgroundDisabledSkin | style |
headerBackgroundDisabledSkin:DisplayObject
A background to display in the data grid's header when the container is disabled.
In the following example, the data grid's header is given a disabled background skin:
grid.headerBackgroundDisabledSkin = new Image( texture );
The default value is null
.
See also
headerDividerFactory | style |
headerDividerFactory:Function
A function that returns new dividers that separate each of the data
grid's header renderers. If null
, no dividers will appear
between the header renderers.
The function is expected to have the following signature:
function():DisplayObject
The following example provides a factory for the header dividers:
grid.headerDividerFactory = function():DisplayObject { return = new ImageSkin( texture ); };
The default value is null
.
headerBackgroundSkin | style |
headerBackgroundSkin:DisplayObject
The default background to display in the data grid's header.
In the following example, the data grid's header is given a background skin:
scroller.headerBackgroundSkin = new Image( texture );
The default value is null
.
See also
extendedColumnDropIndicator | style |
extendedColumnDropIndicator:Boolean
Determines if the height of the column drop indicator is equal to the height of the headers, or if it extends to the full height of the data grid's view port.
In the following example, the data grid's column drop skin is extended:
grid.extendedColumnDropIndicator = true;
The default value is false
.
See also
customHeaderRendererStyleName | style |
customHeaderRendererStyleName:String
Specifies a custom style name for header renderers that will be used if
the customHeaderRendererStyleName
property from a
DataGridColumn
is null
.
The following example sets the header renderer style name:
column.customHeaderRendererStyleName = "my-custom-header-renderer";
In your theme, you can target this sub-component name to provide different skins than the default style:
getStyleProviderForClass( DefaultDataGridHeaderRenderer ).setFunctionForStyleName( "my-custom-header-renderer", setCustomHeaderRendererStyles );
The default value is null
.
See also
customCellRendererStyleName | style |
customCellRendererStyleName:String
Specifies a custom style name for cell renderers that will be used if
the customCellRendererStyleName
property from a
DataGridColumn
is null
.
The following example sets the cell renderer style name:
column.customCellRendererStyleName = "my-custom-cell-renderer";
In your theme, you can target this sub-component name to provide different skins than the default style:
getStyleProviderForClass( DefaultDataGridCellRenderer ).setFunctionForStyleName( "my-custom-cell-renderer", setCustomCellRendererStyles );
The default value is null
.
See also
columnResizeSkin | style |
columnResizeSkin:DisplayObject
A skin to display when resizing one of the data grid's headers to indicate how it will be resized.
In the following example, the data grid's column resize skin is provided:
grid.columnResizeSkin = new Image( texture );
The default value is null
.
See also
columnDragOverlaySkin | style |
columnDragOverlaySkin:DisplayObject
A skin to display when dragging one of the data grid's headers to highlight the column where it was orignally located.
In the following example, the data grid's column overlay skin is provided:
var skin:Quad = new Quad(1, 1, 0x999999); skin.alpha = 0.5; grid.columnDragOverlaySkin = skin;
The default value is null
.
See also