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/08/28 11:11:52 UTC

[royale-asjs] branch develop updated: Improve ddl & cmb examples

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 c95fd4f  Improve ddl & cmb examples
c95fd4f is described below

commit c95fd4ffb44daac5e1a275c398c5cffadede1947
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Tue Aug 28 13:11:47 2018 +0200

    Improve ddl & cmb examples
---
 .../src/main/royale/DropDownListPlayGround.mxml    | 64 +++++++++++++---------
 .../src/main/royale/ListPlayGround.mxml            |  6 +-
 .../royale/org/apache/royale/jewel/ComboBox.as     | 13 +++++
 .../royale/jewel/beads/views/DropDownListView.as   |  9 +--
 4 files changed, 59 insertions(+), 33 deletions(-)

diff --git a/examples/royale/JewelExample/src/main/royale/DropDownListPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/DropDownListPlayGround.mxml
index e57c3e2..0512bf5 100644
--- a/examples/royale/JewelExample/src/main/royale/DropDownListPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/DropDownListPlayGround.mxml
@@ -24,23 +24,21 @@ limitations under the License.
 				  xmlns:models="models.*">
     
 	<fx:Script>
-		<![CDATA[      
-            import org.apache.royale.collections.ArrayList;
-
+		<![CDATA[
             private function watchmenDropDownListHandler(event:Event):void {
-                watchmenDropDownListResult.html = "<strong>DropDownList selectedItem:</strong> " + event.target.selectedItem;
+                watchmenDropDownListResult.html = "<strong>DropDownList selectedItem:</strong> " + (event.target as DropDownList).selectedItem;
             }
 
             private function watchmenComboBoxSelectedItem(event:Event):void {
-				watchmenComboBoxResult.html = "<strong>ComboBox selectedItem:</strong> " + event.target.selectedItem;
+				watchmenComboBoxResult.html = "<strong>ComboBox selectedItem:</strong> " + (event.target as ComboBox).selectedItem;
             }
             
-			private function avengerswatchmenDropDownListHandler(event:Event):void {
-                avengersDropDownListResult.html = "<strong>DropDownList selectedItem:</strong> " + event.target.selectedItem.nickname;
+			private function avengersDropDownListHandler(event:Event):void {
+                avengersDropDownListResult.html = "<strong>DropDownList selectedItem:</strong> " + (event.target as DropDownList).selectedItem.nickname;
             }
 
-            private function avengerswatchmenComboBoxSelectedItem(event:Event):void {
-				avengersComboBoxResult.html = "<strong>ComboBox selectedItem:</strong> " + event.target.selectedItem.nickname;
+            private function avengersComboBoxSelectedItem(event:Event):void {
+				avengersComboBoxResult.html = "<strong>ComboBox selectedItem:</strong> " + (event.target as ComboBox).selectedItem.nickname;
             }
 		]]>
 	</fx:Script>
@@ -54,31 +52,39 @@ limitations under the License.
 	</j:model>
 	
 	<j:Grid gap="true" itemsVerticalAlign="itemsSameHeight">
-		<j:GridCell desktopNumerator="1" desktopDenominator="2"
-					tabletNumerator="1" tabletDenominator="2"
+		<j:GridCell desktopNumerator="1" desktopDenominator="1"
+					tabletNumerator="1" tabletDenominator="1"
 					phoneNumerator="1" phoneDenominator="1">
 			<j:Card>
 				
-				<html:H3 text="Jewel DropDownList"/>
+				<html:H3 text="Jewel DropDownList (String Collection)"/>
 				
 				<j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
-					<j:DropDownList dataProvider="{listModel.watchmen}" change="watchmenDropDownListHandler(event)"/>
+					<j:DropDownList id="watchmenDropDownList" dataProvider="{listModel.watchmen}" change="watchmenDropDownListHandler(event)"/>
+					<j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
+						<j:Label text="Select Index: "/>
+						<j:NumericStepper valueChange="watchmenDropDownList.selectedIndex = event.target.value" minimum="0" maximum="5"/>
+					</j:HGroup>
 					<j:Label id="watchmenDropDownListResult" html="&lt;strong>DropDownList selectedItem:&lt;/strong> "/>
 				</j:HGroup>
 			</j:Card>
 
 		</j:GridCell>
 
-		<j:GridCell desktopNumerator="1" desktopDenominator="2"
-					tabletNumerator="1" tabletDenominator="2"
+		<j:GridCell desktopNumerator="1" desktopDenominator="1"
+					tabletNumerator="1" tabletDenominator="1"
 					phoneNumerator="1" phoneDenominator="1">
 
 			<j:Card>
 				
-				<html:H3 text="Jewel ComboBox"/>
+				<html:H3 text="Jewel ComboBox (String Collection)"/>
 				
 				<j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
-					<j:ComboBox dataProvider="{listModel.watchmen}" change="watchmenComboBoxSelectedItem(event)"/>
+					<j:ComboBox id="watchmenComboBox" dataProvider="{listModel.watchmen}" change="watchmenComboBoxSelectedItem(event)"/>
+					<j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
+						<j:Label text="Select Index: "/>
+						<j:NumericStepper valueChange="watchmenComboBox.selectedIndex = event.target.value" minimum="0" maximum="5"/>
+					</j:HGroup>
 					<j:Label id="watchmenComboBoxResult" html="&lt;strong>ComboBox selectedItem:&lt;/strong> "/>
 				</j:HGroup>
 				
@@ -87,15 +93,19 @@ limitations under the License.
 	</j:Grid>
 	
 	<j:Grid gap="true" itemsVerticalAlign="itemsSameHeight">
-		<j:GridCell desktopNumerator="1" desktopDenominator="2"
-					tabletNumerator="1" tabletDenominator="2"
+		<j:GridCell desktopNumerator="1" desktopDenominator="1"
+					tabletNumerator="1" tabletDenominator="1"
 					phoneNumerator="1" phoneDenominator="1">
 			<j:Card>
 				
-				<html:H3 text="Jewel DropDownList"/>
+				<html:H3 text="Jewel DropDownList (Object Collection)"/>
 				
 				<j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
-					<j:DropDownList labelField="nickname" dataProvider="{listModel.avengers}" change="avengerswatchmenDropDownListHandler(event)"/>
+					<j:DropDownList id="avengersDropDownList" labelField="nickname" dataProvider="{listModel.avengers}" change="avengersDropDownListHandler(event)"/>
+					<j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
+						<j:Label text="Select Index: "/>
+						<j:NumericStepper valueChange="avengersDropDownList.selectedIndex = event.target.value" minimum="0" maximum="8"/>
+					</j:HGroup>
 					<j:Label id="avengersDropDownListResult" html="&lt;strong>DropDownList selectedItem:&lt;/strong> "/>
 				</j:HGroup>
 
@@ -103,16 +113,20 @@ limitations under the License.
 
 		</j:GridCell>
 
-		<j:GridCell desktopNumerator="1" desktopDenominator="2"
-					tabletNumerator="1" tabletDenominator="2"
+		<j:GridCell desktopNumerator="1" desktopDenominator="1"
+					tabletNumerator="1" tabletDenominator="1"
 					phoneNumerator="1" phoneDenominator="1">
 
 			<j:Card>
 				
-				<html:H3 text="Jewel ComboBox"/>
+				<html:H3 text="Jewel ComboBox (Object Collection)"/>
 				
 				<j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
-					<j:ComboBox labelField="nickname" dataProvider="{listModel.avengers}" change="avengerswatchmenComboBoxSelectedItem(event)"/>
+					<j:ComboBox id="avengersComboBox" labelField="nickname" dataProvider="{listModel.avengers}" change="avengersComboBoxSelectedItem(event)"/>
+					<j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
+						<j:Label text="Select Index: "/>
+						<j:NumericStepper valueChange="avengersComboBox.selectedIndex = event.target.value" minimum="0" maximum="8"/>
+					</j:HGroup>
 					<j:Label id="avengersComboBoxResult" html="&lt;strong>ComboBox selectedItem:&lt;/strong> "/>
 				</j:HGroup>
 				
diff --git a/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml
index 3fcdd5e..49aecdb 100644
--- a/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml
@@ -110,7 +110,11 @@ limitations under the License.
 					</j:beads>
 				</j:List>
 				<j:Label id="selected"/>
-				<j:Button text="Assign new data" emphasis="{Button.PRIMARY}" click="assignNewData()"/>
+				<j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
+					<j:Label text="Select List Index: "/>
+					<j:NumericStepper valueChange="list.selectedIndex = event.target.value" minimum="0" maximum="11"/>
+				</j:HGroup>
+				<j:Button text="Assign new data" click="assignNewData()"/>
 			</j:Card>
 		</j:GridCell>
 
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ComboBox.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ComboBox.as
index e329e29..f108c59 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ComboBox.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ComboBox.as
@@ -25,6 +25,19 @@ package org.apache.royale.jewel
 	import org.apache.royale.core.IListPresentationModel;
 	import org.apache.royale.jewel.beads.models.ListPresentationModel;
 	
+	//--------------------------------------
+    //  Events
+    //--------------------------------------
+
+    /**
+     *  Dispatched when the user selects an item.
+     *
+     *  @toplevel
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
 	[Event(name="change", type="org.apache.royale.events.Event")]
 	
 	/**
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as
index 75fcf47..91aa324 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as
@@ -34,7 +34,7 @@ package org.apache.royale.jewel.beads.views
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
-     *  @productversion Royale 0.8
+     *  @productversion Royale 0.9.3
      */
     public class DropDownListView extends DataContainerView
     {
@@ -51,7 +51,7 @@ package org.apache.royale.jewel.beads.views
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.8
+         *  @productversion Royale 0.9.3
          */
         override public function set strand(value:IStrand):void
         {
@@ -113,11 +113,6 @@ package org.apache.royale.jewel.beads.views
             super.handleInitComplete(event);
             
             dataModel.addEventListener("selectedIndexChanged", selectionChangeHandler);
-
-            // COMPILE::JS
-            // {
-            //     host.element.classList.add("DropDownList");
-            // }
         }
 
         COMPILE::JS