ActionScript® 3.0 Reference for the Adobe® Flash® Platform
Home  |  Show Packages and Classes List |  Packages  |  Classes  |  What's New  |  Index  |  Appendixes
com.adobe.mosaic.layouts 

SmartRowLayout  - AS3 ADEP Composite Application

Packagecom.adobe.mosaic.layouts
Classpublic class SmartRowLayout
InheritanceSmartRowLayout Inheritance MosaicLayoutBase Inheritance LayoutBase Inheritance OnDemandEventDispatcher Inheritance Object

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

The SmartRowLayout place's its target Group's children into a fixed set of rows determined by numRows which defaults to 3.

Each child's height is changed so that all of the rows maintain the same height. Each child's width is retained, however, unless the child is less than minColumnWidth.

This pattern means that the rows will be of differing width. Whenever a new child is added to the end of the target Group's display list, it is added to the shortest row.

When a child is deleted, the children to its right are moved to the left, the other rows are not affected.



Public Properties
 PropertyDefined By
 InheritedanimationDuration : int
The amount of time to give any annimation to run its course.
MosaicLayoutBase
 InheritedclipAndEnableScrolling : Boolean
If true, specifies to clip the children to the boundaries of the viewport.
LayoutBase
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
 InheriteddropIndicator : DisplayObject
The DisplayObject that this layout uses for the drop indicator during a drag-and-drop operation.
LayoutBase
 InheritedeffectEndHandler : Function
The function used to handle EffectEvent events.
MosaicLayoutBase
 InheritedhorizontalGap : int
The spacing between the columns.
MosaicLayoutBase
 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
  minColumnWidth : Number
The minimum width an element in a row may become.
SmartRowLayout
  numRows : int
Number of rows
SmartRowLayout
 InheritedpaddingBottom : int
The space between the container edge and the bottom row of items.
MosaicLayoutBase
 InheritedpaddingLeft : int
The space between the container edge and the left column of items.
MosaicLayoutBase
 InheritedpaddingRight : int
The space between the container edge and the right column of items.
MosaicLayoutBase
 InheritedpaddingTop : int
The space between the container edge and the top row of items.
MosaicLayoutBase
 Inheritedtarget : GroupBase
[override] Called when the target group is set for this layout.
MosaicLayoutBase
 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
 InheritedverticalGap : int
The spacing between the rows.
MosaicLayoutBase
 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
Protected Properties
 PropertyDefined By
 InheritedeffectList : Parallel
A collection of effects to play in parallel.
MosaicLayoutBase
 InheritedelementBeingRemoved : int = -1
The index of the element being removed, referenced to generate the special effects to display the removal, and then reset to -1 (default).
MosaicLayoutBase
 InheritedlayoutUndefined : Boolean = true
Default is true.
MosaicLayoutBase
 Inheritedmaximized : Boolean = false
Default is false.
MosaicLayoutBase
 InheritedmaximizedElement : IVisualElement
The IVisualElement being maximized.
MosaicLayoutBase
 InheritedmeasuredMaxHeight : Number
The measured maximum height of an element.
MosaicLayoutBase
 InheritedmeasuredMaxWidth : Number
The measured maximum width of an element.
MosaicLayoutBase
 InheritedminimizedElements : Array
The Array of IVisualElement elements currently minimized.
MosaicLayoutBase
 InheritedrestoreCellHeight : Number
The height to restore a minimized element to.
MosaicLayoutBase
 InheritedrestoreCellWidth : Number
The width to restore a minimized element to.
MosaicLayoutBase
Public Methods
 MethodDefined By
  
Constructor
SmartRowLayout
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event.
OnDemandEventDispatcher
  
[override] Determines the location of the drop (should it happen) and returns that information in the form of a DropLocation.
SmartRowLayout
 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
Dispatches an event into the event flow.
OnDemandEventDispatcher
  
[override] Called when a new element is added.
SmartRowLayout
  
[override] Called when an element is removed.
SmartRowLayout
 Inherited
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
Returns the change to the horizontal scroll position to handle different scrolling options.
LayoutBase
 Inherited
Returns the ILayoutChild that occupies the given display list index.
MosaicLayoutBase
 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
Returns the change to the vertical scroll position to handle different scrolling options.
LayoutBase
 Inherited
Checks whether the EventDispatcher object has any listeners registered for a specific type of event.
OnDemandEventDispatcher
 Inherited
Indicates whether an object has a specified property defined.
Object
 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
When a value of true is return, this layout is currently showing a maximized child element.
MosaicLayoutBase
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Maximizes the given element to take up entire target space (minus padding, of course).
MosaicLayoutBase
  
[override] Called when the target should be measured.
SmartRowLayout
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Removes a listener from the EventDispatcher object.
OnDemandEventDispatcher
 Inherited
Restores an element that has been maximized.
MosaicLayoutBase
 Inherited
Handles the layout side of restoring a previously minimized element by making it appear.
MosaicLayoutBase
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Sizes, positions and parents the drop indicator based on the specified drop location.
LayoutBase
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
 Inherited
Returns the string representation of the specified object.
Object
 Inherited
Sizes and positions the target's elements.
LayoutBase
 Inherited
Called by the target at the end of its updateDisplayList to have the layout update its scrollRect.
LayoutBase
 Inherited
Returns the primitive value of the specified object.
Object
 Inherited
Handles the layout side of a minimized element by making it disappear.
MosaicLayoutBase
 Inherited
Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type.
OnDemandEventDispatcher
Protected Methods
 MethodDefined By
  
Adds the item, given by its index, to either the end of the matrix or into the first vacant cell.
SmartRowLayout
  
Adds the item using the item's column and row properties to place the item.
SmartRowLayout
  
Adds the item, given by its index, to the row that is visually the shortest.
SmartRowLayout
  
Calculates the sizes of the children in a row.
SmartRowLayout
 Inherited
Calculates how much to scroll for the specified dropLocation during a drag and drop gesture.
LayoutBase
 Inherited
[override] Locates the item under the point using a simple look-up, accounting for horizontal and vertical gaps.
MosaicLayoutBase
  
[override] Creates the bounding rectangle for the drop indicator.
SmartRowLayout
  
calculateLayoutPositions(width:Number, height:Number, updateInPlace:Boolean, returnArray:Boolean):Array
[override] Calculates the positions and sizes of all of the layout target's children.
SmartRowLayout
  
Calculates key size variables.
SmartRowLayout
 Inherited
Generates a series of Move and Resize effects for item being placing them into their new positions.
MosaicLayoutBase
  
Find a cell position given the child's display index.
SmartRowLayout
 Inherited
Returns the bounds of the first layout element that either spans or is above the scrollRect's top edge.
LayoutBase
 Inherited
Returns the bounds of the first layout element that either spans or is below the scrollRect's bottom edge.
LayoutBase
 Inherited
Returns the bounds of the first layout element that either spans or is to the left of the scrollRect's left edge.
LayoutBase
 Inherited
Returns the bounds of the first layout element that either spans or is to the right of the scrollRect's right edge.
LayoutBase
 Inherited
Returns the bounds of the target's scroll rectangle in layout coordinates.
LayoutBase
 Inherited
Sizes and positions the maximized element.
MosaicLayoutBase
  
[override] Sizes and positions the target's elements in row fashion.
SmartRowLayout
 Inherited
Called when the effects are over to reset the elementBeingMoved value.
MosaicLayoutBase
  
Reconstructs the layout from scratch.
SmartRowLayout
 Inherited
Called when the verticalScrollPosition or horizontalScrollPosition properties change.
LayoutBase
Property Detail

minColumnWidth

property
minColumnWidth:Number

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

The minimum width an element in a row may become.

This property can be used as the source for data binding. When this property is modified, it dispatches the propertyChange event.



Implementation
    public function get minColumnWidth():Number
    public function set minColumnWidth(value:Number):void

numRows

property 
numRows:int

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Number of rows

This property can be used as the source for data binding. When this property is modified, it dispatches the propertyChange event.



Implementation
    public function get numRows():int
    public function set numRows(value:int):void
Constructor Detail

SmartRowLayout

()Constructor
public function SmartRowLayout()

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Constructor

Method Detail

addAtEnd

()method
protected function addAtEnd(child:ILayoutChild):Object

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Adds the item, given by its index, to either the end of the matrix or into the first vacant cell.

Parameters

child:ILayoutChild — The child to be added to the last position of the layout.

Returns
Object — the {col, row} Object with the position information.

addAtRowCol

()method 
protected function addAtRowCol(index:int):Object

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Adds the item using the item's column and row properties to place the item. If an element is already there, that element is moved down 1 row in the same column.

Parameters

index:int — The child's index within the display list of the group target.

Returns
Object — The {col,row} object with the position information.

addToShortestRow

()method 
protected function addToShortestRow(index:int):Object

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Adds the item, given by its index, to the row that is visually the shortest.

Parameters

index:int — The index of the child with the target group.

Returns
Object — The {col,row} position information.

calculateChildWidths

()method 
protected function calculateChildWidths(row:Array, width:Number):Array

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Calculates the sizes of the children in a row.

Each child in a row may have an explicit width or a percent width.

Parameters

row:Array — All of the child elements in a row.
 
width:Number — The total width of the target space.

Returns
Array — Array of actual widths to use

calculateDropIndicatorBounds

()method 
override protected function calculateDropIndicatorBounds(dropLocation:DropLocation):Rectangle

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Creates the bounding rectangle for the drop indicator. This will either appear left of the item at the drop location or to its right, depending on the position of the mouse within the item.

Parameters

dropLocation:DropLocation — The position within the layout where the drop can be expected.

Returns
Rectangle — A rectangle the describes the area of the drop.

calculateDropLocation

()method 
override public function calculateDropLocation(dragEvent:DragEvent):DropLocation

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Determines the location of the drop (should it happen) and returns that information in the form of a DropLocation. However, since this layout is row,column based and index may not be meaningful, the object returned is an instance of MosaicDropLocation that contains row and column index information.

Parameters

dragEvent:DragEvent — The event that contains the position of the mouse.

Returns
DropLocation — The location where the drop could happen.

calculateLayoutPositions

()method 
override protected function calculateLayoutPositions(width:Number, height:Number, updateInPlace:Boolean, returnArray:Boolean):Array

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Calculates the positions and sizes of all of the layout target's children.

Parameters

width:Number — The horizontal space in which to work.
 
height:Number — The vertical space in which to work.
 
updateInPlace:Boolean — If true, the children's size and position are updated immediately.
 
returnArray:Boolean — If true, an Array of new sizes and positions is returned.

Returns
Array — An Array of new sizes and positions or null if returnArray parameter is false.

calculateSizes

()method 
protected function calculateSizes():void

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Calculates key size variables.

elementAdded

()method 
override public function elementAdded(index:int):void

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Called when a new element is added.

Parameters

index:int — The index of the child within the target display list.

elementRemoved

()method 
override public function elementRemoved(index:int):void

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Called when an element is removed. The cells structure is updated to reflect the item removed from a specific row.

Parameters

index:int — The index of the child within the target display list.

findCell

()method 
protected function findCell(index:int):Object

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Find a cell position given the child's display index.

Parameters

index:int — The position of the child within the target group.

Returns
Object — The {col,row} position of the child.

measure

()method 
override public function measure():void

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Called when the target should be measured.

normalLayout

()method 
override protected function normalLayout(width:Number, height:Number):void

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Sizes and positions the target's elements in row fashion.

Parameters

width:Number — The size of the target area.
 
height:Number — The size of the target area.

rebuildLayout

()method 
protected function rebuildLayout():void

Language Version: ActionScript 3.0
Product Version: Adobe Digital Enterprise Platform Experience Services - Composite Application Framework 10
Runtime Versions: AIR 2.6, Flash Player 10.2

Reconstructs the layout from scratch. Some property changes require a total reset of the layout.