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 a79d913  handle column visibility changing.  Should fix #645
a79d913 is described below

commit a79d9138689b036c14eb9aef26590232b9fbc5e0
Author: Alex Harui <[email protected]>
AuthorDate: Thu Jan 2 00:24:09 2020 -0800

    handle column visibility changing.  Should fix #645
---
 .../mx/controls/advancedDataGridClasses/AdvancedDataGridColumn.as      | 3 +++
 .../MXRoyale/src/main/royale/mx/controls/beads/AdvancedDataGridView.as | 3 ++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git 
a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/AdvancedDataGridColumn.as
 
b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/AdvancedDataGridColumn.as
index 0cfeb0a..88aa2bf 100644
--- 
a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/AdvancedDataGridColumn.as
+++ 
b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/advancedDataGridClasses/AdvancedDataGridColumn.as
@@ -1161,6 +1161,9 @@ public class AdvancedDataGridColumn extends DataGridColumn
             if (owner)
             {
                 (owner as AdvancedDataGrid).columnsInvalid();
+                // columns invisible at init don't get a dataprovider so 
+                // force assignment by faking a dp change
+                (owner as AdvancedDataGrid).model.dispatchEvent(new 
Event("dataProviderChanged"));
                 
                 //owner.invalidateProperties();
                 //owner.invalidateSize();
diff --git 
a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/AdvancedDataGridView.as
 
b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/AdvancedDataGridView.as
index 5074bcb..378d3a3 100644
--- 
a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/AdvancedDataGridView.as
+++ 
b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/beads/AdvancedDataGridView.as
@@ -97,6 +97,7 @@ package mx.controls.beads
             var sharedModel:IDataGridModel = (host.model as IDataGridModel);
             
             columnLists.length = 0;
+            visibleColumns.length = 0;
             for (var i:int=0; i < sharedModel.columns.length; i++)
             {
                 var col:AdvancedDataGridColumn = sharedModel.columns[i] as 
AdvancedDataGridColumn;
@@ -123,7 +124,7 @@ package mx.controls.beads
                 (header as DataGridButtonBar).dataProvider = groupedColumns;
             }
             else
-                (header as DataGridButtonBar).dataProvider = visibleColumns;
+                (header as DataGridButtonBar).dataProvider = 
visibleColumns.slice();
             
             host.dispatchEvent(new Event("layoutNeeded"));
         }

Reply via email to