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

harbs 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 9108e28  rest of the models
9108e28 is described below

commit 9108e2894e2fd2e28eb3b0598656d147d6b5364b
Author: Harbs <[email protected]>
AuthorDate: Mon Jan 3 12:59:44 2022 +0200

    rest of the models
---
 .../beads/TabsItemRendererFactoryForArrayData.as   |  3 +-
 .../mdl/beads/TabsItemRendererInitializer.as       |  5 ++-
 .../beads/controllers/DropDownListController.as    |  2 +-
 .../apache/royale/mdl/beads/views/SliderView.as    |  2 +-
 .../CollectionChangeUpdateForArrayListData.as      |  5 ++-
 .../beads/controllers/DropDownListController.as    | 50 ++++++++++++++++------
 .../html/customControls/beads/DataGridView.as      | 20 ++++++---
 .../beads/DataItemRendererFactoryForColumnData.as  | 11 ++++-
 8 files changed, 68 insertions(+), 30 deletions(-)

diff --git 
a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererFactoryForArrayData.as
 
b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererFactoryForArrayData.as
index 74bb8cf..041d236 100644
--- 
a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererFactoryForArrayData.as
+++ 
b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererFactoryForArrayData.as
@@ -36,6 +36,7 @@ package org.apache.royale.mdl.beads
     import org.apache.royale.mdl.supportClasses.ITabItemRenderer;
        import org.apache.royale.utils.loadBeadFromValuesManager;
        import org.apache.royale.core.IHasLabelField;
+       import org.apache.royale.html.util.getModelByType;
 
     
[Event(name="itemRendererCreated",type="org.apache.royale.events.ItemRendererEvent")]
 
@@ -97,7 +98,7 @@ package org.apache.royale.mdl.beads
         {
             
IEventDispatcher(_strand).removeEventListener("initComplete",finishSetup);
 
-            dataProviderModel = _strand.getBeadByType(ITabModel) as ITabModel;
+            dataProviderModel = getModelByType(_strand,ITabModel) as ITabModel;
             var listView:IListView = _strand.getBeadByType(IListView) as 
IListView;
             dataGroup = listView.dataGroup;
             dataProviderModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
diff --git 
a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererInitializer.as
 
b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererInitializer.as
index 2b15602..323edfe 100644
--- 
a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererInitializer.as
+++ 
b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererInitializer.as
@@ -34,6 +34,7 @@ package org.apache.royale.mdl.beads
     import org.apache.royale.mdl.supportClasses.ITabItemRenderer;
     import org.apache.royale.mdl.beads.models.ITabModel;
     import org.apache.royale.core.IHasLabelField;
+    import org.apache.royale.html.util.getModelByType;
     
        /**
         *  The ListItemRendererInitializer class initializes item renderers
@@ -82,9 +83,9 @@ package org.apache.royale.mdl.beads
                {       
                        _strand = value;
             var presentationModel:IListPresentationModel = 
_strand.getBeadByType(IListPresentationModel) as IListPresentationModel;        
    
-            dataProviderModel = _strand.getBeadByType(IDataProviderModel) as 
IDataProviderModel;
+            dataProviderModel = getModelByType(_strand,IDataProviderModel) as 
IDataProviderModel;
             _labelField = dataProviderModel.labelField;            
-            var model:ITabModel = _strand.getBeadByType(ITabModel) as 
ITabModel;
+            var model:ITabModel = getModelByType(_strand,ITabModel) as 
ITabModel;
             tabsIdField = model.tabIdField;
                }
                
diff --git 
a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/controllers/DropDownListController.as
 
b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/controllers/DropDownListController.as
index c8cdf99..f99cc53 100644
--- 
a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/controllers/DropDownListController.as
+++ 
b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/controllers/DropDownListController.as
@@ -73,7 +73,7 @@ package org.apache.royale.mdl.beads.controllers
 
             var dropDownList:DropDownList = (value as DropDownList);
 
-            model = _strand.getBeadByType(IDropDownListModel) as 
DropDownListModel;
+            model = dropDownList.model as DropDownListModel;
 
                        COMPILE::JS
             {
diff --git 
a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/views/SliderView.as
 
b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/views/SliderView.as
index 7d6c7b2..c9fe0ca 100644
--- 
a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/views/SliderView.as
+++ 
b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/views/SliderView.as
@@ -99,7 +99,7 @@ package org.apache.royale.mdl.beads.views
                        super.strand = value;
 
             var host:UIBase = UIBase(_strand);
-            rangeModel = _strand.getBeadByType(IBeadModel) as IRangeModel;
+            rangeModel = host.model as IRangeModel;
 
             COMPILE::SWF {
                                _track = new Button();
diff --git 
a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/CollectionChangeUpdateForArrayListData.as
 
b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/CollectionChangeUpdateForArrayListData.as
index f56e5de..b1aa089 100644
--- 
a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/CollectionChangeUpdateForArrayListData.as
+++ 
b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/CollectionChangeUpdateForArrayListData.as
@@ -28,6 +28,7 @@ package spark.components.beads
        import org.apache.royale.utils.sendBeadEvent;
        import mx.events.CollectionEvent;
        import spark.components.DataGroup;
+       import org.apache.royale.html.util.getModelByType;
 
 
     /**
@@ -87,7 +88,7 @@ package spark.components.beads
                        
IEventDispatcher(_strand).removeEventListener("initComplete", initComplete);
 
                        var contentView : DataGroup = 
(_strand.getBeadByType(IViewport) as IViewport).contentView as DataGroup;
-                       _dataProviderModel = 
contentView.getBeadByType(IDataProviderModel) as IDataProviderModel;
+                       _dataProviderModel = 
getModelByType(contentView,IDataProviderModel) as IDataProviderModel;
                        labelField = _dataProviderModel.labelField;
 
                        
dataProviderModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
@@ -151,7 +152,7 @@ package spark.components.beads
                {
                        if (_dataProviderModel == null) {
                                var contentView : DataGroup = 
(_strand.getBeadByType(IViewport) as IViewport).contentView as DataGroup;
-                               _dataProviderModel = 
contentView.getBeadByType(IDataProviderModel) as IDataProviderModel;
+                               _dataProviderModel = 
getModelByType(contentView,IDataProviderModel) as IDataProviderModel;
                        }
                        return _dataProviderModel;
                }
diff --git 
a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/controllers/DropDownListController.as
 
b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/controllers/DropDownListController.as
index 0530a1c..2925f02 100644
--- 
a/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/controllers/DropDownListController.as
+++ 
b/frameworks/projects/SparkRoyale/src/main/royale/spark/components/beads/controllers/DropDownListController.as
@@ -35,6 +35,7 @@ import org.apache.royale.events.MouseEvent;
 import org.apache.royale.geom.Point;
 import org.apache.royale.html.beads.IDropDownListView;
 import org.apache.royale.utils.PointUtils;
+import org.apache.royale.core.IStrandWithModel;
 
 /**
  *  @private
@@ -61,13 +62,21 @@ public class DropDownListController implements IBead, 
IBeadController
         _strand = value;
         
IEventDispatcher(value).addEventListener(org.apache.royale.events.MouseEvent.CLICK,
 clickHandler);
     }
-    
+
+    /**
+     * @royaleignorecoercion mx.core.UIComponent
+     * @royaleignorecoercion org.apache.royale.core.UIBase
+     * @royaleignorecoercion org.apache.royale.core.ISelectionModel
+     * @royaleignorecoercion org.apache.royale.html.beads.IDropDownListView
+     */
     private function 
clickHandler(event:org.apache.royale.events.MouseEvent):void
     {
+        var host:UIBase = _strand as UIBase;
+        var popup:UIComponent = viewBead.popUp as UIComponent;
         var viewBead:IDropDownListView = 
_strand.getBeadByType(IDropDownListView) as IDropDownListView;
-        var selectionModel:ISelectionModel = 
_strand.getBeadByType(ISelectionModel) as ISelectionModel;
-        var popUpModel:ISelectionModel = UIBase(viewBead.popUp).model as 
ISelectionModel;
-        IUIBase(viewBead.popUp).width = IUIBase(_strand).width;
+        var selectionModel:ISelectionModel = host.model as ISelectionModel;
+        var popUpModel:ISelectionModel = popup.model as ISelectionModel;
+        popup.width = host.width;
         popUpModel.dataProvider = selectionModel.dataProvider;
         popUpModel.labelField = selectionModel.labelField;// adds to display 
list as well
         popUpModel.selectedIndex = selectionModel.selectedIndex;
@@ -75,23 +84,29 @@ public class DropDownListController implements IBead, 
IBeadController
         
         if (viewBead.popUpVisible)
         {
-            var pt:Point = new Point(0, IUIBase(_strand).height);
+            var pt:Point = new Point(0, host.height);
             pt = PointUtils.localToGlobal(pt, _strand);
-            pt = PointUtils.globalToLocal(pt, IUIBase(viewBead.popUp).parent);
-            IUIBase(viewBead.popUp).x = pt.x;
-            IUIBase(viewBead.popUp).y = pt.y;
+            pt = PointUtils.globalToLocal(pt, popup.parent);
+            popup.x = pt.x;
+            popup.y = pt.y;
             IEventDispatcher(viewBead.popUp).addEventListener("change", 
changeHandler);
-            UIComponent(viewBead.popUp).callLater(registerDismissHandler);
+            popup.callLater(registerDismissHandler);
         }
     }
-    
-    // The browser send clicks to listeners added as the event is being 
dispatched, so if we don't
-    // defer, we pick up the click that opened the dropdown.
+    /**
+     * The browser send clicks to listeners added as the event is being 
dispatched, so if we don't
+     * defer, we pick up the click that opened the dropdown.
+     * @royaleignorecoercion org.apache.royale.core.IUIBase
+     * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
+     */
     private function registerDismissHandler():void
     {
         
IUIBase(_strand).topMostEventDispatcher.addEventListener(org.apache.royale.events.MouseEvent.CLICK,
 dismissHandler);
     }
-    
+    /**
+     * @royaleignorecoercion org.apache.royale.core.IUIBase
+     * @royaleignorecoercion org.apache.royale.html.beads.IDropDownListView
+     */
     private function 
dismissHandler(event:org.apache.royale.events.MouseEvent):void
     {
         if (event.target == _strand || event.target.parent == _strand) return;
@@ -101,11 +116,18 @@ public class DropDownListController implements IBead, 
IBeadController
         viewBead.popUpVisible = false;
     }
     
+    /**
+     * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
+     * @royaleignorecoercion org.apache.royale.core.IUIBase
+     * @royaleignorecoercion org.apache.royale.core.ISelectionModel
+     * @royaleignorecoercion org.apache.royale.events.IEventDispatcher
+     * @royaleignorecoercion org.apache.royale.html.beads.IDropDownListView
+     */
     private function changeHandler(event:Event):void
     {
         var viewBead:IDropDownListView = 
_strand.getBeadByType(IDropDownListView) as IDropDownListView;
         viewBead.popUpVisible = false;
-        var selectionModel:ISelectionModel = 
_strand.getBeadByType(ISelectionModel) as ISelectionModel;
+        var selectionModel:ISelectionModel = (_strand as 
IStrandWithModel).model as ISelectionModel;
         var popUpModel:ISelectionModel = UIBase(viewBead.popUp).model as 
ISelectionModel;
         selectionModel.selectedIndex = popUpModel.selectedIndex;
         IEventDispatcher(_strand).dispatchEvent(new Event("change"));
diff --git 
a/manualtests/DataGridXcompile/src/org/apache/royale/html/customControls/beads/DataGridView.as
 
b/manualtests/DataGridXcompile/src/org/apache/royale/html/customControls/beads/DataGridView.as
index 4d0a976..8c1dfc3 100644
--- 
a/manualtests/DataGridXcompile/src/org/apache/royale/html/customControls/beads/DataGridView.as
+++ 
b/manualtests/DataGridXcompile/src/org/apache/royale/html/customControls/beads/DataGridView.as
@@ -51,30 +51,36 @@ package org.apache.royale.html.customControls.beads
                private var columns:Array;
                
                private var _strand:IStrand;
+
+    /**
+     * @royaleignorecoercion org.apache.royale.core.UIBase
+     * @royaleignorecoercion org.apache.royale.core.IDataGridModel
+     * @royaleignorecoercion org.apache.royale.events.IEventDispatcher
+     */
                public function set strand(value:IStrand):void
                {
                        _strand = value;
                        
 //                     background = new Shape();
 //                     DisplayObjectContainer(_strand).addChild(background);
-                       
+                       var host:UIBase = value as UIBase;
                        var pm:IDataGridPresentationModel = 
_strand.getBeadByType(IDataGridPresentationModel) as IDataGridPresentationModel;
                        buttonBarModel = new ArraySelectionModel();
                        buttonBarModel.dataProvider = pm.columnLabels;
                        buttonBar = new ButtonBar();
                        buttonBar.addBead(buttonBarModel);
                        buttonBar.height = 20;
-                       buttonBar.width = UIBase(_strand).width;
-                       UIBase(_strand).addElement(buttonBar);
+                       buttonBar.width = host.width;
+                       host.addElement(buttonBar);
                        
                        columnContainer = new Container();
                        var layout:HorizontalLayout = new HorizontalLayout();
                        columnContainer.addBead(layout);
-                       UIBase(_strand).addElement(columnContainer);
+                       host.addElement(columnContainer);
                        
-                       var sharedModel:IDataGridModel = 
_strand.getBeadByType(IBeadModel) as IDataGridModel;
-                       var columnWidth:Number = UIBase(_strand).width / 
pm.columnLabels.length;
-                       var columnHeight:Number = UIBase(_strand).height - 
buttonBar.height;
+                       var sharedModel:IDataGridModel = host.model as 
IDataGridModel;
+                       var columnWidth:Number = host.width / 
pm.columnLabels.length;
+                       var columnHeight:Number = host.height - 
buttonBar.height;
                        
                        columns = new Array();
                        for(var i:int=0; i < pm.columnLabels.length; i++) {
diff --git 
a/manualtests/DataGridXcompile/src/org/apache/royale/html/customControls/beads/DataItemRendererFactoryForColumnData.as
 
b/manualtests/DataGridXcompile/src/org/apache/royale/html/customControls/beads/DataItemRendererFactoryForColumnData.as
index e4b85d2..d360fc9 100644
--- 
a/manualtests/DataGridXcompile/src/org/apache/royale/html/customControls/beads/DataItemRendererFactoryForColumnData.as
+++ 
b/manualtests/DataGridXcompile/src/org/apache/royale/html/customControls/beads/DataItemRendererFactoryForColumnData.as
@@ -25,6 +25,7 @@ package org.apache.royale.html.customControls.beads
        import org.apache.royale.core.IItemRendererParent;
        import org.apache.royale.core.ISelectionModel;
        import org.apache.royale.core.IStrand;
+       import org.apache.royale.core.IStrandWithModel;
        import org.apache.royale.core.ValuesManager;
        import org.apache.royale.events.Event;
        import org.apache.royale.events.IEventDispatcher;
@@ -41,16 +42,22 @@ package org.apache.royale.html.customControls.beads
                
                private var _strand:IStrand;
                
+    /**
+     * @royaleignorecoercion org.apache.royale.core.IItemRendererClassFactory
+     * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
+     * @royaleignorecoercion org.apache.royale.html.beads.IDropDownListView
+     */
                public function set strand(value:IStrand):void
                {
                        _strand = value;
-                       selectionModel = value.getBeadByType(ISelectionModel) 
as ISelectionModel;
+                       selectionModel = (value as IStrandWithModel).model as 
ISelectionModel;
                        var listView:IListView = value.getBeadByType(IListView) 
as IListView;
                        dataGroup = listView.dataGroup;
                        selectionModel.addEventListener("dataProviderChanged", 
dataProviderChangeHandler);
-                       
                        if (!itemRendererFactory)
                        {
+                       // Harbs @1/3/22 Not sure this is right. It should 
probably use loadBeadFromValuesManager
+                       // which first does a bead lookup in case it already 
exist
                                var c:Class = 
ValuesManager.valuesImpl.getValue(_strand, "iItemRendererClassFactory");
                                _itemRendererFactory = (new c()) as 
IItemRendererClassFactory;
                                _strand.addBead(_itemRendererFactory);

Reply via email to