You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ha...@apache.org on 2022/01/02 17:34:39 UTC

[royale-asjs] branch develop updated: charts models

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 c54e2bf  charts models
c54e2bf is described below

commit c54e2bf836504de183f87ce600b9c65d698f6164
Author: Harbs <ha...@in-tools.com>
AuthorDate: Sun Jan 2 19:34:28 2022 +0200

    charts models
---
 .../royale/jewel/todomvc/controllers/TodoController.as    |  4 +++-
 .../dataTable/mapper/DataTableMapperForArrayListData.as   |  7 +++++--
 .../royale/org/apache/royale/html/beads/DateFieldView.as  |  2 +-
 .../royale/charts/beads/ChartItemRendererFactory.as       | 15 +++++++++++++--
 .../royale/org/apache/royale/charts/beads/ChartView.as    |  3 ++-
 .../royale/charts/beads/HorizontalCategoryAxisBead.as     |  3 ++-
 .../beads/HorizontalCategoryAxisForArrayListBead.as       |  3 ++-
 .../royale/charts/beads/HorizontalLinearAxisBead.as       |  3 ++-
 .../charts/beads/HorizontalLinearAxisForArrayListBead.as  |  3 ++-
 .../royale/charts/beads/VerticalCategoryAxisBead.as       |  3 ++-
 .../charts/beads/VerticalCategoryAxisForArrayListBead.as  |  3 ++-
 .../apache/royale/charts/beads/VerticalLinearAxisBead.as  |  3 ++-
 .../charts/beads/VerticalLinearAxisForArrayListBead.as    |  3 ++-
 .../beads/controllers/ChartSeriesMouseController.as       |  3 ++-
 .../apache/royale/charts/beads/layouts/BarChartLayout.as  |  3 ++-
 .../charts/beads/layouts/BarChartLayoutForArrayList.as    |  3 ++-
 .../royale/charts/beads/layouts/ColumnChartLayout.as      |  3 ++-
 .../charts/beads/layouts/ColumnChartLayoutForArrayList.as |  3 ++-
 .../beads/layouts/LineChartCategoryVsLinearLayout.as      |  3 ++-
 .../charts/beads/layouts/LineChartLinearVsLinearLayout.as |  3 ++-
 .../apache/royale/charts/beads/layouts/PieChartLayout.as  |  3 ++-
 .../charts/beads/layouts/PieChartLayoutForArrayList.as    |  3 ++-
 .../royale/charts/beads/layouts/StackedBarChartLayout.as  |  3 ++-
 .../beads/layouts/StackedBarChartLayoutForArrayList.as    |  3 ++-
 .../charts/beads/layouts/StackedColumnChartLayout.as      |  3 ++-
 .../beads/layouts/StackedColumnChartLayoutForArrayList.as |  3 ++-
 26 files changed, 66 insertions(+), 28 deletions(-)

diff --git a/examples/jewel/todomvc/src/main/royale/jewel/todomvc/controllers/TodoController.as b/examples/jewel/todomvc/src/main/royale/jewel/todomvc/controllers/TodoController.as
index dcc412f..cae8c05 100644
--- a/examples/jewel/todomvc/src/main/royale/jewel/todomvc/controllers/TodoController.as
+++ b/examples/jewel/todomvc/src/main/royale/jewel/todomvc/controllers/TodoController.as
@@ -28,6 +28,7 @@ package jewel.todomvc.controllers
 	import org.apache.royale.core.IBeadController;
 	import org.apache.royale.core.IBeadModel;
 	import org.apache.royale.core.IStrand;
+	import org.apache.royale.core.IStrandWithModel;
 
 	/**
      * The Todo Controller holds all the global actions. The views dispatch events that bubbles and
@@ -50,6 +51,7 @@ package jewel.todomvc.controllers
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
 		 *  @productversion Royale 0.9.7
+		 * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
 		 */
 		override public function set strand(value:IStrand):void {
 			super.strand = value;
@@ -62,7 +64,7 @@ package jewel.todomvc.controllers
 			listenOnStrand(TodoEvent.ITEM_LABEL_CHANGED, itemLabelChangedHandler);            
 			listenOnStrand(TodoEvent.ITEM_REMOVED, itemRemovedHandler);            
 			
-        	model = _strand.getBeadByType(IBeadModel) as TodoModel;
+        	model = (_strand as IStrandWithModel).model as TodoModel;
 			
 			// retrieve local items and use it if exists
 			model.allItems = new ArrayList(model.getItemStore());
diff --git a/examples/royale/TableExample/src/main/royale/dataTable/mapper/DataTableMapperForArrayListData.as b/examples/royale/TableExample/src/main/royale/dataTable/mapper/DataTableMapperForArrayListData.as
index 6cfb9dd..14d5927 100644
--- a/examples/royale/TableExample/src/main/royale/dataTable/mapper/DataTableMapperForArrayListData.as
+++ b/examples/royale/TableExample/src/main/royale/dataTable/mapper/DataTableMapperForArrayListData.as
@@ -25,6 +25,7 @@ package dataTable.mapper
 	import org.apache.royale.core.IBead;
 	import org.apache.royale.core.IBeadModel;
 	import org.apache.royale.core.IStrand;
+	import org.apache.royale.core.IStrandWithModel;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.Label;
@@ -48,10 +49,12 @@ package dataTable.mapper
 			
 			IEventDispatcher(_strand).addEventListener("dataTableComplete", handleInitComplete);
 		}
-		
+		/**
+		 * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
+		 */
 		private function handleInitComplete(event:Event):void
 		{
-			var model:DataTableModel = _strand.getBeadByType(IBeadModel) as DataTableModel;
+			var model:DataTableModel = (_strand as IStrandWithModel).model as DataTableModel;
 			if (model == null) return;
 			
 			var dp:ArrayList = model.dataProvider as ArrayList;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DateFieldView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DateFieldView.as
index 558226a..e178d8f 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DateFieldView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DateFieldView.as
@@ -213,7 +213,7 @@ package org.apache.royale.html.beads
 
 					var model:IDateChooserModel = getModelByType(_strand,IDateChooserModel) as IDateChooserModel;
 					_popUp.selectedDate = model.selectedDate;
-                    var popUpModel:IDateChooserModelWithChangeCheck = _popUp.getBeadByType(IDateChooserModelWithChangeCheck) as IDateChooserModelWithChangeCheck;
+                    var popUpModel:IDateChooserModelWithChangeCheck = getModelByType(_popUp,IDateChooserModelWithChangeCheck) as IDateChooserModelWithChangeCheck;
                     popUpModel.disableChangeCheck = true;
 
 					var host:IPopUpHost = UIUtils.findPopUpHost(getHost());
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartItemRendererFactory.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartItemRendererFactory.as
index b507b94..9bba5a2 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartItemRendererFactory.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartItemRendererFactory.as
@@ -30,6 +30,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The ChartItemRendererFactory class implements IDataProviderItemRendererMapper
@@ -88,6 +89,7 @@ package org.apache.royale.charts.beads
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
 		 *  @productversion Royale 0.0
+		 * @royaleignorecoercion org.apache.royale.events.IEventDispatcher
 		 */
 		public function set strand(value:IStrand):void
 		{
@@ -100,10 +102,19 @@ package org.apache.royale.charts.beads
 		{
 			return _strand;
 		}
-		
+		/**
+		 * @royaleignorecoercion org.apache.royale.core.ISelectionModel
+		 * @royaleignorecoercion org.apache.royale.html.IListView
+		 * @royaleignorecoercion Array
+		 * @royaleignorecoercion org.apache.royale.charts.core.IChart
+		 * @royaleignorecoercion org.apache.royale.charts.core.IChartSeries
+		 * @royaleignorecoercion org.apache.royale.charts.core.IChartItemRenderer
+		 * @royaleignorecoercion org.apache.royale.events.IEventDispatcher
+		 * 
+		 */		
 		private function finishSetup(event:Event):void
 		{
-			selectionModel = _strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			selectionModel = getModelByType(_strand,ISelectionModel) as ISelectionModel;
 			var listView:IListView = _strand.getBeadByType(IListView) as IListView;
 			
 			var dataGroup:IItemRendererOwnerView = listView.dataGroup;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartView.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartView.as
index 9921d4e..aa75eb5 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartView.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartView.as
@@ -39,6 +39,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.geom.Rectangle;
 	import org.apache.royale.html.beads.ListView;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The ChartView class provides the visual elemental structure for a chart. This includes the
@@ -97,7 +98,7 @@ package org.apache.royale.charts.beads
 		{
 			super.beadsAddedHandler(event);
 			
-			dataModel = _strand.getBeadByType(IChartDataModel) as IChartDataModel;
+			dataModel = getModelByType(_strand,IChartDataModel) as IChartDataModel;
 			dataModel.addEventListener("dataProviderChanged", dataProviderChangeHandler);
 			
 			var haxis:IHorizontalAxisBead = _strand.getBeadByType(IHorizontalAxisBead) as IHorizontalAxisBead;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisBead.as
index c6eff69..9d1b8f0 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisBead.as
@@ -26,6 +26,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.beads.models.ArraySelectionModel;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The HorizontalCategoryAxisBead displays a horizontal axis with
@@ -159,7 +160,7 @@ package org.apache.royale.charts.beads
 		 */
 		protected function handleItemsCreated(event:Event):void
 		{
-			var model:ArraySelectionModel = strand.getBeadByType(ISelectionModel) as ArraySelectionModel;
+			var model:ArraySelectionModel = getModelByType(strand,ISelectionModel) as ArraySelectionModel;
 			var items:Array;
 			if (model.dataProvider is Array) items = model.dataProvider as Array;
 			else return;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisForArrayListBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisForArrayListBead.as
index 3c70abd..e970a2a 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisForArrayListBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisForArrayListBead.as
@@ -27,6 +27,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.beads.models.ArrayListSelectionModel;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The HorizontalCategoryAxisForArrayListBead displays a horizontal axis with
@@ -51,7 +52,7 @@ package org.apache.royale.charts.beads
 		 */
 		override protected function handleItemsCreated(event:Event):void
 		{
-			var model:ArrayListSelectionModel = strand.getBeadByType(ISelectionModel) as ArrayListSelectionModel;
+			var model:ArrayListSelectionModel = getModelByType(strand,ISelectionModel) as ArrayListSelectionModel;
 			var items:ArrayList;
 			if (model.dataProvider is ArrayList) items = model.dataProvider as ArrayList;
 			else return;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisBead.as
index 6703dc5..929a399 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisBead.as
@@ -27,6 +27,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.beads.models.ArraySelectionModel;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The HorizontalLinearAxisBead class provides a horizontal axis that uses a numeric
@@ -185,7 +186,7 @@ package org.apache.royale.charts.beads
 		 */
 		protected function handleItemsCreated(event:Event):void
 		{	
-			var model:ArraySelectionModel = strand.getBeadByType(ISelectionModel) as ArraySelectionModel;
+			var model:ArraySelectionModel = getModelByType(strand,ISelectionModel) as ArraySelectionModel;
 			var items:Array;
 			if (model.dataProvider is Array) items = model.dataProvider as Array;
 			else return;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisForArrayListBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisForArrayListBead.as
index bda28c7..308e098 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisForArrayListBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisForArrayListBead.as
@@ -28,6 +28,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.beads.models.ArrayListSelectionModel;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The HorizontalLinearAxisForArrayListBead class provides a horizontal axis that uses a numeric
@@ -58,7 +59,7 @@ package org.apache.royale.charts.beads
 		 */
 		override protected function handleItemsCreated(event:Event):void
 		{	
-			var model:ArrayListSelectionModel = strand.getBeadByType(ISelectionModel) as ArrayListSelectionModel;
+			var model:ArrayListSelectionModel = getModelByType(strand,ISelectionModel) as ArrayListSelectionModel;
 			var items:ArrayList;
 			if (model.dataProvider is ArrayList) items = model.dataProvider as ArrayList;
 			else return;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisBead.as
index 426023b..2105ecb 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisBead.as
@@ -27,6 +27,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.beads.models.ArraySelectionModel;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The VerticalCategoryAxisBead displays a vertical axis with
@@ -161,7 +162,7 @@ package org.apache.royale.charts.beads
 		 */
 		protected function handleItemsCreated(event:Event):void
 		{	
-			var model:ArraySelectionModel = strand.getBeadByType(ISelectionModel) as ArraySelectionModel;
+			var model:ArraySelectionModel = getModelByType(strand,ISelectionModel) as ArraySelectionModel;
 			var items:Array;
 			if (model.dataProvider is Array) items = model.dataProvider as Array;
 			else return;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisForArrayListBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisForArrayListBead.as
index 683ac1b..e87549b 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisForArrayListBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisForArrayListBead.as
@@ -28,6 +28,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.beads.models.ArrayListSelectionModel;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The VerticalCategoryAxisForArrayListBead displays a vertical axis with
@@ -60,7 +61,7 @@ package org.apache.royale.charts.beads
 		 */
 		override protected function handleItemsCreated(event:Event):void
 		{	
-			var model:ArrayListSelectionModel = strand.getBeadByType(ISelectionModel) as ArrayListSelectionModel;
+			var model:ArrayListSelectionModel = getModelByType(strand,ISelectionModel) as ArrayListSelectionModel;
 			var items:ArrayList;
 			if (model.dataProvider is ArrayList) items = model.dataProvider as ArrayList;
 			else return;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisBead.as
index 0c7cc59..788f1c1 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisBead.as
@@ -27,6 +27,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.beads.models.ArraySelectionModel;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The VerticalLinearAxisBead class provides a vertical axis that uses a numeric
@@ -169,7 +170,7 @@ package org.apache.royale.charts.beads
 		 */
 		protected function handleItemsCreated(event:Event):void
 		{
-			var model:ArraySelectionModel = strand.getBeadByType(ISelectionModel) as ArraySelectionModel;
+			var model:ArraySelectionModel = getModelByType(strand,ISelectionModel) as ArraySelectionModel;
 			var items:Array;
 			if (model.dataProvider is Array) items = model.dataProvider as Array;
 			else return;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisForArrayListBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisForArrayListBead.as
index ac26d2c..a461f27 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisForArrayListBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisForArrayListBead.as
@@ -28,6 +28,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.beads.models.ArrayListSelectionModel;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The VerticalLinearAxisBead class provides a vertical axis that uses a numeric
@@ -50,7 +51,7 @@ package org.apache.royale.charts.beads
 		 */
 		override protected function handleItemsCreated(event:Event):void
 		{
-			var model:ArrayListSelectionModel = strand.getBeadByType(ISelectionModel) as ArrayListSelectionModel;
+			var model:ArrayListSelectionModel = getModelByType(strand,ISelectionModel) as ArrayListSelectionModel;
 			var items:ArrayList;
 			if (model.dataProvider is ArrayList) items = model.dataProvider as ArrayList;
 			else return;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/controllers/ChartSeriesMouseController.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/controllers/ChartSeriesMouseController.as
index 2aac9eb..770f9f2 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/controllers/ChartSeriesMouseController.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/controllers/ChartSeriesMouseController.as
@@ -35,6 +35,7 @@ package org.apache.royale.charts.beads.controllers
 
 	import org.apache.royale.charts.core.IChartItemRenderer;
 	import org.apache.royale.charts.core.IChartDataModel;
+	import org.apache.royale.html.util.getModelByType;
 
 	public class ChartSeriesMouseController implements IBeadController
 	{
@@ -86,7 +87,7 @@ package org.apache.royale.charts.beads.controllers
 		public function set strand(value:IStrand):void
 		{
 			_strand = value;
-			listModel = value.getBeadByType(IChartDataModel) as IChartDataModel;
+			listModel = getModelByType(value,IChartDataModel) as IChartDataModel;
 			listView = value.getBeadByType(IListView) as IListView;
 			IEventDispatcher(_strand).addEventListener("itemAdded", handleItemAdded);
 			IEventDispatcher(_strand).addEventListener("itemRemoved", handleItemRemoved);
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/BarChartLayout.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/BarChartLayout.as
index f7d305b..793b1fa 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/BarChartLayout.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/BarChartLayout.as
@@ -27,6 +27,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The BarChartLayout class calculates the size and position of all of the itemRenderers for
@@ -78,7 +79,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{			
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:Array = selectionModel.dataProvider as Array;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/BarChartLayoutForArrayList.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/BarChartLayoutForArrayList.as
index c70bed8..a1df43d 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/BarChartLayoutForArrayList.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/BarChartLayoutForArrayList.as
@@ -28,6 +28,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.collections.ArrayList;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The BarChartLayoutForArrayList class calculates the size and position of all of the itemRenderers for
@@ -58,7 +59,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{			
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:ArrayList = selectionModel.dataProvider as ArrayList;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/ColumnChartLayout.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/ColumnChartLayout.as
index 442eaa4..326c909 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/ColumnChartLayout.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/ColumnChartLayout.as
@@ -27,6 +27,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The ColumnChartLayout arranges the graphics in vertical columns (or whatever shape
@@ -69,7 +70,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:Array = selectionModel.dataProvider as Array;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/ColumnChartLayoutForArrayList.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/ColumnChartLayoutForArrayList.as
index 132d7ea..83dd7f7 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/ColumnChartLayoutForArrayList.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/ColumnChartLayoutForArrayList.as
@@ -28,6 +28,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.collections.ArrayList;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The ColumnChartLayoutForArrayList class calculates the size and position of all of the itemRenderers for
@@ -58,7 +59,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:ArrayList = selectionModel.dataProvider as ArrayList;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/LineChartCategoryVsLinearLayout.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/LineChartCategoryVsLinearLayout.as
index 3327483..5bcc5f5 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/LineChartCategoryVsLinearLayout.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/LineChartCategoryVsLinearLayout.as
@@ -30,6 +30,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The LineChartCategoryVsLinearLayout displays a line graph of plot points
@@ -51,7 +52,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{			
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:Array = selectionModel.dataProvider as Array;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/LineChartLinearVsLinearLayout.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/LineChartLinearVsLinearLayout.as
index c96d4fd..b529a5a 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/LineChartLinearVsLinearLayout.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/LineChartLinearVsLinearLayout.as
@@ -30,6 +30,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The LineChartLinearVsLinearLayout displays a line graph of plot points
@@ -51,7 +52,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:Array = selectionModel.dataProvider as Array;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/PieChartLayout.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/PieChartLayout.as
index 49f4b50..8633735 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/PieChartLayout.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/PieChartLayout.as
@@ -30,6 +30,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.graphics.SolidColor;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The PieChartLayout class calculates the size and position of all of the itemRenderers for
@@ -59,7 +60,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:Array = selectionModel.dataProvider as Array;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/PieChartLayoutForArrayList.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/PieChartLayoutForArrayList.as
index ae73a38..aba5732 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/PieChartLayoutForArrayList.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/PieChartLayoutForArrayList.as
@@ -31,6 +31,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.collections.ArrayList;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The PieChartLayoutForArrayList class calculates the size and position of all of the itemRenderers for
@@ -61,7 +62,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:ArrayList = selectionModel.dataProvider as ArrayList;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedBarChartLayout.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedBarChartLayout.as
index a6b1f16..5539367 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedBarChartLayout.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedBarChartLayout.as
@@ -29,6 +29,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The StackedBarChartLayout class calculates the size and position of all of the itemRenderers for
@@ -79,7 +80,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:Array = selectionModel.dataProvider as Array;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedBarChartLayoutForArrayList.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedBarChartLayoutForArrayList.as
index d2efd2d..a3dd0a8 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedBarChartLayoutForArrayList.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedBarChartLayoutForArrayList.as
@@ -30,6 +30,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.collections.ArrayList;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The StackedBarChartLayoutForArrayList class calculates the size and position of all of the itemRenderers for
@@ -60,7 +61,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:ArrayList = selectionModel.dataProvider as ArrayList;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedColumnChartLayout.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedColumnChartLayout.as
index b279397..17ec213 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedColumnChartLayout.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedColumnChartLayout.as
@@ -28,6 +28,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The StackedColumnChartLayout class calculates the size and position of all of the itemRenderers for
@@ -78,7 +79,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:Array = selectionModel.dataProvider as Array;
 			if (!dp)
 				return false;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedColumnChartLayoutForArrayList.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedColumnChartLayoutForArrayList.as
index ae4200b..96ee287 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedColumnChartLayoutForArrayList.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/layouts/StackedColumnChartLayoutForArrayList.as
@@ -29,6 +29,7 @@ package org.apache.royale.charts.beads.layouts
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.collections.ArrayList;
+	import org.apache.royale.html.util.getModelByType;
 	
 	/**
 	 *  The StackedColumnChartLayoutForArrayList class calculates the size and position of all of the itemRenderers for
@@ -59,7 +60,7 @@ package org.apache.royale.charts.beads.layouts
 		 */
 		override public function layout():Boolean
 		{
-			var selectionModel:ISelectionModel = strand.getBeadByType(ISelectionModel) as ISelectionModel;
+			var selectionModel:ISelectionModel = getModelByType(strand,ISelectionModel) as ISelectionModel;
 			var dp:ArrayList = selectionModel.dataProvider as ArrayList;
 			if (!dp)
 				return false;