Cleaned up unused or unnecessary event listeners.

Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/f4138d09
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/f4138d09
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/f4138d09

Branch: refs/heads/dual
Commit: f4138d09434cfa192d2fe38339ec98a26179fdd6
Parents: 7f29a98
Author: Peter Ent <[email protected]>
Authored: Sun Apr 9 17:26:43 2017 -0400
Committer: Peter Ent <[email protected]>
Committed: Sun Apr 9 17:26:43 2017 -0400

----------------------------------------------------------------------
 .../org/apache/flex/charts/beads/ChartView.as   |  20 ++--
 .../apache/flex/utils/MXMLDataInterpreter.as    |   6 +-
 .../flex/org/apache/flex/core/ContainerBase.as  |   2 +-
 .../org/apache/flex/core/DataContainerBase.as   |  88 +++++++++++++---
 .../main/flex/org/apache/flex/core/GroupBase.as |  14 ++-
 .../src/main/flex/org/apache/flex/core/View.as  |   2 +-
 .../main/flex/org/apache/flex/html/Container.as |   5 +-
 .../flex/org/apache/flex/html/DataContainer.as  |  65 +-----------
 .../src/main/flex/org/apache/flex/html/Group.as |   2 +-
 .../flex/org/apache/flex/html/MXMLBeadView.as   | 104 +++++++++----------
 .../org/apache/flex/html/beads/ContainerView.as |  24 +----
 .../apache/flex/html/beads/DataContainerView.as |  40 +++++--
 .../DataItemRendererFactoryForArrayData.as      |   3 +-
 .../DataItemRendererFactoryForArrayList.as      |   3 +-
 .../DataItemRendererFactoryForColumnData.as     |   4 +-
 .../org/apache/flex/html/beads/GroupView.as     |  67 ++++++++----
 .../flex/org/apache/flex/html/beads/ListView.as |  75 ++++++++-----
 .../org/apache/flex/html/beads/PanelView.as     |   2 +
 .../flex/html/beads/PanelWithControlBarView.as  |   1 +
 .../TextItemRendererFactoryForArrayData.as      |   3 +-
 ...extItemRendererFactoryForStringVectorData.as |   4 +-
 21 files changed, 305 insertions(+), 229 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
 
b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
index 9ce64a9..0d089c6 100644
--- 
a/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
+++ 
b/frameworks/projects/Charts/src/main/flex/org/apache/flex/charts/beads/ChartView.as
@@ -92,9 +92,19 @@ package org.apache.flex.charts.beads
                {       
                        super.completeSetup();
                        
+                       performLayout(null);
+               }
+               
+               /**
+                * @private
+                */
+               override protected function beadsAddedHandler(event:Event):void
+               {
+                       super.beadsAddedHandler(event);
+                       
                        dataModel = _strand.getBeadByType(IChartDataModel) as 
IChartDataModel;
                        dataModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
-                                               
+                       
                        var haxis:IHorizontalAxisBead = 
_strand.getBeadByType(IHorizontalAxisBead) as IHorizontalAxisBead;
                        if (haxis && _horizontalAxisGroup == null) {
                                var m1:Class = 
ValuesManager.valuesImpl.getValue(_strand, "iHorizontalAxisGroup");
@@ -115,14 +125,6 @@ package org.apache.flex.charts.beads
                }
                
                /**
-                * @private
-                */
-               override protected function beadsAddedHandler(event:Event):void
-               {
-                       super.beadsAddedHandler(event);
-               }
-               
-               /**
                 *  The IAxisGroup that represents the horizontal axis.
                 *  
                 *  @langversion 3.0

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/MXMLDataInterpreter.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/MXMLDataInterpreter.as
 
b/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/MXMLDataInterpreter.as
index 058c5b8..6f24181 100644
--- 
a/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/MXMLDataInterpreter.as
+++ 
b/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/MXMLDataInterpreter.as
@@ -337,9 +337,9 @@ public class MXMLDataInterpreter
      */
     public static function generateMXMLInstances(document:Object, 
parent:IParent, data:Array):void
     {
-               if (!data) return;
-               
-        generateMXMLArray(document, parent, data);
+               if (data != null) {
+               generateMXMLArray(document, parent, data);
+               }
         // maybe we can remove this.  All IContainers should be IMXMLDocuments?
         if (parent is IContainer)
         {

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/ContainerBase.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/ContainerBase.as 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/ContainerBase.as
index 7f0be01..0dcb0e3 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/ContainerBase.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/ContainerBase.as
@@ -66,7 +66,7 @@ package org.apache.flex.core
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */
-       public class ContainerBase extends GroupBase implements IContainer, 
IStrandPrivate
+       public class ContainerBase extends GroupBase implements IStrandPrivate
        {
         /**
          *  Constructor.

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/DataContainerBase.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/DataContainerBase.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/DataContainerBase.as
index 6d8988f..0f03f67 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/DataContainerBase.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/DataContainerBase.as
@@ -19,6 +19,7 @@
 package org.apache.flex.core
 {
        import org.apache.flex.core.ValuesManager;
+       import org.apache.flex.html.beads.IListView;
        import org.apache.flex.events.Event;
        import org.apache.flex.events.ItemAddedEvent;
        import org.apache.flex.events.ItemClickedEvent;
@@ -46,7 +47,7 @@ package org.apache.flex.core
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */
-       public class DataContainerBase extends ContainerBase implements 
IItemRendererParent
+       public class DataContainerBase extends ContainerBase implements 
IItemRendererParent, IList
        {
         /**
          *  Constructor.
@@ -58,9 +59,7 @@ package org.apache.flex.core
          */
                public function DataContainerBase()
                {
-                       super();        
-                       
-                       addEventListener("beadsAdded", beadsAddedHandler);
+                       super();
                }
                
                /*
@@ -94,14 +93,10 @@ package org.apache.flex.core
                        
                        super.addedToParent();
                        
-                       dispatchEvent(new Event("initComplete"));
-               }
-               
-               /**
-                * @private
-                */
-               private function beadsAddedHandler(e:Event):void
-               {
+                       // Even though super.addedToParent dispatched 
"beadsAdded", DataContainer still needs its data mapper
+                       // and item factory beads. These beads are added after 
super.addedToParent is called in case substitutions
+                       // were made; these are just defaults extracted from 
CSS.
+                       
                        if (getBeadByType(IDataProviderItemRendererMapper) == 
null)
                        {
                                var mapper:IDataProviderItemRendererMapper = 
new (ValuesManager.valuesImpl.getValue(this, 
"iDataProviderItemRendererMapper")) as IDataProviderItemRendererMapper;
@@ -113,6 +108,75 @@ package org.apache.flex.core
                                itemRendererFactory = new 
(ValuesManager.valuesImpl.getValue(this, "iItemRendererClassFactory")) as 
IItemRendererClassFactory;
                                addBead(itemRendererFactory);
                        }
+                       
+                       dispatchEvent(new Event("initComplete"));
+               }
+               
+               /*
+                * IList
+                */
+               
+               /**
+                * Returns the sub-component that parents all of the item 
renderers.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion FlexJS 0.0
+                */
+               public function get dataGroup():IItemRendererParent
+               {
+                       // The JS-side's view.dataGroup is actually this 
instance of DataContainerBase
+                       return (view as IListView).dataGroup;
+               }
+               
+               /*
+               * IItemRendererProvider
+               */
+               
+               private var _itemRenderer:IFactory;
+               
+               /**
+                *  The class or factory used to display each item.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion FlexJS 0.0
+                */
+               public function get itemRenderer():IFactory
+               {
+                       return _itemRenderer;
+               }
+               public function set itemRenderer(value:IFactory):void
+               {
+                       _itemRenderer = value;
+               }
+               
+               /**
+                * Returns whether or not the itemRenderer property has been 
set.
+                *
+                *  @see org.apache.flex.core.IItemRendererProvider
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion FlexJS 0.0
+                */
+               public function get hasItemRenderer():Boolean
+               {
+                       var result:Boolean = false;
+                       
+                       COMPILE::SWF {
+                               result = _itemRenderer != null;
+                       }
+                               
+                               COMPILE::JS {
+                                       var test:* = _itemRenderer;
+                                       result = _itemRenderer !== null && test 
!== undefined;
+                               }
+                               
+                               return result;
                }
                
                /*

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
index 0c2797b..e4dfb1f 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/GroupBase.as
@@ -72,7 +72,7 @@ package org.apache.flex.core
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.8
      */
-       public class GroupBase extends UIBase implements IStatesObject, 
ILayoutParent, ILayoutView, IContentViewHost
+       public class GroupBase extends UIBase implements IStatesObject, 
IContainer, ILayoutParent, ILayoutView, IContentViewHost
        {
         /**
          *  Constructor.
@@ -100,6 +100,10 @@ package org.apache.flex.core
                        
                        return element;
                }
+               
+               /*
+                * IContainer
+                */
         
         /**
          *  @private
@@ -109,6 +113,10 @@ package org.apache.flex.core
             dispatchEvent(new Event("childrenAdded"));
         }
                
+               /*
+                * Utility
+                */
+               
                /**
                 * Dispatches a "layoutNeeded" event
          *  
@@ -122,6 +130,10 @@ package org.apache.flex.core
                        dispatchEvent( new Event("layoutNeeded") );
                }
                
+               /*
+                * ILayoutParent
+                */
+               
                /**
                 * Returns the ILayoutHost which is its view. From 
ILayoutParent.
                 *

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/View.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/View.as 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/View.as
index 4f083b4..27882f3 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/View.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/View.as
@@ -71,7 +71,7 @@ package org.apache.flex.core
                                dispatchEvent(new Event("initComplete"));
                                _initialized = true;
                                
-                               childrenAdded();
+                               // - why was this added here? childrenAdded(); 
//?? Is this necessary since MXMLDataInterpreter will already have called it
                        }
                }
                

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/Container.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/Container.as 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/Container.as
index eb39c88..cbcf526 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/Container.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/Container.as
@@ -18,7 +18,6 @@
 
////////////////////////////////////////////////////////////////////////////////
 package org.apache.flex.html
 {
-       import org.apache.flex.core.IContainer;
        import org.apache.flex.core.ContainerBase;
        import org.apache.flex.core.IMXMLDocument;
        import org.apache.flex.core.ValuesManager;
@@ -68,7 +67,7 @@ package org.apache.flex.html
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */    
-       public class Container extends ContainerBase implements IMXMLDocument, 
IContainer
+       public class Container extends ContainerBase implements IMXMLDocument
        {
         /**
          *  Constructor.
@@ -108,7 +107,7 @@ package org.apache.flex.html
                                dispatchEvent(new Event("initComplete"));
                                _initialized = true;
                                
-                               childrenAdded();
+                               //?? why is this here? childrenAdded(); //?? Is 
this needed since MXMLDataInterpreter will have already called it
                        }
                }
                

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataContainer.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataContainer.as 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataContainer.as
index ec74e3b..231ba42 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataContainer.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/DataContainer.as
@@ -73,7 +73,7 @@ package org.apache.flex.html
         *  @playerversion AIR 2.6
         *  @productversion FlexJS 0.0
         */
-       public class DataContainer extends DataContainerBase implements IList
+       public class DataContainer extends DataContainerBase
        {
                /**
                 *  constructor.
@@ -141,68 +141,5 @@ package org.apache.flex.html
                        }
                        return presModel;
                }
-
-               /*
-                * IList and IItemRendererProvider
-                */
-
-               /**
-                * Returns the sub-component that parents all of the item 
renderers.
-                *
-                *  @langversion 3.0
-                *  @playerversion Flash 10.2
-                *  @playerversion AIR 2.6
-                *  @productversion FlexJS 0.0
-                */
-               public function get dataGroup():IItemRendererParent
-               {
-                       //return this;
-                       return (view as IListView).dataGroup;
-               }
-
-               private var _itemRenderer:IFactory;
-
-               /**
-                *  The class or factory used to display each item.
-                *
-                *  @langversion 3.0
-                *  @playerversion Flash 10.2
-                *  @playerversion AIR 2.6
-                *  @productversion FlexJS 0.0
-                */
-               public function get itemRenderer():IFactory
-               {
-                       return _itemRenderer;
-               }
-               public function set itemRenderer(value:IFactory):void
-               {
-                       _itemRenderer = value;
-               }
-
-               /**
-                * Returns whether or not the itemRenderer property has been 
set.
-                *
-                *  @see org.apache.flex.core.IItemRendererProvider
-                *
-                *  @langversion 3.0
-                *  @playerversion Flash 10.2
-                *  @playerversion AIR 2.6
-                *  @productversion FlexJS 0.0
-                */
-               public function get hasItemRenderer():Boolean
-               {
-                       var result:Boolean = false;
-
-                       COMPILE::SWF {
-                               result = _itemRenderer != null;
-                       }
-
-                       COMPILE::JS {
-                               var test:* = _itemRenderer;
-                               result = _itemRenderer !== null && test !== 
undefined;
-                       }
-
-                               return result;
-               }
        }
 }

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/Group.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/Group.as 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/Group.as
index 2825f43..2b3ddb9 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/Group.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/Group.as
@@ -93,7 +93,7 @@ package org.apache.flex.html
                                dispatchEvent(new Event("initComplete"));
                                _initialized = true;
                                
-                               childrenAdded();
+                               //?? why was this added here? childrenAdded(); 
//?? Is this needed since MXMLDataInterpreter will already have called it
                        }
                }
                

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/MXMLBeadView.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/MXMLBeadView.as 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/MXMLBeadView.as
index 4f19b10..4bfa105 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/MXMLBeadView.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/MXMLBeadView.as
@@ -19,7 +19,7 @@
 package org.apache.flex.html
 {
        import org.apache.flex.states.State;
-       
+
        import org.apache.flex.core.IBead;
     import org.apache.flex.core.ILayoutHost;
     import org.apache.flex.core.IParent;
@@ -33,12 +33,12 @@ package org.apache.flex.html
        import org.apache.flex.utils.MXMLDataInterpreter;
 
     [DefaultProperty("mxmlContent")]
-    
+
     /**
      *  The MXMLBeadView class extends ContainerView
      *  and adds support for databinding and specification
      *  of children in MXML.
-     *  
+     *
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
@@ -48,7 +48,7 @@ package org.apache.flex.html
        {
         /**
          *  Constructor.
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
@@ -58,12 +58,12 @@ package org.apache.flex.html
                {
                        super();
                }
-               
+
         [Bindable("strandChanged")]
         /**
          *  An MXMLBeadView doesn't create its children until it is added to
          *  the strand.
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
@@ -74,21 +74,21 @@ package org.apache.flex.html
             super.strand = value;
             // each MXML file can also have styles in fx:Style block
             ValuesManager.valuesImpl.init(this);
-            
-            dispatchEvent(new Event("strandChanged"));  
-            
+
+            dispatchEvent(new Event("strandChanged"));
+
             for each (var bead:IBead in beads)
                 addBead(bead);
-            
+
             dispatchEvent(new org.apache.flex.events.Event("beadsAdded"));
 
             MXMLDataInterpreter.generateMXMLInstances(this, IParent(value), 
MXMLDescriptor);
-            
-            dispatchEvent(new Event("initBindings"))
-            dispatchEvent(new Event("initComplete"))
+
             dispatchEvent(new Event("childrenAdded"));
+            dispatchEvent(new Event("initBindings"));
+            dispatchEvent(new Event("initComplete"));
         }
-        
+
         [Bindable("__NoChangeEvent__")]
         /**
          *  The model object.
@@ -97,10 +97,10 @@ package org.apache.flex.html
         {
             return _strand["model"];
         }
-        
+
         /**
          *  @copy org.apache.flex.core.Application#MXMLDescriptor
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
@@ -110,10 +110,10 @@ package org.apache.flex.html
         {
             return null;
         }
-        
+
         /**
          *  @copy org.apache.flex.core.Application#generateMXMLAttributes()
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
@@ -123,23 +123,23 @@ package org.apache.flex.html
         {
             MXMLDataInterpreter.generateMXMLProperties(this, data);
         }
-        
+
         /**
          *  @copy org.apache.flex.core.ItemRendererClassFactory#mxmlContent
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
          *  @productversion FlexJS 0.0
          */
         public var mxmlContent:Array;
-        
+
         private var _states:Array;
-        
+
         /**
          *  The array of view states. These should
          *  be instances of org.apache.flex.states.State.
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
@@ -149,7 +149,7 @@ package org.apache.flex.html
         {
             return _states;
         }
-        
+
         /**
          *  @private
          */
@@ -157,7 +157,7 @@ package org.apache.flex.html
         {
             _states = value;
             _currentState = _states[0].name;
-            
+
             try{
                 if (getBeadByType(IStatesImpl) == null)
                     addBead(new (ValuesManager.valuesImpl.getValue(this, 
"iStatesImpl")) as IBead);
@@ -167,19 +167,19 @@ package org.apache.flex.html
             {
                 COMPILE::SWF
                 {
-                    trace(e.message);                        
+                    trace(e.message);
                 }
             }
-            
+
         }
-        
+
         /**
          *  <code>true</code> if the array of states
          *  contains a state with this name.
-         * 
+         *
          *  @param state The state namem.
          *  @return True if state in state array
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
@@ -194,13 +194,13 @@ package org.apache.flex.html
             }
             return false;
         }
-        
+
         private var _currentState:String;
-        
+
         [Bindable("currentStateChange")]
         /**
          *  The name of the current state.
-         * 
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
@@ -208,9 +208,9 @@ package org.apache.flex.html
          */
         public function get currentState():String
         {
-            return _currentState;   
+            return _currentState;
         }
-        
+
         /**
          *  @private
          */
@@ -220,12 +220,12 @@ package org.apache.flex.html
             _currentState = value;
             dispatchEvent(event);
         }
-        
+
         private var _transitions:Array;
-        
+
         /**
          *  The array of transitions.
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
@@ -233,48 +233,48 @@ package org.apache.flex.html
          */
         public function get transitions():Array
         {
-            return _transitions;   
+            return _transitions;
         }
-        
+
         /**
          *  @private
          */
         public function set transitions(value:Array):void
         {
-            _transitions = value;   
+            _transitions = value;
         }
 
         /**
          *  @copy org.apache.flex.core.Application#beads
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
          *  @productversion FlexJS 0.0
          */
         public var beads:Array;
-        
+
         private var _beads:Array;
-        
+
         /**
          *  @copy org.apache.flex.core.IStrand#addBead()
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
          *  @productversion FlexJS 0.0
-         */        
+         */
         public function addBead(bead:IBead):void
         {
             if (!_beads)
                 _beads = [];
             _beads.push(bead);
-            bead.strand = this;            
+            bead.strand = this;
         }
-        
+
         /**
          *  @copy org.apache.flex.core.IStrand#getBeadByType()
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
@@ -289,16 +289,16 @@ package org.apache.flex.html
             }
             return null;
         }
-        
+
         /**
          *  @copy org.apache.flex.core.IStrand#removeBead()
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
          *  @productversion FlexJS 0.0
          */
-        public function removeBead(value:IBead):IBead  
+        public function removeBead(value:IBead):IBead
         {
             var n:int = _beads.length;
             for (var i:int = 0; i < n; i++)

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as
index 9d9fb9a..4de5634 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ContainerView.as
@@ -167,10 +167,6 @@ package org.apache.flex.html.beads
                        // when the first layout is complete, set up listeners 
for changes
                        // to the childrens' sizes.
                        host.addEventListener("layoutComplete", 
childrenChangedHandler);
-
-                       host.addEventListener("widthChanged", resizeHandler);
-                       host.addEventListener("heightChanged", resizeHandler);
-                       host.addEventListener("sizeChanged", resizeHandler);
                }
 
                /**
@@ -286,7 +282,7 @@ package org.apache.flex.html.beads
                 *  @playerversion AIR 2.6
                 *  @productversion FlexJS 0.0
                 */
-               protected function resizeHandler(event:Event):void
+               override protected function resizeHandler(event:Event):void
                {
                        if (!adjusting) {
                                performLayout(event);
@@ -315,24 +311,6 @@ package org.apache.flex.html.beads
                                child.addEventListener("sizeChanged", 
childResizeHandler);
                        }
                }
-
-               /**
-                * This event handles changes to the size of children of the 
container by running
-                * the layout again and adjusting the size of the container or 
viewport as necessary.
-                *
-                *  @langversion 3.0
-                *  @playerversion Flash 10.2
-                *  @playerversion AIR 2.6
-                *  @productversion FlexJS 0.0
-                */
-               protected function childResizeHandler(event:Event):void
-               {
-                       // during this process we don't want the layout to 
trigger
-                       // an endless event chain should any children get 
resized
-                       // by the layout.
-                       if (layoutRunning) return;
-                       performLayout(event);
-               }
        }
 
        COMPILE::JS

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
index 0dfdb0c..36ed489 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataContainerView.as
@@ -62,6 +62,22 @@ package org.apache.flex.html.beads
                        super();
                }
                
+               /**
+                *  @copy org.apache.flex.core.IBead#strand
+                *  
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion FlexJS 0.8
+                */
+               override public function set strand(value:IStrand):void
+               {
+                       _strand = value;
+                       super.strand = value;
+                       
+                       host.addEventListener("beadsAdded", beadsAddedHandler);
+               }
+               
                protected var dataModel:IDataProviderModel;
                
                /**
@@ -72,14 +88,19 @@ package org.apache.flex.html.beads
                        return super.contentView as IItemRendererParent;
                }
                
-               override protected function beadsAddedHandler(event:Event):void
+               protected function beadsAddedHandler(event:Event):void
                {
-                       
                        dataModel = _strand.getBeadByType(IDataProviderModel) 
as IDataProviderModel;
                        host.addEventListener("itemsCreated", 
itemsCreatedHandler);
                        dataModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
-                       
-                       super.beadsAddedHandler(event);
+               }
+               
+               /**
+                * @private
+                */
+               override protected function handleInitComplete(event:Event):void
+               {
+                       super.handleInitComplete(event);
                }
                
                /**
@@ -129,6 +150,8 @@ package org.apache.flex.html.beads
                {
                        _strand = value;
                        super.strand = value;
+                       
+                       host.addEventListener("beadsAdded", beadsAddedHandler);
                }
                
                override protected function completeSetup():void
@@ -142,14 +165,17 @@ package org.apache.flex.html.beads
                        host.addEventListener("itemsCreated", 
itemsCreatedHandler);
                }
                
-               override protected function beadsAddedHandler(event:Event):void
+               protected function beadsAddedHandler(event:Event):void
                {
-                       super.beadsAddedHandler(event);
-                       
                        dataModel = _strand.getBeadByType(IDataProviderModel) 
as IDataProviderModel;
                        dataModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
                }
                
+               override protected function handleInitComplete(event:Event):void
+               {
+                       super.handleInitComplete(event);
+               }
+               
                /**
                 *  The area holding the itemRenderers.
                 *

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForArrayData.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForArrayData.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForArrayData.as
index 523e8d0..bcd837b 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForArrayData.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForArrayData.as
@@ -87,7 +87,6 @@ package org.apache.flex.html.beads
                public function set strand(value:IStrand):void
                {
                        _strand = value;
-                       
IEventDispatcher(value).addEventListener("beadsAdded",finishSetup);
                        
IEventDispatcher(value).addEventListener("initComplete",finishSetup);
                }
                
@@ -100,6 +99,8 @@ package org.apache.flex.html.beads
                        
dataProviderModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
                        labelField = dataProviderModel.labelField;
                        
+                       // if the host component inherits from 
DataContainerBase, the itemRendererClassFactory will 
+                       // already have been loaded by 
DataContainerBase.addedToParent function.
                        _itemRendererFactory = 
_strand.getBeadByType(IItemRendererClassFactory) as IItemRendererClassFactory;
                        if (itemRendererFactory == null) {
                                _itemRendererFactory = new 
(ValuesManager.valuesImpl.getValue(_strand, "iItemRendererClassFactory")) as 
IItemRendererClassFactory;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForArrayList.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForArrayList.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForArrayList.as
index 8d669dd..c35f07f 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForArrayList.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForArrayList.as
@@ -84,7 +84,6 @@ package org.apache.flex.html.beads
                public function set strand(value:IStrand):void
                {
                        _strand = value;
-                       
IEventDispatcher(_strand).addEventListener("beadsAdded", finishSetup);
                        
IEventDispatcher(_strand).addEventListener("initComplete", finishSetup);
                }
                
@@ -94,6 +93,8 @@ package org.apache.flex.html.beads
                        
dataProviderModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
                        labelField = dataProviderModel.labelField;
                        
+                       // if the host component inherits from 
DataContainerBase, the itemRendererClassFactory will 
+                       // already have been loaded by 
DataContainerBase.addedToParent function.
                        _itemRendererFactory = 
_strand.getBeadByType(IItemRendererClassFactory) as IItemRendererClassFactory;
                        if (itemRendererFactory == null) {
                                _itemRendererFactory = new 
(ValuesManager.valuesImpl.getValue(_strand, "iItemRendererClassFactory")) as 
IItemRendererClassFactory;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForColumnData.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForColumnData.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForColumnData.as
index 64a2240..554a9c9 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForColumnData.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/DataItemRendererFactoryForColumnData.as
@@ -70,7 +70,6 @@ package org.apache.flex.html.beads
                public function set strand(value:IStrand):void
                {
                        _strand = value;
-                       
IEventDispatcher(value).addEventListener("beadsAdded",finishSetup);
                        
IEventDispatcher(value).addEventListener("initComplete",finishSetup);
                }
                
@@ -82,7 +81,8 @@ package org.apache.flex.html.beads
                        selectionModel = _strand.getBeadByType(IDataGridModel) 
as IDataGridModel;
                        selectionModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
                        
-                       
+                       // if the host component inherits from 
DataContainerBase, the itemRendererClassFactory will 
+                       // already have been loaded by 
DataContainerBase.addedToParent function.
                        _itemRendererFactory = 
_strand.getBeadByType(IItemRendererClassFactory) as IItemRendererClassFactory;
                        if (itemRendererFactory == null) {
                                _itemRendererFactory = new 
(ValuesManager.valuesImpl.getValue(_strand, "iItemRendererClassFactory")) as 
IItemRendererClassFactory;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
index e4cab81..c3351a5 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/GroupView.as
@@ -115,21 +115,28 @@ package org.apache.flex.html.beads
                                displayBackgroundAndBorder(host as UIBase);
                        }
 
-                       // listen for initComplete to signal that the strand is 
set with its size
-                       // and beads.
-                       host.addEventListener("beadsAdded", beadsAddedHandler);
+                       // listen for initComplete to signal that the strand 
has been initialized
+                       // with its beads and children.
+                       host.addEventListener("initComplete", 
handleInitComplete);
+                       
+                       // listen for when children have been added so 
additional event listeners
+                       // can be placed upon them.
+                       host.addEventListener("childrenAdded", 
handleChildrenAdded);
+                       
+                       // listen for requests to run the layout.
+                       host.addEventListener("layoutNeeded", performLayout);
                }
 
                /**
                 * Handles the initComplete event by completing the setup and 
kicking off the
-                * presentation of the Container.
+                * presentation of the contents.
                 *
                 *  @langversion 3.0
                 *  @playerversion Flash 10.2
                 *  @playerversion AIR 2.6
                 *  @productversion FlexJS 0.8
                 */
-               protected function beadsAddedHandler(event:Event):void
+               protected function handleInitComplete(event:Event):void
                {
             var ilc:ILayoutChild = host as ILayoutChild;
                        // Complete the setup if the height is sized to content 
or has been explicitly set
@@ -137,9 +144,6 @@ package org.apache.flex.html.beads
                        if ((ilc.isHeightSizedToContent() || 
!isNaN(ilc.explicitHeight) || !isNaN(ilc.percentHeight)) &&
                 (ilc.isWidthSizedToContent() || !isNaN(ilc.explicitWidth) || 
!isNaN(ilc.percentWidth))) {
                                completeSetup();
-
-                               var num:Number = contentView.numElements;
-                               if (num > 0) performLayout(event);
                        }
                        else {
                                // otherwise, wait until the unknown sizes have 
been set and then finish
@@ -163,6 +167,7 @@ package org.apache.flex.html.beads
             host.removeEventListener("sizeChanged", deferredSizeHandler);
             host.removeEventListener("widthChanged", deferredSizeHandler);
             host.removeEventListener("heightChanged", deferredSizeHandler);
+                       
                        completeSetup();
 
                        var num:Number = contentView.numElements;
@@ -183,16 +188,10 @@ package org.apache.flex.html.beads
                 */
                protected function completeSetup():void
                {
-                       // set up listeners for when children are added or 
there is a specific request
-                       // to perform the layout again.
-                       host.addEventListener("childrenAdded", 
handleChildrenAdded);
-                       host.addEventListener("layoutNeeded", performLayout);
-                       host.addEventListener("viewCreated", 
viewCreatedHandler);
-
                        // listen for changes to strand's size and rerun the 
layout
-                       host.addEventListener("sizeChanged", performLayout);
-                       host.addEventListener("widthChanged", performLayout);
-                       host.addEventListener("heightChanged", performLayout);
+                       host.addEventListener("sizeChanged", resizeHandler);
+                       host.addEventListener("widthChanged", resizeHandler);
+                       host.addEventListener("heightChanged", resizeHandler);
                }
 
                /**
@@ -222,13 +221,39 @@ package org.apache.flex.html.beads
                                var n:Number = contentView.numElements;
                                for(var i:int=0; i < n; i++) {
                                        var child:IEventDispatcher = 
contentView.getElementAt(i) as IEventDispatcher;
-                                       child.addEventListener("widthChanged", 
performLayout);
-                                       child.addEventListener("heightChanged", 
performLayout);
-                                       child.addEventListener("sizeChanged", 
performLayout);
+                                       child.addEventListener("widthChanged", 
childResizeHandler);
+                                       child.addEventListener("heightChanged", 
childResizeHandler);
+                                       child.addEventListener("sizeChanged", 
childResizeHandler);
                                }
                        }
 
-                               performLayout(event);
+                       performLayout(event);
+               }
+               
+               /**
+                * Invoked in response to the strand being resized.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion FlexJS 0.8
+                */
+               protected function resizeHandler(event:Event):void
+               {
+                       performLayout(event);
+               }
+               
+               /**
+                * Invoked in response to any child being resized.
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion FlexJS 0.8
+                */
+               protected function childResizeHandler(event:Event):void
+               {
+                       performLayout(event);
                }
                
                /**

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ListView.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ListView.as 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ListView.as
index 4087f1c..0f73421 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ListView.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/ListView.as
@@ -17,7 +17,7 @@
 //
 
////////////////////////////////////////////////////////////////////////////////
 package org.apache.flex.html.beads
-{      
+{
        import org.apache.flex.core.BeadViewBase;
        import org.apache.flex.core.ContainerBase;
        import org.apache.flex.core.IBead;
@@ -47,10 +47,10 @@ package org.apache.flex.html.beads
        import org.apache.flex.html.supportClasses.ScrollBar;
 
        /**
-        *  The List class creates the visual elements of the 
org.apache.flex.html.List 
-        *  component. A List consists of the area to display the data (in the 
dataGroup), any 
+        *  The List class creates the visual elements of the 
org.apache.flex.html.List
+        *  component. A List consists of the area to display the data (in the 
dataGroup), any
         *  scrollbars, and so forth.
-        *  
+        *
         *  @viewbead
         *  @langversion 3.0
         *  @playerversion Flash 10.2
@@ -64,21 +64,23 @@ package org.apache.flex.html.beads
                {
                        super();
                }
-               
+
                protected var listModel:ISelectionModel;
-               
+
                protected var lastSelectedIndex:int = -1;
-               
-               override protected function beadsAddedHandler(event:Event):void
+
+               /**
+                * @private
+                */
+               override protected function handleInitComplete(event:Event):void
                {
-                       
                        listModel = _strand.getBeadByType(ISelectionModel) as 
ISelectionModel;
                        listModel.addEventListener("selectedIndexChanged", 
selectionChangeHandler);
-                       //listModel.addEventListener("rollOverIndexChanged", 
rollOverIndexChangeHandler);
-                       
-                       super.beadsAddedHandler(event);
+                       listModel.addEventListener("rollOverIndexChanged", 
rollOverIndexChangeHandler);
+
+                       super.handleInitComplete(event);
                }
-               
+
                protected function selectionChangeHandler(event:Event):void
                {
                        if (lastSelectedIndex != -1)
@@ -93,8 +95,28 @@ package org.apache.flex.html.beads
                        }
                        lastSelectedIndex = listModel.selectedIndex;
                }
+
+               protected var lastRollOverIndex:int = -1;
+
+               /**
+                * @private
+                */
+               protected function rollOverIndexChangeHandler(event:Event):void
+               {
+                       if (lastRollOverIndex != -1)
+                       {
+                               var ir:ISelectableItemRenderer = 
dataGroup.getItemRendererForIndex(lastRollOverIndex) as ISelectableItemRenderer;
+                               ir.hovered = false;
+                       }
+                       if (IRollOverModel(listModel).rollOverIndex != -1)
+                       {
+                               ir = 
dataGroup.getItemRendererForIndex(IRollOverModel(listModel).rollOverIndex) as 
ISelectableItemRenderer;
+                               ir.hovered = true;
+                       }
+                       lastRollOverIndex = 
IRollOverModel(listModel).rollOverIndex;
+               }
        }
-       
+
        COMPILE::SWF
        public class ListView extends DataContainerView
        {
@@ -102,12 +124,12 @@ package org.apache.flex.html.beads
                {
                        super();
                }
-               
+
                protected var listModel:ISelectionModel;
-                       
+
                /**
                 *  @copy org.apache.flex.core.IBead#strand
-                *  
+                *
                 *  @langversion 3.0
                 *  @playerversion Flash 10.2
                 *  @playerversion AIR 2.6
@@ -118,18 +140,21 @@ package org.apache.flex.html.beads
                        _strand = value;
                        super.strand = value;
                }
-               
-               override protected function beadsAddedHandler(event:Event):void
+
+               /**
+                * @private
+                */
+               override protected function handleInitComplete(event:Event):void
                {
-                       super.beadsAddedHandler(event);
-                       
+                       super.handleInitComplete(event);
+
                        listModel = _strand.getBeadByType(ISelectionModel) as 
ISelectionModel;
                        listModel.addEventListener("selectedIndexChanged", 
selectionChangeHandler);
                        listModel.addEventListener("rollOverIndexChanged", 
rollOverIndexChangeHandler);
                }
-               
+
                protected var lastSelectedIndex:int = -1;
-               
+
                /**
                 * @private
                 */
@@ -147,9 +172,9 @@ package org.apache.flex.html.beads
                        }
             lastSelectedIndex = listModel.selectedIndex;
                }
-               
+
                protected var lastRollOverIndex:int = -1;
-               
+
                /**
                 * @private
                 */

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/PanelView.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/PanelView.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/PanelView.as
index 99de1c2..43af3f8 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/PanelView.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/PanelView.as
@@ -243,6 +243,8 @@ package org.apache.flex.html.beads
                        }
 
                        super.completeSetup();
+                       
+                       performLayout(null);
                }
 
                protected function handleSizeChange(event:Event):void

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/PanelWithControlBarView.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/PanelWithControlBarView.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/PanelWithControlBarView.as
index 4a0cd39..b05dcec 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/PanelWithControlBarView.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/PanelWithControlBarView.as
@@ -135,6 +135,7 @@ package org.apache.flex.html.beads
                                for each(var comp:IUIBase in controlBarItems) {
                                        controlBar.addElement(comp, false);
                                }
+                               controlBar.childrenAdded();
                        }
                        
                        super.completeSetup();

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/TextItemRendererFactoryForArrayData.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/TextItemRendererFactoryForArrayData.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/TextItemRendererFactoryForArrayData.as
index cb8402f..7752e90 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/TextItemRendererFactoryForArrayData.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/TextItemRendererFactoryForArrayData.as
@@ -76,7 +76,6 @@ package org.apache.flex.html.beads
                public function set strand(value:IStrand):void
                {
                        _strand = value;
-                       
IEventDispatcher(value).addEventListener("beadsAdded",finishSetup);
                        
IEventDispatcher(value).addEventListener("initComplete",finishSetup);
                }
                
@@ -85,6 +84,8 @@ package org.apache.flex.html.beads
                        selectionModel = _strand.getBeadByType(ISelectionModel) 
as ISelectionModel;
                        selectionModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
             
+                       // if the host component inherits from 
DataContainerBase, the itemRendererClassFactory will 
+                       // already have been loaded by 
DataContainerBase.addedToParent function.
             if (!itemRendererFactory)
             {
                                _itemRendererFactory = 
_strand.getBeadByType(IItemRendererClassFactory) as IItemRendererClassFactory;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4138d09/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/TextItemRendererFactoryForStringVectorData.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/TextItemRendererFactoryForStringVectorData.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/TextItemRendererFactoryForStringVectorData.as
index cf2a29c..d0d49a2 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/TextItemRendererFactoryForStringVectorData.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/TextItemRendererFactoryForStringVectorData.as
@@ -76,7 +76,7 @@ package org.apache.flex.html.beads
                public function set strand(value:IStrand):void
                {
                        _strand = value;
-                       
IEventDispatcher(value).addEventListener("beadsAdded",finishSetup);
+                       
IEventDispatcher(value).addEventListener("initComplete",finishSetup);
                }
                
                private function finishSetup(event:Event):void
@@ -84,6 +84,8 @@ package org.apache.flex.html.beads
                        selectionModel = _strand.getBeadByType(ISelectionModel) 
as ISelectionModel;
                        selectionModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
                        
+                       // if the host component inherits from 
DataContainerBase, the itemRendererClassFactory will 
+                       // already have been loaded by 
DataContainerBase.addedToParent function.
                        if (!itemRendererFactory)
                        {
                                _itemRendererFactory = 
_strand.getBeadByType(IItemRendererClassFactory) as IItemRendererClassFactory;

Reply via email to