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"));
                }
 
         /**

Reply via email to