You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ca...@apache.org on 2018/07/03 23:33:24 UTC

[royale-asjs] branch develop updated: refactor examples to use FontIcon and add support for ISelectable icon to jewel ToggleButton

This is an automated email from the ASF dual-hosted git repository.

carlosrovira pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git


The following commit(s) were added to refs/heads/develop by this push:
     new 09f0676  refactor examples to use FontIcon and add support for ISelectable icon to jewel ToggleButton
09f0676 is described below

commit 09f0676cd8043316b44d9d9386f97a5e57723d5b
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Wed Jul 4 01:33:20 2018 +0200

    refactor examples to use FontIcon and add support for ISelectable icon to jewel ToggleButton
---
 .../src/main/royale/ButtonPlayGround.mxml          |  2 +-
 .../JewelExample/src/main/royale/MainContent.mxml  |  6 +++---
 .../NavigationIconLinkItemRenderer.mxml            |  2 +-
 .../royale/org/apache/royale/jewel/ToggleButton.as | 25 ++++++++++++++++------
 4 files changed, 24 insertions(+), 11 deletions(-)

diff --git a/examples/royale/JewelExample/src/main/royale/ButtonPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/ButtonPlayGround.mxml
index 084e3da..d0845dd 100644
--- a/examples/royale/JewelExample/src/main/royale/ButtonPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/ButtonPlayGround.mxml
@@ -52,7 +52,7 @@ limitations under the License.
 		
 		<j:Button text="print" emphasis="primary">
 			<j:icon>
-				<js:Icon text="{MaterialIconType.PRINT}" material="true"/>
+				<js:FontIcon text="{MaterialIconType.PRINT}" material="true"/>
 			</j:icon>
 		</j:Button>
 
diff --git a/examples/royale/JewelExample/src/main/royale/MainContent.mxml b/examples/royale/JewelExample/src/main/royale/MainContent.mxml
index df46348..e383a90 100644
--- a/examples/royale/JewelExample/src/main/royale/MainContent.mxml
+++ b/examples/royale/JewelExample/src/main/royale/MainContent.mxml
@@ -81,7 +81,7 @@ limitations under the License.
             <j:TopAppBarSection>
                 <j:Button click="drawer.open()">
                     <j:icon>
-                        <js:Icon text="{MaterialIconType.MENU}" material="true"/>
+                        <js:FontIcon text="{MaterialIconType.MENU}" material="true"/>
                     </j:icon>
                 </j:Button>
                 <j:TopAppBarTitle text="Apache Royale Jewel UI Set Theme Showcase"/>
@@ -89,12 +89,12 @@ limitations under the License.
             <j:TopAppBarSection alignRight="true">
                 <j:Button click="topappbar.visible = !topappbar.visible">
                     <j:icon>
-                        <js:Icon text="{MaterialIconType.VISIBILITY}" material="true"/>
+                        <js:FontIcon text="{MaterialIconType.VISIBILITY}" material="true"/>
                     </j:icon>
                 </j:Button>
                 <j:ToggleButton click="toggleTopAppBarFixed()">
                     <j:icon>
-                        <js:Icon text="{MaterialIconType.LOCK}" material="true"/>
+                        <js:ToggleFontIcon text="{MaterialIconType.LOCK}" selectedText="{MaterialIconType.LOCK_OPEN}" material="true"/>
                     </j:icon>
                 </j:ToggleButton>
             </j:TopAppBarSection>
diff --git a/examples/royale/JewelExample/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml b/examples/royale/JewelExample/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
index 285cebb..6bda7cd 100644
--- a/examples/royale/JewelExample/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
+++ b/examples/royale/JewelExample/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
@@ -39,7 +39,7 @@ limitations under the License.
         <js:ItemRendererDataBinding />
     </mdl:beads>
     
-    <js:Icon text="{navlink.icon}" material="true" visible="{navlink.icon != null}"/>
+    <js:FontIcon text="{navlink.icon}" material="true" visible="{navlink.icon != null}"/>
 
     <html:Span text="{navlink.label}"/>
     
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ToggleButton.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ToggleButton.as
index 1bcfc64..0bbf46e 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ToggleButton.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ToggleButton.as
@@ -19,12 +19,9 @@
 package org.apache.royale.jewel
 {
 	import org.apache.royale.core.ISelectable;
-	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.IToggleButtonModel;
-	import org.apache.royale.core.IUIBase;
-	import org.apache.royale.core.ValuesManager;
-	import org.apache.royale.events.IEventDispatcher;
     import org.apache.royale.events.Event;
+    import org.apache.royale.core.IIcon;
 
     COMPILE::SWF
     {
@@ -61,7 +58,7 @@ package org.apache.royale.jewel
     [Event(name="change", type="org.apache.royale.events.Event")]
 
     /**
-     *  The ToggleButton class is a TextButton that supports
+     *  The ToggleButton class is a Button that supports
      *  a selected property.
      *
      *  @langversion 3.0
@@ -122,7 +119,7 @@ package org.apache.royale.jewel
             COMPILE::SWF
             {
                 IToggleButtonModel(model).selected = value;
-                internalSelected()
+                internalSelected();
                 dispatchEvent(new Event("change"));
             }
             COMPILE::JS
@@ -183,6 +180,22 @@ package org.apache.royale.jewel
                     toggleClass("selected", _selected);
                                 
             }
+
+            if(icon && icon is ISelectable)
+            {
+               var selectableIcon:ISelectable = icon as ISelectable;
+               selectableIcon.selected = _selected;
+            }
+        }
+
+        override public function set icon(value:IIcon):void
+        {
+            super.icon = value;
+            if(icon && icon is ISelectable)
+            {
+               var selectableIcon:ISelectable = icon as ISelectable;
+               selectableIcon.selected = _selected;
+            }
         }
 
 	}