You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by yi...@apache.org on 2020/12/13 12:54:54 UTC

[royale-asjs] branch develop updated: rendererFunction returns a factory, not an instance

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

yishayw 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 3c0da15  rendererFunction returns a factory, not an instance
     new a4a3f4c  Merge branch 'develop' of https://github.com/apache/royale-asjs into develop
3c0da15 is described below

commit 3c0da159c319adc40e2be4ac722f802497201bde
Author: Yishay Weiss <yi...@hotmail.com>
AuthorDate: Sun Dec 13 14:54:19 2020 +0200

    rendererFunction returns a factory, not an instance
---
 .../mx/controls/listClasses/DataItemRendererFactoryForIListData.as    | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/listClasses/DataItemRendererFactoryForIListData.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/listClasses/DataItemRendererFactoryForIListData.as
index 4dd0a18..aa60789 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/listClasses/DataItemRendererFactoryForIListData.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/listClasses/DataItemRendererFactoryForIListData.as
@@ -19,6 +19,7 @@
 package mx.controls.listClasses
 {
     import mx.collections.ArrayList;
+    import org.apache.royale.core.IFactory;
     import mx.collections.IList;
     
     import org.apache.royale.core.IBead;
@@ -119,14 +120,13 @@ package mx.controls.listClasses
 
 	override protected function createAllItemRenderers(dataGroup:IItemRendererOwnerView):void
 	{
-		var itemRendererFunction:Function;
 		var functionBead:ItemRendererFunctionBead = _strand.getBeadByType(ItemRendererFunctionBead) as ItemRendererFunctionBead;
 		var rendererFunction:Function = functionBead ? functionBead.itemRendererFunction : null;
 		var n:int = dataProviderLength; 
 		for (var i:int = 0; i < n; i++)
 		{				
 			var data:Object = getItemAt(i);
-			var ir:IIndexedItemRenderer = rendererFunction ? rendererFunction(data) as IIndexedItemRenderer :
+			var ir:IIndexedItemRenderer = rendererFunction ? (rendererFunction(data) as IFactory).newInstance() as IIndexedItemRenderer :
 				itemRendererFactory.createItemRenderer() as IIndexedItemRenderer;
 
 			dataGroup.addItemRenderer(ir, false);