Packagemx.managers
Interfacepublic interface ILayoutManagerClient extends flash.events.IEventDispatcher
SubinterfacesIListItemRenderer
ImplementorsProgrammaticSkin, UIComponent

The ILayoutManagerClient interface defines the interface that a component must implement to participate in the LayoutManager's commit/measurement/layout sequence.

Objects that implement this interface can be passed to the LayoutManager's invalidateProperties() method. When the LayoutManager reaches the commit properties phase, the LayoutManager invokes this object's validateProperties() method.

Similarly, if an object is passed to the LayoutManager's invalidateSize() method, then the LayoutManager calls that object's validateSize() method during its measurement phase, and if an object is passed to LayoutManager's invalidateDisplayList() method, then the LayoutManager calls its validateDisplayList() method during the layout phase.

The ILayoutManagerClient interface is implemented by the UIComponent and ProgrammaticSkin classes.



Public Properties
 PropertyDefined by
  initialized : Boolean
A flag that determines if an object has been through all three phases of layout validation (provided that any were required) This flag should only be modified by the LayoutManager.
ILayoutManagerClient
  nestLevel : int
The top-level SystemManager has a nestLevel of 1.
ILayoutManagerClient
  processedDescriptors : Boolean
Set to true after immediate or deferred child creation, depending on which one happens.
ILayoutManagerClient
  updateCompletePendingFlag : Boolean
A flag that determines if an object is waiting to have its updateComplete event dispatched.
ILayoutManagerClient
Public Methods
 MethodDefined by
  
Validates the position and size of children and draws other visuals.
ILayoutManagerClient
  
Validates the properties of a component.
ILayoutManagerClient
  
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.
ILayoutManagerClient
Property detail
initializedproperty
initialized:Boolean  [read-write]

A flag that determines if an object has been through all three phases of layout validation (provided that any were required) This flag should only be modified by the LayoutManager.

Implementation
    public function get initialized():Boolean
    public function set initialized(value:Boolean):void
nestLevelproperty 
nestLevel:int  [read-write]

The top-level SystemManager has a nestLevel of 1. Its immediate children (the top-level Application and any pop-up windows) have a nestLevel of 2. Their children have a nestLevel of 3, and so on. The nestLevel is used to sort ILayoutManagerClients during the measurement and layout phases. During the commit phase, the LayoutManager commits properties on clients in order of decreasing nestLevel, so that an object's children have already had their properties committed before Flex commits properties on the object itself. During the measurement phase, the LayoutManager measures clients in order of decreasing nestLevel, so that an object's children have already been measured before Flex measures the object itself. During the layout phase, the LayoutManager lays out clients in order of increasing nestLevel, so that an object has a chance to set the sizes of its children before the child objects are asked to position and size their children.

Implementation
    public function get nestLevel():int
    public function set nestLevel(value:int):void
processedDescriptorsproperty 
processedDescriptors:Boolean  [read-write]

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.

For example, if an Accordion container uses deferred instantiation, the processedDescriptors property for the second pane of the Accordion container does not become true until after the user navigates to that pane and the pane creates its children. But, if the Accordion had set the creationPolicy property to "all", the processedDescriptors property for its second pane is set to true during application startup.

For classes that are not containers, which do not have descriptors, it is set to true after the createChildren() method creates any internal component children.

Implementation
    public function get processedDescriptors():Boolean
    public function set processedDescriptors(value:Boolean):void
updateCompletePendingFlagproperty 
updateCompletePendingFlag:Boolean  [read-write]

A flag that determines if an object is waiting to have its updateComplete event dispatched. This flag should only be modified by the LayoutManager.

Implementation
    public function get updateCompletePendingFlag():Boolean
    public function set updateCompletePendingFlag(value:Boolean):void
Method detail
validateDisplayList()method
public function validateDisplayList():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.

validateProperties()method 
public function validateProperties():void

Validates the properties of a component. If the LayoutManager.invalidateProperties() method is called with this ILayoutManagerClient, then the validateProperties() method is called when it's time to commit property values.

validateSize()method 
public function 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.

Parameters
recursive:Boolean (default = false) — If true, call this method on the objects children.