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

[royale-asjs] branch develop updated: fix some events for Spark List. Might fix #830

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

aharui 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 12a0329  fix some events for Spark List.  Might fix #830
12a0329 is described below

commit 12a0329ad5967eeda2d9973100f630ff29bf39be
Author: Alex Harui <ah...@apache.org>
AuthorDate: Thu May 14 23:00:48 2020 -0700

    fix some events for Spark List.  Might fix #830
---
 .../src/main/royale/mx/controls/listClasses/ListItemRenderer.as  | 9 +++++++++
 frameworks/projects/SparkRoyale/src/main/resources/defaults.css  | 4 ++--
 .../src/main/royale/spark/components/supportClasses/ListBase.as  | 9 +++++++++
 3 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/listClasses/ListItemRenderer.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/listClasses/ListItemRenderer.as
index e5bb3ec..8644385 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/listClasses/ListItemRenderer.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/listClasses/ListItemRenderer.as
@@ -75,6 +75,15 @@ public class ListItemRenderer extends UIComponent implements IListItemRenderer,
             typeNames = "ListItemRenderer";
             isAbsolute = false;
         }
+        addEventListener(MouseEvent.DOUBLE_CLICK, doubleClickHandler);
+    }
+
+    private function doubleClickHandler(event:MouseEvent):void
+    {
+        var newEvent:ListEvent = new ListEvent(ListEvent.ITEM_DOUBLE_CLICK);
+        newEvent.rowIndex = index;
+		newEvent.columnIndex = 0;
+		getComponentDispatcher().dispatchEvent(newEvent);        
     }
 
     COMPILE::SWF
diff --git a/frameworks/projects/SparkRoyale/src/main/resources/defaults.css b/frameworks/projects/SparkRoyale/src/main/resources/defaults.css
index c80208d..7a1d0d0 100644
--- a/frameworks/projects/SparkRoyale/src/main/resources/defaults.css
+++ b/frameworks/projects/SparkRoyale/src/main/resources/defaults.css
@@ -75,7 +75,7 @@ DataGroup
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VirtualListVerticalLayout");
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.SelectableItemRendererClassFactory");
 	IItemRenderer: ClassReference("mx.controls.listClasses.ListItemRenderer");
-	IItemRendererInitializer: ClassReference("org.apache.royale.html.beads.ListItemRendererInitializer");
+	IItemRendererInitializer: ClassReference("mx.controls.beads.ListItemRendererInitializer");
 	ISelectableItemRenderer: ClassReference("org.apache.royale.html.beads.SolidBackgroundSelectableItemRendererBead");
 	IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
 	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
@@ -104,7 +104,7 @@ NonVirtualVDataGroup
 	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout");
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.SelectableItemRendererClassFactory");
-	IItemRendererInitializer: ClassReference("org.apache.royale.html.beads.ListItemRendererInitializer");
+	IItemRendererInitializer: ClassReference("mx.controls.beads.ListItemRendererInitializer");
 	ISelectableItemRenderer: ClassReference("org.apache.royale.html.beads.SolidBackgroundSelectableItemRendererBead");
 	IItemRenderer: ClassReference("mx.controls.listClasses.ListItemRenderer");
 	IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
diff --git a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/supportClasses/ListBase.as b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/supportClasses/ListBase.as
index 26df278..b9b393f 100644
--- a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/supportClasses/ListBase.as
+++ b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/supportClasses/ListBase.as
@@ -2190,6 +2190,10 @@ public class ListBase  extends SkinnableContainer
         super.addedToParent();
         if (requireSelection && selectedIndex == -1)
             selectedIndex = 0;
+		((view as SparkContainerView).contentView as DataGroup).addEventListener("change", redispatcher);
+		((view as SparkContainerView).contentView as DataGroup).addEventListener("itemClick", redispatcher);
+		((view as SparkContainerView).contentView as DataGroup).addEventListener("doubleClick", redispatcher);
+		
         setActualSize(getExplicitOrMeasuredWidth(), getExplicitOrMeasuredHeight());
     }
     
@@ -2198,6 +2202,11 @@ public class ListBase  extends SkinnableContainer
         super.setActualSize(w, h);
         ((view as SparkContainerView).contentView as DataGroup).setActualSize(w, h);
     }
+
+	private function redispatcher(event:Event):void
+	{
+		dispatchEvent(new Event(event.type));
+	}
 }
 
 }