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 9fe568117f Add itemOpen event to ADG
     new d2f3528743 Merge branch 'develop' of 
https://github.com/apache/royale-asjs into develop
9fe568117f is described below

commit 9fe568117f22b255e069be238343fc073b8b4742
Author: Yishay Weiss <[email protected]>
AuthorDate: Thu Apr 7 23:44:36 2022 +0300

    Add itemOpen event to ADG
---
 .../main/royale/mx/controls/AdvancedDataGrid.as    |  2 +-
 ...vancedDataGridSingleSelectionMouseController.as | 24 ++++++++++++++++++----
 2 files changed, 21 insertions(+), 5 deletions(-)

diff --git 
a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/AdvancedDataGrid.as 
b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/AdvancedDataGrid.as
index 409aa74c95..b8b64759de 100644
--- 
a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/AdvancedDataGrid.as
+++ 
b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/AdvancedDataGrid.as
@@ -126,7 +126,7 @@ use namespace mx_internal;
 *  @playerversion AIR 1.1
 *  @productversion Royale 0.9.4
 */
-//[Event(name="itemOpen", type="mx.events.AdvancedDataGridEvent")]
+[Event(name="itemOpen", type="mx.events.AdvancedDataGridEvent")]
 
 /**
 *  Dispatched when a tree branch open or close operation is initiated.
diff --git 
a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/AdvancedDataGridSingleSelectionMouseController.as
 
b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/AdvancedDataGridSingleSelectionMouseController.as
index 91161e2038..0ff9800e4e 100644
--- 
a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/AdvancedDataGridSingleSelectionMouseController.as
+++ 
b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/AdvancedDataGridSingleSelectionMouseController.as
@@ -30,6 +30,10 @@ package mx.controls.advancedDataGridClasses
        import org.apache.royale.events.ItemClickedEvent;
        import 
org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController;
        import mx.supportClasses.IFoldable;
+       import mx.events.AdvancedDataGridEvent;
+       import org.apache.royale.core.IHasDataField;
+       import mx.controls.listClasses.IListItemRenderer;
+       import org.apache.royale.utils.sendEvent;
 
        /**
         *  The TreeSingleSelectionMouseController class is a controller for 
@@ -73,9 +77,13 @@ package mx.controls.advancedDataGridClasses
                 */
                override protected function 
selectedHandler(event:ItemClickedEvent):void
                {
+                       var adg:AdvancedDataGrid =  (_strand as 
AdvancedDataGridColumnList).grid as AdvancedDataGrid;
+                       var lists:Array = (adg.view as 
AdvancedDataGridView).columnLists;
+                       for (var i:int = 0; i < lists.length; i++)
+                               if (lists[i] == _strand) break;
+
                        var node:Object = event.data;
                        
-                       var adg:AdvancedDataGrid =  (_strand as 
AdvancedDataGridColumnList).grid as AdvancedDataGrid;
                        var hasChildren:Boolean = adg.hasChildren(node);
                        var foldableTarget:IFoldable = event.target as 
IFoldable;
                        if (hasChildren && (foldableTarget is IFoldable))
@@ -84,6 +92,17 @@ package mx.controls.advancedDataGridClasses
                                        adg.closeNode(node);
                                } else if (foldableTarget.canUnfold) {
                                        adg.openNode(node);
+                                       var adgEvent:AdvancedDataGridEvent = 
new AdvancedDataGridEvent(
+                                               AdvancedDataGridEvent.ITEM_OPEN,
+                                               false,
+                                               false,
+                                               i, 
+                                               (adg.columns[i] as 
IHasDataField).dataField,
+                                               event.index,
+                                               null,
+                                               event.target as 
IListItemRenderer
+                                               );
+                                       sendEvent(adg, adgEvent);
                                }
                        }
 
@@ -94,9 +113,6 @@ package mx.controls.advancedDataGridClasses
                        
                        var newEvent:ListEvent = new 
ListEvent(ListEvent.ITEM_CLICK);
                        newEvent.rowIndex = event.index;
-                                       var lists:Array = (adg.view as 
AdvancedDataGridView).columnLists;
-                                       for (var i:int = 0; i < lists.length; 
i++)
-                                               if (lists[i] == _strand) break;
                                        newEvent.columnIndex = i;
                                        newEvent.itemRenderer = 
event.currentTarget;
                        IEventDispatcher(_strand).dispatchEvent(newEvent);

Reply via email to