You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2014/10/06 23:29:20 UTC

[01/17] git commit: [flex-asjs] [refs/heads/develop] - if no ILayoutParent, assume strand is ContentView

Repository: flex-asjs
Updated Branches:
  refs/heads/develop 51d28e2e9 -> c889dfcb9


if no ILayoutParent, assume strand is ContentView


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

Branch: refs/heads/develop
Commit: 4d0fbb2b4b964b322d7ef642ea87b78d2bf351af
Parents: 51d28e2
Author: Alex Harui <ah...@apache.org>
Authored: Fri Oct 3 12:29:01 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Oct 3 12:29:01 2014 -0700

----------------------------------------------------------------------
 .../org/apache/flex/html/beads/layouts/NonVirtualVerticalLayout.as | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4d0fbb2b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/layouts/NonVirtualVerticalLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/layouts/NonVirtualVerticalLayout.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/layouts/NonVirtualVerticalLayout.as
index 1d0bb2a..d475d42 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/layouts/NonVirtualVerticalLayout.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/layouts/NonVirtualVerticalLayout.as
@@ -75,7 +75,7 @@ package org.apache.flex.html.beads.layouts
 		private function changeHandler(event:Event):void
 		{
 			var layoutParent:ILayoutParent = _strand.getBeadByType(ILayoutParent) as ILayoutParent;
-			var contentView:IParentIUIBase = layoutParent.contentView;
+			var contentView:IParentIUIBase = layoutParent ? layoutParent.contentView : IParentIUIBase(_strand);
 			
 			var n:int = contentView.numElements;
 			var hasHorizontalFlex:Boolean;


[11/17] git commit: [flex-asjs] [refs/heads/develop] - get model directly

Posted by ah...@apache.org.
get model directly


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

Branch: refs/heads/develop
Commit: d3d8fa6169e552174e066454798ecee848b8894c
Parents: 309da69
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:13:58 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:13:58 2014 -0700

----------------------------------------------------------------------
 .../src/org/apache/flex/html/beads/ImageAndTextButtonView.as      | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/d3d8fa61/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageAndTextButtonView.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageAndTextButtonView.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageAndTextButtonView.as
index 0aded66..492f6f8 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageAndTextButtonView.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageAndTextButtonView.as
@@ -32,6 +32,7 @@ package org.apache.flex.html.beads
 	import org.apache.flex.core.IBead;
 	import org.apache.flex.core.IBeadView;
 	import org.apache.flex.core.IStrand;
+    import org.apache.flex.core.IStrandWithModel;
     import org.apache.flex.core.ITextModel;
 	import org.apache.flex.core.ValuesManager;
 	
@@ -86,7 +87,7 @@ package org.apache.flex.html.beads
 		override public function set strand(value:IStrand):void
 		{
 			super.strand = value;
-            textModel = value.getBeadByType(ITextModel) as ITextModel;
+            textModel = IStrandWithModel(value).model as ITextModel;
             textModel.addEventListener("textChange", textChangeHandler);
             textModel.addEventListener("htmlChange", htmlChangeHandler);
 			


[06/17] git commit: [flex-asjs] [refs/heads/develop] - handle initial state

Posted by ah...@apache.org.
handle initial state


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

Branch: refs/heads/develop
Commit: 50bee95c20801090502008a1c51bd97866ba9efa
Parents: f7c45b8
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:08:58 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:08:58 2014 -0700

----------------------------------------------------------------------
 .../src/org/apache/flex/core/IStatesObject.as   | 56 ++++++++++++++++++++
 .../org/apache/flex/core/SimpleStatesImpl.as    | 10 +++-
 2 files changed, 65 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/50bee95c/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IStatesObject.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IStatesObject.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IStatesObject.as
new file mode 100644
index 0000000..bc2f716
--- /dev/null
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IStatesObject.as
@@ -0,0 +1,56 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.flex.core
+{
+	import org.apache.flex.events.IEventDispatcher;
+
+    /**
+     *  The IStatesObject interface is the interface for an
+     *  object that supports states.
+     * 
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+	public interface IStatesObject extends IEventDispatcher
+	{
+        /**
+         *  The array of view states. These should
+         *  be instances of mx.states.State.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        function get states():Array;
+        
+        /**
+         *  The current state name
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        function get currentState():String;
+
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/50bee95c/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
index 7b291b2..d932703 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
@@ -25,6 +25,7 @@ package org.apache.flex.core
     import mx.states.State;
     
     import org.apache.flex.core.IParent;
+    import org.apache.flex.core.IStatesObject;
     import org.apache.flex.events.Event;
     import org.apache.flex.events.EventDispatcher;
     import org.apache.flex.events.IEventDispatcher;
@@ -70,11 +71,18 @@ package org.apache.flex.core
         {
             _strand = value;
             IEventDispatcher(_strand).addEventListener("currentStateChange", stateChangeHandler);
+            IEventDispatcher(_strand).addEventListener("initComplete", initialStateHandler);
+        }
+        
+        private function initialStateHandler(event:org.apache.flex.events.Event):void
+        {
+            stateChangeHandler(new ValueChangeEvent("currentStateChange", false, false, null, 
+                IStatesObject(_strand).currentState));
         }		
      
         private function stateChangeHandler(event:ValueChangeEvent):void
         {
-            var doc:Object = event.target;
+            var doc:IStatesObject = _strand as IStatesObject;
             var arr:Array = doc.states;
             for each (var s:State in arr)
             {


[16/17] git commit: [flex-asjs] [refs/heads/develop] - handle state vars on the top tag

Posted by ah...@apache.org.
handle state vars on the top tag


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

Branch: refs/heads/develop
Commit: 5d466ac3f9d5ffba72d8884cce76fc9caa8b247a
Parents: 376be30
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 14:05:06 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 14:05:06 2014 -0700

----------------------------------------------------------------------
 .../src/org/apache/flex/core/SimpleStatesImpl.as   | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5d466ac3/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
index d932703..f467621 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
@@ -124,7 +124,10 @@ package org.apache.flex.core
                 else if (o is SetProperty)
                 {
                     var sp:SetProperty = SetProperty(o);
-                    sp.document[sp.target][sp.name] = sp.previousValue;
+                    if (sp.target != null)
+                        sp.document[sp.target][sp.name] = sp.previousValue;
+                    else
+                        sp.document[sp.name] = sp.previousValue;
                 }
             }
         }
@@ -170,8 +173,16 @@ package org.apache.flex.core
                 else if (o is SetProperty)
                 {
                     var sp:SetProperty = SetProperty(o);
-                    sp.previousValue = sp.document[sp.target][sp.name];
-                    sp.document[sp.target][sp.name] = sp.value;
+                    if (sp.target != null)
+                    {
+                        sp.previousValue = sp.document[sp.target][sp.name];
+                        sp.document[sp.target][sp.name] = sp.value;
+                    }
+                    else
+                    {
+                        sp.previousValue = sp.document[sp.name];
+                        sp.document[sp.name] = sp.value;                        
+                    }
                 }
             }            
         }


[05/17] git commit: [flex-asjs] [refs/heads/develop] - these need to be event dispatchers

Posted by ah...@apache.org.
these need to be event dispatchers


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

Branch: refs/heads/develop
Commit: f7c45b8e28324434502f185861c21f94c58496fb
Parents: 0473a17
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:07:51 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:07:51 2014 -0700

----------------------------------------------------------------------
 .../apache/flex/html/beads/controllers/DragMouseController.as   | 5 +++--
 .../apache/flex/html/beads/controllers/DropMouseController.as   | 5 +++--
 2 files changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f7c45b8e/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/DragMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/DragMouseController.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/DragMouseController.as
index 2a83f57..3fcdfc5 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/DragMouseController.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/DragMouseController.as
@@ -23,9 +23,10 @@ package org.apache.flex.html.beads.controllers
 	
 	import org.apache.flex.core.IBead;
 	import org.apache.flex.core.IDragInitiator;
-    import org.apache.flex.core.IStrand;
+	import org.apache.flex.core.IStrand;
 	import org.apache.flex.core.UIBase;
 	import org.apache.flex.events.DragEvent;
+    import org.apache.flex.events.EventDispatcher;
 	import org.apache.flex.events.IEventDispatcher;
 	
     /**
@@ -69,7 +70,7 @@ package org.apache.flex.html.beads.controllers
 	 *  @playerversion AIR 2.6
 	 *  @productversion FlexJS 0.0
 	 */
-	public class DragMouseController implements IBead
+	public class DragMouseController extends EventDispatcher implements IBead
 	{
         /**
          *  The data being dragged. Or an instance

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f7c45b8e/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/DropMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/DropMouseController.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/DropMouseController.as
index 14f1d4b..6ddc3f0 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/DropMouseController.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/DropMouseController.as
@@ -22,10 +22,11 @@ package org.apache.flex.html.beads.controllers
 	import flash.events.MouseEvent;
 	
 	import org.apache.flex.core.IBead;
-    import org.apache.flex.core.IDragInitiator;
+	import org.apache.flex.core.IDragInitiator;
 	import org.apache.flex.core.IStrand;
 	import org.apache.flex.core.UIBase;
 	import org.apache.flex.events.DragEvent;
+    import org.apache.flex.events.EventDispatcher;
 	import org.apache.flex.events.IEventDispatcher;
 
     /**
@@ -69,7 +70,7 @@ package org.apache.flex.html.beads.controllers
 	 *  @playerversion AIR 2.6
 	 *  @productversion FlexJS 0.0
 	 */
-	public class DropMouseController implements IBead
+	public class DropMouseController extends EventDispatcher implements IBead
 	{
 		/**
 		 *  constructor.


[03/17] git commit: [flex-asjs] [refs/heads/develop] - handle child descriptors differently. Push them into child container so child can generate when needed

Posted by ah...@apache.org.
handle child descriptors differently.  Push them into child container so child can generate when needed


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

Branch: refs/heads/develop
Commit: bdcbc411a4612e275a6a8ea96263f8487c4944b2
Parents: 9cfc607
Author: Alex Harui <ah...@apache.org>
Authored: Fri Oct 3 12:30:19 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Oct 3 12:30:19 2014 -0700

----------------------------------------------------------------------
 .../src/org/apache/flex/core/ContainerBase.as   |  20 +-
 .../src/org/apache/flex/core/IMXMLDocument.as   |  13 +
 .../flex/core/ItemRendererClassFactory.as       |   2 +-
 .../org/apache/flex/core/SimpleStatesImpl.as    |   2 +-
 .../apache/flex/utils/MXMLDataInterpreter.as    | 361 ++++++++++---------
 5 files changed, 218 insertions(+), 180 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/bdcbc411/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
index 3e14705..7e8af7c 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
@@ -103,12 +103,15 @@ package org.apache.flex.core
 			
 			super.addedToParent();
 			
-			MXMLDataInterpreter.generateMXMLInstances(this, this, MXMLDescriptor);
+			MXMLDataInterpreter.generateMXMLInstances(_mxmlDocument, this, MXMLDescriptor);
 			
 			dispatchEvent(new Event("initComplete"))
 			dispatchEvent(new Event("childrenAdded"));
 		}
-		
+
+        private var _mxmlDescriptor:Array;
+        private var _mxmlDocument:Object = this;
+        
         /**
          *  @copy org.apache.flex.core.Application#MXMLDescriptor
          *  
@@ -119,9 +122,18 @@ package org.apache.flex.core
          */
 		public function get MXMLDescriptor():Array
 		{
-			return null;
+			return _mxmlDescriptor;
 		}
-		
+
+        /**
+         *  @private
+         */
+        public function setMXMLDescriptor(document:Object, value:Array):void
+        {
+            _mxmlDocument = document;
+            _mxmlDescriptor = value;
+        }
+
         /**
          *  @copy org.apache.flex.core.Application#generateMXMLAttributes()
          *  

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/bdcbc411/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IMXMLDocument.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IMXMLDocument.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IMXMLDocument.as
index d9e0edd..ddd51ef 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IMXMLDocument.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IMXMLDocument.as
@@ -40,6 +40,19 @@ package org.apache.flex.core
         function get MXMLDescriptor():Array;
         
         /**
+         *  Set the descriptor for this MXML component
+         *  
+         *  @param document The MXML document.
+         *  @param value The descriptor.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        function setMXMLDescriptor(document:Object, value:Array):void;
+        
+        /**
          *  @copy org.apache.flex.core.Application#generateMXMLAttributes()
          *  
          *  @langversion 3.0

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/bdcbc411/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ItemRendererClassFactory.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ItemRendererClassFactory.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ItemRendererClassFactory.as
index 97ee333..96bd5a9 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ItemRendererClassFactory.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ItemRendererClassFactory.as
@@ -149,7 +149,7 @@ package org.apache.flex.core
          */
         protected function createFromMXMLContent(parent:IItemRendererParent):IItemRenderer
         {
-            return MXMLDataInterpreter.generateMXMLArray(document, parent as IParent, MXMLDescriptor, true)[0];
+            return MXMLDataInterpreter.generateMXMLArray(document, parent as IParent, MXMLDescriptor)[0];
         }
         
         /**

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/bdcbc411/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
index e878440..7b291b2 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleStatesImpl.as
@@ -132,7 +132,7 @@ package org.apache.flex.core
                     if (ai.items == null)
                     {
                         ai.items = MXMLDataInterpreter.generateMXMLArray(ai.document,
-                                                    null, ai.itemsDescriptor, true);
+                                                    null, ai.itemsDescriptor);
                     }
                     for each (var item:DisplayObject in ai.items)
                     {

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/bdcbc411/frameworks/as/projects/FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as
index 94b59d7..96c2e1b 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as
@@ -22,6 +22,7 @@ package org.apache.flex.utils
 import org.apache.flex.core.IBead;
 import org.apache.flex.core.IContainer;
 import org.apache.flex.core.IDocument;
+import org.apache.flex.core.IMXMLDocument;
 import org.apache.flex.core.IParent;
 import org.apache.flex.core.IStrand;
 import org.apache.flex.events.Event;
@@ -72,38 +73,43 @@ public class MXMLDataInterpreter
         var cls:Class = data[i++];
         var comp:Object = new cls();
         
-        var m:int;
-        var j:int;
-        var name:String;
-        var simple:*;
-        var value:Object;
-        var id:String;
-        
-        m = data[i++]; // num props
-        for (j = 0; j < m; j++)
+        if (comp is IStrand)
+            initializeStrandBasedObject(document, null, comp, data, i);
+        else
         {
-            name = data[i++];
-            simple = data[i++];
-            value = data[i++];
-            if (simple == null)
-                value = generateMXMLArray(document, null, value as Array);
-            else if (simple == false)
-                value = generateMXMLObject(document, value as Array);
-            if (name == "id")
-            {
-                document[value] = comp;
-                id = value as String;
-            }
-            else if (name == "_id")
+            var m:int;
+            var j:int;
+            var name:String;
+            var simple:*;
+            var value:Object;
+            var id:String;
+            
+            m = data[i++]; // num props
+            for (j = 0; j < m; j++)
             {
-                document[value] = comp;
-                id = value as String;
-                continue; // skip assignment to comp
+                name = data[i++];
+                simple = data[i++];
+                value = data[i++];
+                if (simple == null)
+                    value = generateMXMLArray(document, null, value as Array);
+                else if (simple == false)
+                    value = generateMXMLObject(document, value as Array);
+                if (name == "id")
+                {
+                    document[value] = comp;
+                    id = value as String;
+                }
+                else if (name == "_id")
+                {
+                    document[value] = comp;
+                    id = value as String;
+                    continue; // skip assignment to comp
+                }
+                comp[name] = value;
             }
-            comp[name] = value;
+            if (comp is IDocument)
+                comp.setDocument(document, id);
         }
-        if (comp is IDocument)
-            comp.setDocument(document, id);
         return comp;
     }
     
@@ -114,7 +120,6 @@ public class MXMLDataInterpreter
      *  it will be assigned in this document in this method.
      *  @param parent The parent for any display objects encoded in the array.
      *  @param data The encoded data.
-     *  @param recursive Whether to interpret a child's array of encoded data.
      *  @return The Array.
      *  
      *  @langversion 3.0
@@ -122,7 +127,7 @@ public class MXMLDataInterpreter
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */
-    public static function generateMXMLArray(document:Object, parent:IParent, data:Array, recursive:Boolean = true):Array
+    public static function generateMXMLArray(document:Object, parent:IParent, data:Array):Array
     {
         var comps:Array = [];
         
@@ -132,154 +137,163 @@ public class MXMLDataInterpreter
         {
             var cls:Class = data[i++];
             var comp:Object = new cls();
-                        
-            var m:int;
-            var j:int;
-            var name:String;
-            var simple:*;
-            var value:Object;
-            var id:String = null;
-			var dispatchBeadsAdded:Boolean = false;
+
+            i = initializeStrandBasedObject(document, parent, comp, data, i);
             
-            m = data[i++]; // num props
-            if (m > 0 && data[0] == "model")
-            {
-                m--;
-                name = data[i++];
-                simple = data[i++];
-                value = data[i++];
-                if (simple == null)
-                    value = generateMXMLArray(document, parent, value as Array, recursive);
-                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);
-            }
-            var beadOffset:int = i + (m - 1) * 3;
-            //if (beadOffset >= -1)
-            //    trace(beadOffset, data[beadOffset]);
-            if (m > 0 && data[beadOffset] == "beads")
-            {
-                m--;
-            }
-            else
-                beadOffset = -1;
-            for (j = 0; j < m; j++)
-            {
-                name = data[i++];
-                simple = data[i++];
-                value = data[i++];
-                if (simple == null)
-                    value = generateMXMLArray(document, null, value as Array, recursive);
-                else if (simple == false)
-                    value = generateMXMLObject(document, value as Array);
-                if (name == "id")
-                    id = value as String;
-                if (name == "document" && !comp.document)
-                    comp.document = document;
-                else if (name == "_id")
-                    id = value as String; // and don't assign to comp
-                else if (name == "id")
-                {
-                    // not all objects have to have their own id property
-                    try {
-                        comp["id"] = value;
-                    } catch (e:Error)
-                    {
-                        
-                    }
-                }
-                else
-                    comp[name] = value;
-            }
-            if (beadOffset > -1)
+            comps.push(comp);
+        }
+        return comps;
+    }
+    
+    private static function initializeStrandBasedObject(document:Object, parent:IParent, comp:Object, data:Array, i:int):int
+    {
+        var m:int;
+        var j:int;
+        var name:String;
+        var simple:*;
+        var value:Object;
+        var id:String = null;
+        var dispatchBeadsAdded:Boolean = false;
+        
+        m = data[i++]; // num props
+        if (m > 0 && data[0] == "model")
+        {
+            m--;
+            name = data[i++];
+            simple = data[i++];
+            value = data[i++];
+            if (simple == null)
+                value = generateMXMLArray(document, parent, value as Array);
+            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);
+        }
+        var beadOffset:int = i + (m - 1) * 3;
+        //if (beadOffset >= -1)
+        //    trace(beadOffset, data[beadOffset]);
+        if (m > 0 && data[beadOffset] == "beads")
+        {
+            m--;
+        }
+        else
+            beadOffset = -1;
+        for (j = 0; j < m; j++)
+        {
+            name = data[i++];
+            simple = data[i++];
+            value = data[i++];
+            if (simple == null)
+                value = generateMXMLArray(document, null, value as Array);
+            else if (simple == false)
+                value = generateMXMLObject(document, value as Array);
+            if (name == "id")
+                id = value as String;
+            if (name == "document" && !comp.document)
+                comp.document = document;
+            else if (name == "_id")
+                id = value as String; // and don't assign to comp
+            else if (name == "id")
             {
-                name = data[i++];
-                simple = data[i++];
-                value = data[i++];
-                if (simple == null)
-                    value = generateMXMLArray(document, null, value as Array, recursive);
-                else if (simple == false)
-                    value = generateMXMLObject(document, value as Array);
-                else
-                    comp[name] = value;
-                var beads:Array = value as Array;
-                var l:int = beads.length;
-                for (var k:int = 0; k < l; k++)
+                // not all objects have to have their own id property
+                try {
+                    comp["id"] = value;
+                } catch (e:Error)
                 {
-                    var bead:IBead = beads[k] as IBead;
-                    IStrand(comp).addBead(bead);
-					dispatchBeadsAdded = true;
+                    
                 }
             }
-            m = data[i++]; // num styles
-            for (j = 0; j < m; j++)
-            {
-                name = data[i++];
-                simple = data[i++];
-                value = data[i++];
-                if (simple == null)
-                    value = generateMXMLArray(document, null, value as Array, recursive);
-                else if (simple == false)
-                    value = generateMXMLObject(document, value as Array);
-                comp.setStyle(name, value);
-            }            
-            
-            m = data[i++]; // num effects
-            for (j = 0; j < m; j++)
-            {
-                name = data[i++];
-                simple = data[i++];
-                value = data[i++];
-                if (simple == null)
-                    value = generateMXMLArray(document, null, value as Array, recursive);
-                else if (simple == false)
-                    value = generateMXMLObject(document, value as Array);
-                comp.setStyle(name, value);
-            }
-            
-            m = data[i++]; // num events
-            for (j = 0; j < m; j++)
+            else
+                comp[name] = value;
+        }
+        if (beadOffset > -1)
+        {
+            name = data[i++];
+            simple = data[i++];
+            value = data[i++];
+            if (simple == null)
+                value = generateMXMLArray(document, null, value as Array);
+            else if (simple == false)
+                value = generateMXMLObject(document, value as Array);
+            else
+                comp[name] = value;
+            var beads:Array = value as Array;
+            var l:int = beads.length;
+            for (var k:int = 0; k < l; k++)
             {
-                name = data[i++];
-                value = data[i++];
-                comp.addEventListener(name, value);
+                var bead:IBead = beads[k] as IBead;
+                IStrand(comp).addBead(bead);
+                dispatchBeadsAdded = true;
             }
+        }
+        m = data[i++]; // num styles
+        for (j = 0; j < m; j++)
+        {
+            name = data[i++];
+            simple = data[i++];
+            value = data[i++];
+            if (simple == null)
+                value = generateMXMLArray(document, null, value as Array);
+            else if (simple == false)
+                value = generateMXMLObject(document, value as Array);
+            comp.setStyle(name, value);
+        }            
+        
+        m = data[i++]; // num effects
+        for (j = 0; j < m; j++)
+        {
+            name = data[i++];
+            simple = data[i++];
+            value = data[i++];
+            if (simple == null)
+                value = generateMXMLArray(document, null, value as Array);
+            else if (simple == false)
+                value = generateMXMLObject(document, value as Array);
+            comp.setStyle(name, value);
+        }
+        
+        m = data[i++]; // num events
+        for (j = 0; j < m; j++)
+        {
+            name = data[i++];
+            value = data[i++];
+            comp.addEventListener(name, value);
+        }
+        
+        var children:Array = data[i++];
+        if (children && comp is IMXMLDocument)
+        {
+            comp.setMXMLDescriptor(document, children);                
+        }
+        if (parent)
+        {
+            parent.addElement(comp);
+            dispatchBeadsAdded = true;
+        }
+        
+        if (children)
+        {
+            if (!(comp is IMXMLDocument))
+                generateMXMLInstances(document, comp as IParent, children);
             
-            if (parent)
-            {
-                parent.addElement(comp);
-				dispatchBeadsAdded = true;
-            }
-
-            var children:Array = data[i++];
-            if (children)
+            if (comp is IContainer)
             {
-                if (recursive)
-				{
-                    generateMXMLInstances(document, comp as IParent, children, recursive);
-					if (comp is IContainer)
-					{
-						IContainer(comp).childrenAdded();
-					}
-				}
-                else
-                    comp.setMXMLDescriptor(children);
+                IContainer(comp).childrenAdded();
             }
-            
-            if (id)
-                document[id] = comp;
-            
-            if (comp is IDocument)
-                comp.setDocument(document, id);
-            comps.push(comp);
-			
-			if (dispatchBeadsAdded) {
-				IEventDispatcher(comp).dispatchEvent(new Event("beadsAdded"));
-			}
         }
-        return comps;
+        
+        if (id)
+            document[id] = comp;
+        
+        if (comp is IDocument)
+            comp.setDocument(document, id);
+                
+        if (dispatchBeadsAdded) {
+            IEventDispatcher(comp).dispatchEvent(new Event("beadsAdded"));
+        }
+
+        return i;
     }
     
     /**
@@ -289,18 +303,17 @@ public class MXMLDataInterpreter
      *  it will be assigned in this document in this method.
      *  @param parent The parent for any display objects encoded in the array.
      *  @param data The encoded data.
-     *  @param recursive Whether to interpret a child's array of encoded data.
      *  
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */
-    public static function generateMXMLInstances(document:Object, parent:IParent, data:Array, recursive:Boolean = true):void
+    public static function generateMXMLInstances(document:Object, parent:IParent, data:Array):void
     {
 		if (!data) return;
 		
-        generateMXMLArray(document, parent, data, recursive);
+        generateMXMLArray(document, parent, data);
     }
     
     /**
@@ -345,7 +358,7 @@ public class MXMLDataInterpreter
             simple = data[i++];
             value = data[i++];
             if (simple == null)
-                value = generateMXMLArray(host, null, value as Array, true);
+                value = generateMXMLArray(host, null, value as Array);
             else if (simple == false)
                 value = generateMXMLObject(host, value as Array);
             if (name == "id")
@@ -361,7 +374,7 @@ public class MXMLDataInterpreter
             simple = data[i++];
             value = data[i++];
             if (simple == null)
-                value = generateMXMLArray(host, null, value as Array, true);
+                value = generateMXMLArray(host, null, value as Array);
             else if (simple == false)
                 value = generateMXMLObject(host, value as Array);
             else
@@ -386,7 +399,7 @@ public class MXMLDataInterpreter
             simple = data[i++];
             value = data[i++];
             if (simple == null)
-                value = generateMXMLArray(host, null, value as Array, true);
+                value = generateMXMLArray(host, null, value as Array);
             else if (simple == false)
                 value = generateMXMLObject(host, value as Array);
             host[name] = value;
@@ -399,7 +412,7 @@ public class MXMLDataInterpreter
             simple = data[i++];
             value = data[i++];
             if (simple == null)
-                value = generateMXMLArray(host, null, value as Array, true);
+                value = generateMXMLArray(host, null, value as Array);
             else if (simple == false)
                 value = generateMXMLObject(host, value as Array);
             host[name] = value;


[08/17] git commit: [flex-asjs] [refs/heads/develop] - Container should have default border bead

Posted by ah...@apache.org.
Container should have default border bead


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

Branch: refs/heads/develop
Commit: f2725834989b8cb048b566c1fb41a21fc9597eb4
Parents: f1fd2fc
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:10:37 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:10:37 2014 -0700

----------------------------------------------------------------------
 frameworks/as/projects/FlexJSUI/defaults.css | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2725834/frameworks/as/projects/FlexJSUI/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/defaults.css b/frameworks/as/projects/FlexJSUI/defaults.css
index e6fe059..092f95b 100644
--- a/frameworks/as/projects/FlexJSUI/defaults.css
+++ b/frameworks/as/projects/FlexJSUI/defaults.css
@@ -211,6 +211,7 @@ Container
 {
     IBeadView: ClassReference("org.apache.flex.html.beads.ContainerView");
     iBackgroundBead: ClassReference("org.apache.flex.html.beads.SolidBackgroundBead");
+    iBorderBead: ClassReference("org.apache.flex.html.beads.SingleLineBorderBead");
 }
 
 HContainer


[14/17] git commit: [flex-asjs] [refs/heads/develop] - parse styles as strings

Posted by ah...@apache.org.
parse styles as strings


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

Branch: refs/heads/develop
Commit: b8ef431cf7884dbf37a7a8ba6b21a20d1e466720
Parents: 43b8981
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:15:25 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:15:25 2014 -0700

----------------------------------------------------------------------
 .../src/org/apache/flex/core/IValuesImpl.as     | 11 +++++++
 .../org/apache/flex/core/SimpleCSSValuesImpl.as | 34 ++++++++++++++++++++
 .../org/apache/flex/core/SimpleValuesImpl.as    | 17 +++++++++-
 .../FlexJSUI/src/org/apache/flex/core/UIBase.as |  6 ++--
 .../src/org/apache/flex/core/UIButtonBase.as    |  4 +--
 5 files changed, 67 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b8ef431c/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IValuesImpl.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IValuesImpl.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IValuesImpl.as
index e643a6e..693e43e 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IValuesImpl.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IValuesImpl.as
@@ -108,5 +108,16 @@ package org.apache.flex.core
          */
         function convertColor(value:Object):uint;
 
+        /**
+         *  Converts an HTML-like style format into an object.
+         *
+         *  @param value A string, such as "color:red;fontSize:10px".
+         * 
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        function parseStyles(value:String):Object;
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b8ef431c/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleCSSValuesImpl.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleCSSValuesImpl.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleCSSValuesImpl.as
index 103e732..85681da 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleCSSValuesImpl.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleCSSValuesImpl.as
@@ -471,6 +471,40 @@ package org.apache.flex.core
         }
         
         /**
+         *  @copy org.apache.flex.core.IValuesImpl#parseStyles()
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function parseStyles(styles:String):Object
+        {
+            var obj:Object = {};
+            var parts:Array = styles.split(";");
+            for each (var part:String in parts)
+            {
+                var pieces:Array = part.split(":");
+                var value:String = pieces[1];
+                if (value == "null")
+                    obj[pieces[0]] = null;
+                else if (value == "true")
+                    obj[pieces[0]] = true;
+                else if (value == "false")
+                    obj[pieces[0]] = false;
+                else
+                {
+                    var n:Number = Number(value);
+                    if (isNaN(n))
+                        obj[pieces[0]] = value;
+                    else
+                        obj[pieces[0]] = n;
+                }
+            }
+            return obj;
+        }
+        
+        /**
          *  A map of inheriting styles 
          *  
          *  @langversion 3.0

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b8ef431c/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleValuesImpl.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleValuesImpl.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleValuesImpl.as
index 0861d68..780a0e7 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleValuesImpl.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/SimpleValuesImpl.as
@@ -148,5 +148,20 @@ package org.apache.flex.core
                 return uint(stringValue.substr(1));
             return uint(stringValue);
         }
-	}
+        
+        /**
+         *  @copy org.apache.flex.core.IValuesImpl#parseStyles()
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function parseStyles(value:String):Object
+        {
+            value = value.replace(/;/g, ",");
+            return JSON.parse("{" + value + "}");
+        }
+
+    }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b8ef431c/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/UIBase.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/UIBase.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/UIBase.as
index de1816e..98a7c86 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/UIBase.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/UIBase.as
@@ -49,7 +49,7 @@ package org.apache.flex.core
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */
-	public class UIBase extends Sprite implements IStrand, IEventDispatcher, IParentIUIBase, IStyleableObject, IChild
+	public class UIBase extends Sprite implements IStrandWithModel, IEventDispatcher, IParentIUIBase, IStyleableObject, IChild
 	{
         /**
          *  Constructor.
@@ -460,7 +460,9 @@ package org.apache.flex.core
             if (_styles != value)
             {
                 if (value is String)
-                    _styles = JSON.parse("{" + value + "}");                
+                {
+                    _styles = ValuesManager.valuesImpl.parseStyles(value as String);
+                }
                 else
                     _styles = value;
                 dispatchEvent(new org.apache.flex.events.Event("stylesChanged"));

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b8ef431c/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/UIButtonBase.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/UIButtonBase.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/UIButtonBase.as
index 255b91f..713c37f 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/UIButtonBase.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/UIButtonBase.as
@@ -57,7 +57,7 @@ package org.apache.flex.core
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */
-	public class UIButtonBase extends SimpleButton implements IStrand, IEventDispatcher, IUIBase, IStyleableObject
+	public class UIButtonBase extends SimpleButton implements IStrandWithModel, IEventDispatcher, IUIBase, IStyleableObject
 	{
         /**
          *  Constructor.
@@ -550,7 +550,7 @@ package org.apache.flex.core
         public function set style(value:Object):void
         {
             if (value is String)
-                _styles = JSON.parse("{" + value + "}");                
+                _styles = ValuesManager.valuesImpl.parseStyles(value as String);
             else
                 _styles = value;
             dispatchEvent(new org.apache.flex.events.Event("stylesChanged"));


[04/17] git commit: [flex-asjs] [refs/heads/develop] - switch target to be string reference

Posted by ah...@apache.org.
switch target to be string reference


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

Branch: refs/heads/develop
Commit: 0473a17c2753ca44e281ac91e36b266e588364cb
Parents: bdcbc41
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:07:14 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:07:14 2014 -0700

----------------------------------------------------------------------
 .../src/org/apache/flex/effects/Fade.as         | 22 ++++++++------
 .../src/org/apache/flex/effects/Move.as         | 30 ++++++++++++--------
 .../src/org/apache/flex/effects/Resize.as       | 26 ++++++++++-------
 .../src/org/apache/flex/effects/Wipe.as         | 25 ++++++++++------
 4 files changed, 64 insertions(+), 39 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0473a17c/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Fade.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Fade.as b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Fade.as
index ad3b821..28f0d16 100644
--- a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Fade.as
+++ b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Fade.as
@@ -43,7 +43,7 @@ public class Fade extends Tween implements IDocument
     /**
      *  Constructor.
      *
-     *  @param target Object ID or reference to an object that will
+     *  @param target An object that will
 	 *  have its x and/or y property animated.
      *
      *  @langversion 3.0
@@ -55,7 +55,7 @@ public class Fade extends Tween implements IDocument
     {
         super();
 
-		this.target = target;
+		this.actualTarget = target;
 		startValue = 0;
 		endValue = 1;
 		
@@ -78,7 +78,13 @@ public class Fade extends Tween implements IDocument
 	 *  @private
 	 *  The target.
 	 */
-	private var target:IUIBase;
+	private var actualTarget:IUIBase;
+    
+    /**
+     *  The target as the String id 
+     *  of a widget in an MXML Document.
+     */
+    public var target:String;
     
 	/**
 	 *  @private
@@ -127,11 +133,11 @@ public class Fade extends Tween implements IDocument
 	 */
 	override public function play():void
 	{
-		if (target is String)
-			target = document[target];
+        if (target != null)
+            actualTarget = document[target];
 		
 		if (isNaN(alphaFrom))
-			start = target.alpha;
+			start = actualTarget.alpha;
 		else
 			start = alphaFrom;
 		
@@ -146,13 +152,13 @@ public class Fade extends Tween implements IDocument
 	public function onTweenUpdate(value:Number):void
 	{
 		if (d)
-			target.alpha = start + value * d;
+			actualTarget.alpha = start + value * d;
 	}
 	
 	public function onTweenEnd(value:Number):void
 	{
 		if (d)
-			target.alpha = start + d;
+			actualTarget.alpha = start + d;
 	}
 }
 

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0473a17c/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Move.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Move.as b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Move.as
index d91b15e..2464be8 100644
--- a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Move.as
+++ b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Move.as
@@ -55,7 +55,7 @@ public class Move extends Tween implements IDocument
     {
         super();
 
-		this.target = target;
+		this.actualTarget = target;
 		startValue = 0;
 		endValue = 1;
 		
@@ -74,11 +74,17 @@ public class Move extends Tween implements IDocument
 	 */
 	private var document:Object;
 
+    /**
+     *  @private
+     *  The actual target.
+     */
+    private var actualTarget:IUIBase;
+    
 	/**
-	 *  @private
-	 *  The target.
+	 *  The target as the String id 
+     *  of a widget in an MXML Document.
 	 */
-	private var target:IUIBase;
+	public var target:String;
     
 	/**
 	 *  The change in x.
@@ -146,11 +152,11 @@ public class Move extends Tween implements IDocument
 	 */
 	override public function play():void
 	{
-		if (target is String)
-			target = document[target];
+		if (target != null)
+			actualTarget = document[target];
 		
 		if (isNaN(xFrom))
-			xStart = target.x;
+			xStart = actualTarget.x;
         if (isNaN(xBy))
         {
     		if (isNaN(xTo))
@@ -160,7 +166,7 @@ public class Move extends Tween implements IDocument
         }
         
 		if (isNaN(yFrom))
-			yStart = target.y;
+			yStart = actualTarget.y;
         if (isNaN(yBy))
         {
     		if (isNaN(yTo))
@@ -174,17 +180,17 @@ public class Move extends Tween implements IDocument
 	public function onTweenUpdate(value:Number):void
 	{
 		if (xBy)
-			target.x = xStart + value * xBy;
+			actualTarget.x = xStart + value * xBy;
 		if (yBy)
-			target.y = yStart + value * yBy;
+			actualTarget.y = yStart + value * yBy;
 	}
 	
 	public function onTweenEnd(value:Number):void
 	{
 		if (xBy)
-			target.x = xStart + xBy;
+			actualTarget.x = xStart + xBy;
 		if (yBy)
-			target.y = yStart + yBy;
+			actualTarget.y = yStart + yBy;
 	}
 }
 

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0473a17c/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Resize.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Resize.as b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Resize.as
index 298dc39..2ee1e15 100644
--- a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Resize.as
+++ b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Resize.as
@@ -55,7 +55,7 @@ public class Resize extends Tween implements IDocument
     {
         super();
 
-		this.target = target;
+		this.actualTarget = target;
 		startValue = 0;
 		endValue = 1;
 		
@@ -78,7 +78,13 @@ public class Resize extends Tween implements IDocument
 	 *  @private
 	 *  The target.
 	 */
-	private var target:IUIBase;
+	private var actualTarget:IUIBase;
+    
+    /**
+     *  The target as the String id 
+     *  of a widget in an MXML Document.
+     */
+    public var target:String;
     
 	/**
 	 *  The change in width.
@@ -146,11 +152,11 @@ public class Resize extends Tween implements IDocument
 	 */
 	override public function play():void
 	{
-		if (target is String)
-			target = document[target];
+        if (target != null)
+            actualTarget = document[target];
 		
 		if (isNaN(widthFrom))
-			widthStart = target.width;
+			widthStart = actualTarget.width;
         if (isNaN(widthBy))
         {
     		if (isNaN(widthTo))
@@ -160,7 +166,7 @@ public class Resize extends Tween implements IDocument
         }
         
 		if (isNaN(heightFrom))
-			heightStart = target.height;
+			heightStart = actualTarget.height;
         if (isNaN(heightBy))
         {
     		if (isNaN(heightTo))
@@ -174,17 +180,17 @@ public class Resize extends Tween implements IDocument
 	public function onTweenUpdate(value:Number):void
 	{
 		if (widthBy)
-			target.width = widthStart + value * widthBy;
+			actualTarget.width = widthStart + value * widthBy;
 		if (heightBy)
-			target.height = heightStart + value * heightBy;
+			actualTarget.height = heightStart + value * heightBy;
 	}
 	
 	public function onTweenEnd(value:Number):void
 	{
 		if (widthBy)
-			target.width = widthStart + widthBy;
+			actualTarget.width = widthStart + widthBy;
 		if (heightBy)
-			target.height = heightStart + heightBy;
+			actualTarget.height = heightStart + heightBy;
 	}
 }
 

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0473a17c/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Wipe.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Wipe.as b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Wipe.as
index f1bb8ca..5b56883 100644
--- a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Wipe.as
+++ b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/effects/Wipe.as
@@ -57,7 +57,7 @@ public class Wipe extends Tween implements IDocument
     {
         super();
 
-		this.target = target;
+		this.actualTarget = target;
         
 		listener = this;
     }
@@ -78,7 +78,13 @@ public class Wipe extends Tween implements IDocument
 	 *  @private
 	 *  The target.
 	 */
-	private var target:IUIBase;
+	private var actualTarget:IUIBase;
+    
+    /**
+     *  The target as the String id 
+     *  of a widget in an MXML Document.
+     */
+    public var target:String;
     
 	/**
 	 *  The direction of the Wipe.  "up" means the top will be the last
@@ -111,20 +117,21 @@ public class Wipe extends Tween implements IDocument
 	 */
 	override public function play():void
 	{
-		if (target is String)
-			target = document[target];
+        if (target != null)
+            actualTarget = document[target];
+        
 		
-        wiper.target = target;
+        wiper.target = actualTarget;
         if (direction == "up")
         {
-            startValue = target.height;
+            startValue = actualTarget.height;
             endValue = 0;
         }
         else
         {
             startValue = 0;
-            endValue = target.height;
-            wiper.visibleRect = new Rectangle(0, 0, target.width, 0);
+            endValue = actualTarget.height;
+            wiper.visibleRect = new Rectangle(0, 0, actualTarget.width, 0);
         }
         
 		super.play();
@@ -132,7 +139,7 @@ public class Wipe extends Tween implements IDocument
 
 	public function onTweenUpdate(value:Number):void
 	{
-		wiper.visibleRect = new Rectangle(0, 0, target.width, value);
+		wiper.visibleRect = new Rectangle(0, 0, actualTarget.width, value);
 	}
 	
 	public function onTweenEnd(value:Number):void


[10/17] git commit: [flex-asjs] [refs/heads/develop] - need to get model this way in case it hasn't been instantiated and placed on beads list yet

Posted by ah...@apache.org.
need to get model this way in case it hasn't been instantiated and placed on beads list yet


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

Branch: refs/heads/develop
Commit: 309da699065b87dbb8fca153760e260cc4b7a9a4
Parents: 81df22c
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:13:34 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:13:34 2014 -0700

----------------------------------------------------------------------
 .../org/apache/flex/core/IStrandWithModel.as    | 50 ++++++++++++++++++++
 1 file changed, 50 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/309da699/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IStrandWithModel.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IStrandWithModel.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IStrandWithModel.as
new file mode 100644
index 0000000..4e504cf
--- /dev/null
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/IStrandWithModel.as
@@ -0,0 +1,50 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.flex.core
+{
+    /**
+     *  The IStrand interface is the basic interface for a host component for
+     *  a set of plug-ins known as Beads.
+     *  In FlexJS, the recommended pattern is to break out optional functionality
+     *  into small plug-ins that can be re-used in other components, or replaced with
+     *  different implementations optimized for different things such as size,
+     *  performance, advanced features, debugging, etc.
+     * 
+     *  Beads are added to and removed from a Strand and can find and coordinate with
+     *  other beads on the strand.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+	public interface IStrandWithModel extends IStrand
+	{
+        /**
+         *  Each Strand has an model object.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        function get model():IBeadModel;
+        	
+	}
+}
\ No newline at end of file


[13/17] git commit: [flex-asjs] [refs/heads/develop] - handle vent handlers in states

Posted by ah...@apache.org.
handle vent handlers in states


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

Branch: refs/heads/develop
Commit: 43b8981e292a54b850eb581b9a71d6f567dfa81e
Parents: 20937c7
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:15:05 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:15:05 2014 -0700

----------------------------------------------------------------------
 .../as/projects/FlexJSUI/src/FlexJSUIClasses.as |  1 +
 .../FlexJSUI/src/mx/states/SetEventHandler.as   | 79 ++++++++++++++++++++
 2 files changed, 80 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/43b8981e/frameworks/as/projects/FlexJSUI/src/FlexJSUIClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/FlexJSUIClasses.as b/frameworks/as/projects/FlexJSUI/src/FlexJSUIClasses.as
index 358795e..b0eba4e 100644
--- a/frameworks/as/projects/FlexJSUI/src/FlexJSUIClasses.as
+++ b/frameworks/as/projects/FlexJSUI/src/FlexJSUIClasses.as
@@ -131,6 +131,7 @@ internal class FlexJSUIClasses
     
 	import mx.core.ClassFactory; ClassFactory;
     import mx.states.AddItems; AddItems;
+    import mx.states.SetEventHandler; SetEventHandler;
     import mx.states.SetProperty; SetProperty;
     import mx.states.State; State;
 }

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/43b8981e/frameworks/as/projects/FlexJSUI/src/mx/states/SetEventHandler.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/mx/states/SetEventHandler.as b/frameworks/as/projects/FlexJSUI/src/mx/states/SetEventHandler.as
new file mode 100644
index 0000000..95246a0
--- /dev/null
+++ b/frameworks/as/projects/FlexJSUI/src/mx/states/SetEventHandler.as
@@ -0,0 +1,79 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+// shim the mx classes for states
+package mx.states
+{
+    import org.apache.flex.core.IDocument;
+    
+    [ExcludeClass]
+    
+    /**
+     *  The SetEventHandler class is one of the classes in the
+     *  view states subsystem.  Note that the FlexJS
+     *  versions are simply data structures interpreted
+     *  by a central States implementation.
+     * 
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+	public class SetEventHandler implements IDocument
+	{
+        /**
+         *  Constructor.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 9
+         *  @playerversion AIR 1.1
+         *  @productversion Flex 3
+         */
+		public function SetEventHandler()
+		{
+			super();
+		}
+		
+        public var target:String;
+        
+        public var name:String;
+        
+        public var handlerFunction:Function;
+
+        public var document:Object;
+        
+        public function setDocument(document:Object, id:String = null):void
+        {
+            this.document = document;
+        }
+        
+        /**
+         * @private 
+         * Initialize this object from a descriptor.
+         */
+        public function initializeFromObject(properties:Object):Object
+        {
+            for (var p:String in properties)
+            {
+                this[p] = properties[p];
+            }
+            
+            return Object(this);
+        }
+	}
+}
\ No newline at end of file


[15/17] git commit: [flex-asjs] [refs/heads/develop] - need to set styleparent

Posted by ah...@apache.org.
need to set styleparent


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

Branch: refs/heads/develop
Commit: 376be30bf473669511dc7bb45a1e3d578b004e44
Parents: b8ef431
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 14:04:54 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 14:04:54 2014 -0700

----------------------------------------------------------------------
 .../src/org/apache/flex/html/beads/ImageAndTextButtonView.as   | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/376be30b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageAndTextButtonView.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageAndTextButtonView.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageAndTextButtonView.as
index 492f6f8..988b293 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageAndTextButtonView.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageAndTextButtonView.as
@@ -103,6 +103,10 @@ package org.apache.flex.html.beads
 			setupBackground(upSprite, upTextField, 0xCCCCCC);
 			setupBackground(overSprite, overTextField, 0xFFCCCC, "hover");
 			setupBackground(downSprite, downTextField, 0x808080, "active");
+            upTextField.styleParent = value;
+            downTextField.styleParent = value;
+            overTextField.styleParent = value;
+
 		}
 		
 		private var upSprite:Sprite;
@@ -138,7 +142,7 @@ package org.apache.flex.html.beads
 		/**
 		 * @private
 		 */
-		private function setupBackground(sprite:Sprite, textField:TextField, color:uint, state:String = null):void
+		private function setupBackground(sprite:Sprite, textField:CSSTextField, color:uint, state:String = null):void
 		{
 			var backgroundImage:Object = image;
 			if (backgroundImage)


[12/17] git commit: [flex-asjs] [refs/heads/develop] - some children are not display objects. Might be an fx:Declaration

Posted by ah...@apache.org.
some children are not display objects.  Might be an fx:Declaration


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

Branch: refs/heads/develop
Commit: 20937c7a514ef472be9d2757c51ed271a5a58a62
Parents: d3d8fa6
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:14:37 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:14:37 2014 -0700

----------------------------------------------------------------------
 .../FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as    | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/20937c7a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as
index 96c2e1b..8e37134 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/utils/MXMLDataInterpreter.as
@@ -19,6 +19,8 @@
 package org.apache.flex.utils
 {
 
+import flash.display.DisplayObject;
+
 import org.apache.flex.core.IBead;
 import org.apache.flex.core.IContainer;
 import org.apache.flex.core.IDocument;
@@ -266,7 +268,7 @@ public class MXMLDataInterpreter
         {
             comp.setMXMLDescriptor(document, children);                
         }
-        if (parent)
+        if (parent && comp is DisplayObject)
         {
             parent.addElement(comp);
             dispatchBeadsAdded = true;


[09/17] git commit: [flex-asjs] [refs/heads/develop] - handle initial state

Posted by ah...@apache.org.
handle initial state


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

Branch: refs/heads/develop
Commit: 81df22ca98c748f311305a3c7978ea7e47da0bcf
Parents: f272583
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:12:23 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:12:23 2014 -0700

----------------------------------------------------------------------
 .../as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/81df22ca/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
index 7e8af7c..91e415c 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/core/ContainerBase.as
@@ -72,7 +72,7 @@ package org.apache.flex.core
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */
-	public class ContainerBase extends UIBase implements IMXMLDocument
+	public class ContainerBase extends UIBase implements IMXMLDocument, IStatesObject
 	{
         /**
          *  Constructor.


[02/17] git commit: [flex-asjs] [refs/heads/develop] - ToggleButtonModel is also ITextModel

Posted by ah...@apache.org.
ToggleButtonModel is also ITextModel


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

Branch: refs/heads/develop
Commit: 9cfc607895fdf13ca0c849ca2b4b241cbc8cc7f7
Parents: 4d0fbb2
Author: Alex Harui <ah...@apache.org>
Authored: Fri Oct 3 12:29:22 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Oct 3 12:29:22 2014 -0700

----------------------------------------------------------------------
 .../src/org/apache/flex/html/beads/models/ToggleButtonModel.as    | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9cfc6078/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/models/ToggleButtonModel.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/models/ToggleButtonModel.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/models/ToggleButtonModel.as
index 517a545..a4c1a91 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/models/ToggleButtonModel.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/models/ToggleButtonModel.as
@@ -20,6 +20,7 @@ package org.apache.flex.html.beads.models
 {
 	import org.apache.flex.core.IBead;
 	import org.apache.flex.core.IStrand;
+    import org.apache.flex.core.ITextModel;
 	import org.apache.flex.core.IToggleButtonModel;
 	import org.apache.flex.events.Event;
 	import org.apache.flex.events.EventDispatcher;
@@ -33,7 +34,7 @@ package org.apache.flex.html.beads.models
 	 *  @playerversion AIR 2.6
 	 *  @productversion FlexJS 0.0
 	 */
-	public class ToggleButtonModel extends EventDispatcher implements IBead, IToggleButtonModel
+	public class ToggleButtonModel extends EventDispatcher implements IBead, IToggleButtonModel, ITextModel
 	{
 		/**
 		 *  constructor.


[17/17] git commit: [flex-asjs] [refs/heads/develop] - use valueChange instead of valueChanged

Posted by ah...@apache.org.
use valueChange instead of valueChanged


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

Branch: refs/heads/develop
Commit: c889dfcb902a0329968ff293d4dd513474bb452a
Parents: 5d466ac
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 14:28:43 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 14:28:43 2014 -0700

----------------------------------------------------------------------
 examples/FlexJSTest_Panel/src/MyInitialView.mxml               | 4 ++--
 .../as/projects/FlexJSUI/src/org/apache/flex/html/Slider.as    | 2 +-
 .../as/projects/FlexJSUI/src/org/apache/flex/html/Spinner.as   | 2 +-
 .../src/org/apache/flex/html/beads/NumericStepperView.as       | 2 +-
 .../flex/html/beads/controllers/SliderMouseController.as       | 6 +++---
 .../flex/html/beads/controllers/SpinnerMouseController.as      | 4 ++--
 .../js/FlexJS/src/org/apache/flex/html/NumericStepper.js       | 4 ++--
 frameworks/js/FlexJS/src/org/apache/flex/html/Spinner.js       | 2 +-
 .../flex/html/beads/controllers/SliderMouseController.js       | 6 +++---
 9 files changed, 16 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c889dfcb/examples/FlexJSTest_Panel/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/FlexJSTest_Panel/src/MyInitialView.mxml b/examples/FlexJSTest_Panel/src/MyInitialView.mxml
index 3a2dae3..0ce674b 100644
--- a/examples/FlexJSTest_Panel/src/MyInitialView.mxml
+++ b/examples/FlexJSTest_Panel/src/MyInitialView.mxml
@@ -130,12 +130,12 @@ limitations under the License.
 		<basic:TextButton text="Push Me" click="onButtonClick()" />
 		<basic:Label id="spinMe" />
 		<basic:NumericStepper id="stepper" 
-							  valueChanged="spinnerChanged(stepper)" 
+							  valueChange="spinnerChanged(stepper)" 
 							  className="numStepper"
 							  stepSize="10"/>
 		<basic:Label id="slideMe" />
 		<basic:Slider id="slider"
-					  valueChanged="sliderChanged(slider)"
+					  valueChange="sliderChanged(slider)"
 					  minimum="20"
 					  maximum="80"
 					  stepSize="5" />

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c889dfcb/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/Slider.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/Slider.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/Slider.as
index 0445011..2d4ee84 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/Slider.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/Slider.as
@@ -21,7 +21,7 @@ package org.apache.flex.html
 	import org.apache.flex.core.IRangeModel;
 	import org.apache.flex.core.UIBase;
 	
-	[Event(name="valueChanged", type="org.apache.flex.events.Event")]
+	[Event(name="valueChange", type="org.apache.flex.events.Event")]
 	
 	/**
 	 *  The Slider class is a component that displays a range of values using a

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c889dfcb/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/Spinner.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/Spinner.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/Spinner.as
index e43e0bc..c1be57e 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/Spinner.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/Spinner.as
@@ -21,7 +21,7 @@ package org.apache.flex.html
 	import org.apache.flex.core.IRangeModel;
 	import org.apache.flex.core.UIBase;
 	
-	[Event(name="valueChanged", type="org.apache.flex.events.Event")]
+	[Event(name="valueChange", type="org.apache.flex.events.Event")]
 	
 	/**
 	 *  The Spinner class is a component that displays a control for incrementing a value

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c889dfcb/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/NumericStepperView.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/NumericStepperView.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/NumericStepperView.as
index 33e14de..4bd5ec9 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/NumericStepperView.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/NumericStepperView.as
@@ -99,7 +99,7 @@ package org.apache.flex.html.beads
 			
 			// listen for change events on the spinner so the value can be updated as
 			// as resizing the component
-			spinner.addEventListener("valueChanged",spinnerValueChanged);
+			spinner.addEventListener("valueChange",spinnerValueChanged);
 			IEventDispatcher(value).addEventListener("widthChanged",sizeChangeHandler);
 			IEventDispatcher(value).addEventListener("heightChanged",sizeChangeHandler);
 			

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c889dfcb/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SliderMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SliderMouseController.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SliderMouseController.as
index c979e2f..aeb54fc 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SliderMouseController.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SliderMouseController.as
@@ -102,7 +102,7 @@ package org.apache.flex.html.beads.controllers
 			UIBase(_strand).stage.removeEventListener(MouseEvent.MOUSE_MOVE, thumbMoveHandler);
 			UIBase(_strand).stage.removeEventListener(MouseEvent.MOUSE_UP, thumbUpHandler);
 			
-			IEventDispatcher(_strand).dispatchEvent(new Event("valueChanged"));
+			IEventDispatcher(_strand).dispatchEvent(new Event("valueChange"));
 		}
 		
 		private var origin:Point;
@@ -124,7 +124,7 @@ package org.apache.flex.html.beads.controllers
 		
 			rangeModel.value = n;
 			
-			IEventDispatcher(_strand).dispatchEvent(new Event("valueChanged"));
+			IEventDispatcher(_strand).dispatchEvent(new Event("valueChange"));
 		}
 		
 		/**
@@ -142,7 +142,7 @@ package org.apache.flex.html.beads.controllers
 			
 			rangeModel.value = n;
 			
-			IEventDispatcher(_strand).dispatchEvent(new Event("valueChanged"));
+			IEventDispatcher(_strand).dispatchEvent(new Event("valueChange"));
 		}
 	}
 }

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c889dfcb/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SpinnerMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SpinnerMouseController.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SpinnerMouseController.as
index 1b44419..b3ce89a 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SpinnerMouseController.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SpinnerMouseController.as
@@ -83,7 +83,7 @@ package org.apache.flex.html.beads.controllers
 		private function decrementClickHandler( event:Event ) : void
 		{
 			rangeModel.value = Math.max(rangeModel.minimum, rangeModel.value - rangeModel.stepSize);
-			IEventDispatcher(_strand).dispatchEvent(new Event("valueChanged"));
+			IEventDispatcher(_strand).dispatchEvent(new Event("valueChange"));
 		}
 		
 		/**
@@ -92,7 +92,7 @@ package org.apache.flex.html.beads.controllers
 		private function incrementClickHandler( event:Event ) : void
 		{
 			rangeModel.value = Math.min(rangeModel.maximum, rangeModel.value + rangeModel.stepSize);	
-			IEventDispatcher(_strand).dispatchEvent(new Event("valueChanged"));
+			IEventDispatcher(_strand).dispatchEvent(new Event("valueChange"));
 		}
 	}
 }

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c889dfcb/frameworks/js/FlexJS/src/org/apache/flex/html/NumericStepper.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/html/NumericStepper.js b/frameworks/js/FlexJS/src/org/apache/flex/html/NumericStepper.js
index 4254b32..8fd42cf 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/html/NumericStepper.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/html/NumericStepper.js
@@ -59,7 +59,7 @@ org.apache.flex.html.NumericStepper.prototype.createElement =
   this.spinner = new org.apache.flex.html.Spinner();
   this.addElement(this.spinner);
   this.spinner.positioner.style.display = 'inline-block';
-  goog.events.listen(this.spinner, 'valueChanged',
+  goog.events.listen(this.spinner, 'valueChange',
       goog.bind(this.spinnerChange, this));
 
   this.element.flexjs_wrapper = this;
@@ -80,7 +80,7 @@ org.apache.flex.html.NumericStepper.prototype.spinnerChange =
   var newValue = this.spinner.get_value();
   this.set_value(newValue);
   this.input.set_text(String(this.spinner.get_value()));
-  this.dispatchEvent(new org.apache.flex.events.Event('valueChanged'));
+  this.dispatchEvent(new org.apache.flex.events.Event('valueChange'));
 };
 
 

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c889dfcb/frameworks/js/FlexJS/src/org/apache/flex/html/Spinner.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/html/Spinner.js b/frameworks/js/FlexJS/src/org/apache/flex/html/Spinner.js
index f2bf554..87b7007 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/html/Spinner.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/html/Spinner.js
@@ -93,7 +93,7 @@ org.apache.flex.html.Spinner.prototype.set_value =
     function(value) {
   if (value != this.value_) {
     this.value_ = value;
-    this.dispatchEvent('valueChanged');
+    this.dispatchEvent('valueChange');
   }
 };
 

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c889dfcb/frameworks/js/FlexJS/src/org/apache/flex/html/beads/controllers/SliderMouseController.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/html/beads/controllers/SliderMouseController.js b/frameworks/js/FlexJS/src/org/apache/flex/html/beads/controllers/SliderMouseController.js
index f63fdd3..dd0e181 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/html/beads/controllers/SliderMouseController.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/html/beads/controllers/SliderMouseController.js
@@ -81,7 +81,7 @@ org.apache.flex.html.beads.controllers.SliderMouseController.
 
   this.calcValFromMousePosition(event, true);
 
-  this.strand_.dispatchEvent(new org.apache.flex.events.Event('valueChanged'));
+  this.strand_.dispatchEvent(new org.apache.flex.events.Event('valueChange'));
 };
 
 
@@ -120,7 +120,7 @@ org.apache.flex.html.beads.controllers.SliderMouseController.
 
   this.calcValFromMousePosition(event, false);
 
-  this.strand_.dispatchEvent(new org.apache.flex.events.Event('valueChanged'));
+  this.strand_.dispatchEvent(new org.apache.flex.events.Event('valueChange'));
 };
 
 
@@ -135,7 +135,7 @@ org.apache.flex.html.beads.controllers.SliderMouseController.
     {
   this.calcValFromMousePosition(event, false);
 
-  this.strand_.dispatchEvent(new org.apache.flex.events.Event('valueChanged'));
+  this.strand_.dispatchEvent(new org.apache.flex.events.Event('valueChange'));
 };
 
 


[07/17] git commit: [flex-asjs] [refs/heads/develop] - handle stateGroups

Posted by ah...@apache.org.
handle stateGroups


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

Branch: refs/heads/develop
Commit: f1fd2fcee0680d0079f19d6a2eeb21016e56b3b2
Parents: 50bee95
Author: Alex Harui <ah...@apache.org>
Authored: Mon Oct 6 13:09:56 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Oct 6 13:09:56 2014 -0700

----------------------------------------------------------------------
 frameworks/as/projects/FlexJSUI/src/mx/states/State.as | 11 +++++++++++
 1 file changed, 11 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f1fd2fce/frameworks/as/projects/FlexJSUI/src/mx/states/State.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/mx/states/State.as b/frameworks/as/projects/FlexJSUI/src/mx/states/State.as
index b603f83..3c08d57 100644
--- a/frameworks/as/projects/FlexJSUI/src/mx/states/State.as
+++ b/frameworks/as/projects/FlexJSUI/src/mx/states/State.as
@@ -60,6 +60,17 @@ package mx.states
 		public var name:String;
         
         /**
+         *  Comma-delimited list of state groups of the state.
+         *  It is not an array so don't use square brackets [].
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 9
+         *  @playerversion AIR 1.1
+         *  @productversion Flex 3
+         */
+        public var stateGroups:String;
+        
+        /**
          *  The array of overrides.  This is normally set by the compiler.
          *  
          *  @langversion 3.0