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 7fd7d35 Fix remove and update renderers in List component 7fd7d35 is described below commit 7fd7d359e75c16309242e1434821297fdd926581 Author: Carlos Rovira <carlosrov...@apache.org> AuthorDate: Tue Aug 28 20:16:57 2018 +0200 Fix remove and update renderers in List component --- .../src/main/royale/ListPlayGround.mxml | 5 +++-- .../src/main/royale/TablePlayGround.mxml | 8 +++---- .../src/main/royale/models/ListsModel.as | 18 +++++++-------- .../Jewel/src/main/resources/jewel-manifest.xml | 4 ++-- .../AddListItemRendererForArrayListData.as | 4 ++-- .../AddTableItemRendererForArrayListData.as | 4 ++-- .../RemoveAllItemRendererForArrayListData.as | 2 +- ...s => RemoveListItemRendererForArrayListData.as} | 18 +++++++-------- ...s => UpdateListItemRendererForArrayListData.as} | 26 +++++++++++----------- .../royale/jewel/itemRenderers/ListItemRenderer.as | 8 +++---- 10 files changed, 49 insertions(+), 48 deletions(-) diff --git a/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml index 25def76..a55f912 100644 --- a/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml +++ b/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml @@ -78,6 +78,7 @@ limitations under the License. { var item:IconListVO = (iconList.dataProvider as ArrayList).getItemAt(0) as IconListVO; item.label = "What??"; + item.icon = MaterialIconType.ACCESSIBILITY; (iconList.dataProvider as ArrayList).itemUpdated(item); } @@ -130,8 +131,8 @@ limitations under the License. sourcePropertyName="iconListData" destinationPropertyName="dataProvider" /> <j:AddListItemRendererForArrayListData/> - <j:DynamicRemoveItemRendererForArrayListData/> - <j:DynamicUpdateItemRendererForArrayListData/> + <j:RemoveListItemRendererForArrayListData/> + <j:UpdateListItemRendererForArrayListData/> <j:RemoveAllItemRendererForArrayListData/> </j:beads> </j:List> diff --git a/examples/royale/JewelExample/src/main/royale/TablePlayGround.mxml b/examples/royale/JewelExample/src/main/royale/TablePlayGround.mxml index a2d5bf5..2a57edd 100644 --- a/examples/royale/JewelExample/src/main/royale/TablePlayGround.mxml +++ b/examples/royale/JewelExample/src/main/royale/TablePlayGround.mxml @@ -38,7 +38,7 @@ limitations under the License. <j:Card> <html:H3 text="Jewel SimpleTable"/> - <j:SimpleTable width="500"> + <j:SimpleTable> <j:THead> <j:TableRow> <j:TableHeaderCell width="48"> @@ -185,15 +185,15 @@ limitations under the License. <html:H3 text="Jewel Table"/> <j:HGroup gap="3"> <j:VGroup gap="3"> - <j:Table id="table" width="440" change="onChange(event)" dataProvider="{tablesModel.guitarrists}"> + <j:Table id="table" change="onChange(event)" dataProvider="{tablesModel.guitarrists}"> <j:TableColumn dataField="icon" label="" align="center" itemRenderer="itemRenderers.TableCellCloseIconItemRenderer"/> <j:TableColumn dataField="guitarrist" label="Guitarrist"/> <j:TableColumn dataField="album" label="Album" align="center" columnLabelAlign="center"/> <j:TableColumn dataField="year" label="Release Year" align="right" columnLabelAlign="right"/> <j:beads> <j:AddTableItemRendererForArrayListData/> - <j:DynamicRemoveItemRendererForArrayListData/> - <j:DynamicUpdateItemRendererForArrayListData/> + <!-- <j:RemoveTableItemRendererForArrayListData/> + <j:UpdateTableItemRendererForArrayListData/> --> <j:RemoveAllItemRendererForArrayListData/> </j:beads> </j:Table> diff --git a/examples/royale/JewelExample/src/main/royale/models/ListsModel.as b/examples/royale/JewelExample/src/main/royale/models/ListsModel.as index 880951f..b76d480 100644 --- a/examples/royale/JewelExample/src/main/royale/models/ListsModel.as +++ b/examples/royale/JewelExample/src/main/royale/models/ListsModel.as @@ -42,15 +42,15 @@ package models } private var _avengers:ArrayList = new ArrayList([ - {nickname: "Iron Man"}, - {nickname: "Hulk"}, - {nickname: "Thor"}, - {nickname: "Captain America"}, - {nickname: "Black Widow"}, - {nickname: "Hawkeye"}, - {nickname: "Vision"}, - {nickname: "Scarlet Witch"}, - {nickname: "Spiderman"} + {nickname: "Iron Man", value: 0}, + {nickname: "Hulk", value: 1}, + {nickname: "Thor", value: 2}, + {nickname: "Captain America", value: 3}, + {nickname: "Black Widow", value: 4}, + {nickname: "Hawkeye", value: 5}, + {nickname: "Vision", value: 6}, + {nickname: "Scarlet Witch", value: 7}, + {nickname: "Spiderman", value: 8} ]); public function get avengers():ArrayList { diff --git a/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml b/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml index 39c245b..4b61bce 100644 --- a/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml +++ b/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml @@ -124,8 +124,8 @@ <component id="TableItemRendererFactoryForCollectionView" class="org.apache.royale.jewel.beads.itemRenderers.TableItemRendererFactoryForCollectionView"/> <component id="AddListItemRendererForArrayListData" class="org.apache.royale.jewel.beads.itemRenderers.AddListItemRendererForArrayListData" /> - <component id="DynamicRemoveItemRendererForArrayListData" class="org.apache.royale.jewel.beads.itemRenderers.DynamicRemoveItemRendererForArrayListData" /> - <component id="DynamicUpdateItemRendererForArrayListData" class="org.apache.royale.jewel.beads.itemRenderers.DynamicUpdateItemRendererForArrayListData" /> + <component id="RemoveListItemRendererForArrayListData" class="org.apache.royale.jewel.beads.itemRenderers.RemoveListItemRendererForArrayListData" /> + <component id="UpdateListItemRendererForArrayListData" class="org.apache.royale.jewel.beads.itemRenderers.UpdateListItemRendererForArrayListData" /> <component id="RemoveAllItemRendererForArrayListData" class="org.apache.royale.jewel.beads.itemRenderers.RemoveAllItemRendererForArrayListData" /> <component id="AddTableItemRendererForArrayListData" class="org.apache.royale.jewel.beads.itemRenderers.AddTableItemRendererForArrayListData" /> diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddListItemRendererForArrayListData.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddListItemRendererForArrayListData.as index 0d7aaed..fb6c538 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddListItemRendererForArrayListData.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddListItemRendererForArrayListData.as @@ -81,7 +81,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.8 + * @productversion Royale 0.9.3 */ protected function initComplete(event:Event):void { @@ -189,7 +189,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.8 + * @productversion Royale 0.9.3 */ public function get itemRendererFactory():IItemRendererClassFactory { diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddTableItemRendererForArrayListData.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddTableItemRendererForArrayListData.as index c48a8a2..35edbb8 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddTableItemRendererForArrayListData.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/AddTableItemRendererForArrayListData.as @@ -87,7 +87,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.8 + * @productversion Royale 0.9.3 */ protected function initComplete(event:Event):void { @@ -203,7 +203,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.8 + * @productversion Royale 0.9.3 */ public function get itemRendererFactory():IItemRendererClassFactory { diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveAllItemRendererForArrayListData.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveAllItemRendererForArrayListData.as index daec3cb..3a852f8 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveAllItemRendererForArrayListData.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveAllItemRendererForArrayListData.as @@ -73,7 +73,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.8 + * @productversion Royale 0.9.3 */ protected function initComplete(event:Event):void { diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/DynamicRemoveItemRendererForArrayListData.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveListItemRendererForArrayListData.as similarity index 92% rename from frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/DynamicRemoveItemRendererForArrayListData.as rename to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveListItemRendererForArrayListData.as index d9e772d..21146db 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/DynamicRemoveItemRendererForArrayListData.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveListItemRendererForArrayListData.as @@ -37,9 +37,9 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ - public class DynamicRemoveItemRendererForArrayListData implements IBead + public class RemoveListItemRendererForArrayListData implements IBead { /** * Constructor @@ -47,9 +47,9 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ - public function DynamicRemoveItemRendererForArrayListData() + public function RemoveListItemRendererForArrayListData() { } @@ -61,7 +61,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ public function set strand(value:IStrand):void { @@ -75,7 +75,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.8 + * @productversion Royale 0.9.3 */ protected function initComplete(event:Event):void { @@ -107,7 +107,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ protected function handleItemRemoved(event:CollectionEvent):void { @@ -135,7 +135,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ public function get dataProviderModel(): IDataProviderModel { @@ -154,7 +154,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ public function get itemRendererParent():IItemRendererParent { diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/DynamicUpdateItemRendererForArrayListData.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/UpdateListItemRendererForArrayListData.as similarity index 89% rename from frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/DynamicUpdateItemRendererForArrayListData.as rename to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/UpdateListItemRendererForArrayListData.as index 434f408..cf7fda2 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/DynamicUpdateItemRendererForArrayListData.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/UpdateListItemRendererForArrayListData.as @@ -36,9 +36,9 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ - public class DynamicUpdateItemRendererForArrayListData implements IBead + public class UpdateListItemRendererForArrayListData implements IBead { /** * Constructor @@ -46,9 +46,9 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ - public function DynamicUpdateItemRendererForArrayListData() + public function UpdateListItemRendererForArrayListData() { } @@ -62,7 +62,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ public function set strand(value:IStrand):void { @@ -76,7 +76,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.8 + * @productversion Royale 0.9.3 */ protected function initComplete(event:Event):void { @@ -101,21 +101,21 @@ package org.apache.royale.jewel.beads.itemRenderers return; // listen for individual items being added in the future. - dp.addEventListener(CollectionEvent.ITEM_UPDATED, handleItemAdded); + dp.addEventListener(CollectionEvent.ITEM_UPDATED, handleItemUpdated); } /** - * Handles the itemRemoved event by removing the item. + * Handles the itemUpdated event by updating the item. * * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ - protected function handleItemAdded(event:CollectionEvent):void + protected function handleItemUpdated(event:CollectionEvent):void { var ir:ISelectableItemRenderer = itemRendererParent.getItemRendererForIndex(event.index) as ISelectableItemRenderer; - + setData(ir, event.item, event.index); (_strand as IEventDispatcher).dispatchEvent(new Event("layoutNeeded")); @@ -130,7 +130,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ public function get dataProviderModel():IDataProviderModel { @@ -149,7 +149,7 @@ package org.apache.royale.jewel.beads.itemRenderers * @langversion 3.0 * @playerversion Flash 10.2 * @playerversion AIR 2.6 - * @productversion Royale 0.9.0 + * @productversion Royale 0.9.3 */ public function get itemRendererParent():IItemRendererParent { diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as index 51a52d4..a08a4b4 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as @@ -19,9 +19,8 @@ package org.apache.royale.jewel.itemRenderers { import org.apache.royale.core.StyledMXMLItemRenderer; - import org.apache.royale.utils.ClassSelectorList; + import org.apache.royale.events.Event; import org.apache.royale.jewel.supportClasses.util.getLabelFromData; - import org.apache.royale.events.MouseEvent; COMPILE::JS { @@ -72,13 +71,13 @@ package org.apache.royale.jewel.itemRenderers public function set text(value:String):void { - _text = value; + _text = value; COMPILE::JS { if(textNode != null) { - textNode.nodeValue = text; + textNode.nodeValue = _text; } } } @@ -100,6 +99,7 @@ package org.apache.royale.jewel.itemRenderers { super.data = value; text = getLabelFromData(this, value); + dispatchEvent(new Event("dataChange")); } /**