Packagespark.layouts
Classpublic class ConstraintLayout
InheritanceConstraintLayout Inheritance LayoutBase Inheritance OnDemandEventDispatcher Inheritance Object
Subclasses FormItemLayout

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

The ConstraintLayout class arranges the layout elements based on their individual settings and a set of constraint regions defined by constraint columns and constraint rows. Although you can use all of the properties and constraints from BasicLayout to position and size elements, ConstraintLayout gives you the ability to create sibling-relative layouts by constraining elements to the specified columns and rows.

Note: The Spark list-based controls (the Spark List control and its subclasses such as ButtonBar, ComboBox, DropDownList, and TabBar) do not support the ConstraintLayout class. Do not use ConstraintLayout with the Spark list-based controls.

Per-element supported constraints are left, right, top, bottom, baseline, percentWidth, and percentHeight. Element's minimum and maximum sizes will always be respected.

Columns and rows may have an explicit size or content size (no explicit size). Explicit size regions will be fixed at their specified size, while content size regions will stretch to fit only the elements constrained to them. If multiple content size regions are spanned by an element, the space will be divided equally among the content size regions.

The measured size of the container is calculated from the elements, their constraints, their preferred sizes, and the sizes of the rows and columns. The size of each row and column is just big enough to hold all of the elements constrained to it at their preferred sizes with constraints satisfied. The measured size of the container is big enough to hold all of the columns and rows as well as any other elements left at their preferred sizes with constraints satisfied.

During a call to the updateDisplayList() method, the element's size is determined according to the rules in the following order of precedence (the element's minimum and maximum sizes are always respected):

The element's position is determined according to the rules in the following order of precedence:

The content size of the container is calculated as the maximum of the coordinates of the bottom-right corner of all the layout elements and constraint regions.



Public Properties
 PropertyDefined By
 InheritedclipAndEnableScrolling : Boolean
If true, specifies to clip the children to the boundaries of the viewport.
LayoutBase
  constraintColumns : Vector.<ConstraintColumn>
A Vector of ConstraintColumn instances that partition the target container.
ConstraintLayout
  constraintRows : Vector.<ConstraintRow>
A Vector of ConstraintRow instances that partition the target container.
ConstraintLayout
 InheriteddropIndicator : DisplayObject
The DisplayObject that this layout uses for the drop indicator during a drag-and-drop operation.
LayoutBase
 InheritedhorizontalScrollPosition : Number
The x coordinate of the origin of the viewport in the component's coordinate system, where the default value is (0,0) corresponding to the upper-left corner of the component.
LayoutBase
 Inheritedtarget : GroupBase
The GroupBase container whose elements are measured, sized and positioned by this layout.
LayoutBase
 InheritedtypicalLayoutElement : ILayoutElement
Used by layouts when fixed row/column sizes are requested but a specific size isn't specified.
LayoutBase
 InheriteduseVirtualLayout : Boolean
A container can hold any number of children.
LayoutBase
 InheritedverticalScrollPosition : Number
The y coordinate of the origin of the viewport in the component's coordinate system, where the default value is (0,0) corresponding to the upper-left corner of the component.
LayoutBase
Public Methods
 MethodDefined By
  
Constructor.
ConstraintLayout
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
OnDemandEventDispatcher
 Inherited
Calculates the drop location in the data provider of the drop target for the specified dragEvent.
LayoutBase
 Inherited
When useVirtualLayout is true, this method can be used by the layout target to clear cached layout information when the target changes.
LayoutBase
 Inherited
dispatchEvent(event:Event):Boolean
OnDemandEventDispatcher
 Inherited
elementAdded(index:int):void
Called by the target after a layout element has been added and before the target's size and display list are validated.
LayoutBase
 Inherited
elementRemoved(index:int):void
This method must is called by the target after a layout element has been removed and before the target's size and display list are validated.
LayoutBase
 Inherited
getElementBounds(index:int):Rectangle
Returns the specified element's layout bounds as a Rectangle or null if the index is invalid, the corresponding element is null, includeInLayout=false, or if this layout's target property is null.
LayoutBase
 Inherited
getHorizontalScrollPositionDelta(navigationUnit:uint):Number
Returns the change to the horizontal scroll position to handle different scrolling options.
LayoutBase
 Inherited
getNavigationDestinationIndex(currentIndex:int, navigationUnit:uint, arrowKeysWrapFocus:Boolean):int
Delegation method that determines which item to navigate to based on the current item in focus and user input in terms of NavigationUnit.
LayoutBase
 Inherited
Computes the verticalScrollPosition and horizontalScrollPosition deltas needed to scroll the element at the specified index into view.
LayoutBase
 Inherited
getVerticalScrollPositionDelta(navigationUnit:uint):Number
Returns the change to the vertical scroll position to handle different scrolling options.
LayoutBase
 Inherited
hasEventListener(type:String):Boolean
OnDemandEventDispatcher
 Inherited
Hides the previously shown drop indicator, created by the showDropIndicator() method, removes it from the display list and also stops the drag scrolling.
LayoutBase
 Inherited
measure():void
Measures the target's default size based on its content, and optionally measures the target's default minimum size.
LayoutBase
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
OnDemandEventDispatcher
 Inherited
showDropIndicator(dropLocation:DropLocation):void
Sizes, positions and parents the drop indicator based on the specified drop location.
LayoutBase
 Inherited
updateDisplayList(width:Number, height:Number):void
Sizes and positions the target's elements.
LayoutBase
 Inherited
updateScrollRect(w:Number, h:Number):void
Called by the target at the end of its updateDisplayList to have the layout update its scrollRect.
LayoutBase
 Inherited
willTrigger(type:String):Boolean
OnDemandEventDispatcher
Protected Methods
 MethodDefined By
 Inherited
calculateDragScrollDelta(dropLocation:DropLocation, elapsedTime:Number):Point
Calculates how much to scroll for the specified dropLocation during a drag and drop gesture.
LayoutBase
 Inherited
calculateDropIndex(x:Number, y:Number):int
Returns the index where a new item should be inserted if the user releases the mouse at the specified coordinates while completing a drag and drop gesture.
LayoutBase
 Inherited
Calculates the bounds for the drop indicator that provides visual feedback to the user of where the items will be inserted at the end of a drag and drop gesture.
LayoutBase
 Inherited
getElementBoundsAboveScrollRect(scrollRect:Rectangle):Rectangle
Returns the bounds of the first layout element that either spans or is above the scrollRect's top edge.
LayoutBase
 Inherited
getElementBoundsBelowScrollRect(scrollRect:Rectangle):Rectangle
Returns the bounds of the first layout element that either spans or is below the scrollRect's bottom edge.
LayoutBase
 Inherited
getElementBoundsLeftOfScrollRect(scrollRect:Rectangle):Rectangle
Returns the bounds of the first layout element that either spans or is to the left of the scrollRect's left edge.
LayoutBase
 Inherited
getElementBoundsRightOfScrollRect(scrollRect:Rectangle):Rectangle
Returns the bounds of the first layout element that either spans or is to the right of the scrollRect's right edge.
LayoutBase
 Inherited
getScrollRect():Rectangle
Returns the bounds of the target's scroll rectangle in layout coordinates.
LayoutBase
  
layoutContent(unscaledWidth:Number, unscaledHeight:Number):void
Lays out the elements of the layout target using the current widths and heights of the columns and rows.
ConstraintLayout
  
measureAndPositionColumnsAndRows(constrainedWidth:Number, constrainedHeight:Number):void
Used by FormItemLayout to measure and set new column widths and row heights before laying out the elements.
ConstraintLayout
 Inherited
Called when the verticalScrollPosition or horizontalScrollPosition properties change.
LayoutBase
Property Detail
constraintColumnsproperty
constraintColumns:Vector.<ConstraintColumn>

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

A Vector of ConstraintColumn instances that partition the target container. The ConstraintColumn instance at index 0 is the left-most column; indices increase from left to right.


Implementation
    public function get constraintColumns():Vector.<ConstraintColumn>
    public function set constraintColumns(value:Vector.<ConstraintColumn>):void
constraintRowsproperty 
constraintRows:Vector.<ConstraintRow>

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

A Vector of ConstraintRow instances that partition the target container. The ConstraintRow instance at index 0 is the top-most column; indices increase from top to bottom.


Implementation
    public function get constraintRows():Vector.<ConstraintRow>
    public function set constraintRows(value:Vector.<ConstraintRow>):void
Constructor Detail
ConstraintLayout()Constructor
public function ConstraintLayout()

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

Constructor.

Method Detail
layoutContent()method
protected function layoutContent(unscaledWidth:Number, unscaledHeight:Number):void

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

Lays out the elements of the layout target using the current widths and heights of the columns and rows. Used by FormItemLayout after setting new column widths to lay elements using those new widths.

Parameters

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.
 
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.

measureAndPositionColumnsAndRows()method 
protected function measureAndPositionColumnsAndRows(constrainedWidth:Number, constrainedHeight:Number):void

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

Used by FormItemLayout to measure and set new column widths and row heights before laying out the elements.

Parameters

constrainedWidth:Number (default = NaN) — The total width available for columns to stretch or shrink their percent width columns. If NaN, percent width columns are unconstrained and fit to their content.
 
constrainedHeight:Number (default = NaN) — The total height available for rows to stretch or shrink their percent height rows. If NaN, percent height rows are unconstrained and fit to their content.