Repository: flex-asjs
Updated Branches:
  refs/heads/refactor-strand [created] 41e30e2cf


Core changes to IStrand


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

Branch: refs/heads/refactor-strand
Commit: 80580936bf28455f7c3573ca96ee14dff396936c
Parents: dd4672b
Author: Harbs <ha...@in-tools.com>
Authored: Sat Jul 15 23:57:20 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Sat Jul 15 23:57:20 2017 +0300

----------------------------------------------------------------------
 .../flex/org/apache/flex/core/ElementWrapper.as | 61 ++++++++++++++++++++
 .../main/flex/org/apache/flex/core/IStrand.as   | 24 ++++++++
 .../main/flex/org/apache/flex/core/Strand.as    | 29 ++++++++++
 .../apache/flex/utils/MXMLDataInterpreter.as    |  4 +-
 4 files changed, 116 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/80580936/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ElementWrapper.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ElementWrapper.as 
b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ElementWrapper.as
index b744edb..53785ac 100644
--- 
a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ElementWrapper.as
+++ 
b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ElementWrapper.as
@@ -60,11 +60,29 @@ package org.apache.flex.core
             _element = value;
         }
         
+        private var beads:Array;
+
         protected var _beads:Vector.<IBead>;
         
         //--------------------------------------
         //   Function
         //--------------------------------------
+
+        /**
+         *  @copy org.apache.flex.core.IStrand#registerBead()
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.9
+         */
+        public function registerBead(bead:IBead):void
+        {
+            if(beads)
+                beads.push(bead);
+            else
+                beads = [bead];
+        }
         
         /**
          * @param bead The new bead.
@@ -79,6 +97,19 @@ package org.apache.flex.core
             _beads.push(bead);
             bead.strand = this;
         }
+
+        /**
+         *  @copy org.apache.flex.core.IStrand#addBeads()
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.9
+         */
+        public function addBeads():void
+        {
+            addBeadsToStrand(this,beads);
+        }
         
         /**
          * @param classOrInterface The requested bead type.
@@ -228,6 +259,7 @@ package org.apache.flex.core
             _element = value;
         }
         
+        private var beads:Array;
 
                protected var _beads:Vector.<IBead>;
         
@@ -236,6 +268,22 @@ package org.apache.flex.core
                //--------------------------------------
 
         /**
+         *  @copy org.apache.flex.core.IStrand#registerBead()
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.9
+         */
+        public function registerBead(bead:IBead):void
+        {
+            if(beads)
+                beads.push(bead);
+            else
+                beads = [bead];
+        }
+
+        /**
          * @param bead The new bead.
          */
                public function addBead(bead:IBead):void
@@ -250,6 +298,19 @@ package org.apache.flex.core
                }
 
         /**
+         *  @copy org.apache.flex.core.IStrand#addBeads()
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.9
+         */
+        public function addBeads():void
+        {
+            addBeadsToStrand(this,beads);
+        }
+
+        /**
          * @param classOrInterface The requested bead type.
          * @return The bead.
          */

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/80580936/frameworks/projects/Core/src/main/flex/org/apache/flex/core/IStrand.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/IStrand.as 
b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/IStrand.as
index b6e8b20..a60e340 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/IStrand.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/IStrand.as
@@ -37,6 +37,18 @@ package org.apache.flex.core
        public interface IStrand
        {
         /**
+         *  Registers a bead to be add to the strand.
+         *
+         *  @param bead The bead to be added.
+         * 
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.9
+         */
+               function registerBead(bead:IBead):void;
+
+        /**
          *  Add a bead to the strand.
          *
          *  @param bead The bead to be added.
@@ -47,6 +59,18 @@ package org.apache.flex.core
          *  @productversion FlexJS 0.0
          */
                function addBead(bead:IBead):void;
+
+        /**
+         *  Add the beads registered to the strand.
+         *
+         *  @param bead The bead to be added.
+         * 
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.9
+         */
+               function addBeads():void;
         
         /**
          *  Find a bead on the strand.

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/80580936/frameworks/projects/Core/src/main/flex/org/apache/flex/core/Strand.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/Strand.as 
b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/Strand.as
index b0318d6..f4953fa 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/Strand.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/Strand.as
@@ -120,6 +120,22 @@ package org.apache.flex.core
                private var _beads:Vector.<IBead>;
 
         /**
+         *  @copy org.apache.flex.core.IStrand#registerBead()
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.9
+         */
+        public function registerBead(bead:IBead):void
+        {
+            if(beads)
+                beads.push(bead);
+            else
+                beads = [bead];
+        }
+
+        /**
          *  @copy org.apache.flex.core.IStrand#addBead()
          *  
          *  @langversion 3.0
@@ -136,6 +152,19 @@ package org.apache.flex.core
                                _model = bead as IBeadModel;
                        bead.strand = this;
                }
+
+        /**
+         *  @copy org.apache.flex.core.IStrand#addBeads()
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.9
+         */
+        public function addBeads():void
+        {
+            addBeadsToStrand(this,beads);
+        }
                
         /**
          *  @copy org.apache.flex.core.IStrand#getBeadByType()

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/80580936/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 6f24181..704503d 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
@@ -191,8 +191,8 @@ public class MXMLDataInterpreter
             else if (simple == false)
                 value = generateMXMLObject(document, value as Array);
             comp[name] = value;
-            if (value is IBead && comp is IStrand)
-                IStrand(comp).addBead(value as IBead);
+            // if (value is IBead && comp is IStrand)
+            //     IStrand(comp).addBead(value as IBead);
         }
         var beadOffset:int = i + (m - 1) * 3;
         //if (beadOffset >= -1)

Reply via email to