All pastes #467797 Raw Edit

Someone

public text v1 · immutable
·published 2007-05-02 18:45 UTC
rendered paste body
	public class UIComponent extends FlexSprite {
		/**
		 * The delegate object that handles the automation-related functionality.
		 */
		public function set automationDelegate(value:Object):void;
		/**
		 * Name that can be used as an identifier for this object.
		 */
		public function set automationName(value:String):void;
		/**
		 * An implementation of the IAutomationTabularData interface, which 
		 *      can be used to retrieve the data.
		 */
		public function get automationTabularData():Object;
		/**
		 * 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.
		 */
		public function get automationValue():Array;
		/**
		 * Determines the baseline y-coordinate
		 *       of the first line of text of the component.
		 *       Each component should override this property.
		 */
		public function get baselinePosition():Number;
		/**
		 * Used by Flex to suggest bitmap caching for the object.
		 *       If cachePolicy is UIComponentCachePolicy.AUTO, 
		 *       then cacheHeuristic
		 *       is used to control the object's cacheAsBitmap property.
		 */
		public function set cacheHeuristic(value:Boolean):void;
		/**
		 * Specifies the bitmap caching policy for this object.
		 *       Possible values in MXML are "on",
		 *       "off" and
		 *       "auto" (default).
		 */
		public function set cachePolicy(value:String):void;
		/**
		 * The name of this instance's class, such as "Button".
		 */
		public function get className():String;
		/**
		 * Returns the x position of the mouse, in the content coordinate system.
		 *       Content coordinates specify a pixel position relative to the upper left 
		 *       corner of the component's content, and include all of the component's 
		 *       content area, including any regions that are currently clipped and must 
		 *       be accessed by scrolling the component.
		 */
		public function get contentMouseX():Number;
		/**
		 * Returns the y position of the mouse, in the content coordinate system.
		 *       Content coordinates specify a pixel position relative to the upper left 
		 *       corner of the component's content, and include all of the component's 
		 *       content area, including any regions that are currently clipped and must 
		 *       be accessed by scrolling the component.
		 */
		public function get contentMouseY():Number;
		/**
		 * The current view state of the component.
		 *       Set to "" or null to reset
		 *       the component back to its base state.
		 */
		public function set currentState(value:String):void;
		/**
		 * Reference to the UIComponentDescriptor, if any, that was used
		 *       by the createComponentFromDescriptor() method to create this
		 *       UIComponent instance. If this UIComponent instance 
		 *       was not created from a descriptor, this property is null.
		 */
		public function set descriptor(value:UIComponentDescriptor):void;
		/**
		 * A reference to the document object associated with this UIComponent.
		 *       A document object is an Object at the top of the hierarchy of a
		 *       Flex application, MXML component, or AS component.
		 */
		public function set document(value:Object):void;
		/**
		 * Specifies whether the UIComponent object receives doubleClick events. 
		 *       The default value is true, which means that the UIComponent object 
		 *       receives doubleClick events.
		 */
		public function set doubleClickEnabled(value:Boolean):void;
		/**
		 * Whether the component can accept user interaction. 
		 *    If you set the enabled property to false
		 *    for a container, Flex dims the color of the container and of all
		 *    of its children, and blocks user input to the container
		 *    and to all of its children.
		 */
		public function set enabled(value:Boolean):void;
		/**
		 * The text that will be displayed by a component's error tip when a
		 *       component is monitored by a Validator and validation fails.
		 */
		public function set errorString(value:String):void;
		/**
		 * Number that specifies the explicit height of the component,
		 *       in pixels, in the component's coordinates.
		 */
		public function set explicitHeight(value:Number):void;
		/**
		 * Number that specifies the maximum height of the component,
		 *       in pixels, in the component's coordinates.
		 */
		public function set explicitMaxHeight(value:Number):void;
		/**
		 * Number that specifies the maximum width of the component,
		 *       in pixels, in the component's coordinates.
		 */
		public function set explicitMaxWidth(value:Number):void;
		/**
		 * Number that specifies the minimum height of the component,
		 *       in pixels, in the component's coordinates.
		 */
		public function set explicitMinHeight(value:Number):void;
		/**
		 * Number that specifies the minimum width of the component,
		 *       in pixels, in the component's coordinates.
		 */
		public function set explicitMinWidth(value:Number):void;
		/**
		 * Number that specifies the explicit width of the component,
		 *       in pixels, in the component's coordinates.
		 */
		public function set explicitWidth(value:Number):void;
		/**
		 * Indicates whether the component can receive focus when clicked on.
		 *       If this property is false, focus will be transferred to
		 *       the first parent that is mouseFocusEnable 
		 *       set to true.
		 */
		public function set focusEnabled(value:Boolean):void;
		/**
		 * Gets the FocusManager that controls focus for this component
		 *       and its peers.
		 *       Each popup has its own focus loop and therefore its own instance
		 *       of a FocusManager.
		 *       To make sure you're talking to the right one, use this method.
		 */
		public function set focusManager(value:IFocusManager):void;
		/**
		 * The focus pane associated with this object.
		 *       An object has a focus pane when one of its children has focus.
		 */
		public function set focusPane(value:Sprite):void;
		/**
		 * Number that specifies the height of the component, in pixels,
		 *       in the parent's coordinates.
		 *       The default value is 0, but this property will contain the actual component 
		 *       height after Flex completes sizing the components in your application.
		 */
		public function set height(value:Number):void;
		/**
		 * ID of the component. This value becomes the instance name of the object
		 *       and should not contain any white space or special characters. Each component
		 *       throughout an application should have a unique id.
		 */
		public function set id(value:String):void;
		/**
		 * Specifies whether this component is included in the layout of the
		 *       parent container.
		 *       If true, the object is included in its parent container's
		 *       layout.  If false, the object is positioned by its parent
		 *       container as per its layout rules, but it is ignored for the purpose of
		 *       computing the position of the next child.
		 */
		public function set includeInLayout(value:Boolean):void;
		/**
		 * The beginning of this component's chain of inheriting styles.
		 *       The getStyle() method simply accesses
		 *       inheritingStyles[styleName] to search the entire
		 *       prototype-linked chain.
		 *       This object is set up by initProtoChain().
		 *       Developers typically never need to access this property directly.
		 */
		public function set inheritingStyles(value:Object):void;
		/**
		 * A flag that determines if an object has been through all three phases
		 *       of layout: commitment, measurement, and layout (provided that any were required).
		 */
		public function set initialized(value:Boolean):void;
		/**
		 * The index of a repeated component. 
		 *       If the component is not within a Repeater, the value is -1.
		 */
		public function get instanceIndex():int;
		/**
		 * An Array containing the indices required to reference
		 *       this UIComponent object from its parent document.
		 *       The Array is empty unless this UIComponent object is within one or more Repeaters.
		 *       The first element corresponds to the outermost Repeater.
		 *       For example, if the id is "b" and instanceIndices is [2,4],
		 *       you would reference it on the parent document as b[2][4].
		 */
		public function set instanceIndices(value:Array):void;
		/**
		 * Determines whether this UIComponent instance is a document object,
		 *       that is, whether it is at the top of the hierarchy of a Flex
		 *       application, MXML component, or ActionScript component.
		 */
		public function get isDocument():Boolean;
		/**
		 * Set to true by the PopUpManager to indicate
		 *       that component has been popped up.
		 */
		public function set isPopUp(value:Boolean):void;
		/**
		 * Number that specifies the maximum height of the component,
		 *       in pixels, in the component's coordinates.
		 */
		public function set maxHeight(value:Number):void;
		/**
		 * Number that specifies the maximum width of the component,
		 *       in pixels, in the component's coordinates.
		 */
		public function set maxWidth(value:Number):void;
		/**
		 * The default height of the component, in pixels.
		 *       This value is set by the measure() method.
		 */
		public function set measuredHeight(value:Number):void;
		/**
		 * The default minimum height of the component, in pixels.
		 *       This value is set by the measure() method.
		 */
		public function set measuredMinHeight(value:Number):void;
		/**
		 * The default minimum width of the component, in pixels.
		 *       This value is set by the measure() method.
		 */
		public function set measuredMinWidth(value:Number):void;
		/**
		 * The default width of the component, in pixels.
		 *       This value is set by the measure() method.
		 */
		public function set measuredWidth(value:Number):void;
		/**
		 * Number that specifies the minimum height of the component,
		 *       in pixels, in the component's coordinates.
		 *       The default value depends on the component implementation.
		 */
		public function set minHeight(value:Number):void;
		/**
		 * Number that specifies the minimum width of the component,
		 *       in pixels, in the component's coordinates.
		 *       The default value depends on the component implementation.
		 */
		public function set minWidth(value:Number):void;
		public function set moduleFactory(value:IFlexModuleFactory):void;
		/**
		 * Whether you can receive focus when clicked on.
		 *       If false, focus will be transferred to
		 *       the first parent that is mouseFocusEnable 
		 *       set to true.
		 */
		public function set mouseFocusEnabled(value:Boolean):void;
		/**
		 * Depth of this object in the containment hierarchy.
		 *       This number is used by the measurement and layout code.
		 *       The value is 0 if this component is not on the DisplayList.
		 */
		public function set nestLevel(value:int):void;
		/**
		 * The beginning of this component's chain of non-inheriting styles.
		 *       The getStyle() method simply accesses
		 *       nonInheritingStyles[styleName] to search the entire
		 *       prototype-linked chain.
		 *       This object is set up by initProtoChain().
		 *       Developers typically never need to access this property directly.
		 */
		public function set nonInheritingStyles(value:Object):void;
		/**
		 * The number of automation children this container has.
		 *       This sum should not include any composite children, though
		 *       it does include those children not significant within the
		 *       automation hierarchy.
		 */
		public function get numAutomationChildren():int;
		/**
		 * The owner of this UIComponent. By default, it is the parent of this UIComponent.
		 *       However, if this UIComponent object is a child component that is 
		 *       popped up by its parent, such as the dropdown list of a ComboBox control, 
		 *       the owner is the component that popped up this UIComponent object.
		 */
		public function set owner(value:DisplayObjectContainer):void;
		/**
		 * The parent container or component for this component.
		 *       Only UIComponent objects should have a parent property.
		 *       Non-UIComponent objects should use another property to reference
		 *       the object to which they belong.
		 *       By convention, non-UIComponent objects use an owner
		 *       property to reference the object to which they belong.
		 */
		public function get parent():DisplayObjectContainer;
		/**
		 * A reference to the Application object that contains this UIComponent
		 *       instance.
		 *       This Application object might exist in a SWFLoader control in another
		 *       Application, and so on, creating a chain of Application objects that
		 *       can be walked using parentApplication.
		 *       The parentApplication property of an Application is never itself;
		 *       it is either the Application into which it was loaded or null
		 *       (for the top-level Application).
		 *       Walking the application chain using the parentApplication
		 *       property is similar to walking the document chain using the
		 *       parentDocument property.
		 *       You can access the top-level application using the
		 *       application property of the Application class.
		 */
		public function get parentApplication():Object;
		/**
		 * A reference to the parent document object for this UIComponent.
		 *       A document object is a UIComponent at the top of the hierarchy
		 *       of a Flex application, MXML component, or AS component.
		 *       For the Application object, the parentDocument 
		 *       property is null.
		 *       This property  is useful in MXML scripts to go up a level
		 *       in the chain of document objects.
		 *       It can be used to walk this chain using
		 *       parentDocument.parentDocument, and so on.
		 *       It is typed as Object so that authors can access properties
		 *       and methods on ancestor document objects without casting.
		 */
		public function get parentDocument():Object;
		/**
		 * Number that specifies the height of a component as a percentage
		 *       of its parent's size. Allowed values are 0-100. The default value is NaN.
		 *       Setting the height or explicitHeight properties 
		 *       resets this property to NaN.
		 */
		public function set percentHeight(value:Number):void;
		/**
		 * Number that specifies the width of a component as a percentage
		 *       of its parent's size. Allowed values are 0-100. The default value is NaN.
		 *       Setting the width or explicitWidth properties 
		 *       resets this property to NaN.
		 */
		public function set percentWidth(value:Number):void;
		/**
		 * Set to true after immediate or deferred child creation, 
		 *       depending on which one happens. For a Container object, it is set 
		 *       to true at the end of 
		 *       the createComponentsFromDescriptors() method, 
		 *       meaning after the Container object creates its children from its child descriptors.
		 */
		public function set processedDescriptors(value:Boolean):void;
		/**
		 * A reference to the Repeater object
		 *       in the parent document that produced this UIComponent.
		 *       Use this property, rather than the repeaters property, 
		 *       when the UIComponent is created by a single Repeater object. 
		 *       Use the repeaters property when this UIComponent is created 
		 *       by nested Repeater objects.
		 */
		public function get repeater():IRepeater;
		/**
		 * The index of the item in the data provider
		 *       of the Repeater that produced this UIComponent.
		 *       Use this property, rather than the repeaterIndices property, 
		 *       when the UIComponent is created by a single Repeater object. 
		 *       Use the repeaterIndices property when this UIComponent is created 
		 *       by nested Repeater objects.
		 */
		public function get repeaterIndex():int;
		/**
		 * An Array containing the indices of the items in the data provider
		 *       of the Repeaters in the parent document that produced this UIComponent.
		 *       The Array is empty unless this UIComponent is within one or more Repeaters.
		 */
		public function set repeaterIndices(value:Array):void;
		/**
		 * An Array containing references to the Repeater objects
		 *       in the parent document that produced this UIComponent.
		 *       The Array is empty unless this UIComponent is within
		 *       one or more Repeaters.
		 *       The first element corresponds to the outermost Repeater object.
		 */
		public function set repeaters(value:Array):void;
		/**
		 * Number that specifies the horizontal scaling factor.
		 */
		public function set scaleX(value:Number):void;
		/**
		 * Number that specifies the vertical scaling percentage.
		 */
		public function set scaleY(value:Number):void;
		/**
		 * Returns an object that contains the size and position of the base
		 *       drawing surface for this object.
		 */
		public function get screen():Rectangle;
		/**
		 * A flag that determines if an automation object
		 *       shows in the automation hierarchy.
		 *       Children of containers that are not visible in the hierarchy
		 *       appear as children of the next highest visible parent.
		 *       Typically containers used for layout, such as boxes and Canvas,
		 *       do not appear in the hierarchy.
		 */
		public function set showInAutomationHierarchy(value:Boolean):void;
		/**
		 * The view states that are defined for this component.
		 *       You can specify the states property only on the root
		 *       of the application or on the root tag of an MXML component.
		 *       The compiler generates an error if you specify it on any other control.
		 */
		public var states:Array;
		/**
		 * Storage for the inline inheriting styles on this object.
		 *       This CSSStyleDeclaration is created the first time that 
		 *       the setStyle() method
		 *       is called on this component to set an inheriting style.
		 *       Developers typically never need to access this property directly.
		 */
		public function set styleDeclaration(value:CSSStyleDeclaration):void;
		/**
		 * The class style used by this component. This can be a String, CSSStyleDeclaration
		 *       or an IStyleClient.
		 */
		public function set styleName(value:Object):void;
		/**
		 * Returns the SystemManager object used by this component.
		 */
		public function set systemManager(value:ISystemManager):void;
		/**
		 * Text to display in the ToolTip.
		 */
		public function set toolTip(value:String):void;
		/**
		 * An Array of Transition objects, where each Transition object defines a
		 *       set of effects to play when a view state change occurs.
		 */
		public var transitions:Array;
		/**
		 * Array of properties that are currently being tweened on this object.
		 */
		public function set tweeningProperties(value:Array):void;
		/**
		 * A unique identifier for the object. 
		 *       Flex data-driven controls, including all controls that are 
		 *       subclasses of List class, use a UID to track data provider items.
		 */
		public function set uid(value:String):void;
		/**
		 * A convenience method for determining the unscaled height
		 *       of the component
		 *       All of a component's drawing and child layout should be done
		 *       within a bounding rectangle of this height, which is also passed
		 *       as an argument to updateDisplayList().
		 */
		protected function get unscaledHeight():Number;
		/**
		 * 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().
		 */
		protected function get unscaledWidth():Number;
		/**
		 * A flag that determines if an object has been through all three phases
		 *       of layout validation (provided that any were required).
		 */
		public function set updateCompletePendingFlag(value:Boolean):void;
		/**
		 * Used by a validator to associate a subfield with this component.
		 */
		public function set validationSubField(value:String):void;
		/**
		 * Controls the visibility of this UIComponent. If true, 
		 *       the object is visible.
		 */
		public function set visible(value:Boolean):void;
		/**
		 * Number that specifies the width of the component, in pixels,
		 *       in the parent's coordinates.
		 *       The default value is 0, but this property will contain the actual component 
		 *       width after Flex completes sizing the components in your application.
		 */
		public function set width(value:Number):void;
		/**
		 * Number that specifies the component's horizontal position,
		 *       in pixels, within its parent container.
		 */
		public function set x(value:Number):void;
		/**
		 * Number that specifies the component's vertical position,
		 *       in pixels, within its parent container.
		 */
		public function set y(value:Number):void;
		/**
		 * Constructor.
		 */
		public function UIComponent();
		/**
		 * Adjust the focus rectangle.
		 *
		 * @param obj                     <DisplayObject (default = null)> component whose focus rectangle to modify.
		 *                                  If omitted, the default value is this UIComponent object.
		 */
		protected function adjustFocusRect(obj:DisplayObject = null):void;
		/**
		 * This is an internal method used by the Flex framework
		 *       to support the Dissolve effect.
		 *       You should not need to call it or override it.
		 */
		protected function attachOverlay():void;
		/**
		 * Queues a function to be called later.
		 *
		 * @param method                  <Function> Reference to a method to be executed later.
		 * @param args                    <Array (default = null)> Array of arguments to pass to the method.
		 *                                  specified by the fn parameter.
		 */
		public function callLater(method:Function, args:Array = null):void;
		/**
		 * Performs any final processing after child objects are created.
		 *       This is an advanced method that you might override
		 *       when creating a subclass of UIComponent.
		 */
		protected function childrenCreated():void;
		/**
		 * Deletes a style property from this component instance.
		 *
		 * @param styleProp               <String> The name of the style property.
		 */
		public function clearStyle(styleProp:String):void;
		/**
		 * Processes the properties set on the component.
		 *       This is an advanced method that you might override
		 *       when creating a subclass of UIComponent.
		 */
		protected function commitProperties():void;
		/**
		 * Converts a Point object from content coordinates to global coordinates.
		 *       Content coordinates specify a pixel position relative to the upper left corner
		 *       of the component's content, and include all of the component's content area, 
		 *       including any regions that are currently clipped and must be 
		 *       accessed by scrolling the component.
		 *       You use the content coordinate system to set and get the positions of children 
		 *       of a container that uses absolute positioning. 
		 *       Global coordinates specify a pixel position relative to the upper-left corner 
		 *       of the Stage in Flash Player, that is, the outermost edge of the application.
		 *
		 * @param point                   <Point> A Point object that
		 *                                  specifies the x and y coordinates in the content coordinate system
		 *                                  as properties.
		 * @return                        <Point> A Point object with coordinates relative to the Stage.
		 */
		public function contentToGlobal(point:Point):Point;
		/**
		 * Converts a Point object from content to local coordinates.
		 *       Content coordinates specify a pixel position relative to the upper left corner
		 *       of the component's content, and include all of the component's content area, 
		 *       including any regions that are currently clipped and must be 
		 *       accessed by scrolling the component.
		 *       You use the content coordinate system to set and get the positions of children 
		 *       of a container that uses absolute positioning. 
		 *       Local coordinates specify a pixel position relative to the 
		 *       upper left corner of the component.
		 *
		 * @param point                   <Point> A Point object that specifies the x and y
		 *                                  coordinates in the content coordinate system as properties.
		 * @return                        <Point> Point A Point object with coordinates relative to the
		 *                                  local coordinate system.
		 */
		public function contentToLocal(point:Point):Point;
		/**
		 * Returns a set of properties that identify the child within 
		 *       this container.  These values should not change during the
		 *       lifespan of the application.
		 *
		 * @param child                   <IAutomationObject> Child for which to provide the id.
		 * @return                        <Object> Sets of properties describing the child which can
		 *                                  later be used to resolve the component.
		 */
		public function createAutomationIDPart(child:IAutomationObject):Object;
		/**
		 * Create child objects of the component.
		 *       This is an advanced method that you might override
		 *       when creating a subclass of UIComponent.
		 */
		protected function createChildren():void;
		/**
		 * Creates an id reference to this IUIComponent object
		 *    on its parent document object.
		 *       This function can create multidimensional references
		 *       such as b[2][4] for objects inside one or more repeaters.
		 *       If the indices are null, it creates a simple non-Array reference.
		 *
		 * @param parentDocument          <IFlexDisplayObject> The parent of this IUIComponent object.
		 */
		public function createReferenceOnParentDocument(parentDocument:IFlexDisplayObject):void;
		/**
		 * Deletes the id reference to this IUIComponent object
		 *    on its parent document object.
		 *       This function can delete from multidimensional references
		 *       such as b[2][4] for objects inside one or more Repeaters.
		 *       If the indices are null, it deletes the simple non-Array reference.
		 *
		 * @param parentDocument          <IFlexDisplayObject> The parent of this IUIComponent object.
		 */
		public function deleteReferenceOnParentDocument(parentDocument:IFlexDisplayObject):void;
		/**
		 * Returns a UITextFormat object corresponding to the text styles
		 *       for this UIComponent.
		 *
		 * @return                        <UITextFormat> UITextFormat object corresponding to the text styles
		 *                                  for this UIComponent.
		 */
		public function determineTextFormatFromStyles():UITextFormat;
		/**
		 * Shows or hides the focus indicator around this component.
		 */
		public function drawFocus(isFocused:Boolean):void;
		/**
		 * Programatically draws a rectangle into this skin's Graphics object.
		 *
		 * @param x                       <Number> Horizontal position of upper-left corner
		 *                                  of rectangle within this skin.
		 * @param y                       <Number> Vertical position of upper-left corner
		 *                                  of rectangle within this skin.
		 * @param width                   <Number> Width of rectangle, in pixels.
		 * @param height                  <Number> Height of rectangle, in pixels.
		 * @param cornerRadius            <Object (default = null)> Corner radius/radii of rectangle.
		 *                                  Can be null, a Number, or an Object.
		 *                                  If it is null, it specifies that the corners should be square
		 *                                  rather than rounded.
		 *                                  If it is a Number, it specifies the same radius, in pixels,
		 *                                  for all four corners.
		 *                                  If it is an Object, it should have properties named
		 *                                  tl, tr, bl, and
		 *                                  br, whose values are Numbers specifying
		 *                                  the radius, in pixels, for the top left, top right,
		 *                                  bottom left, and bottom right corners.
		 *                                  For example, you can pass a plain Object such as
		 *                                  { tl: 5, tr: 5, bl: 0, br: 0 }.
		 *                                  The default value is null (square corners).
		 * @param color                   <Object (default = null)> The RGB color(s) for the fill.
		 *                                  Can be null, a uint, or an Array.
		 *                                  If it is null, the rectangle not filled.
		 *                                  If it is a uint, it specifies an RGB fill color.
		 *                                  For example, pass 0xFF0000 to fill with red.
		 *                                  If it is an Array, it should contain uints
		 *                                  specifying the gradient colors.
		 *                                  For example, pass [ 0xFF0000, 0xFFFF00, 0x0000FF ]
		 *                                  to fill with a red-to-yellow-to-blue gradient.
		 *                                  You can specify up to 15 colors in the gradient.
		 *                                  The default value is null (no fill).
		 * @param alpha                   <Object (default = null)> Alpha value(s) for the fill.
		 *                                  Can be null, a Number, or an Array.
		 *                                  This argument is ignored if color is null.
		 *                                  If color is a uint specifying an RGB fill color,
		 *                                  then alpha should be a Number specifying
		 *                                  the transparency of the fill, where 0.0 is completely transparent
		 *                                  and 1.0 is completely opaque.
		 *                                  You can also pass null instead of 1.0 in this case
		 *                                  to specify complete opaqueness.
		 *                                  If color is an Array specifying gradient colors,
		 *                                  then alpha should be an Array of Numbers, of the
		 *                                  same length, that specifies the corresponding alpha values
		 *                                  for the gradient.
		 *                                  In this case, the default value is null (completely opaque).
		 * @param gradientMatrix          <Matrix (default = null)> Matrix object used for the gradient fill.
		 *                                  The utility methods horizontalGradientMatrix(),
		 *                                  verticalGradientMatrix(), and
		 *                                  rotatedGradientMatrix() can be used to create the value for
		 *                                  this parameter.
		 * @param gradientType            <String (default = "linear")> Type of gradient fill. The possible values are
		 *                                  GradientType.LINEAR or GradientType.RADIAL.
		 *                                  (The GradientType class is in the package flash.display.)
		 * @param gradientRatios          <Array (default = null)> (optional default [0,255])
		 *                                  Specifies the distribution of colors. The number of entries must match
		 *                                  the number of colors defined in the color parameter.
		 *                                  Each value defines the percentage of the width where the color is
		 *                                  sampled at 100%. The value 0 represents the left-hand position in
		 *                                  the gradient box, and 255 represents the right-hand position in the
		 *                                  gradient box.
		 * @param hole                    <Object (default = null)> (optional) A rounded rectangular hole
		 *                                  that should be carved out of the middle
		 *                                  of the otherwise solid rounded rectangle
		 *                                  { x: #, y: #, w: #, h: #, r: # or { br: #, bl: #, tl: #, tr: # } }
		 */
		public function drawRoundRect(x:Number, y:Number, width:Number, height:Number, cornerRadius:Object = null, color:Object = null, alpha:Object = null, gradientMatrix:Matrix = null, gradientType:String = "linear", gradientRatios:Array = null, hole:Object = null):void;
		/**
		 * Called by the effect instance when it stops playing on the component.
		 *       You can use this method to restore a modification to the component made
		 *       by the effectStarted() method when the effect started,
		 *       or perform some other action when the effect ends.
		 *
		 * @param effectInst              <EffectInstance> The effect instance object playing on the component.
		 */
		public function effectFinished(effectInst:EffectInstance):void;
		/**
		 * Called by the effect instance when it starts playing on the component.
		 *       You can use this method to perform a modification to the component as part
		 *       of an effect. You can use the effectFinished() method
		 *       to restore the modification when the effect ends.
		 *
		 * @param effectInst              <EffectInstance> The effect instance object playing on the component.
		 */
		public function effectStarted(effectInst:EffectInstance):void;
		/**
		 * Ends all currently playing effects on the component.
		 */
		public function endEffectsStarted():void;
		/**
		 * Executes the data bindings into this UIComponent object.
		 *            Workaround for MXML container/bindings problem (177074):
		 *       override Container.executeBindings() to prefer descriptor.document over parentDocument in the
		 *       call to BindingManager.executeBindings().
		 *            This should always provide the correct behavior for instances created by descriptor, and will
		 *       provide the original behavior for procedurally-created instances. (The bug may or may not appear
		 *       in the latter case.)
		 *            A more complete fix, guaranteeing correct behavior in both non-DI and reparented-component
		 *       scenarios, is anticipated for updater 1.
		 *
		 * @param recurse                 <Boolean (default = false)> Recursively execute bindings for children of this component.
		 */
		public function executeBindings(recurse:Boolean = false):void;
		/**
		 * Called after printing is complete. 
		 *       For the UIComponent class, the method performs no action. 
		 *       Flex containers override the method to restore the container after printing.
		 *
		 * @param obj                     <Object> Contains the properties of the component that
		 *                                  restore it to its state before printing.
		 * @param target                  <IFlexDisplayObject> The component that just finished printing.
		 *                                  It may be the current component or one of its children.
		 */
		public function finishPrint(obj:Object, target:IFlexDisplayObject):void;
		/**
		 * The event handler called when a UIComponent object gets focus.
		 *       If you override this method, make sure to call the base class version.
		 *
		 * @param event                   <FocusEvent> The event object.
		 */
		protected function focusInHandler(event:FocusEvent):void;
		/**
		 * The event handler called when a UIComponent object loses focus.
		 *       If you override this method, make sure to call the base class version.
		 *
		 * @param event                   <FocusEvent> The event object.
		 */
		protected function focusOutHandler(event:FocusEvent):void;
		/**
		 * Provides the automation object at the specified index.  This list
		 *       should not include any children that are composites.
		 *
		 * @param index                   <int> The index of the child to return
		 * @return                        <IAutomationObject> The child at the specified index.
		 */
		public function getAutomationChildAt(index:int):IAutomationObject;
		/**
		 * Finds the type selectors for this UIComponent instance.
		 *       The algorithm walks up the superclass chain.
		 *       For example, suppose that class MyButton extends Button.
		 *       A MyButton instance will first look for a MyButton type selector
		 *       then, it will look for a Button type selector.
		 *       then, it will look for a UIComponent type selector.
		 *       (The superclass chain is considered to stop at UIComponent, not Object.)
		 *
		 * @return                        <Array> An Array of type selectors for this UIComponent instance.
		 */
		public function getClassStyleDeclarations():Array;
		/**
		 * A convenience method for determining whether to use the
		 *       explicit or measured height
		 *
		 * @return                        <Number> A Number which is explicitHeight if defined
		 *                                  or measuredHeight if not.
		 */
		public function getExplicitOrMeasuredHeight():Number;
		/**
		 * A convenience method for determining whether to use the
		 *       explicit or measured width
		 *
		 * @return                        <Number> A Number which is explicitWidth if defined
		 *                                  or measuredWidth if not.
		 */
		public function getExplicitOrMeasuredWidth():Number;
		/**
		 * Gets the object that currently has focus.
		 *       It might not be this object.
		 *       Note that this method does not necessarily return the component
		 *       that has focus.
		 *       It may return the internal subcomponent of the component
		 *       that has focus.
		 *       To get the component that has focus, use the
		 *       focusManager.focus property.
		 *
		 * @return                        <InteractiveObject> Object that has focus.
		 */
		public function getFocus():InteractiveObject;
		/**
		 * 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.
		 *       The argument whichRepeater is 0 for the outermost
		 *       Repeater, 1 for the next inner Repeater, and so on.
		 *       If whichRepeater is not specified,
		 *       the innermost Repeater is used.
		 *
		 * @param whichRepeater           <int (default = -1)> Number of the Repeater,
		 *                                  counting from the outermost one, starting at 0.
		 * @return                        <Object> The requested repeater item.
		 */
		public function getRepeaterItem(whichRepeater:int = -1):Object;
		/**
		 * Gets a style property that has been set anywhere in this
		 *       component's style lookup chain.
		 *
		 * @param styleProp               <String> Name of the style property.
		 */
		public function getStyle(styleProp:String):*;
		/**
		 * Converts a Point object from global to content coordinates.
		 *       Global coordinates specify a pixel position relative to the upper-left corner 
		 *       of the Stage in Flash Player, that is, the outermost edge of the application.
		 *       Content coordinates specify a pixel position relative to the upper left corner
		 *       of the component's content, and include all of the component's content area, 
		 *       including any regions that are currently clipped and must be 
		 *       accessed by scrolling the component.
		 *       You use the content coordinate system to set and get the positions of children 
		 *       of a container that uses absolute positioning.
		 *
		 * @param point                   <Point> A Point object that
		 *                                  specifies the x and y coordinates in the global (Stage)
		 *                                  coordinate system as properties.
		 * @return                        <Point> Point A Point object with coordinates relative to the component.
		 */
		public function globalToContent(point:Point):Point;
		/**
		 * Returns a box Matrix which can be passed to the 
		 *       drawRoundRect() method
		 *       as the rot parameter when drawing a horizontal gradient.
		 *
		 * @param x                       <Number> The left coordinate of the gradient, in pixels.
		 * @param y                       <Number> The top coordinate of the gradient, in pixels.
		 * @param width                   <Number> The width of the gradient, in pixels.
		 * @param height                  <Number> The height of the gradient, in pixels.
		 * @return                        <Matrix> The Matrix for the horizontal gradient.
		 */
		public function horizontalGradientMatrix(x:Number, y:Number, width:Number, height:Number):Matrix;
		/**
		 * Finalizes the initialization of this component.
		 */
		protected function initializationComplete():void;
		/**
		 * Initializes the internal structure of this component.
		 */
		public function initialize():void;
		/**
		 * Initializes this component's accessibility code.
		 */
		protected function initializeAccessibility():void;
		/**
		 * Initializes various properties which keep track of repeated instances
		 *       of this component.
		 *
		 * @param parent                  <IRepeaterClient> The parent object containing the Repeater that created
		 *                                  this component.
		 */
		public function initializeRepeaterArrays(parent:IRepeaterClient):void;
		/**
		 * Marks a component so that its updateDisplayList()
		 *       method gets called during a later screen update.
		 */
		public function invalidateDisplayList():void;
		/**
		 * Marks a component so that its commitProperties()
		 *       method gets called during a later screen update.
		 */
		public function invalidateProperties():void;
		/**
		 * Marks a component so that its measure()
		 *       method gets called during a later screen update.
		 */
		public function invalidateSize():void;
		/**
		 * Typically overridden by components containing UITextField objects,
		 *       where the UITextField object gets focus.
		 *
		 * @param target                  <DisplayObject> A UIComponent object containing a UITextField object
		 *                                  that can receive focus.
		 * @return                        <Boolean> Returns true if the UITextField object has focus.
		 */
		protected function isOurFocus(target:DisplayObject):Boolean;
		/**
		 * The event handler called for a keyDown event.
		 *       If you override this method, make sure to call the base class version.
		 *
		 * @param event                   <KeyboardEvent> The event object.
		 */
		protected function keyDownHandler(event:KeyboardEvent):void;
		/**
		 * The event handler called for a keyUp event.
		 *       If you override this method, make sure to call the base class version.
		 *
		 * @param event                   <KeyboardEvent> The event object.
		 */
		protected function keyUpHandler(event:KeyboardEvent):void;
		/**
		 * Converts a Point object from local to content coordinates.
		 *       Local coordinates specify a pixel position relative to the 
		 *       upper left corner of the component.
		 *       Content coordinates specify a pixel position relative to the upper left corner
		 *       of the component's content, and include all of the component's content area, 
		 *       including any regions that are currently clipped and must be 
		 *       accessed by scrolling the component.
		 *       You use the content coordinate system to set and get the positions of children 
		 *       of a container that uses absolute positioning.
		 *
		 * @param point                   <Point> A Point object that specifies the x and y
		 *                                  coordinates in the local coordinate system as properties.
		 * @return                        <Point> Point A Point object with coordinates relative to the
		 *                                  content coordinate system.
		 */
		public function localToContent(point:Point):Point;
		/**
		 * Calculates the default size, and optionally the default minimum size,
		 *       of the component. This is an advanced method that you might override when
		 *       creating a subclass of UIComponent.
		 */
		protected function measure():void;
		/**
		 * Measures the specified HTML text, which may contain HTML tags such
		 *       as &lt;font&gt; and &lt;b&gt;, 
		 *       assuming that it is displayed
		 *       in a single-line UITextField using a UITextFormat
		 *       determined by the styles of this UIComponent.
		 *
		 * @param htmlText                <String> A String specifying the HTML text to measure.
		 * @return                        <TextLineMetrics> A TextLineMetrics object containing the text measurements.
		 */
		public function measureHTMLText(htmlText:String):TextLineMetrics;
		/**
		 * Measures the specified text, assuming that it is displayed
		 *       in a single-line UITextField using a UITextFormat
		 *       determined by the styles of this UIComponent.
		 *
		 * @param text                    <String> A String specifying the text to measure.
		 * @return                        <TextLineMetrics> A TextLineMetrics object containing the text measurements.
		 */
		public function measureText(text:String):TextLineMetrics;
		/**
		 * Moves the component to a specified position within its parent.
		 *        Calling this method is exactly the same as
		 *        setting the component's x and y properties.
		 *
		 * @param x                       <Number> Left position of the component within its parent.
		 * @param y                       <Number> Top position of the component within its parent.
		 */
		public function move(x:Number, y:Number):void;
		/**
		 * Propagate style changes to the children.
		 *       You typically never need to call this method.
		 *
		 * @param styleProp               <String> String specifying the name of the style property.
		 * @param recursive               <Boolean> Recursivly notify all children of this component.
		 */
		public function notifyStyleChangeInChildren(styleProp:String, recursive:Boolean):void;
		/**
		 * Returns true if the chain of owner properties 
		 *       points from child to this UIComponent.
		 *
		 * @param child                   <DisplayObject> A UIComponent.
		 * @return                        <Boolean> true if the child is parented or owned by this UIComponent.
		 */
		public function owns(child:DisplayObject):Boolean;
		/**
		 * Called by Flex when a UIComponent object is added to or removed from a parent.
		 *       Developers typically never need to call this method.
		 *
		 * @param p                       <DisplayObjectContainer> The parent of this UIComponent object.
		 */
		public function parentChanged(p:DisplayObjectContainer):void;
		/**
		 * Prepares an IFlexDisplayObject for printing. 
		 *       For the UIComponent class, the method performs no action. 
		 *       Flex containers override the method to prepare for printing; 
		 *       for example, by removing scroll bars from the printed output.
		 *
		 * @param target                  <IFlexDisplayObject> The component to be printed.
		 *                                  It may be the current component or one of its children.
		 * @return                        <Object> Object containing the properties of the current component
		 *                                  required by the finishPrint() method
		 *                                  to restore it to its previous state.
		 */
		public function prepareToPrint(target:IFlexDisplayObject):Object;
		/**
		 * 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.
		 *
		 * @param recursive               <Boolean> Recursivly regenerates the style cache for
		 *                                  all children of this component.
		 */
		public function regenerateStyleCache(recursive:Boolean):void;
		/**
		 * For each effect event, register the EffectManager
		 *       as one of the event listeners.
		 *       You typically never need to call this method.
		 *
		 * @param effects                 <Array> The names of the effect events.
		 */
		public function registerEffects(effects:Array):void;
		/**
		 * Replays the specified event.  A component author should probably call 
		 *       super.replayAutomatableEvent in case default replay behavior has been defined 
		 *       in a superclass.
		 *
		 * @param event                   <Event> The event to replay.
		 * @return                        <Boolean> true if a replay was successful.
		 */
		public function replayAutomatableEvent(event:Event):Boolean;
		/**
		 * Resolves a child by using the id provided. The id is a set 
		 *       of properties as provided by the createAutomationIDPart() method.
		 *
		 * @param criteria                <Object> Set of properties describing the child.
		 *                                  The criteria can contain regular expression values
		 *                                  resulting in multiple children being matched.
		 * @return                        <Array> Array of children that matched the criteria
		 *                                  or null if no children could not be resolved.
		 */
		public function resolveAutomationIDPart(criteria:Object):Array;
		/**
		 * Resumes the background processing of methods
		 *       queued by callLater(), after a call to
		 *       suspendBackgroundProcessing().
		 */
		public static function resumeBackgroundProcessing():void;
		/**
		 * Sizes the object.
		 *       Unlike directly setting the width and height
		 *       properties, calling the setActualSize() method
		 *       does not set the explictWidth and
		 *       explicitHeight properties, so a future layout
		 *       calculation may result in the object returning to its previous size.
		 *       This method is used primarily by component developers implementing
		 *       the updateDisplayList() method, by Effects,
		 *       and by the LayoutManager.
		 *
		 * @param w                       <Number> Width of the object.
		 * @param h                       <Number> Height of the object.
		 */
		public function setActualSize(w:Number, h:Number):void;
		/**
		 * Set the current state.
		 *
		 * @param stateName               <String> The name of the new view state.
		 * @param playTransition          <Boolean (default = true)> If true, play
		 *                                  the appropriate transition when the view state changes.
		 */
		public function setCurrentState(stateName:String, playTransition:Boolean = true):void;
		/**
		 * Sets the focus to this component.
		 *       The component may in turn pass focus to a subcomponent.
		 */
		public function setFocus():void;
		/**
		 * Sets a style property on this component instance.
		 *
		 * @param styleProp               <String> Name of the style property.
		 * @param newValue                <*> New value for the style.
		 */
		public function setStyle(styleProp:String, newValue:*):void;
		/**
		 * Called when the visible property changes.
		 *       You should set the visible property to show or hide
		 *       a component instead of calling this method directly.
		 *
		 * @param value                   <Boolean> The new value of the visible property.
		 *                                  Specify true to show the component, and false to hide it.
		 * @param noEvent                 <Boolean (default = false)> If true, do not dispatch an event.
		 *                                  If false, dispatch a show event when
		 *                                  the component becomes visible, and a hide event when
		 *                                  the component becomes invisible.
		 */
		public function setVisible(value:Boolean, noEvent:Boolean = false):void;
		/**
		 * Detects changes to style properties. When any style property is set,
		 *       Flex calls the styleChanged() method,
		 *       passing to it the name of the style being set.
		 *
		 * @param styleProp               <String> The name of the style property, or null if all styles for this
		 *                                  component have changed.
		 */
		public function styleChanged(styleProp:String):void;
		/**
		 * Flex calls the stylesInitialized() method when
		 *       the styles for a component are first initialized.
		 */
		public function stylesInitialized():void;
		/**
		 * Blocks the background processing of methods
		 *       queued by callLater(),
		 *       until resumeBackgroundProcessing() is called.
		 */
		public static function suspendBackgroundProcessing():void;
		/**
		 * Draws the object and/or sizes and positions its children.
		 *       This is an advanced method that you might override
		 *       when creating a subclass of UIComponent.
		 *
		 * @param unscaledWidth           <Number> Specifies the width of the component, in pixels,
		 *                                  in the component's coordinates, regardless of the value of the
		 *                                  scaleX property of the component.
		 * @param unscaledHeight          <Number> Specifies the height of the component, in pixels,
		 *                                  in the component's coordinates, regardless of the value of the
		 *                                  scaleY property of the component.
		 */
		protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void;
		/**
		 * Validates the position and size of children and draws other
		 *    visuals.
		 *    If the LayoutManager.invalidateDisplayList() method is called with
		 *    this ILayoutManagerClient, then the validateDisplayList() method
		 *    is called when it's time to update the display list.
		 */
		public function validateDisplayList():void;
		/**
		 * Validate and update the properties and layout of this object
		 *       and redraw it, if necessary.
		 *            Processing properties that require substantial computation are normally
		 *       not processed until the script finishes executing.
		 *       For example setting the width property is delayed, because it may
		 *       require recalculating the widths of the objects children or its parent.
		 *       Delaying the processing prevents it from being repeated
		 *       multiple times if the script sets the width property more than once.
		 *       This method lets you manually override this behavior.
		 */
		public function validateNow():void;
		/**
		 * Used by layout logic to validate the properties of a component
		 *       by calling the commitProperties() method.  
		 *       In general, subclassers should
		 *       override the commitProperties() method and not this method.
		 */
		public function validateProperties():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.
		 *
		 * @param recursive               <Boolean (default = false)> If true, call this method
		 *                                  on the objects children.
		 */
		public function validateSize(recursive:Boolean = false):void;
		/**
		 * Handles both the valid and invalid events from a
		 *       validator assigned to this component.
		 *
		 * @param event                   <ValidationResultEvent> The event object for the validation.
		 */
		public function validationResultHandler(event:ValidationResultEvent):void;
		/**
		 * Returns a box Matrix which can be passed to drawRoundRect()
		 *       as the rot parameter when drawing a vertical gradient.
		 *
		 * @param x                       <Number> The left coordinate of the gradient, in pixels.
		 * @param y                       <Number> The top coordinate of the gradient, in pixels.
		 * @param width                   <Number> The width of the gradient, in pixels.
		 * @param height                  <Number> The height of the gradient, in pixels.
		 * @return                        <Matrix> The Matrix for the vertical gradient.
		 */
		public function verticalGradientMatrix(x:Number, y:Number, width:Number, height:Number):Matrix;
		/**
		 * The default value for the maxHeight property.
		 */
		public static const DEFAULT_MAX_HEIGHT:Number = 10000;
		/**
		 * The default value for the maxWidth property.
		 */
		public static const DEFAULT_MAX_WIDTH:Number = 10000;
		/**
		 * The default value for the measuredHeight property.
		 *       Most components calculate a measuredHeight but some are flow-based and
		 *       have to pick a number that looks reasonable.
		 */
		public static const DEFAULT_MEASURED_HEIGHT:Number = 22;
		/**
		 * The default value for the measuredMinHeight property.
		 *       Most components calculate a measuredMinHeight but some are flow-based and
		 *       have to pick a number that looks reasonable.
		 */
		public static const DEFAULT_MEASURED_MIN_HEIGHT:Number = 22;
		/**
		 * The default value for the measuredMinWidth property.
		 *       Most components calculate a measuredMinWidth but some are flow-based and
		 *       have to pick a number that looks reasonable.
		 */
		public static const DEFAULT_MEASURED_MIN_WIDTH:Number = 40;
		/**
		 * The default value for the measuredWidth property.
		 *       Most components calculate a measuredWidth but some are flow-based and
		 *       have to pick a number that looks reasonable.
		 */
		public static const DEFAULT_MEASURED_WIDTH:Number = 160;
	}