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 <carlosrov...@apache.org> Authored: Wed Nov 16 23:08:40 2016 +0100 Committer: Carlos Rovira <carlosrov...@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>