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/16 22:08:44 UTC

git commit: [flex-asjs] [refs/heads/develop] - Menu working

Repository: flex-asjs
Updated Branches:
  refs/heads/develop ff4c37222 -> 0eb0ad89e


Menu working


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

Branch: refs/heads/develop
Commit: 0eb0ad89e58d456f91501e60e7ddbf8ce4d9f355
Parents: ff4c372
Author: Carlos Rovira <ca...@apache.org>
Authored: Wed Nov 16 23:08:40 2016 +0100
Committer: Carlos Rovira <ca...@apache.org>
Committed: Wed Nov 16 23:08:40 2016 +0100

----------------------------------------------------------------------
 .../flexjs/MDLExample/src/main/flex/App.mxml    |  9 +++---
 .../src/main/flex/org/apache/flex/mdl/Menu.as   | 32 ++++++++++++--------
 .../main/flex/org/apache/flex/mdl/MenuItem.as   | 16 ++++++----
 .../src/main/flex/org/apache/flex/mdl/Spacer.as | 12 +++++---
 .../src/main/resources/mdl-manifest.xml         |  2 ++
 5 files changed, 44 insertions(+), 27 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0eb0ad89/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 d941881..8d3eea1 100644
--- a/examples/flexjs/MDLExample/src/main/flex/App.mxml
+++ b/examples/flexjs/MDLExample/src/main/flex/App.mxml
@@ -120,15 +120,14 @@ limitations under the License.
                         <mdl:CardActions border="true">
                             <mdl:Button text="Get Started" ripple="true" colored="true"/>
                             <mdl:Spacer/>
-                            <mdl:Button id="demo_menu" icon="true">
+                            <mdl:Button icon="true" id="menu_btn">
                                 <i class="material-icons">more_vert</i>
                             </mdl:Button>
-                            <!--
-                            <mdl:Menu ripple="true" dataMdlFor="demo_menu">
+                            <mdl:Menu ripple="true" dataMdlFor="menu_btn">
                                 <mdl:MenuItem text="Some Action"/>
                                 <mdl:MenuItem text="Another Action"/>
                                 <mdl:MenuItem text="Another Action 2"/>
-                            </mdl:Menu>-->
+                            </mdl:Menu>
                         </mdl:CardActions>
                         <mdl:CardMenu>
                             <mdl:Button icon="true" ripple="true" style="color: #fff;">
@@ -162,7 +161,7 @@ limitations under the License.
                         </mdl:CardActions>
                     </mdl:Card>
                 </js:HContainer>
-                
+
             </js:Form>
 
         </js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0eb0ad89/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Menu.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Menu.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Menu.as
index 55d4bf5..cb3c346 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Menu.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Menu.as
@@ -18,7 +18,8 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.flex.mdl
 {
-	import org.apache.flex.core.UIBase;
+	import org.apache.flex.core.ContainerBase;
+
     COMPILE::JS
     {
         import org.apache.flex.core.WrappedHTMLElement;            
@@ -32,7 +33,7 @@ package org.apache.flex.mdl
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */    
-	public class Menu extends UIBase
+	public class Menu extends ContainerBase
 	{
         /**
          *  Constructor.
@@ -45,6 +46,8 @@ package org.apache.flex.mdl
 		public function Menu()
 		{
 			super();
+
+            className = ""; //set to empty string avoid 'undefined' output when no class selector is assigned by user;
         }
         
         /**
@@ -53,17 +56,17 @@ package org.apache.flex.mdl
         COMPILE::JS
         override protected function createElement():WrappedHTMLElement
         {
-            this.element = document.createElement('ul') as WrappedHTMLElement;
-            this.element.className = "mdl-menu mdl-js-menu mdl-menu--top-left";
-            this.element.setAttribute('data-mdl-for', dataMdlFor.toString());
-            this.element.setAttribute('id', '0');
-            this.positioner = this.element;
-            this.element.flexjs_wrapper = this;
+            typeNames = "mdl-menu mdl-js-menu mdl-menu--top-left";
+
+            element = document.createElement('ul') as WrappedHTMLElement;
+            
+            positioner = element;
+            element.flexjs_wrapper = this;
             
             return element;
         }
 
-        private var _dataMdlFor:Number = 0;
+        private var _dataMdlFor:String;
 
 		/**
 		 *  The id value of the associated button that opens this menu.
@@ -73,13 +76,18 @@ package org.apache.flex.mdl
 		 *  @playerversion AIR 2.6
 		 *  @productversion FlexJS 0.0
 		 */
-		public function get dataMdlFor():Number
+		public function get dataMdlFor():String
 		{
 			return _dataMdlFor;
 		}
-		public function set dataMdlFor(value:Number):void
+		public function set dataMdlFor(value:String):void
 		{
 			_dataMdlFor = value;
+
+            COMPILE::JS
+            {
+                element.setAttribute('for', dataMdlFor);
+            }
 		}
 
         protected var _ripple:Boolean = false;
@@ -99,7 +107,7 @@ package org.apache.flex.mdl
         {
             _ripple = value;
 
-            typeNames += (_ripple ? " mdl-js-ripple-effect" : "");
+            className += (_ripple ? " mdl-js-ripple-effect" : "");
         }     
 
 	}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0eb0ad89/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/MenuItem.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/MenuItem.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/MenuItem.as
index 50e7fc3..54b4507 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/MenuItem.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/MenuItem.as
@@ -19,6 +19,7 @@
 package org.apache.flex.mdl
 {
 	import org.apache.flex.core.UIBase;
+    
     COMPILE::JS
     {
         import org.apache.flex.core.WrappedHTMLElement;            
@@ -45,6 +46,8 @@ package org.apache.flex.mdl
 		public function MenuItem()
 		{
 			super();
+
+            className = ""; //set to empty string avoid 'undefined' output when no class selector is assigned by user;
         }
         
         private var _text:String = "";
@@ -90,14 +93,15 @@ package org.apache.flex.mdl
         COMPILE::JS
         override protected function createElement():WrappedHTMLElement
         {
-            this.element = document.createElement('li') as WrappedHTMLElement;
-            this.element.className = "mdl-menu__item";
+            typeNames = "mdl-menu__item";
 
+            element = document.createElement('li') as WrappedHTMLElement;
+            
             textNode = document.createTextNode('') as Text;
-            this.element.appendChild(textNode); 
+            element.appendChild(textNode); 
 
-            this.positioner = this.element;
-            this.element.flexjs_wrapper = this;
+            positioner = element;
+            element.flexjs_wrapper = this;
             
             return element;
         }
@@ -119,7 +123,7 @@ package org.apache.flex.mdl
         {
             _ripple = value;
 
-            typeNames += (_ripple ? " mdl-js-ripple-effect" : "");
+            className += (_ripple ? " mdl-js-ripple-effect" : "");
         }     
 
 	}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0eb0ad89/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Spacer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Spacer.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Spacer.as
index 0a1a44a..f244167 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Spacer.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/Spacer.as
@@ -19,6 +19,7 @@
 package org.apache.flex.mdl
 {
 	import org.apache.flex.core.UIBase;
+
     COMPILE::JS
     {
         import org.apache.flex.core.WrappedHTMLElement;            
@@ -45,6 +46,8 @@ package org.apache.flex.mdl
 		public function Spacer()
 		{
 			super();
+
+            className = ""; //set to empty string avoid 'undefined' output when no class selector is assigned by user;
         }
         
         /**
@@ -53,10 +56,11 @@ package org.apache.flex.mdl
         COMPILE::JS
         override protected function createElement():WrappedHTMLElement
         {
-            this.element = document.createElement('div') as WrappedHTMLElement;
-            this.element.className = "mdl-layout-spacer";
-            this.positioner = this.element;
-            this.element.flexjs_wrapper = this;
+            typeNames = "mdl-layout-spacer";
+
+            element = document.createElement('div') as WrappedHTMLElement;
+            positioner = element;
+            element.flexjs_wrapper = this;
             
             return element;
         }        

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0eb0ad89/frameworks/projects/MaterialDesignLite/src/main/resources/mdl-manifest.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/MaterialDesignLite/src/main/resources/mdl-manifest.xml b/frameworks/projects/MaterialDesignLite/src/main/resources/mdl-manifest.xml
index 8e16025..5145571 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/resources/mdl-manifest.xml
+++ b/frameworks/projects/MaterialDesignLite/src/main/resources/mdl-manifest.xml
@@ -37,5 +37,7 @@
     <component id="CardActions" class="org.apache.flex.mdl.CardActions"/>
     <component id="CardMenu" class="org.apache.flex.mdl.CardMenu"/>
     <component id="Spacer" class="org.apache.flex.mdl.Spacer"/>
+    <component id="Menu" class="org.apache.flex.mdl.Menu"/>
+    <component id="MenuItem" class="org.apache.flex.mdl.MenuItem"/>
 
 </componentPackage>