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 <carlosrov...@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="<strong>DropDownList selectedItem:</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="<strong>ComboBox selectedItem:</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="<strong>DropDownList selectedItem:</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="<strong>ComboBox selectedItem:</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