You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by pi...@apache.org on 2017/01/06 23:55:18 UTC

[1/5] git commit: [flex-asjs] [refs/heads/feature/fontawesome] - Fix for bug FLEX-35237. Apply supplied patch with minor changes.

Repository: flex-asjs
Updated Branches:
  refs/heads/feature/fontawesome 4818e6d83 -> b516503be


Fix for bug FLEX-35237. Apply supplied patch with minor changes.


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

Branch: refs/heads/feature/fontawesome
Commit: 81cbd002fd6c12e97d719ea92a5a4eb5bf42d70c
Parents: b7a833d
Author: Peter Ent <pe...@apache.org>
Authored: Thu Jan 5 09:30:54 2017 -0500
Committer: Peter Ent <pe...@apache.org>
Committed: Thu Jan 5 09:30:54 2017 -0500

----------------------------------------------------------------------
 .../flex/html/beads/layouts/DataGridLayout.as     | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/81cbd002/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/DataGridLayout.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/DataGridLayout.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/DataGridLayout.as
index 1d22956..a3bd4e8 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/DataGridLayout.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/layouts/DataGridLayout.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.flex.html.beads.layouts
 {	
+	import org.apache.flex.core.IBead;
 	import org.apache.flex.core.IBeadLayout;
 	import org.apache.flex.core.IBeadModel;
 	import org.apache.flex.core.IBeadView;
@@ -71,16 +72,23 @@ package org.apache.flex.html.beads.layouts
 		{
 			_strand = value;
 			
-			var host:UIBase = _strand as UIBase;
-			host.addEventListener("widthChanged", handleSizeChanges);
-			host.addEventListener("heightChanged", handleSizeChanges);
-			host.addEventListener("sizeChanged", handleSizeChanges);
-			host.addEventListener("layoutNeeded", handleSizeChanges);
+			var host:UIBase = value as UIBase;
 			
 			var view:DataGridView = host.view as DataGridView;
+			
 			header = view.header;
 			listArea = view.listArea;
+			
+			var anylayout:IBead = listArea.getBeadByType(IBeadLayout);
+			if (anylayout != null) {
+				listArea.removeBead(anylayout);
+			}
 			listArea.addBead(new BasicLayout());
+			
+			host.addEventListener("widthChanged", handleSizeChanges);
+			host.addEventListener("heightChanged", handleSizeChanges);
+			host.addEventListener("sizeChanged", handleSizeChanges);
+			host.addEventListener("layoutNeeded", handleSizeChanges);
 		}
 		
 		private var _header:UIBase;


[3/5] git commit: [flex-asjs] [refs/heads/feature/fontawesome] - - Make MDL TabBar as sub component of Tabs - Update MDL example

Posted by pi...@apache.org.
- Make MDL TabBar as sub component of Tabs
- Update MDL example


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

Branch: refs/heads/feature/fontawesome
Commit: ae56b06c080b25d598f8db0e86098e7f5215879e
Parents: c2c4860
Author: piotrz <pi...@apache.org>
Authored: Fri Jan 6 19:24:55 2017 +0100
Committer: piotrz <pi...@apache.org>
Committed: Fri Jan 6 19:24:55 2017 +0100

----------------------------------------------------------------------
 .../flexjs/MDLExample/src/main/flex/Tabs.mxml   | 10 +----
 .../src/main/flex/org/apache/flex/mdl/TabBar.as |  3 +-
 .../src/main/flex/org/apache/flex/mdl/Tabs.as   |  9 +++++
 .../org/apache/flex/mdl/beads/views/TabsView.as | 40 ++++++++++++++++++++
 4 files changed, 52 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ae56b06c/examples/flexjs/MDLExample/src/main/flex/Tabs.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/src/main/flex/Tabs.mxml b/examples/flexjs/MDLExample/src/main/flex/Tabs.mxml
index d6d36cd..170b469 100644
--- a/examples/flexjs/MDLExample/src/main/flex/Tabs.mxml
+++ b/examples/flexjs/MDLExample/src/main/flex/Tabs.mxml
@@ -29,21 +29,13 @@ limitations under the License.
     <mdl:Grid>
 
         <mdl:GridCell column="1" percentWidth="100">
-            <mdl:Tabs width="400" tabIdField="tabId" className="customTabBarPanelItemRenderer">
+            <mdl:Tabs width="400" tabIdField="tabId" labelField="label" className="customTabBarPanelItemRenderer">
                 <mdl:beads>
                     <js:ConstantBinding
                             sourceID="tabsModel"
                             sourcePropertyName="tabs"
                             destinationPropertyName="dataProvider" />
                 </mdl:beads>
-                <mdl:TabBar tabIdField="tabId" labelField="label">
-                    <mdl:beads>
-                        <js:ConstantBinding
-                                sourceID="tabsModel"
-                                sourcePropertyName="tabs"
-                                destinationPropertyName="dataProvider" />
-                    </mdl:beads>
-                </mdl:TabBar>
             </mdl:Tabs>
         </mdl:GridCell>
         <mdl:GridCell column="1" percentWidth="100">

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ae56b06c/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/TabBar.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/TabBar.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/TabBar.as
index cb487cf..7914818 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/TabBar.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/TabBar.as
@@ -20,6 +20,7 @@ package org.apache.flex.mdl
 {
 	import org.apache.flex.core.ContainerBase;
     import org.apache.flex.core.IChild;
+    import org.apache.flex.core.IChrome;
     import org.apache.flex.core.IItemRenderer;
     import org.apache.flex.core.IItemRendererParent;
     import org.apache.flex.core.ILayoutHost;
@@ -41,7 +42,7 @@ package org.apache.flex.mdl
 	 *  @playerversion AIR 2.6
 	 *  @productversion FlexJS 0.0
 	 */
-	public class TabBar extends ContainerBase implements IItemRendererParent, ILayoutParent, ILayoutHost
+	public class TabBar extends ContainerBase implements IItemRendererParent, ILayoutParent, ILayoutHost, IChrome
 	{
 		/**
 		 *  constructor.

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ae56b06c/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Tabs.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Tabs.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Tabs.as
index 9ed138a..a5d0a75 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Tabs.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Tabs.as
@@ -77,6 +77,15 @@ package org.apache.flex.mdl
 			ITabModel(model).tabIdField = value;
 		}
 
+        public function get labelField():String
+        {
+            return ITabModel(model).labelField;
+        }
+        public function set labelField(value:String):void
+        {
+            ITabModel(model).labelField = value;
+        }
+
         public function getLayoutHost():ILayoutHost
         {
             return this;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ae56b06c/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabsView.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabsView.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabsView.as
index bf882d4..e6ffaa6 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabsView.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabsView.as
@@ -18,11 +18,51 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.flex.mdl.beads.views
 {
+    import org.apache.flex.core.IContentViewHost;
+    import org.apache.flex.core.IStrandWithModel;
+    import org.apache.flex.events.Event;
+    import org.apache.flex.core.IStrand;
+    import org.apache.flex.mdl.TabBar;
+
     public class TabsView extends ListView
     {
         public function TabsView()
         {
             super();
         }
+
+        private var _tabBar:TabBar;
+
+        public function get tabBar():TabBar
+        {
+            return _tabBar;
+        }
+
+        public function set tabBar(value:TabBar):void
+        {
+            _tabBar = value;
+        }
+
+        override public function set strand(value:IStrand):void
+        {
+            super.strand = value;
+
+            if (!_tabBar)
+            {
+                _tabBar = new TabBar();
+                _tabBar.id = "tabsTabBar";
+            }
+
+            _tabBar.model = (value as IStrandWithModel).model;
+
+            host.addEventListener("initComplete", initCompleteHandler);
+        }
+
+        private function initCompleteHandler(event:Event):void
+        {
+            host.removeEventListener("initComplete", initCompleteHandler);
+            
+            (host as IContentViewHost).strandChildren.addElementAt(tabBar, 0);
+        }
     }
 }


[5/5] git commit: [flex-asjs] [refs/heads/feature/fontawesome] - Fix bug FLEX-35239 - If in watchers map source of our data binding and event name do not exist make ConstantBinding - If ConstantBinding during initialization won't find in "document" sour

Posted by pi...@apache.org.
Fix bug  FLEX-35239 - If in watchers map source of our data binding and event name do not exist make ConstantBinding
- If ConstantBinding during initialization won't find in "document" source - trying to create class from sourceID string


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

Branch: refs/heads/feature/fontawesome
Commit: b516503befd2b2e4a75a5c0cf9c3bd190c51093c
Parents: fa00540
Author: piotrz <pi...@apache.org>
Authored: Sat Jan 7 00:55:12 2017 +0100
Committer: piotrz <pi...@apache.org>
Committed: Sat Jan 7 00:55:12 2017 +0100

----------------------------------------------------------------------
 .../org/apache/flex/binding/ConstantBinding.as  | 82 ++++++++++++++++----
 .../flex/binding/ItemRendererDataBinding.as     | 49 ++++--------
 2 files changed, 86 insertions(+), 45 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b516503b/frameworks/projects/Binding/src/main/flex/org/apache/flex/binding/ConstantBinding.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Binding/src/main/flex/org/apache/flex/binding/ConstantBinding.as b/frameworks/projects/Binding/src/main/flex/org/apache/flex/binding/ConstantBinding.as
index 70cb124..ac3d1d6 100644
--- a/frameworks/projects/Binding/src/main/flex/org/apache/flex/binding/ConstantBinding.as
+++ b/frameworks/projects/Binding/src/main/flex/org/apache/flex/binding/ConstantBinding.as
@@ -21,7 +21,11 @@ package org.apache.flex.binding
 	import org.apache.flex.core.IBead;
 	import org.apache.flex.core.IStrand;
 	import org.apache.flex.core.IDocument;
-	
+
+    COMPILE::SWF
+    {
+        import flash.utils.getDefinitionByName;
+    }
     /**
      *  The ConstantBinding class is lightweight data-binding class that
      *  is optimized for simple assignments of one object's constant to
@@ -126,17 +130,53 @@ package org.apache.flex.binding
          */
 		public function set strand(value:IStrand):void
 		{
+            var val:* = null;
+            var objectFromWindow:Object = null;
+
             if (destination == null)
                 destination = value;
             
             if (sourceID != null)
-    			source = document[sourceID];
+            {
+                source = document[sourceID];
+            }
             else
+            {
                 source = document;
-            var val:*;
-            if (sourcePropertyName in source)
+            }
+
+            if (!source)
+            {
+                try
+                {
+                    COMPILE::SWF
+                    {
+                        var classFromSourceId:Class = getDefinitionByName(sourceID) as Class;
+                        if (classFromSourceId)
+                        {
+                            val = classFromSourceId[sourcePropertyName];
+                        }
+                    }
+
+                    COMPILE::JS
+                    {
+                        objectFromWindow = getObjectClassFromWindow(sourceID);
+                        if (objectFromWindow)
+                        {
+                            val = objectFromWindow[sourcePropertyName];
+                        }
+                    }
+                    destination[destinationPropertyName] = val;
+                }
+                catch (e:Error)
+                {
+
+                }
+            }
+            else if (sourcePropertyName in source)
             {
-                try {
+                try
+                {
                     val = source[sourcePropertyName];
                     destination[destinationPropertyName] = val;
                 }
@@ -146,7 +186,8 @@ package org.apache.flex.binding
             }
             else if (sourcePropertyName in source.constructor)
             {
-                try {
+                try
+                {
                     val = source.constructor[sourcePropertyName];
                     destination[destinationPropertyName] = val;
                 }
@@ -164,13 +205,11 @@ package org.apache.flex.binding
                     if (cname) 
                     {
                         cname = cname.names[0].qName;
-                        var parts:Array = cname.split('.');
-                        var n:int = parts.length;
-                        var o:Object = window;
-                        for (var i:int = 0; i < n; i++) {
-                            o = o[parts[i]];
+                        objectFromWindow = getObjectClassFromWindow(cname);
+                        if (objectFromWindow)
+                        {
+                            val = objectFromWindow[sourcePropertyName];
                         }
-                        val = o[sourcePropertyName];
                         destination[destinationPropertyName] = val;
                     }                    
                 }
@@ -190,6 +229,23 @@ package org.apache.flex.binding
 		{
 			this.document = document;
 		}
-		
+
+        COMPILE::JS
+        private function getObjectClassFromWindow(className:Object):Object
+        {
+            var windowObject:Object = window;
+            var parts:Array = className.split('.');
+            var n:int = parts.length;
+            if (n == 0)
+            {
+                return null;
+            }
+
+            for (var i:int = 0; i < n; i++) {
+                windowObject = windowObject[parts[i]];
+            }
+
+            return windowObject;
+        }
 	}
 }

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b516503b/frameworks/projects/Binding/src/main/flex/org/apache/flex/binding/ItemRendererDataBinding.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Binding/src/main/flex/org/apache/flex/binding/ItemRendererDataBinding.as b/frameworks/projects/Binding/src/main/flex/org/apache/flex/binding/ItemRendererDataBinding.as
index ac54206..315a372 100644
--- a/frameworks/projects/Binding/src/main/flex/org/apache/flex/binding/ItemRendererDataBinding.as
+++ b/frameworks/projects/Binding/src/main/flex/org/apache/flex/binding/ItemRendererDataBinding.as
@@ -72,7 +72,6 @@ package org.apache.flex.binding
             var fieldWatcher:Object;
             var isStatic:Boolean;
             var sb:SimpleBinding;
-            var cb:ConstantBinding;
             if (!("_bindings" in _strand))
                 return;
             var bindingData:Array = _strand["_bindings"];
@@ -92,8 +91,9 @@ package org.apache.flex.binding
             var watchers:Object = decodeWatcher(bindingData.slice(index));
             for (i = 0; i < n; i++)
             {
-                    binding = bindings[i];
+                binding = bindings[i];
                 var destination:IStrand;
+
                 if (binding.source is String)
                 {
                     fieldWatcher = watchers.watcherMap[binding.source];
@@ -130,12 +130,16 @@ package org.apache.flex.binding
                 else if (binding.source is Array
                         && binding.source.length == 2 && binding.destination.length == 2)
                 {
-                    var compWatcher:Object;
-                    compWatcher = watchers.watcherMap[binding.source[0]];
-                    fieldWatcher = compWatcher.children.watcherMap[binding.source[1]];
-                    if (binding.source[0] == "data" ||
-                            (compWatcher.eventNames is String
-                            && compWatcher.eventNames == "dataChange"))
+                    var compWatcher:Object = watchers.watcherMap[binding.source[0]];
+                    if (compWatcher)
+                    {
+                        fieldWatcher = compWatcher.children.watcherMap[binding.source[1]];
+                    }
+
+                    if (compWatcher && fieldWatcher &&
+                            (binding.source[0] == "data" ||
+                            (compWatcher.eventNames is String &&
+                            compWatcher.eventNames == "dataChange")))
                     {
                         var irsb:ItemRendererSimpleBinding = new ItemRendererSimpleBinding();
                         irsb.destinationID = binding.destination[0];
@@ -144,7 +148,7 @@ package org.apache.flex.binding
                         irsb.setDocument(_strand);
                         _strand.addBead(irsb);
                     }
-                    else if (fieldWatcher.eventNames is String)
+                    else if (fieldWatcher != null && fieldWatcher.eventNames is String)
                     {
                         sb = new SimpleBinding();
                         sb.destinationPropertyName = binding.destination[1];
@@ -170,36 +174,17 @@ package org.apache.flex.binding
                             }
                         }
                     }
-                    else if (fieldWatcher.eventNames == null)
+                    else if (fieldWatcher == null || fieldWatcher.eventNames == null)
                     {
-                        cb = new ConstantBinding();
-                        cb.destinationPropertyName = binding.destination[1];
-                        cb.sourceID = binding.source[0];
-                        cb.sourcePropertyName = binding.source[1];
-                        cb.setDocument(_strand);
-                        destObject = _strand[binding.destination[0]];                                
-                        destination = destObject as IStrand;
-                        if (destination)
-                            destination.addBead(cb);
-                        else
-                        {
-                            if (destObject)
-                            {
-                                cb.destination = destObject;
-                                _strand.addBead(cb);
-                            }
-                            else
-                            {
-                                deferredBindings[binding.destination[0]] = cb;
-                                IEventDispatcher(_strand).addEventListener("valueChange", deferredBindingsHandler);
-                            }
-                        }
+                        makeConstantBinding(binding, _strand);
                     }
                 }
                 else
                 {
                     makeGenericBinding(binding, i, watchers);
                 }
+
+                fieldWatcher = null;
             }
         }
 


[4/5] git commit: [flex-asjs] [refs/heads/feature/fontawesome] - Merge branch 'develop' into feature/fontawesome

Posted by pi...@apache.org.
Merge branch 'develop' into feature/fontawesome


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

Branch: refs/heads/feature/fontawesome
Commit: fa0054093a6ab94af8deba6a0a1beefd4936cfdd
Parents: 4818e6d ae56b06
Author: piotrz <pi...@apache.org>
Authored: Fri Jan 6 19:38:03 2017 +0100
Committer: piotrz <pi...@apache.org>
Committed: Fri Jan 6 19:38:03 2017 +0100

----------------------------------------------------------------------
 .../src/main/flex/MyInitialView.mxml            |  2 -
 .../flexjs/MDLExample/src/main/flex/Tabs.mxml   | 10 +----
 .../flex/html/beads/layouts/DataGridLayout.as   | 18 ++++++---
 .../src/main/flex/org/apache/flex/mdl/TabBar.as |  3 +-
 .../src/main/flex/org/apache/flex/mdl/Tabs.as   |  9 +++++
 .../org/apache/flex/mdl/beads/views/TabsView.as | 40 ++++++++++++++++++++
 6 files changed, 65 insertions(+), 17 deletions(-)
----------------------------------------------------------------------



[2/5] git commit: [flex-asjs] [refs/heads/feature/fontawesome] - Clean up Express example.

Posted by pi...@apache.org.
Clean up Express example.


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

Branch: refs/heads/feature/fontawesome
Commit: c2c48603cf2202c2e26cacf67eb218e6191603fd
Parents: 81cbd00
Author: Peter Ent <pe...@apache.org>
Authored: Thu Jan 5 17:03:58 2017 -0500
Committer: Peter Ent <pe...@apache.org>
Committed: Thu Jan 5 17:03:58 2017 -0500

----------------------------------------------------------------------
 .../express/DataBindingExample/src/main/flex/MyInitialView.mxml    | 2 --
 1 file changed, 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c2c48603/examples/express/DataBindingExample/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/express/DataBindingExample/src/main/flex/MyInitialView.mxml b/examples/express/DataBindingExample/src/main/flex/MyInitialView.mxml
index 2b111f3..3622eea 100644
--- a/examples/express/DataBindingExample/src/main/flex/MyInitialView.mxml
+++ b/examples/express/DataBindingExample/src/main/flex/MyInitialView.mxml
@@ -123,8 +123,6 @@ limitations under the License.
                 <js:CheckBox id="showAllData" text="Show All Data" change="setState()" />
             </js:VContainer>
         </js:HContainer>
-        <js:Label id="bindtest" text="{fieldText + ' expression binding'}" />
-        <js:Label width="300" text.showAll="110" includeIn="showAll" />
         <js:TextArea id="ta" width="300" height="100" height.showAll="110" 
                         includeIn="showAll"
                         text="{MyModel(applicationModel).allData}" />