Packagespark.components.gridClasses
Classpublic class GridItemRenderer
InheritanceGridItemRenderer Inheritance Group Inheritance GroupBase Inheritance UIComponent Inheritance FlexSprite Inheritance flash.display.Sprite
Implements IGridItemRenderer
Subclasses DefaultGridHeaderRenderer

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

The GridItemRenderer class defines the base class for custom item renderers for the Spark grid controls, such as DataGrid and Grid. Item renderers are only required to display column-specific aspects of their data. They are not responsible for displaying the selection or hover indicators, the alternating background color (if any), or row or column separators.

Item renderers are associated with each column of a grid. Set the item renderer for a column by using the GridColumn.itemRenderer property.

By default, an item renderer does not clip to the boundaries of the cell. If your renderer extends past the bounds of the cell, you can set clipAndEnableScrolling to true to clip the renderer to the bounds of the cell.

Transitions in DataGrid item renderers aren't supported. The GridItemRenderer class has disabled its transitions property so setting it will have no effect.

Efficiency Considerations

DataGrid scrolling and startup performance are directly linked to item renderer complexity and the number of item renderers that are visible within the DataGrid's scroller. Custom GridItemRenderer instances are used and reused repeatedly so it's important to define them as simply and efficiently as possible.

If an item renderer's responsibility is limited to displaying one or more lines of text, then developers should seriously consider using the DefaultItemRenderer class which does so very economically (an application that's only going to be deployed on Windows one can gain some additional performance by using the UITextFieldGridItemRenderer class instead). The most efficient way to use GridItemRenderer to display the GridColumn's dataField as text is to identify the GridItemRenderer's text displaying element with id="labelDisplay". The labelDisplay component must be a TextBase subclass like Label or RichText. You might take this approach, instead of just using DefaultGridItemRenderer, if your item renderer included some additional elements that did not depend on the item renderer's data, like borders or other graphic elements.

An item renderer that contains more than one visual element whose properties depend on the item renderer's data can use data binding to define the values of those properties. This approach yields MXML code that's straightforward to read and maintain and its performance may be adequate if the number of visible item renderers is limited (see the DataGrid requestedRowCount and requestedColumnCount properties). The most efficient way to configure this kind of item renderer is to override its prepare() method and do the work there. The renderer's prepare() method is called each time the renderer is redisplayed and so it's important that it's coded efficiently. If your item renderer is stateful, for example if it caches internal values, you can clear its state in its discard() method. The discard() method is called each time the renderer is moved to the DataGrid's internal free list, where it's available for reuse.

GridItemRenderers should be as simple as possible. To gain the best possible performance, minimize the number of components, and the depth of the hierarchy. If it's practical, use explicit positions and sizes rather than constraints to define the layout. DataGrid's with variableRowHeight="false" (the default) tend to perform better, likewise for showDataTips="false" (the default) and clipAndEnableScrolling="false" (the default).

Examples of the various GridItemRenderer configurations described here are available in the examples section.

Default MXML PropertymxmlContent

View the examples

See also

spark.components.DataGrid
spark.components.Grid
spark.components.gridClasses.GridColumn
spark.components.gridClasses.GridColumn.itemRenderer
spark.skins.spark.DefaultGridItemRenderer


Public Properties
 PropertyDefined By
 InheritedaccessibilityDescription : String
A convenience accessor for the description property in this UIComponent's accessibilityProperties object.
UIComponent
 InheritedaccessibilityEnabled : Boolean
A convenience accessor for the silent property in this UIComponent's accessibilityProperties object.
UIComponent
 InheritedaccessibilityName : String
A convenience accessor for the name property in this UIComponent's accessibilityProperties object.
UIComponent
 InheritedaccessibilityShortcut : String
A convenience accessor for the shortcut property in this UIComponent's accessibilityProperties object.
UIComponent
 InheritedactiveEffects : Array
[read-only] The list of effects that are currently playing on the component, as an Array of EffectInstance instances.
UIComponent
 InheritedautoLayout : Boolean
If true, measurement and layout are done when the position or size of a child is changed.
GroupBase
 InheritedautomationDelegate : Object
The delegate object that handles the automation-related functionality.
UIComponent
 InheritedautomationEnabled : Boolean
[read-only] True if this component is enabled for automation, false otherwise.
UIComponent
 InheritedautomationName : String
Name that can be used as an identifier for this object.
UIComponent
 InheritedautomationOwner : DisplayObjectContainer
[read-only] The owner of this component for automation purposes.
UIComponent
 InheritedautomationParent : DisplayObjectContainer
[read-only] The parent of this component for automation purposes.
UIComponent
 InheritedautomationTabularData : Object
[read-only] An implementation of the IAutomationTabularData interface, which can be used to retrieve the data.
UIComponent
 InheritedautomationValue : Array
[read-only] This value generally corresponds to the rendered appearance of the object and should be usable for correlating the identifier with the object as it appears visually within the application.
UIComponent
 InheritedautomationVisible : Boolean
[read-only] True if this component is visible for automation, false otherwise.
UIComponent
 Inheritedbaseline : Object
For components, this layout constraint property is a facade on top of the similarly-named style.
UIComponent
 InheritedbaselinePosition : Number
[override] [read-only] The y-coordinate of the baseline of the first line of text of the component.
Group
 InheritedbaselinePositionElement : IVisualElement
The element used to calculate the GroupBase's baselinePosition
Group
 InheritedblendMode : String
[override] A value from the BlendMode class that specifies which blend mode to use.
Group
 Inheritedbottom : Object
For components, this layout constraint property is a facade on top of the similarly-named style.
UIComponent
 InheritedcacheHeuristic : Boolean
[write-only] Used by Flex to suggest bitmap caching for the object.
UIComponent
 InheritedcachePolicy : String
Specifies the bitmap caching policy for this object.
UIComponent
 InheritedclassName : String
[read-only] The name of this instance's class, such as "Button".
UIComponent
 InheritedclipAndEnableScrolling : Boolean
If true, specifies to clip the children to the boundaries of the viewport.
GroupBase
  column : GridColumn
The GridColumn object representing the column associated with this item renderer.
GridItemRenderer
  columnIndex : int
[read-only] The column index for this item renderer's cell.
GridItemRenderer
 InheritedcontentHeight : Number
[read-only] The height of the viewport's content.
GroupBase
 InheritedcontentMouseX : Number
[read-only] Returns the x position of the mouse, in the content coordinate system.
UIComponent
 InheritedcontentMouseY : Number
[read-only] Returns the y position of the mouse, in the content coordinate system.
UIComponent
 InheritedcontentWidth : Number
[read-only] The width of the viewport's contents.
GroupBase
 InheritedcurrentState : String
The current view state of the component.
UIComponent
 InheritedcursorManager : ICursorManager
[read-only] Gets the CursorManager that controls the cursor for this component and its peers.
UIComponent
  data : Object
The value of the data provider item for the grid row corresponding to the item renderer.
GridItemRenderer
 Inheriteddepth : Number
Determines the order in which items inside of containers are rendered.
UIComponent
 Inheriteddescriptor : UIComponentDescriptor
Reference to the UIComponentDescriptor, if any, that was used by the createComponentFromDescriptor() method to create this UIComponent instance.
UIComponent
 InheriteddesignLayer : DesignLayer
Specifies the optional DesignLayer instance associated with this visual element.
UIComponent
 Inheriteddocument : Object
A reference to the document object associated with this UIComponent.
UIComponent
 InheriteddoubleClickEnabled : Boolean
[override] Specifies whether the UIComponent object receives doubleClick events.
UIComponent
  down : Boolean
This property is set to true when one of two input gestures occurs within a grid cell: either the mouse button or the touch screen is pressed.
GridItemRenderer
  dragging : Boolean
Contains true if the item renderer is being dragged, typically as part of a drag and drop operation.
GridItemRenderer
 Inheritedenabled : Boolean
Whether the component can accept user interaction.
UIComponent
 InheritederrorString : String
The text that displayed by a component's error tip when a component is monitored by a Validator and validation fails.
UIComponent
 InheritedexplicitHeight : Number
Number that specifies the explicit height of the component, in pixels, in the component's coordinates.
UIComponent
 InheritedexplicitMaxHeight : Number
The maximum recommended height of the component to be considered by the parent during layout.
UIComponent
 InheritedexplicitMaxWidth : Number
The maximum recommended width of the component to be considered by the parent during layout.
UIComponent
 InheritedexplicitMinHeight : Number
The minimum recommended height of the component to be considered by the parent during layout.
UIComponent
 InheritedexplicitMinWidth : Number
The minimum recommended width of the component to be considered by the parent during layout.
UIComponent
 InheritedexplicitWidth : Number
Number that specifies the explicit width of the component, in pixels, in the component's coordinates.
UIComponent
 InheritedflexContextMenu : IFlexContextMenu
The context menu for this UIComponent.
UIComponent
 InheritedfocusEnabled : Boolean
Indicates whether the component can receive focus when tabbed to.
UIComponent
 InheritedfocusManager : IFocusManager
Gets the FocusManager that controls focus for this component and its peers.
UIComponent
 InheritedfocusPane : Sprite
The focus pane associated with this object.
UIComponent
  grid : Grid
[read-only] Returns the Grid associated with this item renderer.
GridItemRenderer
 InheritedhasFocusableChildren : Boolean
A flag that indicates whether child objects can receive focus.
UIComponent
 InheritedhasLayoutMatrix3D : Boolean
[read-only] Contains true if the element has 3D Matrix.
UIComponent
 Inheritedheight : Number
[override] Number that specifies the height of the component, in pixels, in the parent's coordinates.
UIComponent
 InheritedhorizontalCenter : Object
For components, this layout constraint property is a facade on top of the similarly-named style.
UIComponent
 InheritedhorizontalScrollPosition : Number
The x coordinate of the origin of the viewport in the component's coordinate system, where the default value is (0,0) corresponding to the upper-left corner of the component.
GroupBase
  hovered : Boolean
Contains true if the item renderer is under the mouse and the Grid's selectionMode is GridSelectionMode.SINGLE_CELL or GridSelectionMode.MULTIPLE_CELLS, or if the mouse is within the row the item renderer belongs to and the Grid's selectionMode is GridSelectionMode.SINGLE_ROW or GridSelectionMode.MULTIPLE_ROWS.
GridItemRenderer
 Inheritedid : String
ID of the component.
UIComponent
 InheritedincludeInLayout : Boolean
Specifies whether this component is included in the layout of the parent container.
UIComponent
 InheritedinheritingStyles : Object
The beginning of this component's chain of inheriting styles.
UIComponent
 Inheritedinitialized : Boolean
A flag that determines if an object has been through all three phases of layout: commitment, measurement, and layout (provided that any were required).
UIComponent
 InheritedinstanceIndex : int
[read-only] The index of a repeated component.
UIComponent
 InheritedinstanceIndices : Array
An Array containing the indices required to reference this UIComponent object from its parent document.
UIComponent
 Inheritedis3D : Boolean
[read-only] Contains true when the element is in 3D.
UIComponent
 InheritedisDocument : Boolean
[read-only] Contains true if this UIComponent instance is a document object.
UIComponent
 InheritedisPopUp : Boolean
Set to true by the PopUpManager to indicate that component has been popped up.
UIComponent
  label : String
The String to display in the item renderer.
GridItemRenderer
  labelDisplay : TextBase
An optional visual component in the item renderer for displaying the label property.
GridItemRenderer
 Inheritedlayout : LayoutBase
The layout object for this container.
GroupBase
 InheritedlayoutMatrix3D : Matrix3D
[write-only] The transform matrix that is used to calculate a component's layout relative to its siblings.
UIComponent
 Inheritedleft : Object
For components, this layout constraint property is a facade on top of the similarly-named style.
UIComponent
 InheritedluminosityClip : Boolean
A property that controls whether the luminosity mask clips the masked content.
GroupBase
 InheritedluminosityInvert : Boolean
A property that controls the calculation of the RGB color value of a graphic element being masked by a luminosity mask.
GroupBase
 InheritedmaintainProjectionCenter : Boolean
When true, the component keeps its projection matrix centered on the middle of its bounding box.
UIComponent
 Inheritedmask : DisplayObject
[override] Sets the mask.
GroupBase
 InheritedmaskType : String
The mask type.
GroupBase
 InheritedmaxHeight : Number
The maximum recommended height of the component to be considered by the parent during layout.
UIComponent
 InheritedmaxWidth : Number
The maximum recommended width of the component to be considered by the parent during layout.
UIComponent
 InheritedmeasuredHeight : Number
The default height of the component, in pixels.
UIComponent
 InheritedmeasuredMinHeight : Number
The default minimum height of the component, in pixels.
UIComponent
 InheritedmeasuredMinWidth : Number
The default minimum width of the component, in pixels.
UIComponent
 InheritedmeasuredWidth : Number
The default width of the component, in pixels.
UIComponent
 InheritedminHeight : Number
The minimum recommended height of the component to be considered by the parent during layout.
UIComponent
 InheritedminWidth : Number
The minimum recommended width of the component to be considered by the parent during layout.
UIComponent
 InheritedmoduleFactory : IFlexModuleFactory
A module factory is used as context for using embedded fonts and for finding the style manager that controls the styles for this component.
UIComponent
 InheritedmouseEnabledWhereTransparent : Boolean
When true, this property ensures that the entire bounds of the Group respond to mouse events such as click and roll over.
GroupBase
 InheritedmouseFocusEnabled : Boolean
Whether you can receive focus when clicked on.
UIComponent
 InheritedmxmlContent : Array
[write-only] The visual content children for this Group.
Group
 InheritedMXMLDescriptor : Array
[read-only]
UIComponent
 InheritedMXMLProperties : Array
[read-only]
UIComponent
 InheritednestLevel : int
Depth of this object in the containment hierarchy.
UIComponent
 InheritednonInheritingStyles : Object
The beginning of this component's chain of non-inheriting styles.
UIComponent
 InheritednumAutomationChildren : int
[read-only] The number of automation children this container has.
UIComponent
 InheritednumElements : int
[read-only] The number of visual elements in this container.
GroupBase
 Inheritedoverlay : DisplayLayer
[read-only] The overlay plane for this group.
GroupBase
 Inheritedowner : DisplayObjectContainer
The owner of this IVisualElement object.
UIComponent
 Inheritedparent : DisplayObjectContainer
[override] [read-only] The parent container or component for this component.
UIComponent
 InheritedparentApplication : Object
[read-only] A reference to the Application object that contains this UIComponent instance.
UIComponent
 InheritedparentDocument : Object
[read-only] A reference to the parent document object for this UIComponent.
UIComponent
 InheritedpercentHeight : Number
Specifies the height of a component as a percentage of its parent's size.
UIComponent
 InheritedpercentWidth : Number
Specifies the width of a component as a percentage of its parent's size.
UIComponent
 InheritedpostLayoutTransformOffsets : TransformOffsets
Defines a set of adjustments that can be applied to the object's transform in a way that is invisible to its parent's layout.
UIComponent
 InheritedprocessedDescriptors : Boolean
Set to true after immediate or deferred child creation, depending on which one happens.
UIComponent
 Inheritedrepeater : IRepeater
[read-only] A reference to the Repeater object in the parent document that produced this UIComponent.
UIComponent
 InheritedrepeaterIndex : int
[read-only] The index of the item in the data provider of the Repeater that produced this UIComponent.
UIComponent
 InheritedrepeaterIndices : Array
An Array containing the indices of the items in the data provider of the Repeaters in the parent document that produced this UIComponent.
UIComponent
 Inheritedrepeaters : Array
An Array containing references to the Repeater objects in the parent document that produced this UIComponent.
UIComponent
 InheritedresizeMode : String
The ResizeMode for this container.
GroupBase
 Inheritedright : Object
For components, this layout constraint property is a facade on top of the similarly-named style.
UIComponent
 Inheritedrotation : Number
[override]
UIComponent
 InheritedrotationX : Number
[override] Indicates the x-axis rotation of the DisplayObject instance, in degrees, from its original orientation relative to the 3D parent container.
UIComponent
 InheritedrotationY : Number
[override] Indicates the y-axis rotation of the DisplayObject instance, in degrees, from its original orientation relative to the 3D parent container.
UIComponent
 InheritedrotationZ : Number
[override]
UIComponent
  rowIndex : int
The zero-based index of the row of the cell being rendered.
GridItemRenderer
 InheritedscaleGridBottom : Number
Specifies the bottom coordinate of the scale grid.
Group
 InheritedscaleGridLeft : Number
Specifies the left coordinate of the scale grid.
Group
 InheritedscaleGridRight : Number
Specifies the right coordinate of the scale grid.
Group
 InheritedscaleGridTop : Number
Specifies the top coordinate of the scale grid.
Group
 InheritedscaleX : Number
[override] Number that specifies the horizontal scaling factor.
UIComponent
 InheritedscaleY : Number
[override] Number that specifies the vertical scaling factor.
UIComponent
 InheritedscaleZ : Number
[override] Number that specifies the scaling factor along the z axis.
UIComponent
 Inheritedscreen : Rectangle
[read-only] Returns an object that contains the size and position of the base drawing surface for this object.
UIComponent
  selected : Boolean
Contains true if the item renderer's cell is part of the current selection.
GridItemRenderer
 InheritedshowInAutomationHierarchy : Boolean
A flag that determines if an automation object shows in the automation hierarchy.
UIComponent
  showsCaret : Boolean
Contains true if the item renderer's cell is indicated by the caret.
GridItemRenderer
 Inheritedstates : Array
The view states that are defined for this component.
UIComponent
 InheritedstyleDeclaration : CSSStyleDeclaration
Storage for the inline inheriting styles on this object.
UIComponent
 InheritedstyleManager : IStyleManager2
[read-only] Returns the StyleManager instance used by this component.
UIComponent
 InheritedstyleName : Object
The class style used by this component.
UIComponent
 InheritedstyleParent : IAdvancedStyleClient
A component's parent is used to evaluate descendant selectors.
UIComponent
 InheritedsystemManager : ISystemManager
Returns the SystemManager object used by this component.
UIComponent
 InheritedtabFocusEnabled : Boolean
A flag that indicates whether this object can receive focus via the TAB key This is similar to the tabEnabled property used by the Flash Player. This is usually true for components that handle keyboard input, but some components in controlbars have them set to false because they should not steal focus from another component like an editor.
UIComponent
 InheritedtoolTip : String
Text to display in the ToolTip.
UIComponent
 Inheritedtop : Object
For components, this layout constraint property is a facade on top of the similarly-named style.
UIComponent
 Inheritedtransform : Transform
[override] An object with properties pertaining to a display object's matrix, color transform, and pixel bounds.
UIComponent
 InheritedtransformX : Number
Sets the x coordinate for the transform center of the component.
UIComponent
 InheritedtransformY : Number
Sets the y coordinate for the transform center of the component.
UIComponent
 InheritedtransformZ : Number
Sets the z coordinate for the transform center of the component.
UIComponent
 InheritedtweeningProperties : Array
Array of properties that are currently being tweened on this object.
UIComponent
 Inheriteduid : String
A unique identifier for the object.
UIComponent
 InheritedupdateCompletePendingFlag : Boolean
A flag that determines if an object has been through all three phases of layout validation (provided that any were required).
UIComponent
 InheritedvalidationSubField : String
Used by a validator to associate a subfield with this component.
UIComponent
 InheritedverticalCenter : Object
For components, this layout constraint property is a facade on top of the similarly-named style.
UIComponent
 InheritedverticalScrollPosition : Number
The y coordinate of the origin of the viewport in the component's coordinate system, where the default value is (0,0) corresponding to the upper-left corner of the component.
GroupBase
 Inheritedvisible : Boolean
[override] Whether or not the display object is visible.
UIComponent
 Inheritedwidth : Number
[override] Number that specifies the width of the component, in pixels, in the parent's coordinates.
UIComponent
 Inheritedx : Number
[override] Number that specifies the component's horizontal position, in pixels, within its parent container.
UIComponent
 Inheritedy : Number
[override] Number that specifies the component's vertical position, in pixels, within its parent container.
UIComponent
 Inheritedz : Number
[override]
UIComponent
Protected Properties
 PropertyDefined By
 InheritedcurrentCSSState : String
[read-only] The state to be used when matching CSS pseudo-selectors.
UIComponent
 InheritedhasComplexLayoutMatrix : Boolean
[read-only] Returns true if the UIComponent has any non-translation (x,y) transform properties.
UIComponent
 InheritedresourceManager : IResourceManager
[read-only] A reference to the object which manages all of the application's localized resources.
UIComponent
 InheritedunscaledHeight : Number
[read-only] A convenience method for determining the unscaled height of the component.
UIComponent
 InheritedunscaledWidth : Number
[read-only] A convenience method for determining the unscaled width of the component All of a component's drawing and child layout should be done within a bounding rectangle of this width, which is also passed as an argument to updateDisplayList().
UIComponent
Public Methods
 MethodDefined By
  
Constructor.
GridItemRenderer
 Inherited
Adds a visual element to this container.
Group
 Inherited
Adds a visual element to this container.
Group
 Inherited
Adds a non-visual style client to this component instance.
UIComponent
 Inherited
callLater(method:Function, args:Array = null):void
Queues a function to be called later.
UIComponent
 Inherited
clearStyle(styleProp:String):void
Deletes a style property from this component instance.
UIComponent
 Inherited
Determines whether the specified IVisualElement is a child of the container instance or the instance itself.
GroupBase
 Inherited
contentToGlobal(point:Point):Point
Converts a Point object from content coordinates to global coordinates.
UIComponent
 Inherited
contentToLocal(point:Point):Point
Converts a Point object from content to local coordinates.
UIComponent
 Inherited
Returns a set of properties that identify the child within this container.
UIComponent
 Inherited
Returns a set of properties as automation IDs that identify the child within this container.
UIComponent
 Inherited
Creates an id reference to this IUIComponent object on its parent document object.
UIComponent
 Inherited
Deletes the id reference to this IUIComponent object on its parent document object.
UIComponent
 Inherited
Returns a UITextFormat object corresponding to the text styles for this UIComponent.
UIComponent
  
discard(willBeRecycled:Boolean):void
Called from the item renderer parent's updateDisplayList() method when it has been determined that this renderer will no longer be visible.
GridItemRenderer
 Inherited
dispatchEvent(event:Event):Boolean
[override] Dispatches an event into the event flow.
UIComponent
 Inherited
drawFocus(isFocused:Boolean):void
Shows or hides the focus indicator around this component.
UIComponent
 Inherited
drawRoundRect(x:Number, y:Number, w:Number, h:Number, r:Object = null, c:Object = null, alpha:Object = null, rot:Object = null, gradient:String = null, ratios:Array = null, hole:Object = null):void
Programmatically draws a rectangle into this skin's Graphics object.
UIComponent
 Inherited
Called by the effect instance when it stops playing on the component.
UIComponent
 Inherited
Called by the effect instance when it starts playing on the component.
UIComponent
 Inherited
Ends all currently playing effects on the component.
UIComponent
 Inherited
executeBindings(recurse:Boolean = false):void
Executes all the bindings for which the UIComponent object is the destination.
UIComponent
 Inherited
finishPrint(obj:Object, target:IFlexDisplayObject):void
Called after printing is complete.
UIComponent
 Inherited
generateMXMLArray(document:Object, data:Array, recursive:Boolean = true):Array
UIComponent
 Inherited
generateMXMLVector(document:Object, data:Array, recursive:Boolean = true):*
UIComponent
 Inherited
Provides the automation object at the specified index.
UIComponent
 Inherited
Provides the automation object list .
UIComponent
 Inherited
getBoundsXAtSize(width:Number, height:Number, postLayoutTransform:Boolean = true):Number
Returns the x coordinate of the element's bounds at the specified element size.
UIComponent
 Inherited
getBoundsYAtSize(width:Number, height:Number, postLayoutTransform:Boolean = true):Number
Returns the y coordinate of the element's bounds at the specified element size.
UIComponent
 Inherited
Finds the type selectors for this UIComponent instance.
UIComponent
 Inherited
getConstraintValue(constraintName:String):*
Returns a layout constraint value, which is the same as getting the constraint style for this component.
UIComponent
 Inherited
Returns the visual element at the specified index.
GroupBase
 Inherited
Returns the index position of a visual element.
GroupBase
 Inherited
A convenience method for determining whether to use the explicit or measured height
UIComponent
 Inherited
A convenience method for determining whether to use the explicit or measured width
UIComponent
 Inherited
getFocus():InteractiveObject
Gets the object that currently has focus.
UIComponent
 Inherited
getHorizontalScrollPositionDelta(navigationUnit:uint):Number
Returns the change to the horizontal scroll position to handle different scrolling options.
GroupBase
 Inherited
getLayoutBoundsHeight(postLayoutTransform:Boolean = true):Number
Returns the element's layout height.
UIComponent
 Inherited
getLayoutBoundsWidth(postLayoutTransform:Boolean = true):Number
Returns the element's layout width.
UIComponent
 Inherited
getLayoutBoundsX(postLayoutTransform:Boolean = true):Number
Returns the x coordinate that the element uses to draw on screen.
UIComponent
 Inherited
getLayoutBoundsY(postLayoutTransform:Boolean = true):Number
Returns the y coordinate that the element uses to draw on screen.
UIComponent
 Inherited
Returns the transform matrix that is used to calculate the component's layout relative to its siblings.
UIComponent
 Inherited
Returns the layout transform Matrix3D for this element.
UIComponent
 Inherited
getMaxBoundsHeight(postLayoutTransform:Boolean = true):Number
Returns the element's maximum height.
UIComponent
 Inherited
getMaxBoundsWidth(postLayoutTransform:Boolean = true):Number
Returns the element's maximum width.
UIComponent
 Inherited
getMinBoundsHeight(postLayoutTransform:Boolean = true):Number
Returns the element's minimum height.
UIComponent
 Inherited
getMinBoundsWidth(postLayoutTransform:Boolean = true):Number
Returns the element's minimum width.
UIComponent
 Inherited
getPreferredBoundsHeight(postLayoutTransform:Boolean = true):Number
Returns the element's preferred height.
UIComponent
 Inherited
getPreferredBoundsWidth(postLayoutTransform:Boolean = true):Number
Returns the element's preferred width.
UIComponent
 Inherited
getRepeaterItem(whichRepeater:int = -1):Object
Returns the item in the dataProvider that was used by the specified Repeater to produce this Repeater, or null if this Repeater isn't repeated.
UIComponent
 Inherited
getStyle(styleProp:String):*
Gets a style property that has been set anywhere in this component's style lookup chain.
UIComponent
 Inherited
getVerticalScrollPositionDelta(navigationUnit:uint):Number
Returns the change to the vertical scroll position to handle different scrolling options.
GroupBase
 Inherited
getVirtualElementAt(index:int, eltWidth:Number, eltHeight:Number):IVisualElement
Layouts that honor the useVirtualLayout flag will use this method at updateDisplayList() time to get layout elements that are "in view", i.e.
GroupBase
 Inherited
getVisibleRect(targetParent:DisplayObject = null):Rectangle
Get the bounds of this object that are visible to the user on the screen.
UIComponent
 Inherited
globalToContent(point:Point):Point
Converts a Point object from global to content coordinates.
UIComponent
 Inherited
hasCSSState():Boolean
Returns true if currentCSSState is not null.
UIComponent
 Inherited
hasState(stateName:String):Boolean
Determines whether the specified state has been defined on this UIComponent.
UIComponent
 Inherited
horizontalGradientMatrix(x:Number, y:Number, width:Number, height:Number):Matrix
Returns a box Matrix which can be passed to the drawRoundRect() method as the rot parameter when drawing a horizontal gradient.
UIComponent
 Inherited
initialize():void
Initializes the internal structure of this component.
UIComponent
 Inherited
Initializes various properties which keep track of repeated instances of this component.
UIComponent
 Inherited
Marks a component so that its updateDisplayList() method gets called during a later screen update.
UIComponent
 Inherited
Notify the host component that an element has changed and needs to be redrawn.
Group
 Inherited
Notify the host component that an element changed and needs to validate properties.
Group
 Inherited
Notify the host that an element layer has changed.
Group
 Inherited
Notify the host component that an element size has changed.
Group
 Inherited
Called by a component's items to indicate that their depth property has changed.
UIComponent
 Inherited
An element must call this method when its layoutDirection changes or when its parent's layoutDirection changes.
UIComponent
 Inherited
Marks a component so that its commitProperties() method gets called during a later screen update.
UIComponent
 Inherited
Marks a component so that its measure() method gets called during a later screen update.
UIComponent
 Inherited
localToContent(point:Point):Point
Converts a Point object from local to content coordinates.
UIComponent
 Inherited
matchesCSSState(cssState:String):Boolean
Returns true if cssState matches currentCSSState.
UIComponent
 Inherited
matchesCSSType(cssType:String):Boolean
Determines whether this instance is the same as, or is a subclass of, the given type.
UIComponent
 Inherited
measureHTMLText(htmlText:String):TextLineMetrics
Measures the specified HTML text, which can contain HTML tags such as <font> and <b>, assuming that it is displayed in a single-line UITextField using a UITextFormat determined by the styles of this UIComponent.
UIComponent
 Inherited
measureText(text:String):TextLineMetrics
Measures the specified text, assuming that it is displayed in a single-line UITextField (or UIFTETextField) using a UITextFormat determined by the styles of this UIComponent.
UIComponent
 Inherited
move(x:Number, y:Number):void
Moves the component to a specified position within its parent.
UIComponent
 Inherited
notifyStyleChangeInChildren(styleProp:String, recursive:Boolean):void
Propagates style changes to the children.
UIComponent
 Inherited
owns(child:DisplayObject):Boolean
Returns true if the chain of owner properties points from child to this UIComponent.
UIComponent
 Inherited
parentChanged(p:DisplayObjectContainer):void
Called by Flex when a UIComponent object is added to or removed from a parent.
UIComponent
  
prepare(hasBeenRecycled:Boolean):void
Called from the item renderer parent's updateDisplayList() method after all of the renderer's properties have been set.
GridItemRenderer
 Inherited
Prepares an IFlexDisplayObject for printing.
UIComponent
 Inherited
regenerateStyleCache(recursive:Boolean):void
Builds or rebuilds the CSS style cache for this component and, if the recursive parameter is true, for all descendants of this component as well.
UIComponent
 Inherited
registerEffects(effects:Array):void
For each effect event, registers the EffectManager as one of the event listeners.
UIComponent
 Inherited
Removes all visual elements from the container.
Group
 Inherited
Removes the specified visual element from the child list of this container.
Group
 Inherited
Removes a visual element from the specified index position in the container.
Group
 Inherited
Removes a non-visual style client from this component instance.
UIComponent
 Inherited
replayAutomatableEvent(event:Event):Boolean
Replays the specified event.
UIComponent
 Inherited
resolveAutomationIDPart(criteria:Object):Array
Resolves a child by using the id provided.
UIComponent
 Inherited
[static] Resumes the background processing of methods queued by callLater(), after a call to suspendBackgroundProcessing().
UIComponent
 Inherited
setActualSize(w:Number, h:Number):void
Sizes the object.
UIComponent
 Inherited
setConstraintValue(constraintName:String, value:*):void
Sets a layout constraint value, which is the same as setting the constraint style for this component.
UIComponent
 Inherited
setContentSize(width:Number, height:Number):void
Sets the contentWidth and contentHeight properties.
GroupBase
 Inherited
setCurrentState(stateName:String, playTransition:Boolean = true):void
Set the current state.
UIComponent
 Inherited
setElementIndex(element:IVisualElement, index:int):void
Changes the position of an existing visual element in the visual container.
Group
 Inherited
setFocus():void
Sets the focus to this component.
UIComponent
 Inherited
setLayoutBoundsPosition(x:Number, y:Number, postLayoutTransform:Boolean = true):void
Sets the coordinates that the element uses to draw on screen.
UIComponent
 Inherited
setLayoutBoundsSize(width:Number, height:Number, postLayoutTransform:Boolean = true):void
Sets the layout size of the element.
UIComponent
 Inherited
setLayoutMatrix(value:Matrix, invalidateLayout:Boolean):void
Sets the transform Matrix that is used to calculate the component's layout size and position relative to its siblings.
UIComponent
 Inherited
setLayoutMatrix3D(value:Matrix3D, invalidateLayout:Boolean):void
Sets the transform Matrix3D that is used to calculate the component's layout size and position relative to its siblings.
UIComponent
 Inherited
setMXMLDescriptor(value:Array):void
UIComponent
 Inherited
setMXMLProperties(value:Array):void
UIComponent
 Inherited
setStyle(styleProp:String, newValue:*):void
Sets a style property on this component instance.
UIComponent
 Inherited
setVisible(value:Boolean, noEvent:Boolean = false):void
Called when the visible property changes.
UIComponent
 Inherited
styleChanged(styleProp:String):void
Detects changes to style properties.
UIComponent
 Inherited
Flex calls the stylesInitialized() method when the styles for a component are first initialized.
UIComponent
 Inherited
[static] Blocks the background processing of methods queued by callLater(), until resumeBackgroundProcessing() is called.
UIComponent
 Inherited
swapElements(element1:IVisualElement, element2:IVisualElement):void
Swaps the index of the two specified visual elements.
Group
 Inherited
swapElementsAt(index1:int, index2:int):void
Swaps the visual elements at the two specified index positions in the container.
Group
 Inherited
toString():String
[override] Returns a string indicating the location of this object within the hierarchy of DisplayObjects in the Application.
FlexSprite
 Inherited
transformAround(transformCenter:Vector3D, scale:Vector3D = null, rotation:Vector3D = null, translation:Vector3D = null, postLayoutScale:Vector3D = null, postLayoutRotation:Vector3D = null, postLayoutTranslation:Vector3D = null, invalidateLayout:Boolean = true):void
A utility method to update the rotation, scale, and translation of the transform while keeping a particular point, specified in the component's own coordinate space, fixed in the parent's coordinate space.
UIComponent
 Inherited
transformPointToParent(localPosition:Vector3D, position:Vector3D, postLayoutPosition:Vector3D):void
A utility method to transform a point specified in the local coordinates of this object to its location in the object's parent's coordinates.
UIComponent
 Inherited
Validates the position and size of children and draws other visuals.
UIComponent
 Inherited
Validate and update the properties and layout of this object and redraw it, if necessary.
UIComponent
 Inherited
Used by layout logic to validate the properties of a component by calling the commitProperties() method.
UIComponent
 Inherited
validateSize(recursive:Boolean = false):void
Validates the measured size of the component If the LayoutManager.invalidateSize() method is called with this ILayoutManagerClient, then the validateSize() method is called when it's time to do measurements.
UIComponent
 Inherited
Handles both the valid and invalid events from a validator assigned to this component.
UIComponent
 Inherited
verticalGradientMatrix(x:Number, y:Number, width:Number, height:Number):Matrix
Returns a box Matrix which can be passed to drawRoundRect() as the rot parameter when drawing a vertical gradient.
UIComponent
Protected Methods
 MethodDefined By
 Inherited
addMXMLChildren(comps:Array):void
[override] override setting of children
Group
 Inherited
adjustFocusRect(obj:DisplayObject = null):void
Adjust the focus rectangle.
UIComponent
 Inherited
Commits the computed matrix built from the combination of the layout matrix and the transform offsets to the flash displayObject's transform.
UIComponent
 Inherited
This is an internal method used by the Flex framework to support the Dissolve effect.
UIComponent
 Inherited
Determines if the call to the measure() method can be skipped.
UIComponent
 Inherited
Performs any final processing after child objects are created.
UIComponent
 Inherited
Processes the properties set on the component.
UIComponent
 Inherited
[override] If the layout object has not been set yet, createChildren() assigns this container a default layout object, BasicLayout.
GroupBase
 Inherited
createInFontContext(classObj:Class):Object
Creates a new object using a context based on the embedded font being used.
UIComponent
 Inherited
createInModuleContext(moduleFactory:IFlexModuleFactory, className:String):Object
Creates the object using a given moduleFactory.
UIComponent
 Inherited
dispatchPropertyChangeEvent(prop:String, oldValue:*, value:*):void
Helper method for dispatching a PropertyChangeEvent when a property is updated.
UIComponent
 Inherited
focusInHandler(event:FocusEvent):void
The event handler called when a UIComponent object gets focus.
UIComponent
 Inherited
focusOutHandler(event:FocusEvent):void
The event handler called when a UIComponent object loses focus.
UIComponent
 Inherited
generateMXMLAttributes(data:Array):void
UIComponent
 Inherited
generateMXMLInstances(document:Object, data:Array, recursive:Boolean = true):void
UIComponent
 Inherited
generateMXMLObject(document:Object, data:Array):Object
UIComponent
  
Returns the name of the state to be applied to the renderer.
GridItemRenderer
 Inherited
Initializes the implementation and storage of some of the less frequently used advanced layout features of a component.
UIComponent
 Inherited
Finalizes the initialization of this component.
UIComponent
 Inherited
Initializes this component's accessibility code.
UIComponent
 Inherited
Helper method to invalidate parent size and display list if this object affects its layout (includeInLayout is true).
UIComponent
 Inherited
isOurFocus(target:DisplayObject):Boolean
Typically overridden by components containing UITextField objects, where the UITextField object gets focus.
UIComponent
 Inherited
keyDownHandler(event:KeyboardEvent):void
The event handler called for a keyDown event.
UIComponent
 Inherited
keyUpHandler(event:KeyboardEvent):void
The event handler called for a keyUp event.
UIComponent
 Inherited
measure():void
Calculates the default size, and optionally the default minimum size, of the component.
UIComponent
 Inherited
This method is called when a UIComponent is constructed, and again whenever the ResourceManager dispatches a "change" Event to indicate that the localized resources have changed in some way.
UIComponent
 Inherited
setStretchXY(stretchX:Number, stretchY:Number):void
Specifies a transform stretch factor in the horizontal and vertical direction.
UIComponent
 Inherited
stateChanged(oldState:String, newState:String, recursive:Boolean):void
This method is called when a state changes to check whether state-specific styles apply to this component.
UIComponent
 Inherited
updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
Draws the object and/or sizes and positions its children.
UIComponent
Events
 Event Summary Defined By
 InheritedDispatched when the component is added to a container as a content child by using the addChild(), addChildAt(), addElement(), or addElementAt() method.UIComponent
 InheritedDispatched when the component has finished its construction, property processing, measuring, layout, and drawing.UIComponent
 InheritedDispatched after the view state has changed.UIComponent
 InheritedDispatched after the currentState property changes, but before the view state changes.UIComponent
  Dispatched when the data property changes.GridItemRenderer
 InheritedDispatched by the drag initiator (the component that is the source of the data being dragged) when the drag operation completes, either when you drop the dragged data onto a drop target or when you end the drag-and-drop operation without performing a drop.UIComponent
 InheritedDispatched by the drop target when the user releases the mouse over it.UIComponent
 InheritedDispatched by a component when the user moves the mouse over the component during a drag operation.UIComponent
 InheritedDispatched by the component when the user drags outside the component, but does not drop the data onto the target.UIComponent
 InheritedDispatched by a component when the user moves the mouse while over the component during a drag operation.UIComponent
 InheritedDispatched by the drag initiator when starting a drag operation.UIComponent
 InheritedDispatched after an effect ends.UIComponent
 InheritedDispatched just before an effect starts.UIComponent
 InheritedDispatched after an effect is stopped, which happens only by a call to stop() on the effect.UIComponent
 InheritedDispatched when a visual element is added to the content holder.Group
 InheritedDispatched when a visual element is removed from the content holder.Group
 InheritedDispatched after the component has entered a view state.UIComponent
 InheritedDispatched just before the component exits a view state.UIComponent
 InheritedDispatched when an object's state changes from visible to invisible.UIComponent
 InheritedDispatched when the component has finished its construction and has all initialization properties set.UIComponent
 InheritedDispatched when a component is monitored by a Validator and the validation failed.UIComponent
 InheritedDispatched from a component opened using the PopUpManager when the user clicks outside it.UIComponent
 InheritedDispatched from a component opened using the PopUpManager when the user scrolls the mouse wheel outside it.UIComponent
 InheritedDispatched when the object has moved.UIComponent
 InheritedDispatched at the beginning of the component initialization sequence.UIComponent
 InheritedDispatched when the component is removed from a container as a content child by using the removeChild(), removeChildAt(), removeElement(), or removeElementAt() method.UIComponent
 InheritedDispatched when the component is resized.UIComponent
 InheritedDispatched when an object's state changes from invisible to visible.UIComponent
 InheritedDispatched after the component has entered a new state and any state transition animation to that state has finished playing.UIComponent
 InheritedDispatched when a component interrupts a transition to its current state in order to switch to a new state.UIComponent
 InheritedDispatched by the component when it is time to create a ToolTip.UIComponent
 InheritedDispatched by the component when its ToolTip has been hidden and is to be discarded soon.UIComponent
 InheritedDispatched by the component when its ToolTip is about to be hidden.UIComponent
 InheritedDispatched by the component when its ToolTip is about to be shown.UIComponent
 InheritedDispatched by the component when its ToolTip has been shown.UIComponent
 InheritedDispatched by a component whose toolTip property is set, as soon as the user moves the mouse over it.UIComponent
 InheritedA non-cancellable event, dispatched by a component when it is done responding to a touch interaction user gesture.UIComponent
 InheritedA non-cancellable event, dispatched by a component when it starts responding to a touch interaction user gesture.UIComponent
 InheritedA cancellable event, dispatched by a component in an attempt to respond to a touch interaction user gesture.UIComponent
 InheritedDispatched when an object has had its commitProperties(), measure(), and updateDisplayList() methods called (if needed).UIComponent
 InheritedDispatched when a component is monitored by a Validator and the validation succeeded.UIComponent
 InheritedDispatched when values are changed programmatically or by user interaction.UIComponent
Styles
 Style Description Defined By
 InheritedType: uint Format: Color CSS Inheritance: yes Theme: spark, mobile
Accent color used by component skins.
GroupBase
 InheritedType: String CSS Inheritance: yes
Specifies the baseline to which the dominant baseline aligns.

See also

GroupBase
 InheritedType: Array Format: Color CSS Inheritance: yes Theme: spark, mobile
The colors to use for the backgrounds of the items in the list.
GroupBase
 InheritedType: String CSS Inheritance: no
The vertical distance in pixels from the top edge of the content area to the control's baseline position.
UIComponent
 InheritedType: Object CSS Inheritance: yes
Amount to shift the baseline.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Specifies a vertical or horizontal progression of line placement.

See also

GroupBase
 InheritedType: String CSS Inheritance: no
The vertical distance, in pixels, from the bottom edge of the component to the bottom edge of its parent container's content area.
UIComponent
 InheritedType: String CSS Inheritance: yes
Controls where lines are allowed to break when breaking wrapping text into multiple lines.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
The type of CFF hinting used for this text.

See also

GroupBase
 InheritedType: uint Format: Color CSS Inheritance: yes Theme: spark, mobile
The main color for a component.
GroupBase
 InheritedType: String CSS Inheritance: yes
Controls how text wraps around a float.

See also

GroupBase
 InheritedType: uint Format: Color CSS Inheritance: yes
Color of the text.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Controls column break after the element.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Controls column break before the element.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Controls container break after the element.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Controls container break before the element.

See also

GroupBase
 InheritedType: Number CSS Inheritance: yes Theme: spark, mobile
The alpha of the content background for this component.
GroupBase
 InheritedType: uint Format: Color CSS Inheritance: yes Theme: spark, mobile
The color of the content background for this component.
GroupBase
 InheritedType: String CSS Inheritance: yes
The type of digit case used for this text.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Type of digit width used for this text.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Specifies the default bidirectional embedding level of the text.

See also

GroupBase
 InheritedType: Number CSS Inheritance: no Theme: spark, mobile
The alpha value when the container is disabled.
GroupBase
 InheritedType: String CSS Inheritance: yes
Specifies which element baseline snaps to the alignmentBaseline to determine the vertical position of the element on the line.

See also

GroupBase
 InheritedType: uint Format: Color CSS Inheritance: yes Theme: mobile
Color of the background of an item renderer when it is being pressed down

If downColor is set to undefined, downColor is not used.

The default value for the Spark theme is undefined.

GroupBase
 InheritedType: uint Format: Color CSS Inheritance: yes
Color of the component highlight when validation fails.
UIComponent
 InheritedType: Object CSS Inheritance: yes
Specifies the baseline position of the first line in the container.

See also

GroupBase
 InheritedType: uint Format: Color CSS Inheritance: yes Theme: spark, mobile
Color of focus ring when the component is in focus.
GroupBase
 InheritedType: uint Format: Color CSS Inheritance: yes
The color of text when the component is enabled and has focus.
GroupBase
 InheritedType: Class CSS Inheritance: no
Skin used to draw the focus rectangle.
UIComponent
 InheritedType: String CSS Inheritance: yes
The name of the font to use, or a comma-separated list of font names.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Font lookup to use.

See also

GroupBase
 InheritedType: Number Format: Length CSS Inheritance: yes
Height of the text, in pixels.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Determines whether the text is italic font.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Determines whether the text is boldface.

See also

GroupBase
 InheritedType: String CSS Inheritance: no
The horizontal distance in pixels from the center of the component's content area to the center of the component.
UIComponent
 InheritedType: uint Format: Color CSS Inheritance: yes
The color of text when the component is disabled.
GroupBase
 InheritedType: String CSS Inheritance: yes
The primary interaction mode for this component.

See also

UIComponent
 InheritedType: String CSS Inheritance: yes
Rule used to justify text in a paragraph.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
The style used for justification of the paragraph.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
The style used for justification of the paragraph.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Specifies the desired layout direction of a component.

See also

UIComponent
 InheritedType: Number Format: Length CSS Inheritance: yes Theme: mobile
Additional vertical space between lines of text.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Specifies the leading model, which is a combination of leading basis and leading direction.

See also

GroupBase
 InheritedType: String CSS Inheritance: no
The horizontal distance, in pixels, from the left edge of the component to the left edge of its parent container's content area.
UIComponent
 InheritedType: Number CSS Inheritance: yes Theme: mobile
The number of additional pixels to appear between each character.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Controls which of the ligatures that are defined in the font may be used in the text.

See also

GroupBase
 InheritedType: Object CSS Inheritance: yes
Leading controls for the text.

See also

GroupBase
 InheritedType: Boolean CSS Inheritance: yes
If true, applies strikethrough, a line drawn through the middle of the text.

See also

GroupBase
 InheritedType: Number Format: length CSS Inheritance: yes
This specifies an auto indent for the start edge of lists when the padding value of the list on that side is auto.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
This controls the placement of a list item marker relative to the list item.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
This controls the appearance of items in a list.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
The locale of the text.

See also

GroupBase
 InheritedType: Number Format: length CSS Inheritance: yes
The amount to indent the paragraph's end edge.

See also

GroupBase
 InheritedType: Number Format: length CSS Inheritance: yes
The amount of space to leave after the paragraph.

See also

GroupBase
 InheritedType: Number Format: length CSS Inheritance: yes
The amount of space to leave before the paragraph.

See also

GroupBase
 InheritedType: Number Format: length CSS Inheritance: yes
The amount to indent the paragraph's start edge.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
The rendering mode used for this text which applies only to embedded fonts.

See also

GroupBase
 InheritedType: String CSS Inheritance: no
The horizontal distance, in pixels, from the right edge of the component to the right edge of its parent container's content area.
UIComponent
 InheritedType: uint Format: Color CSS Inheritance: yes Theme: spark
Color of the highlights when the mouse is over the component.
GroupBase
 InheritedType: Boolean CSS Inheritance: yes
Show the error border or skin when this component is invalid.
UIComponent
 InheritedType: Boolean CSS Inheritance: yes
Show the error tip when this component is invalid and the user rolls over it.
UIComponent
 InheritedType: uint Format: Color CSS Inheritance: yes Theme: spark, mobile
Color of any symbol of a component.
GroupBase
 InheritedType: String CSS Inheritance: yes
Specifies the tab stops associated with the paragraph.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Alignment of text within a container.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Alignment of the last line in the paragraph relative to the container in justified text.

See also

GroupBase
 InheritedType: Number CSS Inheritance: yes
Alpha (transparency) value for the text.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Determines whether the text is underlined.

See also

GroupBase
 InheritedType: Number Format: Length CSS Inheritance: yes
Offset of first line of text from the left side of the container.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Specifies options for justifying text.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
Determines the number of degrees to rotate this text.

See also

GroupBase
 InheritedType: Number CSS Inheritance: yes Theme: mobile
Alpha of text shadows.
Group
 InheritedType: uint Format: Color CSS Inheritance: yes Theme: mobile
Color of text shadows.
Group
 InheritedType: uint Format: Color CSS Inheritance: yes Theme: halo
Theme color of a component.
UIComponent
 InheritedType: String CSS Inheritance: no
The vertical distance, in pixels, from the top edge of the component to the top edge of its parent container's content area.
UIComponent
 InheritedType: Number Format: Time CSS Inheritance: yes
When in touch interaction mode, the number of milliseconds to wait after the user interaction has occured before showing the component in a visually down state.
GroupBase
 InheritedType: Object CSS Inheritance: yes
The amount of tracking (manual kerning) to be applied to the left of each character.

See also

GroupBase
 InheritedType: Object CSS Inheritance: yes
The amount of tracking (manual kerning) to be applied to the right of each character.

See also

GroupBase
 InheritedType: String CSS Inheritance: yes
The type of typographic case used for this text.

See also

GroupBase
 InheritedType: uint Format: Color CSS Inheritance: yes
The color of text when the component is enabled but does not have focus.
GroupBase
 InheritedType: String CSS Inheritance: no
The vertical distance in pixels from the center of the component's content area to the center of the component.
UIComponent
 InheritedType: String CSS Inheritance: yes
Collapses or preserves whitespace when importing text into a TextFlow.

See also

GroupBase
 InheritedType: Object CSS Inheritance: yes
Specifies the spacing between words to use during justification.

See also

GroupBase
Effects
 Effect Description Defined By
 Inherited Triggering Event: added
Played when the component is added as a child to a Container.
UIComponent
 Inherited Triggering Event: creationComplete
Played when the component is created.
UIComponent
 Inherited Triggering Event: focusIn
Played when the component gains keyboard focus.
UIComponent
 Inherited Triggering Event: focusOut
Played when the component loses keyboard focus.
UIComponent
 Inherited Triggering Event: hide
Played when the component becomes invisible.
UIComponent
 Inherited Triggering Event: mouseDown
Played when the user presses the mouse button while over the component.
UIComponent
 Inherited Triggering Event: mouseUp
Played when the user releases the mouse button while over the component.
UIComponent
 Inherited Triggering Event: move
Played when the component is moved.
UIComponent
 Inherited Triggering Event: removed
Played when the component is removed from a Container.
UIComponent
 Inherited Triggering Event: resize
Played when the component is resized.
UIComponent
 Inherited Triggering Event: rollOut
Played when the user rolls the mouse so it is no longer over the component.
UIComponent
 Inherited Triggering Event: rollOver
Played when the user rolls the mouse over the component.
UIComponent
 Inherited Triggering Event: show
Played when the component becomes visible.
UIComponent
Public Constants
 ConstantDefined By
 InheritedDEFAULT_MAX_HEIGHT : Number = 10000
[static] The default value for the maxHeight property.
UIComponent
 InheritedDEFAULT_MAX_WIDTH : Number = 10000
[static] The default value for the maxWidth property.
UIComponent
 InheritedDEFAULT_MEASURED_HEIGHT : Number = 22
[static] The default value for the measuredHeight property.
UIComponent
 InheritedDEFAULT_MEASURED_MIN_HEIGHT : Number = 22
[static] The default value for the measuredMinHeight property.
UIComponent
 InheritedDEFAULT_MEASURED_MIN_WIDTH : Number = 40
[static] The default value for the measuredMinWidth property.
UIComponent
 InheritedDEFAULT_MEASURED_WIDTH : Number = 160
[static] The default value for the measuredWidth property.
UIComponent
Property Detail
columnproperty
column:GridColumn

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

The GridColumn object representing the column associated with this item renderer.

The default value is null.

This property can be used as the source for data binding.


Implementation
    public function get column():GridColumn
    public function set column(value:GridColumn):void
columnIndexproperty 
columnIndex:int  [read-only]

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

The column index for this item renderer's cell. This is the same value as column.columnIndex.


Implementation
    public function get columnIndex():int
dataproperty 
data:Object

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

The value of the data provider item for the grid row corresponding to the item renderer. This value corresponds to the object returned by a call to the dataProvider.getItemAt(rowIndex) method.

Item renderers can override this property definition to access the data for the entire row of the grid.

The default value is null.

This property can be used as the source for data binding.


Implementation
    public function get data():Object
    public function set data(value:Object):void
downproperty 
down:Boolean

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

This property is set to true when one of two input gestures occurs within a grid cell: either the mouse button or the touch screen is pressed. The down property is reset to false when the mouse button goes up, the user lifts off the touch screen, or the mouse/touch is dragged out of the grid cell.

Unlike a List item renderer, grid item renderers do not have exclusive responsibility for displaying the down indicator. The Grid itself renders the down indicator for the selected row or cell. The item renderer can also change its visual properties to emphasize that it's being pressed.

The default value is false.


Implementation
    public function get down():Boolean
    public function set down(value:Boolean):void
draggingproperty 
dragging:Boolean

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

Contains true if the item renderer is being dragged, typically as part of a drag and drop operation. Currently, drag and drop is not supported by the Spark DataGrid control.

This property can be used as the source for data binding.


Implementation
    public function get dragging():Boolean
    public function set dragging(value:Boolean):void
gridproperty 
grid:Grid  [read-only]

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

Returns the Grid associated with this item renderer. This is the same value as column.grid.


Implementation
    public function get grid():Grid
hoveredproperty 
hovered:Boolean

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

Contains true if the item renderer is under the mouse and the Grid's selectionMode is GridSelectionMode.SINGLE_CELL or GridSelectionMode.MULTIPLE_CELLS, or if the mouse is within the row the item renderer belongs to and the Grid's selectionMode is GridSelectionMode.SINGLE_ROW or GridSelectionMode.MULTIPLE_ROWS.

Unlike a List item renderer, grid item renderers do not have exclusive responsibility for displaying something to indicate that the renderer or its row is under the mouse. The Grid itself automatically displays the hoverIndicator skin part for the hovered row or cell. Grid item renderers can also change their properties to emphasize that they're hovered.

The default value is false.


Implementation
    public function get hovered():Boolean
    public function set hovered(value:Boolean):void
labelproperty 
label:String

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

The String to display in the item renderer.

The GridItemRenderer class automatically copies the value of this property to the text property of its labelDisplay element, if that element was specified. The Grid sets the label to the value returned by the column's itemToLabel() method.

The default value is "".

This property can be used as the source for data binding.


Implementation
    public function get label():String
    public function set label(value:String):void
labelDisplayproperty 
labelDisplay:TextBase

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

An optional visual component in the item renderer for displaying the label property. If you use this property to specify a visual component, the component's text property is kept synchronized with the item renderer's label property.

The default value is null.

This property can be used as the source for data binding.


Implementation
    public function get labelDisplay():TextBase
    public function set labelDisplay(value:TextBase):void
rowIndexproperty 
rowIndex:int

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

The zero-based index of the row of the cell being rendered.

The default value is -1.

This property can be used as the source for data binding.


Implementation
    public function get rowIndex():int
    public function set rowIndex(value:int):void
selectedproperty 
selected:Boolean

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

Contains true if the item renderer's cell is part of the current selection.

Unlike a List item renderer, grid item renderers do not have exclusive responsibility for displaying something to indicate that they're part of the selection. The Grid itself automatically displays the selectionIndicator skin part for the selected rows or cells. The item renderer can also change its visual properties to emphasize that it's part of the selection.

The default value is false.

This property can be used as the source for data binding.


Implementation
    public function get selected():Boolean
    public function set selected(value:Boolean):void
showsCaretproperty 
showsCaret:Boolean

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

Contains true if the item renderer's cell is indicated by the caret.

Unlike a List item renderer, grid item renderers do not have exclusive responsibility for displaying something to indicate their cell or row has the caret. The Grid itself automatically displays the caretIndicator skin part for the caret row or cell. The item renderer can also change its visual properties to emphasize that it has the caret.

The default value is false.

This property can be used as the source for data binding.


Implementation
    public function get showsCaret():Boolean
    public function set showsCaret(value:Boolean):void
Constructor Detail
GridItemRenderer()Constructor
public function GridItemRenderer()

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

Constructor.

Method Detail
discard()method
public function discard(willBeRecycled:Boolean):void

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

Called from the item renderer parent's updateDisplayList() method when it has been determined that this renderer will no longer be visible. If the willBeRecycled parameter is true, then the owner adds this renderer to its internal free list for reuse. Implementations can use this method to clear any renderer properties that are no longer needed.

This method is not intended to be called directly. It is called by the DataGrid implementation.

Parameters

willBeRecycled:Booleantrue if this renderer is going to be added to the owner's internal free list for reuse.

getCurrentRendererState()method 
protected function getCurrentRendererState():String

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

Returns the name of the state to be applied to the renderer. For example, a basic item renderer returns the String "normal", "hovered", or "selected" to specify the renderer's state. If dealing with touch interactions (or mouse interactions where selection is ignored), "down" and "downAndSelected" can also be returned.

A subclass of GridItemRenderer must override this method to return a value if the behavior desired differs from the default behavior.

In Flex 4.0, the 3 main states were "normal", "hovered", and "selected". In Flex 4.5, "down" and "downAndSelected" have been added.

The full set of states supported (in order of precedence) are:

Returns
String — A String specifying the name of the state to apply to the renderer.
prepare()method 
public function prepare(hasBeenRecycled:Boolean):void

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

Called from the item renderer parent's updateDisplayList() method after all of the renderer's properties have been set. The hasBeenRecycled parameter is false if this renderer has not been used before, meaning it was not recycled. This method is called when a renderer is about to become visible and each time it's redisplayed because of a change in a renderer property, or because a redisplay was explicitly requested.

This method can be used to configure all of a renderer's visual elements and properties. Using this method can be more efficient than binding data properties to visual element properties. Note: Because the prepare() method is called frequently, make sure that it is coded efficiently.

The prepare() method may be called many times before the discard() method is called.

This method is not intended to be called directly. It is called by the DataGrid implementation.

Parameters

hasBeenRecycled:Booleantrue if this renderer is being reused.

Event Detail
dataChange Event
Event Object Type: mx.events.FlexEvent
FlexEvent.type property = mx.events.FlexEvent.DATA_CHANGE

Language Version : ActionScript 3.0
Product Version : Flex 4.5
Runtime Versions : Flash Player 10, AIR 2.5

Dispatched when the data property changes.

The FlexEvent.DATA_CHANGE constant defines the value of the type property of the event object for a dataChange event.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
cancelablefalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.
Examples
GridItemRendererExample.mxml
<?xml version="1.0" encoding="utf-8"?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

-->

<!--

Demonstate how to control text wrapping in DataGrid GridItemRenderer item renderer.

This DataGrid example demonstrates how to control text wrapping with a simple custom item renderer 
based on GridItemRenderer.   All cells in this example display the same lengthy string which does 
not contain newlines.  Note that the Flex text components unconditionally render newline characters 
that appear in the text.

The "Label Renderer" column's renderer is a custom GridItemRenderer that displays its text with
an s:Label component.  We use the Label's maxDisplayedLines property to control line breaking 
and to include "..." truncation when the single line of text doesn't fit.

Note also: this example's column widths and row heights are defined by the DataGrid's typicalItem.  
The typical item uses explicit newlines to create a string that occupies three lines and a 
reasonable column width.

-->

<s:Application 
    xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark">
    
    <fx:Declarations>
        <fx:String id="sampleText">Lorem Ipsum is the standard dummy text of the typesetting industry.</fx:String>
        <fx:int id="maxDisplayedLines">0</fx:int>        
    </fx:Declarations>    
    
    <s:Panel title="Spark DataGrid Control Example which demonstrates how to control text wrapping in a GridItemRenderer"
             width="75%" height="75%" 
             horizontalCenter="0" verticalCenter="0">
        
        <s:controlBarContent>
            <s:VGroup>
                <s:CheckBox id="vrh" selected="@{dataGrid.variableRowHeight}" 
                            label="dataGrid.variableRowHeight={vrh.selected}"/>            
                <s:CheckBox id="lb" selected="true" 
                            valueCommit="maxDisplayedLines=(lb.selected) ? 0 : 1" 
                            label="labelRenderer.maxDisplayedLines={maxDisplayedLines}"/> 
            </s:VGroup>
        </s:controlBarContent>
        
        <s:DataGrid id="dataGrid" variableRowHeight="false" verticalCenter="0" horizontalCenter="0">
            <s:columns>
                <s:ArrayList>                    
                    <!--
                    Simple custom item renderer based on GridItemRenderer and Label.
                    Prevent line breaking by setting maxDisplayedLines="1".
                    -->
                    <s:GridColumn dataField="value" headerText="Label Renderer">
                        <s:itemRenderer>
                            <fx:Component>
                                <s:GridItemRenderer>
                                    <s:Label id="labelDisplay"
                                             left="5" top="9" right="5" bottom="5"
                                             maxDisplayedLines="{outerDocument.maxDisplayedLines}"/>
                                </s:GridItemRenderer>
                            </fx:Component>
                        </s:itemRenderer>
                    </s:GridColumn>
                </s:ArrayList>
            </s:columns>
            
            <!--
            The typicalItem defines column widths and the default row height.  The text
            occpies two lines because we've used '\n' to introduce two newlines.
            
            Alternatively we could have used the odd XML '&#10;' escape to introduce 
            two newlines (the value of the newline character is decimal 10).
            
            <s:DataItem value="Lorem Ipsum sample text.&#10;Lorem Ipsum sample text.&#10;"/>
            -->
            <s:typicalItem>
                <s:DataItem value="{'Lorem Ipsum sample text.\nLorem Ipsum sample text\n'}"/>
            </s:typicalItem>
            
            <s:ArrayCollection>
                <s:DataItem value="{sampleText}"/>
                <s:DataItem value="{sampleText}"/>
                <s:DataItem value="{sampleText}"/>
            </s:ArrayCollection>
        </s:DataGrid>
    </s:Panel>
</s:Application>
GridItemRendererCustomBindingExample.mxml
<?xml version="1.0" encoding="utf-8"?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

-->

<!--
Examples of custom GridItemRenderers that use data binding to configure visual properties.

The application's control bar slider can be used to change the the dataProvider items.

The GridItemRenderer class is a Group that implements
IGridItemRenderer and can be used as the top level "container" for a
custom item renderer.  Its data property is the dataProvider item for
the row the item renderer appears on and its components can configure
themselves by binding to the data property, or by overriding the
renderer's prepare() method and configuring themselves imperatively
with ActionScript code.  All of the item renderers in this example
use binding, which makes the code a little easier to read and modify.
It's also less efficient than using a prepare() method override.   The 
performance difference is most noticeable when the DataGrid is configured
so that a large number of item renderers are visible.

DataGrid item renderers are always sized to exactly fit the cell that
they're rendering: their size matches the width of their column and the height of their row.
The DataGrid enables interactive column resizing by default, so all of
the item renderers need to defend against the possibility that their
width will become arbitrarily small.  The first column's item renderer
just contains a Label.  By specifying maxDisplayedLines="1" we ensure
that the Label will truncate its text to fit the width it's given.
The other columns' item renderers specify
clipAndEnableScrolling="true" which just means that their fixed size
contents will always be clipped to the bounds of the GridItemRenderer.
This property -enables- scrolling, which means that one could actually
scroll the contents of the item renderers when their width gets small,
by setting the renderer's horizontalScrollPosition property.  We 
do not do as much here.

The "Name" column's item renderer demonstrates a special case: if the 
renderer contains a text component with id="labelDisplay", GridItemRenderer
automatically sets the labelDisplay's text property to the value
of data[column.dataField] per the GridItemRenderer label property.  The 
first colunm also demonstrates using the styleName property to configure
the Label's left, right, top, and fontSize styles.

The "Statistics" column's item renderer demonstrates how binding can be used to 
configure the geometry of graphic elememnts.   The data items' min, max, and
value properties have been normalized to the range [0 100] to keep the bindings simple.

The "Value" column's item renderer allows one to change data item's value
property with a Slider.  

The "Call" column's item renderer demonstrates a slightly more complicated component
layout and it also demonstates how the data item's value can be both displayed
and edited.

-->

<s:Application 
    xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark">
    
    <fx:Script>
        <![CDATA[
            // Incrementally change all of the date items' min, max, value, and call properties.
            private function changeData(delta:Number):void
            {
                for each (var item:Object in dataGrid.dataProvider)
                {
                    item.value = (item.value + delta) % 100;
                    item.min = item.value * 0.5;
                    item.max = item.value + ((100 - item.value) * 0.5);
                    item.call = item.value > 50;
                }
            }
        ]]>
    </fx:Script>
    
    <fx:Style>
        .nameColumn {
            fontSize: 18;
            left: 5; 
            right: 5;
            top: 9;
        }        
    </fx:Style>
    
    <s:Panel title="Spark DataGrid Control Example of custom GridItemRenderers that use data binding to configure visual properties"
             width="75%" height="75%" 
             horizontalCenter="0" verticalCenter="0">
        
        <s:controlBarContent>
            <s:HGroup verticalAlign="baseline">
                <s:Label text="Shake Data"/>            
                <s:HSlider id="hsl" minimum="0" maximum="25" change="changeData(hsl.value)"/>
            </s:HGroup>
        </s:controlBarContent>
        
    <s:DataGrid id="dataGrid" left="5" right="5" top="5" bottom="5">
        <s:columns>
            <s:ArrayList>
                
                <!-- 
                    By specifying id="labelDisplay" the Label component's text property is automatically
                    set to the renderer's label, which is effectively the value of the item's name property.  
                    We've used styleName here to refer to a set of styles that could have also have been set inline.
                -->
                <s:GridColumn dataField="name" headerText="Name">
                    <s:itemRenderer>
                        <fx:Component>
                            <s:GridItemRenderer>
                                <s:Label id="labelDisplay" maxDisplayedLines="1" styleName="nameColumn"/> 
                            </s:GridItemRenderer>
                        </fx:Component>
                    </s:itemRenderer>
                </s:GridColumn>
                
                <!--
                    This column's renderer displays the item's value, min, and max properties with a simple dial
                    and bar chart defined with graphic primitives.  The bar chart s:Rect elements specify
                    scaleY="-1" so that the rectangles grow from the bottom of the renderer upwards.  To keep
                    things simple, most of the elements geometry is specified explicitly.  Note also that
                    min, max, and value have all been normalized to [0, 100].
                -->
                <s:GridColumn dataField="value" headerText="Statistics">
                    <s:itemRenderer>
                        <fx:Component>
                            <s:GridItemRenderer clipAndEnableScrolling="true">
                                <s:Group left="5" top="5" bottom="5">
                                    <s:Ellipse x="0" y="0" width="30" height="30">
                                        <s:stroke>
                                            <s:SolidColorStroke color="0x272F32" weight="2"/>
                                        </s:stroke>
                                        <s:fill>
                                            <s:SolidColor color="0x9DBDC6"/>
                                        </s:fill>
                                    </s:Ellipse>
                                    <s:Line rotation="{(data.value / 100) * 360}" transformX="15" transformY="15"
                                            xFrom="15" yFrom="15" xTo="27" yTo="15">
                                        <s:stroke>
                                            <s:SolidColorStroke color="0xFF3D2E" weight="3"/>
                                        </s:stroke>
                                    </s:Line>
                                    <s:Rect x="40" y="30" scaleY="-1" width="15" height="{(data.min / 100) * 30}">
                                        <s:fill>
                                            <s:SolidColor color="0xFF3D2E"/>
                                        </s:fill>
                                    </s:Rect>
                                    <s:Rect x="60" y="30" scaleY="-1" width="15" height="{(data.max / 100) * 30}">
                                        <s:fill>
                                            <s:SolidColor color="0xFF3D2E"/>
                                        </s:fill>
                                    </s:Rect>                                    
                                </s:Group>
                            </s:GridItemRenderer>
                        </fx:Component>
                    </s:itemRenderer>                            
                </s:GridColumn>
                
                <!--
                    This column's renderer displays the data item's value property with a slider.  The binding is specified 
                    with "@{data.value}", which indicates that it's bidirection, so changing the slider also changes
                    the dataProvider item.
                -->    
                <s:GridColumn dataField="value" headerText="Value">
                    <s:itemRenderer>
                        <fx:Component>
                            <s:GridItemRenderer clipAndEnableScrolling="true">
                                <s:HSlider left="5" right="5" verticalCenter="0"
                                    minimum="{data.min}" maximum="{data.max}" value="@{data.value}"/> 
                            </s:GridItemRenderer>
                        </fx:Component>
                    </s:itemRenderer>
                </s:GridColumn>
                
                <!--
                    Display the boolean data item call property with a checkbox, radio button, and a text field.  The
                    call value can be changed with the checkbox.
                -->
                <s:GridColumn dataField="call" headerText="Call">
                    <s:itemRenderer>
                        <fx:Component>
                            <s:GridItemRenderer clipAndEnableScrolling="true">
                                <s:HGroup left="5" top="9" right="5" verticalAlign="baseline">
                                    <s:CheckBox selected="@{data.call}"/>
                                    <s:RadioButton selected="{data.call}" enabled="false"/>
                                    <s:TextInput text="{data.call}" enabled="false"/>
                                </s:HGroup>
                            </s:GridItemRenderer>
                        </fx:Component>
                    </s:itemRenderer>
                </s:GridColumn>
            </s:ArrayList>
        </s:columns>
        
        <s:ArrayCollection>
            <s:DataItem min="10" max="85" value="15" name="Abrasive" price="100.11" call="false"/>
            <s:DataItem min="15" max="75" value="25" name="Brush" price="110.01" call="true"/>
            <s:DataItem min="30" max="65" value="45" name="Clamp" price="120.02" call="false"/>
            <s:DataItem min="20" max="85" value="65" name="Drill" price="130.03" call="true"/>
            <s:DataItem min="40" max="95" value="85" name="Epoxy" price="140.04" call="false"/>
            <s:DataItem min="70" max="99" value="95" name="File" price="150.05" call="true"/>
            <s:DataItem min="60" max="85" value="80" name="Gouge" price="160.06" call="false"/>
            <s:DataItem min="40" max="70" value="60" name="Hook" price="170.07" call="true"/>
            <s:DataItem min="10" max="40" value="20" name="Ink" price="180.08" call="false"/>
            <s:DataItem min="5" max="30" value="10" name="Jack" price="190.09" call="true"/>         
        </s:ArrayCollection>
    </s:DataGrid>
    </s:Panel>
</s:Application>
GridItemRendererCustomPrepareExample.mxml
<?xml version="1.0" encoding="utf-8"?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

-->

<!--
Examples of custom GridItemRenderers that use the prepare() method to configure visual properties.

This example is identical to DataGridCustomBindingRenderer.as except that instead of using 
data bindings, all visual elements are configured by GridItemRenderer/prepare() method 
overrides.

-->

<s:Application 
    xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark">
    
    <fx:Script>
        <![CDATA[
            // Incrementally change all of the date items' min, max, value, and call properties.
            private function changeData(delta:Number):void
            {
                for each (var item:Object in dataGrid.dataProvider)
                {
                    item.value = (item.value + delta) % 100;
                    item.min = (item.min + delta) % 100;
                    item.max = (item.max + delta) % 100;
                    item.call = item.value > 50;
                }
            }
        ]]>
    </fx:Script>
    
    <fx:Style>
        .nameColumn {
            fontSize: 18;
            left: 5; 
            right: 5;
            top: 9;
        }        
    </fx:Style>
    
    <s:Panel title="Spark DataGrid Control Example of custom GridItemRenderers that use the prepare() method to configure visual properties"
             width="75%" height="75%" 
             horizontalCenter="0" verticalCenter="0">
        
        <s:controlBarContent>
            <s:HGroup verticalAlign="baseline">
                <s:Label text="Shake Data"/>            
                <s:HSlider id="hsl" minimum="0" maximum="50" change="changeData(hsl.value)"/>
            </s:HGroup>
        </s:controlBarContent>
            
        <s:DataGrid id="dataGrid" left="5" right="5" top="5" bottom="5">
            <s:columns>
                <s:ArrayList>
                    <s:GridColumn dataField="name" headerText="Name">
                        <s:itemRenderer>
                            <fx:Component>
                                <s:GridItemRenderer>
                                    <fx:Script>
                                        <![CDATA[
                                            override public function prepare(hasBeenRecycled:Boolean):void
                                            {
                                                nameLabel.text = data.name;
                                            }
                                        ]]>
                                    </fx:Script>
                                    <s:Label id="nameLabel" maxDisplayedLines="1" styleName="nameColumn"/> 
                                </s:GridItemRenderer>
                            </fx:Component>
                        </s:itemRenderer>
                    </s:GridColumn>
                    
                    <s:GridColumn dataField="value" headerText="Statistics">
                        <s:itemRenderer>
                            <fx:Component>
                                <s:GridItemRenderer clipAndEnableScrolling="true">
                                    <fx:Script>
                                        <![CDATA[
                                            override public function prepare(hasBeenRecycled:Boolean):void
                                            {
                                                valueDial.rotation = (data.value / 100) * 360;
                                                minBar.height = (data.min / 100) * 30;
                                                maxBar.height = (data.max / 100) * 30;                                                
                                            }
                                        ]]>
                                    </fx:Script>                                
                                    <s:Group left="5" top="5" bottom="5">
                                        <s:Ellipse x="0" y="0" width="30" height="30">
                                            <s:stroke>
                                                <s:SolidColorStroke color="0x272F32" weight="2"/>
                                            </s:stroke>
                                            <s:fill>
                                                <s:SolidColor color="0x9DBDC6"/>
                                            </s:fill>
                                        </s:Ellipse>
                                        <s:Line id="valueDial" transformX="15" transformY="15"
                                                xFrom="15" yFrom="15" xTo="27" yTo="15">
                                            <s:stroke>
                                                <s:SolidColorStroke color="0xFF3D2E" weight="3"/>
                                            </s:stroke>
                                        </s:Line>
                                        <s:Rect id="minBar" x="40" y="30" scaleY="-1" width="15">
                                            <s:fill>
                                                <s:SolidColor color="0xFF3D2E"/>
                                            </s:fill>
                                        </s:Rect>
                                        <s:Rect id="maxBar" x="60" y="30" scaleY="-1" width="15">
                                            <s:fill>
                                                <s:SolidColor color="0xFF3D2E"/>
                                            </s:fill>
                                        </s:Rect>                                    
                                    </s:Group>
                                </s:GridItemRenderer>
                            </fx:Component>
                        </s:itemRenderer>                            
                    </s:GridColumn>
                    
                    <s:GridColumn dataField="value" headerText="Value">
                        <s:itemRenderer>
                            <fx:Component>
                                <s:GridItemRenderer clipAndEnableScrolling="true">
                                    <fx:Script>
                                        <![CDATA[
                                            override public function prepare(hasBeenRecycled:Boolean):void
                                            {
                                                valueSlider.minimum = data.min;
                                                valueSlider.maximum = data.max;
                                                valueSlider.value = data.value;
                                            }
                                            
                                            private function valueChange():void
                                            {
                                                data.value = valueSlider.value;
                                            }
                                        ]]>
                                    </fx:Script>                                
                                    <s:HSlider id="valueSlider" left="5" right="5" verticalCenter="0" change="valueChange()"/>
                                </s:GridItemRenderer>
                            </fx:Component>
                        </s:itemRenderer>
                    </s:GridColumn>
                    
                    <s:GridColumn dataField="call" headerText="Call">
                        <s:itemRenderer>
                            <fx:Component>
                                <s:GridItemRenderer clipAndEnableScrolling="true">
                                    <fx:Script>
                                        <![CDATA[
                                            override public function prepare(hasBeenRecycled:Boolean):void
                                            {
                                                callCheckBox.selected = data.call;
                                                callRadioButton.selected = data.call;
                                                callTextInput.text = String(data.call);
                                            }
                                            
                                            private function valueChange():void
                                            {
                                                data.call = callCheckBox.selected;
                                            }
                                        ]]>
                                    </fx:Script>    
                                    <s:HGroup left="5" top="9" right="5" verticalAlign="baseline">
                                        <s:CheckBox id="callCheckBox" change="valueChange()"/>
                                        <s:RadioButton id="callRadioButton" enabled="false"/>
                                        <s:TextInput id="callTextInput" enabled="false"/>
                                    </s:HGroup>
                                </s:GridItemRenderer>
                            </fx:Component>
                        </s:itemRenderer>
                    </s:GridColumn>
                </s:ArrayList>
            </s:columns>
            
            <s:ArrayCollection>
                <s:DataItem min="10" max="85" value="15" name="Abrasive" price="100.11" call="false"/>
                <s:DataItem min="15" max="75" value="25" name="Brush" price="110.01" call="true"/>
                <s:DataItem min="30" max="65" value="45" name="Clamp" price="120.02" call="false"/>
                <s:DataItem min="20" max="85" value="65" name="Drill" price="130.03" call="true"/>
                <s:DataItem min="40" max="95" value="85" name="Epoxy" price="140.04" call="false"/>
                <s:DataItem min="70" max="99" value="95" name="File" price="150.05" call="true"/>
                <s:DataItem min="60" max="85" value="80" name="Gouge" price="160.06" call="false"/>
                <s:DataItem min="40" max="70" value="60" name="Hook" price="170.07" call="true"/>
                <s:DataItem min="10" max="40" value="20" name="Ink" price="180.08" call="false"/>
                <s:DataItem min="5" max="30" value="10" name="Jack" price="190.09" call="true"/>         
            </s:ArrayCollection>
        </s:DataGrid>
    </s:Panel>
</s:Application>