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

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


The following commit(s) were added to 
refs/heads/feature/dataprovider-extensiblity by this push:
     new 824f763  finish refactor of table mapper removing 
dataProviderChangeHandler since now the basic factory can be conveniently 
extended
824f763 is described below

commit 824f763941e31d85c27daf1c5eeafbb69355b161
Author: Carlos Rovira <[email protected]>
AuthorDate: Fri Jul 24 17:23:29 2020 +0200

    finish refactor of table mapper removing dataProviderChangeHandler since 
now the basic factory can be conveniently extended
---
 .../TableItemRendererFactoryForCollectionView.as   | 65 ++++++++--------------
 1 file changed, 23 insertions(+), 42 deletions(-)

diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/TableItemRendererFactoryForCollectionView.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/TableItemRendererFactoryForCollectionView.as
index c7efcfa..b68b0f6 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/TableItemRendererFactoryForCollectionView.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/TableItemRendererFactoryForCollectionView.as
@@ -71,47 +71,18 @@ package org.apache.royale.jewel.beads.itemRenderers
                        return dataProviderModel as TableModel;
                }
 
-        /**
-                * @private
-                * @royaleignorecoercion 
org.apache.royale.collections.ICollectionView
-                * @royaleignorecoercion 
org.apache.royale.jewel.supportClasses.list.IListPresentationModel
-                * @royaleignorecoercion 
org.apache.royale.core.IIndexedItemRenderer
-                * @royaleignorecoercion 
org.apache.royale.events.IEventDispatcher
-                */
-               override protected function 
dataProviderChangeHandler(event:Event):void
-               {
-                       // -- 1) CLEANING PHASE
-            if (!model)
-                               return;
-                       if (!model.dataProvider)
-                       {
-                               model.selectedIndex = -1;
-                               model.selectedItem = null;
-                               model.selectedItemProperty = null;
-
-                               // TBodyContentArea - remove data items
-                               removeAllItemRenderers(dataGroup);
-                               return;
-                       }
-                       // remove this and better add beads when needed
-                       // listen for individual items being added in the 
future.
-                       // var dped:IEventDispatcher = dp as IEventDispatcher;
-                       // dped.addEventListener(CollectionEvent.ITEM_ADDED, 
itemAddedHandler);
-                       // dped.addEventListener(CollectionEvent.ITEM_REMOVED, 
itemRemovedHandler);
-                       // dped.addEventListener(CollectionEvent.ITEM_UPDATED, 
itemUpdatedHandler);
-                       
-            // TBodyContentArea - remove data items
-                       removeAllItemRenderers(dataGroup);
-                       
-            // THEAD - remove header items
+               /**
+         *  Remove all itemrenderers
+         * 
+         *  @royaleignorecoercion org.apache.royale.core.IItemRendererOwnerView
+         */
+        override protected function 
removeAllItemRenderers(dataGroup:IItemRendererOwnerView):void
+        {
+                       // TBodyContentArea - remove data items
+            super.removeAllItemRenderers(dataGroup);
+
+                       // THEAD - remove header items
                        removeElements(view.thead);
-
-                       if(!model.columns)
-                               return;
-            
-                       createAllItemRenderers(dataGroup);
-                       
-                       dispatchItemCreatedEvent();
         }
 
                /**
@@ -122,6 +93,9 @@ package org.apache.royale.jewel.beads.itemRenderers
                 */
                override protected function 
createAllItemRenderers(dataGroup:IItemRendererOwnerView):void
                {
+                       if(!model.columns)
+                               return;
+
                        // -- add the header
             createHeader();
                        
@@ -175,7 +149,11 @@ package org.apache.royale.jewel.beads.itemRenderers
                        }
                }
 
-               public function removeElements(container: IParent):void
+               /**
+                *  remove all elements in a container.
+                *  Needed to remove THEAD contents as part of cleaning
+                */
+               protected function removeElements(container: IParent):void
                {
                        if(container != null)
                        {
@@ -186,7 +164,10 @@ package org.apache.royale.jewel.beads.itemRenderers
                        }
                }
 
-        private function createHeader():void
+               /**
+                * Create the THEAD in the creation phase with the columns info
+                */
+        protected function createHeader():void
                {
             var createHeaderRow:Boolean = false;
             var test:TableColumn;

Reply via email to