You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ca...@apache.org on 2016/11/22 11:21:22 UTC

git commit: [flex-asjs] [refs/heads/develop] - List extends from html list

Repository: flex-asjs
Updated Branches:
  refs/heads/develop 3e7eb142b -> b8046c55b


List extends from html list


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

Branch: refs/heads/develop
Commit: b8046c55beea31e7f53c7431c1322998f63d87a2
Parents: 3e7eb14
Author: Carlos Rovira <ca...@apache.org>
Authored: Tue Nov 22 12:21:18 2016 +0100
Committer: Carlos Rovira <ca...@apache.org>
Committed: Tue Nov 22 12:21:18 2016 +0100

----------------------------------------------------------------------
 examples/flexjs/MDLExample/.vscode/launch.json  |   4 +-
 .../flexjs/MDLExample/src/main/flex/App.mxml    |  20 +-
 .../src/main/resources/mdl-styles.css           |  17 --
 .../src/main/flex/org/apache/flex/mdl/List.as   | 244 ++-----------------
 .../src/main/resources/defaults.css             |   2 -
 5 files changed, 38 insertions(+), 249 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b8046c55/examples/flexjs/MDLExample/.vscode/launch.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/.vscode/launch.json b/examples/flexjs/MDLExample/.vscode/launch.json
index 00e0c2c..fe64613 100644
--- a/examples/flexjs/MDLExample/.vscode/launch.json
+++ b/examples/flexjs/MDLExample/.vscode/launch.json
@@ -7,7 +7,7 @@
             "request": "launch",
             "file": "${workspaceRoot}/target/javascript/bin/js-debug/index.html",
             "sourceMaps": true,
-            "preLaunchTask": ""
+            "preLaunchTask": "mvn"
         },
         {
             "name": "Launch Firefox against debug.html, with sourcemaps",
@@ -15,7 +15,7 @@
             "request": "launch",
             "file": "${workspaceRoot}/target/javascript/bin/js-debug/index.html",
             "sourceMaps": true,
-            "preLaunchTask": ""
+            "preLaunchTask": "mvn"
         }
     ]
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b8046c55/examples/flexjs/MDLExample/src/main/flex/App.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/src/main/flex/App.mxml b/examples/flexjs/MDLExample/src/main/flex/App.mxml
index 32248cc..0045f75 100644
--- a/examples/flexjs/MDLExample/src/main/flex/App.mxml
+++ b/examples/flexjs/MDLExample/src/main/flex/App.mxml
@@ -140,6 +140,16 @@ limitations under the License.
                                 </js:beads>
                             </mdl:TextField>
 
+                            <mdl:List labelField="label">
+                                <js:dataProvider>
+                                    <fx:Array>
+                                        <fx:Object label="Install SIM Card"/>
+                                        <fx:Object label="Install SIM Card 1"/>
+                                        <fx:Object label="Install SIM Card 2"/>
+                                    </fx:Array>
+                                </js:dataProvider>
+                            </mdl:List>
+
                             <!-- Toggles :: https://getmdl.io/components/index.html#toggles-section -->
                             <mdl:CheckBox id="mdlchk" text="Disabled at start" className="mdlchk_example"/>
                             <mdl:CheckBox id="mdlchk1" text="Selected and with Ripple" selected="true" ripple="true"/>
@@ -217,15 +227,7 @@ limitations under the License.
                     
             </mdl:NavigationLayout>
 
-            <!--<mdl:List id="list" width="130" labelField="label">
-                <js:dataProvider>
-                    <fx:Array>
-                        <fx:Object label="Install SIM Card"/>
-                        <fx:Object label="Install SIM Card 1"/>
-                        <fx:Object label="Install SIM Card 2"/>
-                    </fx:Array>
-                </js:dataProvider>
-            </mdl:List>-->
+            
 
 
             <js:Form action="#"> 

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b8046c55/examples/flexjs/MDLExample/src/main/resources/mdl-styles.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/src/main/resources/mdl-styles.css b/examples/flexjs/MDLExample/src/main/resources/mdl-styles.css
index 52b47d3..e8e05a8 100644
--- a/examples/flexjs/MDLExample/src/main/resources/mdl-styles.css
+++ b/examples/flexjs/MDLExample/src/main/resources/mdl-styles.css
@@ -20,7 +20,6 @@
 */
 
 @namespace "library://ns.apache.org/flexjs/basic";
-@namespace mdl "library://ns.apache.org/flexjs/mdl";
 
 .flexjs *, . flexjs *:before, . flexjs *:after {
     -moz-box-sizing: border-box;
@@ -41,22 +40,6 @@ Image
 	IBeadView:  ClassReference("org.apache.flex.html.beads.ImageView");
 }
 
-mdl|List
-{
-    IBeadModel: ClassReference("org.apache.flex.html.beads.models.ArraySelectionModel");
-    IBeadView:  ClassReference("org.apache.flex.html.beads.ListView");			
-    IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController");
-    IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.VerticalLayout");
-    IContentView: ClassReference("org.apache.flex.html.supportClasses.DataGroup");
-    IDataProviderItemRendererMapper: ClassReference("org.apache.flex.html.beads.DataItemRendererFactoryForArrayData");
-    IItemRendererClassFactory: ClassReference("org.apache.flex.core.ItemRendererClassFactory");
-    IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
-	IViewport: ClassReference("org.apache.flex.html.supportClasses.ScrollingViewport");
-	IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
-	border-style: solid;
-	border-color: #222222;
-}
-
 .cardTitle
 {
 	color: #fff;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b8046c55/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/List.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/List.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/List.as
index 4cea3ed..a081d12 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/List.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/List.as
@@ -18,27 +18,14 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.flex.mdl
 {
-	import org.apache.flex.core.ContainerBaseStrandChildren;
-	import org.apache.flex.core.IContentViewHost;
-	import org.apache.flex.core.IDataProviderItemRendererMapper;
-	import org.apache.flex.core.IFactory;
-	import org.apache.flex.core.IItemRendererClassFactory;
-	import org.apache.flex.core.IItemRendererProvider;
-	import org.apache.flex.core.IListPresentationModel;
-	import org.apache.flex.core.IRollOverModel;
-	import org.apache.flex.core.ISelectionModel;
-	import org.apache.flex.core.ListBase;
-	import org.apache.flex.core.UIBase;
-	import org.apache.flex.core.ValuesManager;
+	import org.apache.flex.html.List;
+	
     COMPILE::JS
     {
         import org.apache.flex.core.WrappedHTMLElement;
         import org.apache.flex.html.beads.ListView;
         import org.apache.flex.html.supportClasses.DataGroup;
     }
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.IEventDispatcher;
-	import org.apache.flex.html.beads.models.ListPresentationModel;
 	
 	/**
 	 *  Indicates that the initialization of the list is complete.
@@ -77,7 +64,7 @@ package org.apache.flex.mdl
 	 *  @playerversion AIR 2.6
 	 *  @productversion FlexJS 0.0
 	 */
-	public class List extends ListBase implements IItemRendererProvider
+	public class List extends org.apache.flex.html.List
 	{
 		/**
 		 *  constructor.
@@ -90,222 +77,41 @@ package org.apache.flex.mdl
 		public function List()
 		{
 			super();
-		}
-		
-		/**
-		 *  The name of field within the data used for display. Each item of the
-		 *  data should have a property with this name.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-		public function get labelField():String
-		{
-			return ISelectionModel(model).labelField;
-		}
-		public function set labelField(value:String):void
-		{
-			ISelectionModel(model).labelField = value;
-		}
-		
-		/**
-		 *  The data being display by the List.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-        public function get dataProvider():Object
-        {
-            return ISelectionModel(model).dataProvider;
-        }
-        public function set dataProvider(value:Object):void
-        {
-            ISelectionModel(model).dataProvider = value;
-        }
-
-		/**
-		 *  The index of the currently selected item. Changing this value
-		 *  also changes the selectedItem property.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-        public function get selectedIndex():int
-		{
-			return ISelectionModel(model).selectedIndex;
-		}
-		public function set selectedIndex(value:int):void
-		{
-			ISelectionModel(model).selectedIndex = value;
-		}
 
-		/**
-		 *  The index of the item currently below the pointer.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-        public function get rollOverIndex():int
-		{
-			return IRollOverModel(model).rollOverIndex;
-		}
-		public function set rollOverIndex(value:int):void
-		{
-			IRollOverModel(model).rollOverIndex = value;
-		}
-			
-		/**
-		 *  The presentation model for the list.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-		public function get presentationModel():IListPresentationModel
-		{
-			var presModel:IListPresentationModel = getBeadByType(IListPresentationModel) as IListPresentationModel;
-			if (presModel == null) {
-				presModel = new ListPresentationModel();
-				addBead(presModel);
-			}
-			return presModel;
-		}
-		
-		/**
-		 *  The default height of each cell in every column
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-		public function get rowHeight():Number
-		{
-			return presentationModel.rowHeight;
-		}
-		public function set rowHeight(value:Number):void
-		{
-			presentationModel.rowHeight = value;
-		}
-		
-		/**
-		 *  The item currently selected. Changing this value also 
-		 *  changes the selectedIndex property.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-		public function get selectedItem():Object
-		{
-			return ISelectionModel(model).selectedItem;
-		}
-		public function set selectedItem(value:Object):void
-		{
-			ISelectionModel(model).selectedItem = value;
-		}
-		
-		private var _itemRenderer:IFactory;
-		
-		/**
-		 *  The class or factory used to display each item.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-		public function get itemRenderer():IFactory
-		{
-			return _itemRenderer;
-		}
-		public function set itemRenderer(value:IFactory):void
-		{
-			_itemRenderer = value;
-		}
-		
-		/**
-		 * Returns whether or not the itemRenderer property has been set.
-		 *
-		 *  @see org.apache.flex.core.IItemRendererProvider
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-		public function get hasItemRenderer():Boolean
-		{
-			var result:Boolean = false;
-			
-			COMPILE::SWF {
-				result = _itemRenderer != null;
-			}
-			
-			COMPILE::JS {
-				var test:* = _itemRenderer;
-				result = _itemRenderer !== null && test !== undefined;
-			}
-			
-			return result;
+            className = ""; //set to empty string avoid 'undefined' output when no class selector is assigned by user;
 		}
 		
 		
-		/**
-		 * @private
-		 */
-		override public function addedToParent():void
-		{
-            super.addedToParent();
-            
-            if (getBeadByType(IDataProviderItemRendererMapper) == null)
-            {
-                var mapper:IDataProviderItemRendererMapper = new (ValuesManager.valuesImpl.getValue(this, "iDataProviderItemRendererMapper")) as IDataProviderItemRendererMapper;
-                addBead(mapper);
-            }
-			var itemRendererFactory:IItemRendererClassFactory = getBeadByType(IItemRendererClassFactory) as IItemRendererClassFactory;
-			if (!itemRendererFactory)
-			{
-				itemRendererFactory = new (ValuesManager.valuesImpl.getValue(this, "iItemRendererClassFactory")) as IItemRendererClassFactory;
-				addBead(itemRendererFactory);
-			}
-			
-			dispatchEvent(new Event("initComplete"));
-		}
-        
-        /**
-         * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement
-         */
-        COMPILE::JS
-        override protected function createElement():WrappedHTMLElement
-        {
-            super.createElement();
-            className = 'List';
-            
-            return element;
-        }        
-
         /**
          * @flexjsignorecoercion org.apache.flex.html.beads.ListView 
          * @flexjsignorecoercion org.apache.flex.html.supportClasses.DataGroup 
          */
-        COMPILE::JS
+        /*COMPILE::JS
         override public function internalChildren():Array
         {
             var listView:ListView = getBeadByType(ListView) as ListView;
             var dg:DataGroup = listView.dataGroup as DataGroup;
             var renderers:Array = dg.internalChildren();
             return renderers;
-        };
+        };*/
+
+        /**
+         * @return The actual element to be parented.
+         * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement
+         */
+		COMPILE::JS
+        override protected function createElement():WrappedHTMLElement
+        {
+            typeNames = "mdl-list";
+            
+            element = document.createElement('ul') as WrappedHTMLElement;
+            element.className = typeNames;
+            
+            positioner = element;
+            
+            element.flexjs_wrapper = this;
+            
+            return positioner;
+        }
    	}
 }

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b8046c55/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css b/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
index 40d29f8..bfeee42 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
+++ b/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
@@ -42,7 +42,5 @@ List
     IItemRenderer: ClassReference("org.apache.flex.html.supportClasses.StringItemRenderer");
 	IViewport: ClassReference("org.apache.flex.html.supportClasses.ScrollingViewport");
 	IViewportModel: ClassReference("org.apache.flex.html.beads.models.ViewportModel");
-	border-style: solid;
-	border-color: #222222;
 }