royale-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aha...@apache.org
Subject [royale-asjs] 03/09: refactor to have UIComponent override addChild so addedToParent gets called
Date Sun, 05 Aug 2018 01:18:28 GMT
This is an automated email from the ASF dual-hosted git repository.

aharui pushed a commit to branch feature/MXRoyale
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git

commit ae10d6865ce585e6107e9b5096be7d93179bdea8
Author: Alex Harui <aharui@apache.org>
AuthorDate: Sat Aug 4 11:04:27 2018 -0700

    refactor to have UIComponent override addChild so addedToParent gets called
---
 .../MXRoyale/src/main/royale/mx/containers/Form.as |  57 +----------
 .../src/main/royale/mx/containers/GridRow.as       |   2 +-
 .../src/main/royale/mx/containers/ViewStack.as     |  26 ++---
 .../MXRoyale/src/main/royale/mx/core/Container.as  |   5 +-
 .../MXRoyale/src/main/royale/mx/core/IChildList.as |  36 ++-----
 .../src/main/royale/mx/core/UIComponent.as         |  36 +++++--
 .../src/main/royale/mx/managers/SystemManager.as   | 114 ++++++++++++++-------
 7 files changed, 134 insertions(+), 142 deletions(-)

diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/containers/Form.as b/frameworks/projects/MXRoyale/src/main/royale/mx/containers/Form.as
index 4275e44..23a9ab0 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/containers/Form.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/containers/Form.as
@@ -290,65 +290,16 @@ public class Form extends Container
      *  Discard the cached measuredLabelWidth if a child
      *  is added or removed.
      */
-    COMPILE::SWF
-    override public function addChild(child:DisplayObject):DisplayObject
-    {
-        invalidateLabelWidth();
-        
-        return super.addChild(child);
-    }
-
-    /**
-     *  @private
-     */
-    COMPILE::SWF
-    override public function addChildAt(child:DisplayObject,
-                                        index:int):DisplayObject
-    {
-        invalidateLabelWidth();
-        
-        return super.addChildAt(child, index);
-    }
-
-    /**
-     *  @private
-     */
-    COMPILE::SWF
-    override public function removeChild(child:DisplayObject):DisplayObject
-    {
-        invalidateLabelWidth();
-        
-        return super.removeChild(child);
-    }
-
-    /**
-     *  @private
-     */
-    COMPILE::SWF
-    override public function removeChildAt(index:int):DisplayObject
-    {
-        invalidateLabelWidth();
-        
-        return super.removeChildAt(index);
-    }
-
-    /**
-     *  @private
-     *  Discard the cached measuredLabelWidth if a child
-     *  is added or removed.
-     */
-    COMPILE::JS
     override public function addChild(child:IUIComponent):IUIComponent
     {
         invalidateLabelWidth();
         
         return super.addChild(child);
     }
-    
+
     /**
      *  @private
      */
-    COMPILE::JS
     override public function addChildAt(child:IUIComponent,
                                         index:int):IUIComponent
     {
@@ -356,22 +307,20 @@ public class Form extends Container
         
         return super.addChildAt(child, index);
     }
-    
+
     /**
      *  @private
      */
-    COMPILE::JS
     override public function removeChild(child:IUIComponent):IUIComponent
     {
         invalidateLabelWidth();
         
         return super.removeChild(child);
     }
-    
+
     /**
      *  @private
      */
-    COMPILE::JS
     override public function removeChildAt(index:int):IUIComponent
     {
         invalidateLabelWidth();
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/containers/GridRow.as b/frameworks/projects/MXRoyale/src/main/royale/mx/containers/GridRow.as
index 96e2354..909800f 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/containers/GridRow.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/containers/GridRow.as
@@ -319,7 +319,7 @@ public class GridRow extends HBox
      *  the column size and arrange children in proper order.
      *  Hence invalidate the size and layout of the Grid.
      */
-    override public function setChildIndex(child:ROYALE::DISPLAYOBJECT,
+    override public function setChildIndex(child:IUIComponent,
                                            newIndex:int):void
     {
         super.setChildIndex(child, newIndex);
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/containers/ViewStack.as b/frameworks/projects/MXRoyale/src/main/royale/mx/containers/ViewStack.as
index b0dd4ff..934184b 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/containers/ViewStack.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/containers/ViewStack.as
@@ -647,7 +647,7 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
     public function set selectedChild(
                             value:INavigatorContent):void
     {
-        var newIndex:int = getChildIndex(ROYALE::DISPLAYOBJECT(value));
+        var newIndex:int = getChildIndex(IUIComponent(value));
 
         if (newIndex >= 0 && newIndex < numChildren)
             selectedIndex = newIndex;
@@ -1333,7 +1333,7 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
     /**
      *  @private
      */
-    private function childAddHandler(child:ROYALE::DISPLAYOBJECT):void
+    private function childAddHandler(child:IUIComponent):void
     {
         var index:int = getChildIndex(child);
 
@@ -1379,7 +1379,7 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
      *  next (or previous) child gets automatically selected; when the last
      *  remaining child is removed, the selectedIndex is set to -1.
      */
-    private function childRemoveHandler(child:ROYALE::DISPLAYOBJECT, index:int):void
+    private function childRemoveHandler(child:IUIComponent, index:int):void
     {
         if (child is INavigatorContent)
         {
@@ -1430,10 +1430,10 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
     /**
      *  @private
      */
-    override public function addChildAt(item:ROYALE::DISPLAYOBJECT, index:int):ROYALE::DISPLAYOBJECT
+    override public function addChildAt(item:IUIComponent, index:int):IUIComponent
     {
         addingChildren = true;
-        var obj:ROYALE::DISPLAYOBJECT = super.addChildAt(item, index);
+        var obj:IUIComponent = super.addChildAt(item, index);
         internalDispatchEvent(CollectionEventKind.ADD, obj, index);
         childAddHandler(item);
         addingChildren = false;
@@ -1443,10 +1443,10 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
     /**
      *  @private
      */
-    override public function removeChild(item:ROYALE::DISPLAYOBJECT):ROYALE::DISPLAYOBJECT
+    override public function removeChild(item:IUIComponent):IUIComponent
     {
         var index:int = getChildIndex(item);
-        var obj:ROYALE::DISPLAYOBJECT = super.removeChild(item);
+        var obj:IUIComponent = super.removeChild(item);
         internalDispatchEvent(CollectionEventKind.REMOVE, obj, index);
         childRemoveHandler(item, index);
         return obj;
@@ -1479,7 +1479,7 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
         pe.source = event.target;
         pe.property = (event.type == "labelChanged") ? "label" : "icon";
 
-        internalDispatchEvent(CollectionEventKind.UPDATE, pe, getChildIndex(event.target
as ROYALE::DISPLAYOBJECT));
+        internalDispatchEvent(CollectionEventKind.UPDATE, pe, getChildIndex(event.target
as IUIComponent));
     }
 
     /**
@@ -1536,7 +1536,7 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
      */
     public function addItem(item:Object):void
     {
-        addChild(item as ROYALE::DISPLAYOBJECT);
+        addChild(item as IUIComponent);
     }
 
     /**
@@ -1545,7 +1545,7 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
      */
     public function addItemAt(item:Object, index:int):void
     {
-        addChildAt(item as ROYALE::DISPLAYOBJECT, index);
+        addChildAt(item as IUIComponent, index);
     }
 
     /**
@@ -1564,7 +1564,7 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
     public function getItemIndex(item:Object):int
     {
 		if (isValidChild(item as ROYALE::DISPLAYOBJECT))
-        	return getChildIndex(item as ROYALE::DISPLAYOBJECT);
+        	return getChildIndex(item as IUIComponent);
 		else
 			return -1;
     }
@@ -1605,7 +1605,7 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
 	 */
 	public function removeItem(item:Object):Boolean
 	{
-		var displayObject:ROYALE::DISPLAYOBJECT = removeChild(item as ROYALE::DISPLAYOBJECT);
+		var displayObject:IUIComponent = removeChild(item as IUIComponent);
 		return displayObject != null;
 	}
 
@@ -1626,7 +1626,7 @@ public class ViewStack extends Container // implements IHistoryManagerClient,
IS
     public function setItemAt(item:Object, index:int):Object
     {
         var result:Object = removeChildAt(index);
-        addChildAt(item as ROYALE::DISPLAYOBJECT,index);
+        addChildAt(item as IUIComponent,index);
         return result;
     }
 
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/core/Container.as b/frameworks/projects/MXRoyale/src/main/royale/mx/core/Container.as
index baf8adb..eae74d8 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/core/Container.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/core/Container.as
@@ -996,12 +996,13 @@ public class Container extends UIComponent
 		return contentView.getElementAt(index);
 	}
 	
+    [SWFOverride(returns="flash.display.DisplayObject"))]
     COMPILE::SWF
-    override public function getChildAt(index:int):DisplayObject
+    override public function getChildAt(index:int):IUIComponent
     {
         var layoutHost:ILayoutHost = view as ILayoutHost;
         var contentView:IParent = layoutHost.contentView as IParent;
-        return contentView.getElementAt(index) as DisplayObject;
+        return contentView.getElementAt(index) as IUIComponent;
     }
 
 	/*
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/core/IChildList.as b/frameworks/projects/MXRoyale/src/main/royale/mx/core/IChildList.as
index 1f12495..876d2d4 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/core/IChildList.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/core/IChildList.as
@@ -112,10 +112,8 @@ public interface IChildList
      *  @playerversion AIR 1.1
      *  @productversion Flex 3
      */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent", returns="flash.display.DisplayObject"))]
 	function addChild(child:IUIComponent):IUIComponent;
-    COMPILE::SWF
-    function addChild(child:DisplayObject):DisplayObject;
 	
     /**
      *  Adds a child DisplayObject to this child list at the index specified.
@@ -138,10 +136,8 @@ public interface IChildList
      *  @playerversion AIR 1.1
      *  @productversion Flex 3
      */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject,int", altparams="mx.core.UIComponent,int",
returns="flash.display.DisplayObject"))]
 	function addChildAt(child:IUIComponent, index:int):IUIComponent;
-    COMPILE::SWF
-    function addChildAt(child:DisplayObject, index:int):DisplayObject;
 	
     /**
      *  Removes the specified child DisplayObject from this child list.
@@ -162,10 +158,8 @@ public interface IChildList
      *  @playerversion AIR 1.1
      *  @productversion Flex 3
      */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent", returns="flash.display.DisplayObject"))]
 	function removeChild(child:IUIComponent):IUIComponent;
-    COMPILE::SWF
-    function removeChild(child:DisplayObject):DisplayObject;
 	
     /**
      *  Removes the child DisplayObject at the specified index
@@ -186,10 +180,8 @@ public interface IChildList
      *  @playerversion AIR 1.1
      *  @productversion Flex 3
      */	     
-    COMPILE::JS
+    [SWFOverride(returns="flash.display.DisplayObject"))]
 	function removeChildAt(index:int):IUIComponent;
-    COMPILE::SWF
-    function removeChildAt(index:int):DisplayObject;
 	
 	/**
 	 *  Gets the child DisplayObject at the specified index in this child list.
@@ -204,10 +196,8 @@ public interface IChildList
 	 *  @playerversion AIR 1.1
 	 *  @productversion Flex 3
 	 */
-    COMPILE::JS
+    [SWFOverride(returns="flash.display.DisplayObject"))]
   	function getChildAt(index:int):IUIComponent;
-    COMPILE::SWF
-    function getChildAt(index:int):DisplayObject;
 	
     /**
      *  Gets the child DisplayObject with the specified name
@@ -222,10 +212,8 @@ public interface IChildList
      *  @playerversion AIR 1.1
      *  @productversion Flex 3
      */
-    COMPILE::JS
+    [SWFOverride(returns="flash.display.DisplayObject"))]
   	function getChildByName(name:String):IUIComponent;
-    COMPILE::SWF
-    function getChildByName(name:String):DisplayObject;
   	
 	/**
 	 *  Gets the index of a specific child in this child list.
@@ -269,10 +257,8 @@ public interface IChildList
 	 *  @playerversion AIR 1.1
 	 *  @productversion Flex 3
 	 */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent"))]
   	function getChildIndex(child:IUIComponent):int;
-    COMPILE::SWF
-    function getChildIndex(child:DisplayObject):int;
   	
 	/**
 	 *  Changes the index of a particular child in this child list.
@@ -289,10 +275,8 @@ public interface IChildList
 	 *  @playerversion AIR 1.1
 	 *  @productversion Flex 3
 	 */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject,int", altparams="mx.core.UIComponent,int"))]
 	function setChildIndex(child:IUIComponent, newIndex:int):void;
-    COMPILE::SWF
-    function setChildIndex(child:DisplayObject, newIndex:int):void;
 	
 	/**
 	 *  Determines if a DisplayObject is in this child list,
@@ -309,10 +293,8 @@ public interface IChildList
 	 *  @playerversion AIR 1.1
 	 *  @productversion Flex 3
 	 */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent"))]
 	function contains(child:IUIComponent):Boolean;
-    COMPILE::SWF
-    function contains(child:DisplayObject):Boolean;
 }
 
 }
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/core/UIComponent.as b/frameworks/projects/MXRoyale/src/main/royale/mx/core/UIComponent.as
index 238e98d..e09e866 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/core/UIComponent.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/core/UIComponent.as
@@ -2967,7 +2967,9 @@ public class UIComponent extends UIBase
      *  @private
      *  @royaleignorecoercion mx.core.IUIComponent
      */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent", returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function addChild(child:IUIComponent):IUIComponent
     {
         return addElement(child) as IUIComponent;
@@ -2977,7 +2979,9 @@ public class UIComponent extends UIBase
      *  @private
      *  @royaleignorecoercion mx.core.IUIComponent
      */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject,int", altparams="mx.core.UIComponent,int",
returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function addChildAt(child:IUIComponent,
                                         index:int):IUIComponent
     {
@@ -2988,7 +2992,9 @@ public class UIComponent extends UIBase
      *  @private
      *  @royaleignorecoercion mx.core.IUIComponent
      */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent", returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function removeChild(child:IUIComponent):IUIComponent
     {
         return removeElement(child) as IUIComponent;
@@ -3003,7 +3009,9 @@ public class UIComponent extends UIBase
      *  @private
      *  @royaleignorecoercion mx.core.IUIComponent
      */
-    COMPILE::JS
+    [SWFOverride(returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function removeChildAt(index:int):IUIComponent
     {
         if (GOOG::DEBUG)
@@ -3016,7 +3024,9 @@ public class UIComponent extends UIBase
      *  @private
      *  @royaleignorecoercion mx.core.IUIComponent
      */
-    COMPILE::JS
+    [SWFOverride(returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function getChildAt(index:int):IUIComponent
     {
         return getElementAt(index) as IUIComponent;
@@ -3035,7 +3045,9 @@ public class UIComponent extends UIBase
     /**
      *  @private
      */
-    COMPILE::JS 
+    [SWFOverride(params="flash.display.DisplayObject,int", altparams="mx.core.UIComponent,int"))]
+    COMPILE::SWF 
+    { override }
     public function setChildIndex(child:IUIComponent, index:int):void
     {
         if (GOOG::DEBUG)
@@ -3045,7 +3057,9 @@ public class UIComponent extends UIBase
     /**
      *  @private
      */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent"))]
+    COMPILE::SWF 
+    { override }
     public function getChildIndex(child:IUIComponent):int
     {
         return getElementIndex(child);
@@ -3054,7 +3068,9 @@ public class UIComponent extends UIBase
     /**
      *  @private
      */
-    COMPILE::JS
+    [SWFOverride(returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function getChildByName(name:String):IUIComponent
     {
         if (GOOG::DEBUG)
@@ -3065,7 +3081,9 @@ public class UIComponent extends UIBase
     /**
      *  @private
      */
-    COMPILE::JS 
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent"))]
+    COMPILE::SWF 
+    { override }
     public function contains(child:IUIComponent):Boolean
     {
         if (GOOG::DEBUG)
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/managers/SystemManager.as b/frameworks/projects/MXRoyale/src/main/royale/mx/managers/SystemManager.as
index 77c4ee5..7deb47c 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/managers/SystemManager.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/managers/SystemManager.as
@@ -94,6 +94,7 @@ use namespace mx_internal;
 import mx.core.IChildList;
 import mx.core.IFlexDisplayObject;
 import mx.core.IUIComponent;
+
 import org.apache.royale.core.IUIBase;
 import org.apache.royale.events.IEventDispatcher;
 
@@ -1535,8 +1536,10 @@ public class SystemManager extends SystemManagerBase implements ISystemManager,
     /**
      *  @private
      */
-    COMPILE::SWF
-    override public function addChild(child:DisplayObject):DisplayObject
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent", returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
+    public function addChild(child:IUIComponent):IUIComponent
     {
         /*
         var addIndex:int = numChildren;
@@ -1545,10 +1548,17 @@ public class SystemManager extends SystemManagerBase implements ISystemManager,
 
         return addChildAt(child, addIndex);
         */
-        var ret:DisplayObject = super.addChild(child);
-        if (ret is IUIBase)
-            (ret as IUIBase).addedToParent();
-        return ret;
+        COMPILE::JS
+        {
+            return addElement(child) as IUIComponent;
+        }
+        COMPILE::SWF
+        {
+            var ret:DisplayObject = super.addChild(child as DisplayObject);
+            if (ret is IUIBase)
+                (ret as IUIBase).addedToParent();
+            return ret as IUIComponent;
+        }
     }
 
     /**
@@ -1709,31 +1719,43 @@ public class SystemManager extends SystemManagerBase implements ISystemManager,
      *  @private
      *  @royaleignorecoercion mx.core.IUIComponent
      */
-    COMPILE::JS
-    public function addChild(child:IUIComponent):IUIComponent
-    {
-        return addElement(child) as IUIComponent;
-    }
-    
-    /**
-     *  @private
-     *  @royaleignorecoercion mx.core.IUIComponent
-     */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject,int", altparams="mx.core.UIComponent,int",
returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function addChildAt(child:IUIComponent,
                                index:int):IUIComponent
     {
-        return addElementAt(child, index) as IUIComponent;
+        COMPILE::JS
+        {
+            return addElementAt(child, index) as IUIComponent;
+        }
+        COMPILE::SWF
+        {
+            var ret:DisplayObject = super.addChildAt(child as DisplayObject);
+            if (ret is IUIBase)
+                (ret as IUIBase).addedToParent();
+            return ret as IUIComponent;
+        }
     }
     
     /**
      *  @private
      *  @royaleignorecoercion mx.core.IUIComponent
      */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent", returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function removeChild(child:IUIComponent):IUIComponent
     {
-        return removeElement(child) as IUIComponent;
+        COMPILE::JS
+        {
+            return removeElement(child) as IUIComponent;
+        }
+        COMPILE::SWF
+        {
+            var ret:DisplayObject = super.removeChild(child as DisplayObject);
+            return ret as IUIComponent;
+        }
     }
     
     
@@ -1741,7 +1763,9 @@ public class SystemManager extends SystemManagerBase implements ISystemManager,
      *  @private
      *  @royaleignorecoercion mx.core.IUIComponent
      */
-    COMPILE::JS
+    [SWFOverride(returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function removeChildAt(index:int):IUIComponent
     {
         if (GOOG::DEBUG)
@@ -1754,10 +1778,20 @@ public class SystemManager extends SystemManagerBase implements ISystemManager,
      *  @private
      *  @royaleignorecoercion mx.core.IUIComponent
      */
-    COMPILE::JS
+    [SWFOverride(returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function getChildAt(index:int):IUIComponent
     {
-        return getElementAt(index) as IUIComponent;
+        COMPILE::JS
+        {
+            return getElementAt(index) as IUIComponent;
+        }
+        COMPILE::SWF
+        {
+            var ret:DisplayObject = super.getChildAt(index);
+            return ret as IUIComponent;
+        }
     }
             
     //--------------------------------------------------------------------------
@@ -2868,14 +2902,7 @@ public class SystemManager extends SystemManagerBase implements ISystemManager,
         component = IUIComponent(create());
         // until preloader?
         component.addEventListener("applicationComplete", applicationCompleteHandler);
-        COMPILE::SWF
-        {
-            addChild(component as DisplayObject);
-        }
-        COMPILE::JS
-        {
-            addChild(component as IUIComponent);
-        }
+        addChild(component as IUIComponent);
     }
     
     private function applicationCompleteHandler(event:Event):void
@@ -3560,7 +3587,9 @@ public class SystemManager extends SystemManagerBase implements ISystemManager,
     /**
      *  @private
      */
-    COMPILE::JS 
+    [SWFOverride(params="flash.display.DisplayObject,int", altparams="mx.core.UIComponent,int"))]
+    COMPILE::SWF 
+    { override }
     public function setChildIndex(child:IUIComponent, index:int):void
     {
         if (GOOG::DEBUG)
@@ -3570,16 +3599,27 @@ public class SystemManager extends SystemManagerBase implements ISystemManager,
     /**
      *  @private
      */
-    COMPILE::JS
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent"))]
+    COMPILE::SWF 
+    { override }
     public function getChildIndex(child:IUIComponent):int
     {
-        return getElementIndex(child);
+        COMPILE::JS
+        {
+            return getElementIndex(child);
+        }
+        COMPILE::SWF
+        {
+            return super.getChildIndex(child as DisplayObject);
+        }
     }
     
     /**
      *  @private
      */
-    COMPILE::JS
+    [SWFOverride(returns="flash.display.DisplayObject"))]
+    COMPILE::SWF 
+    { override }
     public function getChildByName(name:String):IUIComponent
     {
         if (GOOG::DEBUG)
@@ -3590,7 +3630,9 @@ public class SystemManager extends SystemManagerBase implements ISystemManager,
     /**
      *  @private
      */
-    COMPILE::JS 
+    [SWFOverride(params="flash.display.DisplayObject", altparams="mx.core.UIComponent"))]
+    COMPILE::SWF 
+    { override }
     public function contains(child:IUIComponent):Boolean
     {
         if (GOOG::DEBUG)


Mime
View raw message