| Package | mx.containers | 
| Class | public class Canvas | 
| Inheritance | Canvas  Container  UIComponent  FlexSprite  flash.display.Sprite | 
| Implements | IConstraintLayout | 
| Language Version : | ActionScript 3.0 | 
| Product Version : | Flex 3 | 
| Runtime Versions : | Flash Player 9, AIR 1.1 | 
|  | Starting with Flex 4.0, Apache recommends that you use the spark.components.BorderContainer class as an alternative to this class. | 
|  | Starting with Flex 4.0, Apache recommends that you use the spark.components.Group class as an alternative to this class. | 
x and
  y properties of each child.
 
  Note: Adobe recommends that, when possible, you use the Spark containers with BasicLayout instead of the Halo Canvas container.
Flex sets the children of a Canvas layout container to their
  preferred width and preferred height.
  You may override the value for a child's
  preferred width by setting its width property to either
  a fixed pixel value or a percentage of the container size.
  You can set the preferred height in a similar manner.
If you use percentage sizing inside a Canvas container, some of your components may overlap. If this is not the effect you want, plan your component positions and sizes carefully.
The Canvas container has the following default sizing characteristics:
| Characteristic | Description | 
|---|---|
| Default size | Large enough to hold all its children at the default sizes of the children | 
| Default padding | 0 pixels for the top, bottom, left, and right values | 
 Hide MXML Syntax
Hide MXML SyntaxThe <mx:Canvas> tag inherits all the tag attributes
  of its superclass. Use the following syntax:
  <mx:Canvas>
    ...
      child tags
    ...
  </mx:Canvas>
  
  
  
  See also
| Property | Defined By | ||
|---|---|---|---|
|  | accessibilityDescription : String 
      A convenience accessor for the description property
      in this UIComponent's accessibilityProperties object. | UIComponent | |
|  | accessibilityEnabled : Boolean 
      A convenience accessor for the silent property
      in this UIComponent's accessibilityProperties object. | UIComponent | |
|  | accessibilityName : String 
      A convenience accessor for the name property
      in this UIComponent's accessibilityProperties object. | UIComponent | |
|  | accessibilityShortcut : String 
      A convenience accessor for the shortcut property
      in this UIComponent's accessibilityProperties object. | UIComponent | |
|  | activeEffects : Array [read-only] 
      The list of effects that are currently playing on the component,
      as an Array of EffectInstance instances. | UIComponent | |
|  | autoLayout : Boolean 
      If true, measurement and layout are done
      when the position or size of a child is changed. | Container | |
|  | automationDelegate : Object 
      The delegate object that handles the automation-related functionality. | UIComponent | |
|  | automationEnabled : Boolean [read-only] 
      
      True if this component is enabled for automation, false
      otherwise. | UIComponent | |
|  | automationName : String 
      
      Name that can be used as an identifier for this object. | UIComponent | |
|  | automationOwner : DisplayObjectContainer [read-only] 
      
      The owner of this component for automation purposes. | UIComponent | |
|  | automationParent : DisplayObjectContainer [read-only] 
      
      The parent of this component for automation purposes. | UIComponent | |
|  | automationTabularData : Object [read-only] 
      
      An implementation of the IAutomationTabularData interface, which 
      can be used to retrieve the data. | UIComponent | |
|  | automationValue : 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 | |
|  | automationVisible : Boolean [read-only] 
      
      True if this component is visible for automation, false
      otherwise. | UIComponent | |
|  | baseline : Object 
      For components, this layout constraint property is a
      facade on top of the similarly-named style. | UIComponent | |
|  | baselinePosition : Number [read-only] 
      
      The y-coordinate of the baseline
      of the first line of text of the component. | UIComponent | |
|  | borderMetrics : EdgeMetrics [read-only] 
      Returns an EdgeMetrics object that has four properties:
      left, top, right,
      and bottom. | Container | |
|  | bottom : Object 
      For components, this layout constraint property is a
      facade on top of the similarly-named style. | UIComponent | |
|  | cacheHeuristic : Boolean [write-only] 
      Used by Flex to suggest bitmap caching for the object. | UIComponent | |
|  | cachePolicy : String 
      Specifies the bitmap caching policy for this object. | UIComponent | |
|  | childDescriptors : Array [read-only] 
      Array of UIComponentDescriptor objects produced by the MXML compiler. | Container | |
|  | className : String [read-only] 
      The name of this instance's class, such as "Button". | UIComponent | |
|  | clipContent : Boolean 
      Whether to apply a clip mask if the positions and/or sizes
      of this container's children extend outside the borders of
      this container. | Container | |
| constraintColumns : Array 
      An Array of ConstraintColumn instances that partition this container. | Canvas | ||
| constraintRows : Array 
      An Array of ConstraintRow instances that partition this container. | Canvas | ||
|  | contentMouseX : Number [override] [read-only] 
      Returns the x position of the mouse, in the content coordinate system. | Container | |
|  | contentMouseY : Number [override] [read-only] 
      Returns the y position of the mouse, in the content coordinate system. | Container | |
|  | creatingContentPane : Boolean 
      Containers use an internal content pane to control scrolling. | Container | |
|  | creationIndex : int Deprecated: DeprecatedSpecifies the order to instantiate and draw the children
      of the container. | Container | |
|  | creationPolicy : String 
      The child creation policy for this MX Container. | Container | |
|  | currentState : String 
      The current view state of the component. | UIComponent | |
|  | cursorManager : ICursorManager [read-only] 
      Gets the CursorManager that controls the cursor for this component
      and its peers. | UIComponent | |
|  | data : Object 
      The data property lets you pass a value
      to the component when you use it in an item renderer or item editor. | Container | |
|  | defaultButton : IFlexDisplayObject 
      The Button control designated as the default button
      for the container. | Container | |
|  | deferredContentCreated : Boolean [read-only] 
      IDeferredContentOwner equivalent of processedDescriptors
     
       | Container | |
|  | depth : Number 
      
      Determines the order in which items inside of containers
      are rendered. | UIComponent | |
|  | descriptor : UIComponentDescriptor 
      Reference to the UIComponentDescriptor, if any, that was used
      by the createComponentFromDescriptor() method to create this
      UIComponent instance. | UIComponent | |
|  | designLayer : DesignLayer 
      Specifies the optional DesignLayer instance associated with this visual 
      element. | UIComponent | |
|  | document : Object 
      A reference to the document object associated with this UIComponent. | UIComponent | |
|  | doubleClickEnabled : Boolean [override] 
      Specifies whether the UIComponent object receives doubleClick events. | UIComponent | |
|  | enabled : Boolean 
      Whether the component can accept user interaction. | UIComponent | |
|  | errorString : String 
      The text that displayed by a component's error tip when a
      component is monitored by a Validator and validation fails. | UIComponent | |
|  | explicitHeight : Number 
      Number that specifies the explicit height of the component,
      in pixels, in the component's coordinates. | UIComponent | |
|  | explicitMaxHeight : Number 
      The maximum recommended height of the component to be considered
      by the parent during layout. | UIComponent | |
|  | explicitMaxWidth : Number 
      The maximum recommended width of the component to be considered
      by the parent during layout. | UIComponent | |
|  | explicitMinHeight : Number 
      The minimum recommended height of the component to be considered
      by the parent during layout. | UIComponent | |
|  | explicitMinWidth : Number 
      The minimum recommended width of the component to be considered
      by the parent during layout. | UIComponent | |
|  | explicitWidth : Number 
      Number that specifies the explicit width of the component,
      in pixels, in the component's coordinates. | UIComponent | |
|  | flexContextMenu : IFlexContextMenu 
      The context menu for this UIComponent. | UIComponent | |
|  | focusEnabled : Boolean 
      Indicates whether the component can receive focus when tabbed to. | UIComponent | |
|  | focusManager : IFocusManager 
      Gets the FocusManager that controls focus for this component
      and its peers. | UIComponent | |
|  | focusPane : Sprite 
      The focus pane associated with this object. | UIComponent | |
|  | hasFocusableChildren : Boolean 
      A flag that indicates whether child objects can receive focus. | UIComponent | |
|  | hasLayoutMatrix3D : Boolean [read-only] 
      
      Contains true if the element has 3D Matrix. | UIComponent | |
|  | height : Number [override] 
      Number that specifies the height of the component, in pixels,
      in the parent's coordinates. | UIComponent | |
|  | horizontalCenter : Object 
      For components, this layout constraint property is a
      facade on top of the similarly-named style. | UIComponent | |
|  | horizontalLineScrollSize : Number 
      Number of pixels to move when the left- or right-arrow
      button in the horizontal scroll bar is pressed. | Container | |
|  | horizontalPageScrollSize : Number 
      Number of pixels to move when the track in the
      horizontal scroll bar is pressed. | Container | |
|  | horizontalScrollBar : ScrollBar 
      The horizontal scrollbar used in this container. | Container | |
|  | horizontalScrollPolicy : String 
      Specifies whether the horizontal scroll bar is always present,
      always absent, or automatically added when needed. | Container | |
|  | horizontalScrollPosition : Number 
      The current position of the horizontal scroll bar. | Container | |
|  | icon : Class 
      The Class of the icon displayed by some navigator
      containers to represent this Container. | Container | |
|  | id : String 
      ID of the component. | UIComponent | |
|  | includeInLayout : Boolean 
      Specifies whether this component is included in the layout of the
      parent container. | UIComponent | |
|  | inheritingStyles : Object 
      The beginning of this component's chain of inheriting styles. | UIComponent | |
|  | initialized : 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 | |
|  | instanceIndex : int [read-only] 
      The index of a repeated component. | UIComponent | |
|  | instanceIndices : Array 
      An Array containing the indices required to reference
      this UIComponent object from its parent document. | UIComponent | |
|  | is3D : Boolean [read-only] 
      
      Contains true when the element is in 3D. | UIComponent | |
|  | isDocument : Boolean [read-only] 
      Contains true if this UIComponent instance is a document object. | UIComponent | |
|  | isPopUp : Boolean 
      Set to true by the PopUpManager to indicate
      that component has been popped up. | UIComponent | |
|  | label : String 
      The text displayed by some navigator containers to represent
      this Container. | Container | |
|  | layoutMatrix3D : Matrix3D [write-only] 
      The transform matrix that is used to calculate a component's layout
      relative to its siblings. | UIComponent | |
|  | left : Object 
      For components, this layout constraint property is a
      facade on top of the similarly-named style. | UIComponent | |
|  | maintainProjectionCenter : Boolean 
      When true, the component keeps its projection matrix centered on the
      middle of its bounding box. | UIComponent | |
|  | maxHeight : Number 
      The maximum recommended height of the component to be considered
      by the parent during layout. | UIComponent | |
|  | maxHorizontalScrollPosition : Number [read-only] 
      The largest possible value for the
      horizontalScrollPosition property. | Container | |
|  | maxVerticalScrollPosition : Number [read-only] 
      The largest possible value for the
      verticalScrollPosition property. | Container | |
|  | maxWidth : Number 
      The maximum recommended width of the component to be considered
      by the parent during layout. | UIComponent | |
|  | measuredHeight : Number 
      The default height of the component, in pixels. | UIComponent | |
|  | measuredMinHeight : Number 
      The default minimum height of the component, in pixels. | UIComponent | |
|  | measuredMinWidth : Number 
      The default minimum width of the component, in pixels. | UIComponent | |
|  | measuredWidth : Number 
      The default width of the component, in pixels. | UIComponent | |
|  | minHeight : Number 
      The minimum recommended height of the component to be considered
      by the parent during layout. | UIComponent | |
|  | minWidth : Number 
      The minimum recommended width of the component to be considered
      by the parent during layout. | UIComponent | |
|  | moduleFactory : 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 | |
|  | mouseFocusEnabled : Boolean 
      Whether you can receive focus when clicked on. | UIComponent | |
|  | MXMLDescriptor : Array [read-only]  | UIComponent | |
|  | MXMLProperties : Array [read-only]  | UIComponent | |
|  | nestLevel : int 
      Depth of this object in the containment hierarchy. | UIComponent | |
|  | nonInheritingStyles : Object 
      The beginning of this component's chain of non-inheriting styles. | UIComponent | |
|  | numAutomationChildren : int [read-only] 
      
      The number of automation children this container has. | UIComponent | |
|  | numChildren : int [override] [read-only] 
      Number of child components in this container. | Container | |
|  | numElements : int [read-only] 
      
      The number of visual elements in this container. | Container | |
|  | owner : DisplayObjectContainer 
      The owner of this IVisualElement object. | UIComponent | |
|  | parent : DisplayObjectContainer [override] [read-only] 
      The parent container or component for this component. | UIComponent | |
|  | parentApplication : Object [read-only] 
      A reference to the Application object that contains this UIComponent
      instance. | UIComponent | |
|  | parentDocument : Object [read-only] 
      A reference to the parent document object for this UIComponent. | UIComponent | |
|  | percentHeight : Number 
      Specifies the height of a component as a percentage
      of its parent's size. | UIComponent | |
|  | percentWidth : Number 
      Specifies the width of a component as a percentage
      of its parent's size. | UIComponent | |
|  | postLayoutTransformOffsets : 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 | |
|  | processedDescriptors : Boolean 
      Set to true after immediate or deferred child creation,
      depending on which one happens. | UIComponent | |
|  | rawChildren : IChildList [read-only] 
      A container typically contains child components, which can be enumerated
      using the Container.getChildAt() method and 
      Container.numChildren property. | Container | |
|  | repeater : IRepeater [read-only] 
      A reference to the Repeater object
      in the parent document that produced this UIComponent. | UIComponent | |
|  | repeaterIndex : int [read-only] 
      The index of the item in the data provider
      of the Repeater that produced this UIComponent. | UIComponent | |
|  | repeaterIndices : 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 | |
|  | repeaters : Array 
      An Array containing references to the Repeater objects
      in the parent document that produced this UIComponent. | UIComponent | |
|  | right : Object 
      For components, this layout constraint property is a
      facade on top of the similarly-named style. | UIComponent | |
|  | rotation : Number [override]  | UIComponent | |
|  | rotationX : Number [override] 
     Indicates the x-axis rotation of the DisplayObject instance, in degrees, from its original orientation 
     relative to the 3D parent container. | UIComponent | |
|  | rotationY : Number [override] 
     Indicates the y-axis rotation of the DisplayObject instance, in degrees, from its original orientation 
     relative to the 3D parent container. | UIComponent | |
|  | rotationZ : Number [override] 
       | UIComponent | |
|  | scaleX : Number [override] 
      Number that specifies the horizontal scaling factor. | UIComponent | |
|  | scaleY : Number [override] 
      Number that specifies the vertical scaling factor. | UIComponent | |
|  | scaleZ : Number [override] 
      Number that specifies the scaling factor along the z axis. | UIComponent | |
|  | screen : Rectangle [read-only] 
      Returns an object that contains the size and position of the base
      drawing surface for this object. | UIComponent | |
|  | showInAutomationHierarchy : Boolean 
       
      A flag that determines if an automation object
      shows in the automation hierarchy. | UIComponent | |
|  | states : Array 
      The view states that are defined for this component. | UIComponent | |
|  | styleDeclaration : CSSStyleDeclaration 
      Storage for the inline inheriting styles on this object. | UIComponent | |
|  | styleManager : IStyleManager2 [read-only] 
      Returns the StyleManager instance used by this component. | UIComponent | |
|  | styleName : Object 
      The class style used by this component. | UIComponent | |
|  | styleParent : IAdvancedStyleClient 
      A component's parent is used to evaluate descendant selectors. | UIComponent | |
|  | systemManager : ISystemManager 
      Returns the SystemManager object used by this component. | UIComponent | |
|  | tabFocusEnabled : 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 | |
|  | toolTip : String 
      Text to display in the ToolTip. | UIComponent | |
|  | top : Object 
      For components, this layout constraint property is a
      facade on top of the similarly-named style. | UIComponent | |
|  | transform : Transform [override] 
      An object with properties pertaining to a display object's matrix, color transform, 
      and pixel bounds. | UIComponent | |
|  | transformX : Number 
      Sets the x coordinate for the transform center of the component. | UIComponent | |
|  | transformY : Number 
      Sets the y coordinate for the transform center of the component. | UIComponent | |
|  | transformZ : Number 
      Sets the z coordinate for the transform center of the component. | UIComponent | |
|  | transitions : Array 
      An Array of Transition objects, where each Transition object defines a
      set of effects to play when a view state change occurs. | UIComponent | |
|  | tweeningProperties : Array 
      Array of properties that are currently being tweened on this object. | UIComponent | |
|  | uid : String 
      A unique identifier for the object. | UIComponent | |
|  | updateCompletePendingFlag : Boolean 
      A flag that determines if an object has been through all three phases
      of layout validation (provided that any were required). | UIComponent | |
|  | validationSubField : String 
      Used by a validator to associate a subfield with this component. | UIComponent | |
|  | verticalCenter : Object 
      For components, this layout constraint property is a
      facade on top of the similarly-named style. | UIComponent | |
|  | verticalLineScrollSize : Number 
      Number of pixels to scroll when the up- or down-arrow
      button in the vertical scroll bar is pressed,
      or when you scroll by using the mouse wheel. | Container | |
|  | verticalPageScrollSize : Number 
      Number of pixels to scroll when the track
      in the vertical scroll bar is pressed. | Container | |
|  | verticalScrollBar : ScrollBar 
      The vertical scrollbar used in this container. | Container | |
|  | verticalScrollPolicy : String 
      Specifies whether the vertical scroll bar is always present,
      always absent, or automatically added when needed. | Container | |
|  | verticalScrollPosition : Number 
      The current position of the vertical scroll bar. | Container | |
|  | viewMetrics : EdgeMetrics [read-only] 
      Returns an object that has four properties: left,
      top, right, and bottom. | Container | |
|  | viewMetricsAndPadding : EdgeMetrics [read-only] 
      Returns an object that has four properties: left,
      top, right, and bottom. | Container | |
|  | visible : Boolean [override] 
      Whether or not the display object is visible. | UIComponent | |
|  | width : Number [override] 
      Number that specifies the width of the component, in pixels,
      in the parent's coordinates. | UIComponent | |
|  | x : Number [override] 
      Number that specifies the component's horizontal position,
      in pixels, within its parent container. | UIComponent | |
|  | y : Number [override] 
      Number that specifies the component's vertical position,
      in pixels, within its parent container. | UIComponent | |
|  | z : Number [override] 
       | UIComponent | |
| Method | Defined By | ||
|---|---|---|---|
| Canvas() 
      Constructor. | Canvas | ||
|  | addChild(child:DisplayObject):DisplayObject [override] 
      Adds a child DisplayObject to this Container. | Container | |
|  | addChildAt(child:DisplayObject, index:int):DisplayObject [override] 
      Adds a child DisplayObject to this Container. | Container | |
|  | 
      
      Adds a visual element to this container. | Container | |
|  | 
      
      Adds a visual element to this container. | Container | |
|  | addStyleClient(styleClient:IAdvancedStyleClient):void 
      Adds a non-visual style client to this component instance. | UIComponent | |
|  | callLater(method:Function, args:Array = null):void 
      Queues a function to be called later. | UIComponent | |
|  | clearStyle(styleProp:String):void 
      Deletes a style property from this component instance. | UIComponent | |
|  | contentToGlobal(point:Point):Point [override] 
      Converts a Point object from content coordinates to global coordinates. | Container | |
|  | contentToLocal(point:Point):Point [override] 
      Converts a Point object from content to local coordinates. | Container | |
|  | createAutomationIDPart(child:IAutomationObject):Object 
      
      Returns a set of properties that identify the child within 
      this container. | UIComponent | |
|  | createAutomationIDPartWithRequiredProperties(child:IAutomationObject, properties:Array):Object 
      
      Returns a set of properties as automation IDs that identify the child within
      this container. | UIComponent | |
|  | 
      Given a single UIComponentDescriptor, create the corresponding
      component and add the component as a child of this Container. | Container | |
|  | createComponentsFromDescriptors(recurse:Boolean = true):void 
      Iterate through the Array of childDescriptors,
      and call the createComponentFromDescriptor() method for each one. | Container | |
|  | createDeferredContent():void 
      Performs the equivalent action of calling 
      the createComponentsFromDescriptors(true) method for containers 
      that implement the IDeferredContentOwner interface to support deferred instantiation. | Container | |
|  | createReferenceOnParentDocument(parentDocument:IFlexDisplayObject):void 
      
      Creates an id reference to this IUIComponent object
	  on its parent document object. | UIComponent | |
|  | deleteReferenceOnParentDocument(parentDocument:IFlexDisplayObject):void 
      
      Deletes the id reference to this IUIComponent object
	  on its parent document object. | UIComponent | |
|  | 
      Returns a UITextFormat object corresponding to the text styles
      for this UIComponent. | UIComponent | |
|  | dispatchEvent(event:Event):Boolean [override] 
      Dispatches an event into the event flow. | UIComponent | |
|  | drawFocus(isFocused:Boolean):void 
      Shows or hides the focus indicator around this component. | UIComponent | |
|  | 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 | |
|  | effectFinished(effectInst:IEffectInstance):void 
      Called by the effect instance when it stops playing on the component. | UIComponent | |
|  | effectStarted(effectInst:IEffectInstance):void 
      Called by the effect instance when it starts playing on the component. | UIComponent | |
|  | endEffectsStarted():void 
      Ends all currently playing effects on the component. | UIComponent | |
|  | executeBindings(recurse:Boolean = false):void [override] 
      Executes all the data bindings on this Container. | Container | |
|  | executeChildBindings(recurse:Boolean):void 
      Executes the bindings into this Container's child UIComponent objects. | Container | |
|  | finishPrint(obj:Object, target:IFlexDisplayObject):void 
      Called after printing is complete. | UIComponent | |
|  | generateMXMLArray(document:Object, data:Array, recursive:Boolean = true):Array | UIComponent | |
|  | generateMXMLVector(document:Object, data:Array, recursive:Boolean = true):* | UIComponent | |
|  | getAutomationChildAt(index:int):IAutomationObject 
       
      Provides the automation object at the specified index. | UIComponent | |
|  | getAutomationChildren():Array 
      
      Provides the automation object list . | UIComponent | |
|  | getBoundsXAtSize(width:Number, height:Number, postLayoutTransform:Boolean = true):Number 
      
      Returns the x coordinate of the element's bounds at the specified element size. | UIComponent | |
|  | getBoundsYAtSize(width:Number, height:Number, postLayoutTransform:Boolean = true):Number 
      
      Returns the y coordinate of the element's bounds at the specified element size. | UIComponent | |
|  | getChildAt(index:int):DisplayObject [override] 
      Gets the nth child component object. | Container | |
|  | getChildByName(name:String):DisplayObject [override] 
      Returns the child whose name property is the specified String. | Container | |
|  | getChildIndex(child:DisplayObject):int [override] 
      Gets the zero-based index of a specific child. | Container | |
|  | getChildren():Array 
      Returns an Array of DisplayObject objects consisting of the content children 
      of the container. | Container | |
|  | getClassStyleDeclarations():Array 
      Finds the type selectors for this UIComponent instance. | UIComponent | |
|  | getConstraintValue(constraintName:String):* 
      Returns a layout constraint value, which is the same as
      getting the constraint style for this component. | UIComponent | |
|  | getElementAt(index:int):IVisualElement 
      
      Returns the visual element at the specified index. | Container | |
|  | getElementIndex(element:IVisualElement):int 
      
      Returns the index position of a visual element. | Container | |
|  | getExplicitOrMeasuredHeight():Number 
      A convenience method for determining whether to use the
      explicit or measured height
            | UIComponent | |
|  | getExplicitOrMeasuredWidth():Number 
      A convenience method for determining whether to use the
      explicit or measured width
            | UIComponent | |
|  | getFocus():InteractiveObject 
      Gets the object that currently has focus. | UIComponent | |
|  | getLayoutBoundsHeight(postLayoutTransform:Boolean = true):Number 
      
      Returns the element's layout height. | UIComponent | |
|  | getLayoutBoundsWidth(postLayoutTransform:Boolean = true):Number 
      
      Returns the element's layout width. | UIComponent | |
|  | getLayoutBoundsX(postLayoutTransform:Boolean = true):Number 
      
      Returns the x coordinate that the element uses to draw on screen. | UIComponent | |
|  | getLayoutBoundsY(postLayoutTransform:Boolean = true):Number 
      
      Returns the y coordinate that the element uses to draw on screen. | UIComponent | |
|  | getLayoutMatrix():Matrix 
      
      Returns the transform matrix that is used to calculate the component's
      layout relative to its siblings. | UIComponent | |
|  | getLayoutMatrix3D():Matrix3D 
      
      Returns the layout transform Matrix3D for this element. | UIComponent | |
|  | getMaxBoundsHeight(postLayoutTransform:Boolean = true):Number 
      
      Returns the element's maximum height. | UIComponent | |
|  | getMaxBoundsWidth(postLayoutTransform:Boolean = true):Number 
      
      Returns the element's maximum width. | UIComponent | |
|  | getMinBoundsHeight(postLayoutTransform:Boolean = true):Number 
      
      Returns the element's minimum height. | UIComponent | |
|  | getMinBoundsWidth(postLayoutTransform:Boolean = true):Number 
      
      Returns the element's minimum width. | UIComponent | |
|  | getPreferredBoundsHeight(postLayoutTransform:Boolean = true):Number 
      
      Returns the element's preferred height. | UIComponent | |
|  | getPreferredBoundsWidth(postLayoutTransform:Boolean = true):Number 
      
      Returns the element's preferred width. | UIComponent | |
|  | 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 | |
|  | getStyle(styleProp:String):* 
      Gets a style property that has been set anywhere in this
      component's style lookup chain. | UIComponent | |
|  | getVisibleRect(targetParent:DisplayObject = null):Rectangle 
      Get the bounds of this object that are visible to the user
      on the screen. | UIComponent | |
|  | globalToContent(point:Point):Point [override] 
      Converts a Point object from global to content coordinates. | Container | |
|  | hasCSSState():Boolean 
      
      Returns true if currentCSSState is not null. | UIComponent | |
|  | hasState(stateName:String):Boolean 
      Determines whether the specified state has been defined on this
      UIComponent. | UIComponent | |
|  | 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 | |
|  | initialize():void 
      Initializes the internal structure of this component. | UIComponent | |
|  | initializeRepeaterArrays(parent:IRepeaterClient):void 
      Initializes various properties which keep track of repeated instances
      of this component. | UIComponent | |
|  | invalidateDisplayList():void 
      Marks a component so that its updateDisplayList()
      method gets called during a later screen update. | UIComponent | |
|  | invalidateLayering():void 
      Called by a component's items to indicate that their depth
      property has changed. | UIComponent | |
|  | invalidateLayoutDirection():void 
     
          An element must call this method when its layoutDirection changes or
          when its parent's layoutDirection changes. | UIComponent | |
|  | invalidateProperties():void 
      Marks a component so that its commitProperties()
      method gets called during a later screen update. | UIComponent | |
|  | invalidateSize():void 
      Marks a component so that its measure()
      method gets called during a later screen update. | UIComponent | |
|  | localToContent(point:Point):Point [override] 
      Converts a Point object from local to content coordinates. | Container | |
|  | matchesCSSState(cssState:String):Boolean 
      
      Returns true if cssState matches currentCSSState. | UIComponent | |
|  | matchesCSSType(cssType:String):Boolean 
      
      Determines whether this instance is the same as, or is a subclass of,
      the given type. | UIComponent | |
|  | 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 | |
|  | 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 | |
|  | move(x:Number, y:Number):void 
       Moves the component to a specified position within its parent. | UIComponent | |
|  | notifyStyleChangeInChildren(styleProp:String, recursive:Boolean):void 
      Propagates style changes to the children. | UIComponent | |
|  | owns(child:DisplayObject):Boolean 
      Returns true if the chain of owner properties
      points from child to this UIComponent. | UIComponent | |
|  | parentChanged(p:DisplayObjectContainer):void 
      Called by Flex when a UIComponent object is added to or removed from a parent. | UIComponent | |
|  | prepareToPrint(target:IFlexDisplayObject):Object 
      Prepares an IFlexDisplayObject for printing. | UIComponent | |
|  | 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 | |
|  | registerEffects(effects:Array):void 
      For each effect event, registers the EffectManager
      as one of the event listeners. | UIComponent | |
|  | removeAllChildren():void 
      Removes all children from the child list of this container. | Container | |
|  | removeAllElements():void 
      
      Removes all visual elements from the container. | Container | |
|  | removeChild(child:DisplayObject):DisplayObject [override] 
      Removes a child DisplayObject from the child list of this Container. | Container | |
|  | removeChildAt(index:int):DisplayObject [override] 
      Removes a child DisplayObject from the child list of this Container
      at the specified index. | Container | |
|  | 
      
      Removes the specified visual element from the child list of 
      this container. | Container | |
|  | removeElementAt(index:int):IVisualElement 
      
      Removes a visual element from the specified index position 
      in the container. | Container | |
|  | removeStyleClient(styleClient:IAdvancedStyleClient):void 
      Removes a non-visual style client from this component instance. | UIComponent | |
|  | replayAutomatableEvent(event:Event):Boolean 
      
      Replays the specified event. | UIComponent | |
|  | resolveAutomationIDPart(criteria:Object):Array 
      
      Resolves a child by using the id provided. | UIComponent | |
|  | resumeBackgroundProcessing():void [static] 
      Resumes the background processing of methods
      queued by callLater(), after a call to
      suspendBackgroundProcessing(). | UIComponent | |
|  | setActualSize(w:Number, h:Number):void 
      Sizes the object. | UIComponent | |
|  | setChildIndex(child:DisplayObject, newIndex:int):void [override] 
      Sets the index of a particular child. | Container | |
|  | setConstraintValue(constraintName:String, value:*):void 
      Sets a layout constraint value, which is the same as
      setting the constraint style for this component. | UIComponent | |
|  | setCurrentState(stateName:String, playTransition:Boolean = true):void 
      Set the current state. | UIComponent | |
|  | setElementIndex(element:IVisualElement, index:int):void 
      
      Changes the position of an existing visual element in the visual container. | Container | |
|  | setFocus():void 
      Sets the focus to this component. | UIComponent | |
|  | setLayoutBoundsPosition(x:Number, y:Number, postLayoutTransform:Boolean = true):void 
      
      Sets the coordinates that the element uses to draw on screen. | UIComponent | |
|  | setLayoutBoundsSize(width:Number, height:Number, postLayoutTransform:Boolean = true):void 
      
      Sets the layout size of the element. | UIComponent | |
|  | 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 | |
|  | 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 | |
|  | setMXMLDescriptor(value:Array):void | UIComponent | |
|  | setMXMLProperties(value:Array):void | UIComponent | |
|  | setStyle(styleProp:String, newValue:*):void 
      Sets a style property on this component instance. | UIComponent | |
|  | setVisible(value:Boolean, noEvent:Boolean = false):void 
      Called when the visible property changes. | UIComponent | |
|  | styleChanged(styleProp:String):void 
      Detects changes to style properties. | UIComponent | |
|  | stylesInitialized():void 
      Flex calls the stylesInitialized() method when
      the styles for a component are first initialized. | UIComponent | |
|  | suspendBackgroundProcessing():void [static] 
      Blocks the background processing of methods
      queued by callLater(),
      until resumeBackgroundProcessing() is called. | UIComponent | |
|  | 
      
      Swaps the index of the two specified visual elements. | Container | |
|  | swapElementsAt(index1:int, index2:int):void 
      
      Swaps the visual elements at the two specified index 
      positions in the  container. | Container | |
|  | toString():String [override] 
	  Returns a string indicating the location of this object
	  within the hierarchy of DisplayObjects in the Application. | FlexSprite | |
|  | 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 | |
|  | 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 | |
|  | validateDisplayList():void 
      
      Validates the position and size of children and draws other
      visuals. | UIComponent | |
|  | validateNow():void 
      Validate and update the properties and layout of this object
      and redraw it, if necessary. | UIComponent | |
|  | validateProperties():void 
      Used by layout logic to validate the properties of a component
      by calling the commitProperties() method. | UIComponent | |
|  | 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 | |
|  | validationResultHandler(event:ValidationResultEvent):void 
      Handles both the valid and invalid events from a
      validator assigned to this component. | UIComponent | |
|  | 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 | |
| Method | Defined By | ||
|---|---|---|---|
|  | addMXMLChildren(comps:Array):void | UIComponent | |
|  | adjustFocusRect(obj:DisplayObject = null):void 
      Adjust the focus rectangle. | UIComponent | |
|  | applyComputedMatrix():void 
      Commits the computed matrix built from the combination of the layout
      matrix and the transform offsets to the flash displayObject's transform. | UIComponent | |
|  | attachOverlay():void [override] 
      Used internally by the Dissolve Effect to add the overlay to the chrome of a container. | Container | |
|  | canSkipMeasurement():Boolean 
      Determines if the call to the measure() method can be skipped. | UIComponent | |
|  | childrenCreated():void 
      Performs any final processing after child objects are created. | UIComponent | |
|  | commitProperties():void 
      Processes the properties set on the component. | UIComponent | |
|  | createBorder():void 
      Creates the container's border skin 
      if it is needed and does not already exist. | Container | |
|  | createChildren():void 
      Create child objects of the component. | UIComponent | |
|  | createInFontContext(classObj:Class):Object 
      Creates a new object using a context
      based on the embedded font being used. | UIComponent | |
|  | createInModuleContext(moduleFactory:IFlexModuleFactory, className:String):Object 
      Creates the object using a given moduleFactory. | UIComponent | |
|  | dispatchPropertyChangeEvent(prop:String, oldValue:*, value:*):void  
      Helper method for dispatching a PropertyChangeEvent
      when a property is updated. | UIComponent | |
|  | focusInHandler(event:FocusEvent):void 
      The event handler called when a UIComponent object gets focus. | UIComponent | |
|  | focusOutHandler(event:FocusEvent):void 
      The event handler called when a UIComponent object loses focus. | UIComponent | |
|  | generateMXMLAttributes(data:Array):void | UIComponent | |
|  | generateMXMLInstances(document:Object, data:Array, recursive:Boolean = true):void | UIComponent | |
|  | generateMXMLObject(document:Object, data:Array):Object | UIComponent | |
|  | initAdvancedLayoutFeatures():void 
      Initializes the implementation and storage of some of the less frequently
      used advanced layout features of a component. | UIComponent | |
|  | initializationComplete():void 
      Finalizes the initialization of this component. | UIComponent | |
|  | initializeAccessibility():void 
      Initializes this component's accessibility code. | UIComponent | |
|  | 
      Helper method to invalidate parent size and display list if
      this object affects its layout (includeInLayout is true). | UIComponent | |
|  | isOurFocus(target:DisplayObject):Boolean 
      Typically overridden by components containing UITextField objects,
      where the UITextField object gets focus. | UIComponent | |
|  | keyDownHandler(event:KeyboardEvent):void 
      The event handler called for a keyDown event. | UIComponent | |
|  | keyUpHandler(event:KeyboardEvent):void 
      The event handler called for a keyUp event. | UIComponent | |
|  | layoutChrome(unscaledWidth:Number, unscaledHeight:Number):void 
      Respond to size changes by setting the positions and sizes
      of this container's borders. | Container | |
| measure():void [override] 
      Calculates the preferred minimum and preferred maximum sizes
      of the Canvas. | Canvas | ||
|  | resourcesChanged():void 
      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 | |
|  | scrollChildren():void 
      Positions the container's content area relative to the viewable area 
      based on the horizontalScrollPosition and verticalScrollPosition properties. | Container | |
|  | setStretchXY(stretchX:Number, stretchY:Number):void 
      Specifies a transform stretch factor in the horizontal and vertical direction. | UIComponent | |
|  | 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 | |
| updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void [override] 
      Sets the size of each child of the container. | Canvas | ||
| constraintColumns | property | 
constraintColumns:Array| Language Version : | ActionScript 3.0 | 
| Product Version : | Flex 3 | 
| Runtime Versions : | Flash Player 9, AIR 1.1 | 
An Array of ConstraintColumn instances that partition this container. The ConstraintColumn instance at index 0 is the left-most column; indices increase from left to right.
    public function get constraintColumns():Array    public function set constraintColumns(value:Array):void| constraintRows | property | 
constraintRows:Array| Language Version : | ActionScript 3.0 | 
| Product Version : | Flex 3 | 
| Runtime Versions : | Flash Player 9, AIR 1.1 | 
An Array of ConstraintRow instances that partition this container. The ConstraintRow instance at index 0 is the top-most row; indices increase from top to bottom.
    public function get constraintRows():Array    public function set constraintRows(value:Array):void| Canvas | () | Constructor | 
public function Canvas()| Language Version : | ActionScript 3.0 | 
| Product Version : | Flex 3 | 
| Runtime Versions : | Flash Player 9, AIR 1.1 | 
Constructor.
| measure | () | method | 
override protected function measure():void| Language Version : | ActionScript 3.0 | 
| Product Version : | Flex 3 | 
| Runtime Versions : | Flash Player 9, AIR 1.1 | 
Calculates the preferred minimum and preferred maximum sizes of the Canvas.
The measuredWidth of the Canvas is just large enough
      to display all of its children at their preferred widths
      without clipping them.
      This measure() method calculates the position of the
      right-most child, calculates the position of that child's right edge,
      and then adds room for the thickness of the Canvas container's border
      and the right padding.
      The measuredHeight is calculated similarly.
The Canvas container's minWidth and
      minHeight properties are not calculated,
      so Flex uses a default value of 0.
The Canvas container's maxWidth and
      maxHeight properties are not calculated.
      The container is assumed to have an infinite maximum
      width and height.
All of the values described previously are the measured widths and heights of Canvas. The user can override the measured values by calling the explicitly supplying a value for the following properties:
widthheightminWidthminHeightmaxWidthmaxHeightYou should not call this method directly. The Flex LayoutManager calls it at the appropriate time. At application startup, the Flex LayoutManager attempts to measure all components from the children to the parents before setting them to their final sizes.
This is an advanced method for use in subclassing.
      If you override this method, your implementation must either
      call the super.measure() method or set the
      measuredHeight and
      measuredWidth properties.
      You may also optionally set the following properties:
      
measuredMinWidthmeasuredMinHeight| updateDisplayList | () | method | 
override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void| Language Version : | ActionScript 3.0 | 
| Product Version : | Flex 3 | 
| Runtime Versions : | Flash Player 9, AIR 1.1 | 
Sets the size of each child of the container.
Canvas does not change the positions of its children.
      Each child is positioned according to the values of its
      x and y properties.
Canvas does set each child's width and height to be equal
      to that child's measuredWidth and
      measuredHeight if no width
      and height values are supplied.
      The child can also be made resizable by setting
      width and/or height to a percent value.
      Resizable children are bound by the right and bottom edges
      of the Canvas container.
      In this case, the child's minWidth,
      minHeight, maxWidth, and
      maxHeight values are honored.
You should not call this method directly.
      The Flex LayoutManager calls it at the appropriate time.
      At application startup, the Flex LayoutManager calls
      updateDisplayList() method on every component,
      starting with the Application object and working downward.
This is an advanced method for use in subclassing.
      If you override this method, your implementation should call the
      super.updateDisplayList() method and call the
      move() and setActualSize() methods
      on each of the children.
      For the purposes of performing layout, you should get the size
      of this container from the unscaledWidth and
      unscaledHeight properties, not the width
      and height properties.
      The width and height properties
      do not take into account the value of the scaleX
      and scaleY properties for this container.
Parameters
| unscaledWidth:Number— Specifies the width of the component, in pixels,
      in the component's coordinates, regardless of the value of thescaleXproperty of the component. | |
| unscaledHeight:Number— Specifies the height of the component, in pixels,
      in the component's coordinates, regardless of the value of thescaleYproperty of the component. | 
<?xml version="1.0"?>
<!--
  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.
-->
<!-- Simple example to demonstrate the Halo Canvas layout container. -->
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:mx="library://ns.adobe.com/flex/mx">
    <s:Panel title="Canvas Container Example"
            width="75%"  height="75%"
            horizontalCenter="0" verticalCenter="0"> 
        <s:VGroup left="10" right="10" top="10" bottom="10">
            <s:Label width="100%" color="blue" 
                    text="Use absolute positioning to place the children of a Canvas container." />
            <mx:Canvas borderStyle="solid" height="200" width="100%">
                <!-- Stagger the position of the TextInput controls using absolute positioning.-->
                <s:TextInput width="100" x="50" y="5"/>
                <s:TextInput width="100" x="100" y="30"/>
                <s:TextInput width="100" x="150" y="55"/>
                <!-- Overlap the VBox containers using layout constraints.-->
                <mx:VBox right="115" bottom="50" width="75" height="75" backgroundColor="#0080C0" />
                <mx:VBox right="70" bottom="30" width="75" height="75" backgroundColor="#FFFF80" />
                <mx:VBox right="25" bottom="10" width="75" height="75" backgroundColor="#8080C0" alpha="0.8" />
                <s:RichEditableText right="25" y="110"
                        text="The Canvas container lets you place components on top of each other."
                        editable="false" />
            </mx:Canvas>
        </s:VGroup>
    </s:Panel>
</s:Application>