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 13:01:27 UTC
[royale-asjs] branch develop updated: missed lots of 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 12a8294 missed lots of models
12a8294 is described below
commit 12a8294b6691876c26fda451947223a3be7fa068
Author: Harbs <ha...@in-tools.com>
AuthorDate: Sun Jan 2 15:01:13 2022 +0200
missed lots of models
---
.../royale/org/apache/royale/html/DataContainer.as | 3 ++-
.../royale/html/beads/CSSImageAndTextButtonView.as | 3 ++-
.../apache/royale/html/beads/CSSTextButtonView.as | 3 ++-
.../royale/html/beads/CSSTextToggleButtonView.as | 3 ++-
.../org/apache/royale/html/beads/CheckBoxView.as | 3 ++-
.../apache/royale/html/beads/ColorPickerView.as | 5 +++--
.../royale/html/beads/ColorPickerWithEmptyView.as | 3 ++-
.../org/apache/royale/html/beads/ComboBoxView.as | 7 ++++---
.../html/beads/DataGridColumnChangePropagator.as | 11 ++++++++---
.../beads/DataGridColumnForceChangePropagator.as | 17 ++++++++++++----
.../apache/royale/html/beads/DataGridLinesBead.as | 23 +++++++++++++++-------
.../org/apache/royale/html/beads/DataGridView.as | 15 ++++++++++----
.../org/apache/royale/html/beads/DateFieldView.as | 11 ++++++++---
.../org/apache/royale/html/beads/ErrorImage.as | 3 ++-
.../royale/html/beads/MultiSelectionListView.as | 5 +++--
.../apache/royale/html/beads/RadioButtonView.as | 3 ++-
.../org/apache/royale/html/beads/ScrollBarView.as | 3 ++-
.../apache/royale/html/beads/SimpleAlertView.as | 3 ++-
.../org/apache/royale/html/beads/SliderView.as | 4 +++-
.../org/apache/royale/html/beads/SpinnerView.as | 12 ++++++-----
.../org/apache/royale/html/beads/TextButtonView.as | 3 ++-
.../apache/royale/html/beads/TextFieldViewBase.as | 3 ++-
.../org/apache/royale/html/beads/TreeGridView.as | 7 +++++--
.../org/apache/royale/html/beads/VScrollBarView.as | 3 ++-
.../CascadingMenuSelectionMouseController.as | 4 +++-
.../controllers/DateChooserMouseController.as | 18 ++++++++++++-----
.../beads/controllers/DateFieldMouseController.as | 3 ++-
.../beads/controllers/MenuBarMouseController.as | 4 +++-
.../controllers/ScrollBarMouseControllerBase.as | 3 ++-
.../royale/html/beads/layouts/ButtonBarLayout.as | 3 ++-
.../royale/html/beads/layouts/DataGridLayout.as | 5 +++--
.../royale/html/beads/layouts/HScrollBarLayout.as | 3 ++-
.../royale/html/beads/layouts/TreeGridLayout.as | 3 ++-
.../royale/html/beads/layouts/VScrollBarLayout.as | 3 ++-
.../html/supportClasses/AccordionItemRenderer.as | 7 +++++--
35 files changed, 146 insertions(+), 66 deletions(-)
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DataContainer.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DataContainer.as
index 7c5f7c2..b759a26 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DataContainer.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DataContainer.as
@@ -48,6 +48,7 @@ package org.apache.royale.html
import org.apache.royale.html.beads.IListView;
import org.apache.royale.core.IListWithPresentationModel;
import org.apache.royale.core.IHasLabelField;
+ import org.apache.royale.html.util.getModelByType;
/**
* Indicates that the initialization of the list is complete.
@@ -146,7 +147,7 @@ package org.apache.royale.html
*/
public function get presentationModel():IBead
{
- var presModel:IListPresentationModel = getBeadByType(IListPresentationModel) as IListPresentationModel;
+ var presModel:IListPresentationModel = getModelByType(this,IListPresentationModel) as IListPresentationModel;
if (presModel == null) {
presModel = loadBeadFromValuesManager(IListPresentationModel, "iListPresentationModel", this) as IListPresentationModel;
if (presModel == null)
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSImageAndTextButtonView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSImageAndTextButtonView.as
index 85c9ecd..102921d 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSImageAndTextButtonView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSImageAndTextButtonView.as
@@ -43,6 +43,7 @@ package org.apache.royale.html.beads
import org.apache.royale.utils.CSSUtils;
import org.apache.royale.utils.SolidBorderUtil;
import org.apache.royale.utils.StringTrimmer;
+ import org.apache.royale.html.util.getModelByType;
/**
* The CSSTextButtonView class is the default view for
@@ -104,7 +105,7 @@ package org.apache.royale.html.beads
override public function set strand(value:IStrand):void
{
_strand = value;
- textModel = value.getBeadByType(ImageAndTextModel) as ImageAndTextModel;
+ textModel = getModelByType(_strand,ImageAndTextModel) as ImageAndTextModel;
textModel.addEventListener("textChange", textChangeHandler);
textModel.addEventListener("htmlChange", htmlChangeHandler);
textModel.addEventListener("imageChange", imageChangeHandler);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSTextButtonView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSTextButtonView.as
index eabb23b..d4af2b5 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSTextButtonView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSTextButtonView.as
@@ -43,6 +43,7 @@ package org.apache.royale.html.beads
import org.apache.royale.utils.CSSUtils;
import org.apache.royale.utils.SolidBorderUtil;
import org.apache.royale.utils.StringTrimmer;
+ import org.apache.royale.html.util.getModelByType;
/**
* The CSSTextButtonView class is the default view for
@@ -104,7 +105,7 @@ package org.apache.royale.html.beads
override public function set strand(value:IStrand):void
{
_strand = value;
- textModel = value.getBeadByType(ITextModel) as ITextModel;
+ textModel = getModelByType(value,ITextModel) as ITextModel;
textModel.addEventListener("textChange", textChangeHandler);
textModel.addEventListener("htmlChange", htmlChangeHandler);
shape = new Shape();
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSTextToggleButtonView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSTextToggleButtonView.as
index 0e49846..363a7ed 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSTextToggleButtonView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CSSTextToggleButtonView.as
@@ -26,6 +26,7 @@ package org.apache.royale.html.beads
import org.apache.royale.core.IToggleButtonModel;
import org.apache.royale.events.Event;
import org.apache.royale.events.IEventDispatcher;
+ import org.apache.royale.html.util.getModelByType;
/**
* The CSSTextToggleButtonView class is the default view for
@@ -80,7 +81,7 @@ package org.apache.royale.html.beads
{
super.strand = value;
- toggleButtonModel = value.getBeadByType(IToggleButtonModel) as IToggleButtonModel;
+ toggleButtonModel = getModelByType(value,IToggleButtonModel) as IToggleButtonModel;
toggleButtonModel.addEventListener("selectedChange", selectedChangeHandler);
}
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CheckBoxView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CheckBoxView.as
index b0547f4..ad72c71 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CheckBoxView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/CheckBoxView.as
@@ -30,6 +30,7 @@ package org.apache.royale.html.beads
import org.apache.royale.core.IStrand;
import org.apache.royale.core.IToggleButtonModel;
import org.apache.royale.events.Event;
+ import org.apache.royale.html.util.getModelByType;
/**
* The CheckBoxView class is the default view for
@@ -109,7 +110,7 @@ package org.apache.royale.html.beads
{
super.strand = value;
- _toggleButtonModel = value.getBeadByType(IToggleButtonModel) as IToggleButtonModel;
+ _toggleButtonModel = getModelByType(value,IToggleButtonModel) as IToggleButtonModel;
_toggleButtonModel.addEventListener("textChange", textChangeHandler);
_toggleButtonModel.addEventListener("htmlChange", htmlChangeHandler);
_toggleButtonModel.addEventListener("selectedChange", selectedChangeHandler);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerView.as
index b17bbca..0ddff90 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerView.as
@@ -42,6 +42,7 @@ package org.apache.royale.html.beads
import org.apache.royale.html.supportClasses.IColorPickerPopUp;
import org.apache.royale.core.IColorModel;
import org.apache.royale.core.IPopUp;
+ import org.apache.royale.html.util.getModelByType;
/**
* The ColorPickerView class creates the visual elements of the org.apache.royale.html.ColorPicker
@@ -184,7 +185,7 @@ package org.apache.royale.html.beads
public function set popUpVisible(value:Boolean):void
{
if (value && !list.visible) {
- var model:IColorModel = _strand.getBeadByType(IColorModel) as IColorModel;
+ var model:IColorModel = getModelByType(_strand,IColorModel) as IColorModel;
(list as IColorPickerPopUp).model = model;
list.visible = true;
@@ -227,7 +228,7 @@ package org.apache.royale.html.beads
*/
protected function colorChangeAction():void
{
- var model:IColorModel = _strand.getBeadByType(IColorModel) as IColorModel;
+ var model:IColorModel = getModelByType(_strand,IColorModel) as IColorModel;
COMPILE::JS
{
selectedColorDisplay.element.style.backgroundColor = CSSUtils.attributeFromColor(model.color);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerWithEmptyView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerWithEmptyView.as
index c2a80d2..f1f4902 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerWithEmptyView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerWithEmptyView.as
@@ -20,6 +20,7 @@ package org.apache.royale.html.beads
{
import org.apache.royale.core.IColorModel;
import org.apache.royale.utils.CSSUtils;
+ import org.apache.royale.html.util.getModelByType;
/**
* The ColorPickerWithEmptyView overrides ColorPickerView methods to visibly indicate that a selection is empty
@@ -43,7 +44,7 @@ package org.apache.royale.html.beads
*/
override protected function colorChangeAction():void
{
- var model:IColorModel = _strand.getBeadByType(IColorModel) as IColorModel;
+ var model:IColorModel = getModelByType(_strand,IColorModel) as IColorModel;
var isEmpty:Boolean = isNaN(model.color);
COMPILE::JS
{
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ComboBoxView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ComboBoxView.as
index c0b549a..4358729 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ComboBoxView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ComboBoxView.as
@@ -36,6 +36,7 @@ package org.apache.royale.html.beads
import org.apache.royale.geom.Point;
import org.apache.royale.html.beads.IComboBoxView;
import org.apache.royale.html.util.getLabelFromData;
+ import org.apache.royale.html.util.getModelByType;
/**
* The ComboBoxView class creates the visual elements of the org.apache.royale.html.ComboBox
@@ -144,7 +145,7 @@ package org.apache.royale.html.beads
list = new popUpClass() as UIBase;
list.visible = false;
- var model:IComboBoxModel = _strand.getBeadByType(IComboBoxModel) as IComboBoxModel;
+ var model:IComboBoxModel = getModelByType(_strand,IComboBoxModel) as IComboBoxModel;
model.addEventListener("selectedIndexChanged", handleItemChange);
model.addEventListener("selectedItemChanged", handleItemChange);
@@ -177,7 +178,7 @@ package org.apache.royale.html.beads
public function set popUpVisible(value:Boolean):void
{
if (value && !list.visible) {
- var model:IComboBoxModel = _strand.getBeadByType(IComboBoxModel) as IComboBoxModel;
+ var model:IComboBoxModel = getModelByType(_strand,IComboBoxModel) as IComboBoxModel;
list.model = model;
list.width = input.width;
list.height = 200;
@@ -222,7 +223,7 @@ package org.apache.royale.html.beads
*/
protected function itemChangeAction():void
{
- var model:IComboBoxModel = _strand.getBeadByType(IComboBoxModel) as IComboBoxModel;
+ var model:IComboBoxModel = getModelByType(_strand,IComboBoxModel) as IComboBoxModel;
input.text = getLabelFromData(model,model.selectedItem);
}
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridColumnChangePropagator.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridColumnChangePropagator.as
index 434bdb9..68c69d9 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridColumnChangePropagator.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridColumnChangePropagator.as
@@ -32,6 +32,8 @@ package org.apache.royale.html.beads
import org.apache.royale.html.beads.IDataGridView;
import org.apache.royale.core.IStrand;
import org.apache.royale.core.Bead;
+ import org.apache.royale.core.IStrandWithModel;
+ import org.apache.royale.core.IStrandWithModelView;
/**
* The DataGridColumnChangePropagator picks up the dataProviderChanged event
* and lets the data grid columns know about it.
@@ -57,26 +59,29 @@ package org.apache.royale.html.beads
/**
* @royaleignorecoercion org.apache.royale.events.IEventDispatcher
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
*/
protected function finishSetup(e:Event):void
{
- var model:IEventDispatcher = _strand.getBeadByType(IBeadModel) as IEventDispatcher;
+ var model:IEventDispatcher = (_strand as IStrandWithModel).model as IEventDispatcher;
model.addEventListener('dataProviderChanged', handleDataProviderChanged);
}
/**
* @royaleignorecoercion org.apache.royale.core.IDataGridModel
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModelView
* @royaleignorecoercion org.apache.royale.core.ISelectionModel
* @royaleignorecoercion org.apache.royale.html.beads.IDataGridView
* @royaleignorecoercion org.apache.royale.html.supportClasses.DataGridColumnList
*/
protected function handleDataProviderChanged(e:Event):void
{
- var dataGridView:IDataGridView = _strand.getBeadByType(IDataGridView) as IDataGridView;
+ var strandType:IStrandWithModelView = _strand as IStrandWithModelView;
+ var dataGridView:IDataGridView = strandType.view as IDataGridView;
var lists:Array = dataGridView.columnLists;
if (lists == null) return;
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var sharedModel:IDataGridModel = strandType.model as IDataGridModel;
for (var i:int=0; i < lists.length; i++)
{
var list:DataGridColumnList = lists[i] as DataGridColumnList;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridColumnForceChangePropagator.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridColumnForceChangePropagator.as
index 168e0b2..4785c46 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridColumnForceChangePropagator.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridColumnForceChangePropagator.as
@@ -32,6 +32,7 @@ package org.apache.royale.html.beads
import org.apache.royale.html.beads.IDataGridView;
import org.apache.royale.core.IStrand;
import org.apache.royale.utils.sendBeadEvent;
+ import org.apache.royale.core.IStrandWithModel;
/**
* The DataGridColumnForceChangePropagator picks up the dataProviderChanged event
* and lets the data grid columns know about it, whether or not the data provider object was changed.
@@ -50,19 +51,27 @@ package org.apache.royale.html.beads
public function DataGridColumnForceChangePropagator()
{
}
-
+ /**
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
+ */
public function set strand(value:IStrand):void
{
_strand = value;
- var model:IEventDispatcher = value.getBeadByType(IBeadModel) as IEventDispatcher;
+ var model:IEventDispatcher = (value as IStrandWithModel).model as IEventDispatcher;
model.addEventListener('dataProviderChanged', handleDataProviderChanged);
}
-
+ /**
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
+ * @royaleignorecoercion org.apache.royale.core.ISelectionModel
+ * @royaleignorecoercion org.apache.royale.core.IDataGridModel
+ * @royaleignorecoercion org.apache.royale.html.beads.IDataGridView
+ * @royaleignorecoercion org.apache.royale.html.supportClasses.DataGridColumnList
+ */
protected function handleDataProviderChanged(e:Event):void
{
var dataGridView:IDataGridView = _strand.getBeadByType(IDataGridView) as IDataGridView;
var lists:Array = dataGridView.columnLists;
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var sharedModel:IDataGridModel = (_strand as IStrandWithModel).model as IDataGridModel;
for (var i:int=0; i < lists.length; i++)
{
var list:DataGridColumnList = lists[i] as DataGridColumnList;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridLinesBead.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridLinesBead.as
index 6350e8b..77b5115 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridLinesBead.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridLinesBead.as
@@ -35,6 +35,7 @@ package org.apache.royale.html.beads
import org.apache.royale.html.beads.DataGridView;
import org.apache.royale.html.beads.models.DataGridPresentationModel;
import org.apache.royale.html.supportClasses.DataGridColumn;
+ import org.apache.royale.core.IStrandWithModelView;
/**
* The DataGridLinesBead is an add on bead for the DataGrid. This bead
@@ -113,6 +114,13 @@ package org.apache.royale.html.beads
protected var _area:UIBase;
/**
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModelView
+ */
+ private function get typedStrand():IStrandWithModelView
+ {
+ return _strand as IStrandWithModelView
+ }
+ /**
* Invoked when all of the beads have been added to the DataGrid. This
* function seeks the Container that parents the lists that are the DataGrid's
* columns. An overlay GraphicContainer is added to this Container so that the
@@ -122,6 +130,7 @@ package org.apache.royale.html.beads
* @playerversion Flash 10.2
* @playerversion AIR 2.6
* @productversion Royale 0.0
+ * @royaleignorecoercion org.apache.royale.events.IEventDispatcher
*/
protected function handleInitComplete(event:Event):void
{
@@ -134,20 +143,20 @@ package org.apache.royale.html.beads
}
// Now set up listeners to handle changes in the size of the DataGrid.
- IEventDispatcher(_strand).addEventListener("sizeChanged", drawLines);
- IEventDispatcher(_strand).addEventListener("widthChanged", drawLines);
- IEventDispatcher(_strand).addEventListener("heightChanged", drawLines);
+ host.addEventListener("sizeChanged", drawLines);
+ host.addEventListener("widthChanged", drawLines);
+ host.addEventListener("heightChanged", drawLines);
// Also set up a listener on the model to know when the dataProvider has
// changed which might affect the number of rows/columns and thus the
// grid lines.
- var model:IBeadModel = _strand.getBeadByType(IBeadModel) as IBeadModel;
- IEventDispatcher(model).addEventListener("dataProviderChanged", drawLines);
+ var model:IBeadModel = typedStrand.model as IBeadModel;
+ (model as IEventDispatcher).addEventListener("dataProviderChanged", drawLines);
}
protected function getDataProviderLength():int
{
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var sharedModel:IDataGridModel = typedStrand.model as IDataGridModel;
var arrayList:ArrayList = sharedModel.dataProvider as ArrayList;
return arrayList.length;
}
@@ -164,7 +173,7 @@ package org.apache.royale.html.beads
*/
protected function drawLines(event:Event):void
{
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var sharedModel:IDataGridModel = typedStrand.model as IDataGridModel;
var presentationModel:DataGridPresentationModel = _strand.getBeadByType(DataGridPresentationModel) as DataGridPresentationModel;
var layoutParent:ILayoutHost = _area.getBeadByType(ILayoutHost) as ILayoutHost;
var contentView:IParentIUIBase = layoutParent.contentView as IParentIUIBase;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridView.as
index 90d778e..6804c99 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridView.as
@@ -42,6 +42,7 @@ package org.apache.royale.html.beads
import org.apache.royale.html.supportClasses.Viewport;
import org.apache.royale.utils.sendStrandEvent;
import org.apache.royale.utils.sendEvent;
+ import org.apache.royale.core.IStrandWithModelView;
/**
* The DataGridView class is the visual bead for the org.apache.royale.html.DataGrid.
@@ -183,13 +184,19 @@ package org.apache.royale.html.beads
if (_listArea)
sendEvent(_listArea,"layoutChanged");
}
-
+ /**
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModelView
+ */
+ private function get typedStrand():IStrandWithModelView
+ {
+ return _strand as IStrandWithModelView
+ }
/**
* @private
*/
protected function handleDataProviderChanged(event:Event):void
{
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var sharedModel:IDataGridModel = typedStrand.model as IDataGridModel;
var l:uint = _lists ? _lists.length : 0;
for (var i:int=0; i < l; i++)
{
@@ -206,7 +213,7 @@ package org.apache.royale.html.beads
*/
private function handleSelectedIndexChanged(event:Event):void
{
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var sharedModel:IDataGridModel = typedStrand.model as IDataGridModel;
var newIndex:int = sharedModel.selectedIndex;
for (var i:int=0; i < _lists.length; i++)
@@ -223,7 +230,7 @@ package org.apache.royale.html.beads
*/
private function handleColumnListChange(event:Event):void
{
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var sharedModel:IDataGridModel = typedStrand.model as IDataGridModel;
var list:IDataGridColumnList = event.currentTarget as IDataGridColumnList;
sharedModel.selectedIndex = list.selectedIndex;
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 161bb02..558226a 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
@@ -45,6 +45,8 @@ package org.apache.royale.html.beads
import org.apache.royale.html.beads.TextInputView;
import flash.text.TextFieldType;
}
+ import org.apache.royale.core.IStrandWithModel;
+ import org.apache.royale.html.util.getModelByType;
/**
* The DateFieldView class is a bead for DateField that creates the
@@ -146,12 +148,15 @@ package org.apache.royale.html.beads
getHost().addEventListener("initComplete",handleInitComplete);
}
-
+ /**
+ * @royaleignorecoercion org.apache.royale.core.IBeadModel
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
+ */
private function handleInitComplete(event:Event):void
{
_textInput.height = _button.height;
- var model:IBeadModel = _strand.getBeadByType(IBeadModel) as IBeadModel;
+ var model:IBeadModel = (_strand as IStrandWithModel).model as IBeadModel;
IEventDispatcher(model).addEventListener("selectedDateChanged", selectionChangeHandler);
}
@@ -206,7 +211,7 @@ package org.apache.royale.html.beads
_popUp = ValuesManager.valuesImpl.newInstance(_strand, "iPopUp") as IDateChooser;
}
- var model:IDateChooserModel = _strand.getBeadByType(IDateChooserModel) as IDateChooserModel;
+ var model:IDateChooserModel = getModelByType(_strand,IDateChooserModel) as IDateChooserModel;
_popUp.selectedDate = model.selectedDate;
var popUpModel:IDateChooserModelWithChangeCheck = _popUp.getBeadByType(IDateChooserModelWithChangeCheck) as IDateChooserModelWithChangeCheck;
popUpModel.disableChangeCheck = true;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ErrorImage.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ErrorImage.as
index d3f6e69..8516bb9 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ErrorImage.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ErrorImage.as
@@ -23,6 +23,7 @@ package org.apache.royale.html.beads {
import org.apache.royale.core.IImageModel;
import org.apache.royale.core.IStrand;
import org.apache.royale.events.Event;
+ import org.apache.royale.html.util.getModelByType;
/**
* The ErrorImage class is a bead that can be used to
@@ -91,7 +92,7 @@ package org.apache.royale.html.beads {
protected function get hostModel():IImageModel
{
if(!_hostModel)
- _hostModel = _strand.getBeadByType(IImageModel) as IImageModel;
+ _hostModel = getModelByType(_strand,IImageModel) as IImageModel;
return _hostModel;
}
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultiSelectionListView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultiSelectionListView.as
index f99b479..da9bde3 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultiSelectionListView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultiSelectionListView.as
@@ -41,6 +41,7 @@ package org.apache.royale.html.beads
import org.apache.royale.events.IEventDispatcher;
import org.apache.royale.html.supportClasses.Border;
import org.apache.royale.html.supportClasses.DataGroup;
+ import org.apache.royale.html.util.getModelByType;
/**
* The List class creates the visual elements of the org.apache.royale.html.List
@@ -71,7 +72,7 @@ package org.apache.royale.html.beads
*/
override protected function handleInitComplete(event:Event):void
{
- listModel = _strand.getBeadByType(IMultiSelectionModel) as IMultiSelectionModel;
+ listModel = getModelByType(_strand,IMultiSelectionModel) as IMultiSelectionModel;
listModel.addEventListener("selectedIndicesChanged", selectionChangeHandler);
listModel.addEventListener("rollOverIndexChanged", rollOverIndexChangeHandler);
@@ -156,7 +157,7 @@ package org.apache.royale.html.beads
{
super.handleInitComplete(event);
- listModel = _strand.getBeadByType(IMultiSelectionModel) as IMultiSelectionModel;
+ listModel = getModelByType(_strand,IMultiSelectionModel) as IMultiSelectionModel;
listModel.addEventListener("selectedIndicesChanged", selectionChangeHandler);
listModel.addEventListener("rollOverIndexChanged", rollOverIndexChangeHandler);
}
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/RadioButtonView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/RadioButtonView.as
index 32abe85..617b922 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/RadioButtonView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/RadioButtonView.as
@@ -30,6 +30,7 @@ package org.apache.royale.html.beads
import org.apache.royale.core.IStrand;
import org.apache.royale.core.IValueToggleButtonModel;
import org.apache.royale.events.Event;
+ import org.apache.royale.html.util.getModelByType;
/**
* The RadioButtonView class creates the visual elements of the org.apache.royale.html.RadioButton
@@ -107,7 +108,7 @@ package org.apache.royale.html.beads
override public function set strand(value:IStrand):void
{
super.strand = value;
- _toggleButtonModel = value.getBeadByType(IValueToggleButtonModel) as IValueToggleButtonModel;
+ _toggleButtonModel = getModelByType(value,IValueToggleButtonModel) as IValueToggleButtonModel;
_toggleButtonModel.addEventListener("textChange", textChangeHandler);
_toggleButtonModel.addEventListener("htmlChange", htmlChangeHandler);
_toggleButtonModel.addEventListener("selectedValueChange", selectedValueChangeHandler);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ScrollBarView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ScrollBarView.as
index fc3d381..951e4b4 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ScrollBarView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ScrollBarView.as
@@ -34,6 +34,7 @@ package org.apache.royale.html.beads
import org.apache.royale.html.Button;
import org.apache.royale.html.beads.controllers.ButtonAutoRepeatController;
import org.apache.royale.utils.loadBeadFromValuesManager;
+ import org.apache.royale.html.util.getModelByType;
/**
* The ScrollBarView class is the default view for
@@ -109,7 +110,7 @@ package org.apache.royale.html.beads
for each (var bead:IBead in beads)
addBead(bead);
- sbModel = value.getBeadByType(IScrollBarModel) as IScrollBarModel;
+ sbModel = getModelByType(value,IScrollBarModel) as IScrollBarModel;
sbModel.addEventListener("maximumChange", changeHandler);
sbModel.addEventListener("minimumChange", changeHandler);
sbModel.addEventListener("snapIntervalChange", changeHandler);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SimpleAlertView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SimpleAlertView.as
index 1e8cdd1..f6fa841 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SimpleAlertView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SimpleAlertView.as
@@ -39,6 +39,7 @@ package org.apache.royale.html.beads
import org.apache.royale.utils.loadBeadFromValuesManager;
import org.apache.royale.html.beads.IBackgroundBead;
import org.apache.royale.html.beads.IBorderBead;
+ import org.apache.royale.html.util.getModelByType;
/**
* The SimpleAlertView class creates the visual elements of the
@@ -100,7 +101,7 @@ package org.apache.royale.html.beads
loadBeadFromValuesManager(IBorderBead, "iBorderBead", value);
}
- var model:IAlertModel = _strand.getBeadByType(IAlertModel) as IAlertModel;
+ var model:IAlertModel = getModelByType(_strand,IAlertModel) as IAlertModel;
model.addEventListener("messageChange",handleMessageChange);
model.addEventListener("htmlMessageChange",handleMessageChange);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SliderView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SliderView.as
index 17eb60b..794bbc5 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SliderView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SliderView.as
@@ -40,6 +40,7 @@ package org.apache.royale.html.beads
import org.apache.royale.html.TextButton;
import org.apache.royale.utils.sendStrandEvent;
import org.apache.royale.utils.loadBeadFromValuesManager;
+ import org.apache.royale.core.IStrandWithModel;
/**
* The SliderView class creates the visual elements of the org.apache.royale.html.Slider
@@ -77,6 +78,7 @@ package org.apache.royale.html.beads
*
* @royaleignorecoercion org.apache.royale.core.IParent
* @royaleignorecoercion org.apache.royale.core.IRangeModel
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
* @royaleignorecoercion org.apache.royale.events.IEventDispatcher
*/
override public function set strand(value:IStrand):void
@@ -112,7 +114,7 @@ package org.apache.royale.html.beads
(host as IParent).addElement(_thumb);
}
- rangeModel = _strand.getBeadByType(IBeadModel) as IRangeModel;
+ rangeModel = (_strand as IStrandWithModel).model as IRangeModel;
var rm:IEventDispatcher = rangeModel as IEventDispatcher;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SpinnerView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SpinnerView.as
index 2e5d5e8..2cf47c7 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SpinnerView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SpinnerView.as
@@ -34,10 +34,12 @@ COMPILE::SWF {
import org.apache.royale.events.IEventDispatcher;
import org.apache.royale.html.Button;
-COMPILE::JS {
- import org.apache.royale.html.beads.controllers.SpinnerMouseController;
- import org.apache.royale.html.supportClasses.SpinnerButton;
-}
+ COMPILE::JS {
+ import org.apache.royale.html.beads.controllers.SpinnerMouseController;
+ import org.apache.royale.html.supportClasses.SpinnerButton;
+ }
+ import org.apache.royale.html.util.getModelByType;
+ import org.apache.royale.core.IStrandWithModel;
/**
* The SpinnerView class creates the visual elements of the org.apache.royale.html.Spinner
@@ -104,7 +106,7 @@ COMPILE::JS {
UIBase(_strand).$sprite_addChild(_decrement);
UIBase(_strand).$sprite_addChild(_increment);
- rangeModel = _strand.getBeadByType(IBeadModel) as IRangeModel;
+ rangeModel = (_strand as IStrandWithModel).model as IRangeModel;
}
IEventDispatcher(value).addEventListener("widthChanged",sizeChangeHandler);
IEventDispatcher(value).addEventListener("heightChanged",sizeChangeHandler);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextButtonView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextButtonView.as
index 726e5f0..2684a7d 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextButtonView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextButtonView.as
@@ -30,6 +30,7 @@ package org.apache.royale.html.beads
import org.apache.royale.core.ITextModel;
import org.apache.royale.events.Event;
import org.apache.royale.events.IEventDispatcher;
+ import org.apache.royale.html.util.getModelByType;
/**
* The TextButtonView class is the default view for
@@ -94,7 +95,7 @@ package org.apache.royale.html.beads
override public function set strand(value:IStrand):void
{
super.strand = value;
- textModel = value.getBeadByType(ITextModel) as ITextModel;
+ textModel = getModelByType(value,ITextModel) as ITextModel;
textModel.addEventListener("textChange", textChangeHandler);
textModel.addEventListener("htmlChange", htmlChangeHandler);
shape = new Shape();
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldViewBase.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldViewBase.as
index f5bfa2b..5f38c80 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldViewBase.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldViewBase.as
@@ -30,6 +30,7 @@ package org.apache.royale.html.beads
import org.apache.royale.core.ValuesManager;
import org.apache.royale.events.Event;
import org.apache.royale.events.IEventDispatcher;
+ import org.apache.royale.html.util.getModelByType;
/**
* The TextFieldViewBase class is the base class for
@@ -88,7 +89,7 @@ package org.apache.royale.html.beads
public function set strand(value:IStrand):void
{
_strand = value;
- _textModel = value.getBeadByType(ITextModel) as ITextModel;
+ _textModel = getModelByType(value,ITextModel) as ITextModel;
_textModel.addEventListener("textChange", textChangeHandler);
_textModel.addEventListener("htmlChange", htmlChangeHandler);
IEventDispatcher(_strand).addEventListener("widthChanged", widthChangeHandler);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TreeGridView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TreeGridView.as
index 781e735..e96a40d 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TreeGridView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TreeGridView.as
@@ -46,6 +46,7 @@ package org.apache.royale.html.beads
import org.apache.royale.html.supportClasses.IDataGridColumn;
import org.apache.royale.utils.sendStrandEvent;
import org.apache.royale.utils.loadBeadFromValuesManager;
+ import org.apache.royale.core.IStrandWithModel;
/**
* The TreeGridView class is responsible for creating the sub-components of the TreeGrid:
@@ -218,10 +219,11 @@ package org.apache.royale.html.beads
/**
* @private
* @royaleignorecoercion org.apache.royale.core.IDataGridModel
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
*/
private function handleSelectedIndexChanged(event:Event):void
{
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var sharedModel:IDataGridModel = (_strand as IStrandWithModel).model as IDataGridModel;
var newIndex:int = sharedModel.selectedIndex;
for(var i:int=0; i < _lists.length; i++) {
@@ -234,10 +236,11 @@ package org.apache.royale.html.beads
/**
* @private
* @royaleignorecoercion org.apache.royale.core.IDataGridModel
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
*/
private function handleColumnListChange(event:Event):void
{
- var sharedModel:IDataGridModel = _strand.getBeadByType(IBeadModel) as IDataGridModel;
+ var sharedModel:IDataGridModel = (_strand as IStrandWithModel).model as IDataGridModel;
if (event.target is List) {
var list:List = event.target as List;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VScrollBarView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VScrollBarView.as
index 75e713a..5e25ed7 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VScrollBarView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VScrollBarView.as
@@ -33,6 +33,7 @@ package org.apache.royale.html.beads
import org.apache.royale.events.Event;
import org.apache.royale.html.Button;
import org.apache.royale.html.beads.controllers.ButtonAutoRepeatController;
+ import org.apache.royale.html.util.getModelByType;
/**
* The ScrollBarView class is the default view for
@@ -76,7 +77,7 @@ package org.apache.royale.html.beads
override protected function changeHandler(event:Event):void
{
layout.layout();
- sbModel = host.getBeadByType(IScrollBarModel) as IScrollBarModel;
+ sbModel = getModelByType(host,IScrollBarModel) as IScrollBarModel;
sbModel.stepSize = Math.max(Math.round(host.height / STEP_RATE), 1);
}
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/CascadingMenuSelectionMouseController.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/CascadingMenuSelectionMouseController.as
index 6fb7862..d259006 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/CascadingMenuSelectionMouseController.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/CascadingMenuSelectionMouseController.as
@@ -35,6 +35,7 @@ package org.apache.royale.html.beads.controllers
COMPILE::JS {
import org.apache.royale.events.BrowserEvent;
}
+ import org.apache.royale.core.IStrandWithModel;
/**
* The CascadingMenuSelectionMouseController does the same job as the MenuSelectionMouseController
@@ -72,12 +73,13 @@ package org.apache.royale.html.beads.controllers
* @playerversion Flash 10.2
* @playerversion AIR 2.6
* @productversion Royale 0.9.6
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
*/
override protected function selectedHandler(event:ItemClickedEvent):void
{
var node:Object = event.data;
- var model:ICascadingMenuModel = _strand.getBeadByType(IBeadModel) as ICascadingMenuModel;
+ var model:ICascadingMenuModel = (_strand as IStrandWithModel).model as ICascadingMenuModel;
if (getHasMenu(node, model)) {
var c:Class = ValuesManager.valuesImpl.getValue(_strand, "iMenu");
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DateChooserMouseController.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DateChooserMouseController.as
index b016f47..da803ca 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DateChooserMouseController.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DateChooserMouseController.as
@@ -30,6 +30,7 @@ package org.apache.royale.html.beads.controllers
import org.apache.royale.events.Event;
import org.apache.royale.events.MouseEvent;
import org.apache.royale.events.IEventDispatcher;
+ import org.apache.royale.core.IStrandWithModelView;
/**
* The DateChooserMouseController class is responsible for listening to
@@ -56,7 +57,14 @@ package org.apache.royale.html.beads.controllers
}
private var _strand:IStrand;
-
+
+ /**
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModelView
+ */
+ private function get host():IStrandWithModelView
+ {
+ return _strand as IStrandWithModelView
+ }
/**
* @copy org.apache.royale.core.IBead#strand
*
@@ -71,7 +79,7 @@ package org.apache.royale.html.beads.controllers
{
_strand = value;
- var view:DateChooserView = value.getBeadByType(IBeadView) as DateChooserView;
+ var view:DateChooserView = host.view as DateChooserView;
view.prevMonthButton.addEventListener("click", prevMonthClickHandler);
view.nextMonthButton.addEventListener("click", nextMonthClickHandler);
@@ -86,7 +94,7 @@ package org.apache.royale.html.beads.controllers
private function listHandler(event:Event):void
{
var list:DateChooserList = event.target as DateChooserList;
- var model:DateChooserModel = _strand.getBeadByType(IBeadModel) as DateChooserModel;
+ var model:DateChooserModel = host.model as DateChooserModel;
model.selectedDate = list.selectedItem as Date;
}
@@ -98,7 +106,7 @@ package org.apache.royale.html.beads.controllers
{
event.preventDefault();
- var model:DateChooserModel = _strand.getBeadByType(IBeadModel) as DateChooserModel;
+ var model:DateChooserModel = host.model as DateChooserModel;
var month:Number = model.displayedMonth - 1;
var year:Number = model.displayedYear;
if (month < 0) {
@@ -117,7 +125,7 @@ package org.apache.royale.html.beads.controllers
{
event.preventDefault();
- var model:DateChooserModel = _strand.getBeadByType(IBeadModel) as DateChooserModel;
+ var model:DateChooserModel = host.model as DateChooserModel;
var month:Number = model.displayedMonth + 1;
var year:Number = model.displayedYear;
if (month >= 12) {
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DateFieldMouseController.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DateFieldMouseController.as
index 4b1765a..0cfafd0 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DateFieldMouseController.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DateFieldMouseController.as
@@ -30,6 +30,7 @@ package org.apache.royale.html.beads.controllers
import org.apache.royale.utils.Timer;
import org.apache.royale.utils.UIUtils;
import org.apache.royale.utils.sendStrandEvent;
+ import org.apache.royale.html.util.getModelByType;
/**
* The DateFieldMouseController class is responsible for monitoring
@@ -132,7 +133,7 @@ package org.apache.royale.html.beads.controllers
var viewBead:DateFieldView = _strand.getBeadByType(DateFieldView) as DateFieldView;
- var model:IDateChooserModel = _strand.getBeadByType(IDateChooserModel) as IDateChooserModel;
+ var model:IDateChooserModel = getModelByType(_strand,IDateChooserModel) as IDateChooserModel;
model.selectedDate = IDateChooserModel(viewBead.popUp.getBeadByType(IDateChooserModel)).selectedDate;
viewBead.popUpVisible = false;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/MenuBarMouseController.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/MenuBarMouseController.as
index c3b74c9..78672b8 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/MenuBarMouseController.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/MenuBarMouseController.as
@@ -35,6 +35,7 @@ package org.apache.royale.html.beads.controllers
import org.apache.royale.utils.UIUtils;
import org.apache.royale.utils.loadBeadFromValuesManager;
import org.apache.royale.utils.sendEvent;
+ import org.apache.royale.core.IStrandWithModel;
/**
* The MenuBarMouseController handles mouse events for the MenuBar. While the menu bar is
@@ -105,6 +106,7 @@ package org.apache.royale.html.beads.controllers
* @royaleignorecoercion org.apache.royale.core.UIBase
* @royaleignorecoercion org.apache.royale.core.IFactory
* @royaleignorecoercion org.apache.royale.core.IMenuBarModel
+ * @royaleignorecoercion org.apache.royale.core.IStrandWithModel
* @royaleignorecoercion org.apache.royale.events.IEventDispatcher
*/
override protected function selectedHandler(event:ItemClickedEvent):void
@@ -118,7 +120,7 @@ package org.apache.royale.html.beads.controllers
var menuFactory:IFactory = loadBeadFromValuesManager(IFactory, "iMenuFactory", _strand) as IFactory;
var menu:IMenu = menuFactory.newInstance() as IMenu;
- var model:IMenuBarModel = _strand.getBeadByType(IBeadModel) as IMenuBarModel;
+ var model:IMenuBarModel = (_strand as IStrandWithModel).model as IMenuBarModel;
menu.dataProvider = getMenuDataProvider(event.data, model.submenuField);
menu.labelField = model.labelField;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ScrollBarMouseControllerBase.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ScrollBarMouseControllerBase.as
index 71b2bab..5d92c25 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ScrollBarMouseControllerBase.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ScrollBarMouseControllerBase.as
@@ -26,6 +26,7 @@ package org.apache.royale.html.beads.controllers
import org.apache.royale.events.MouseEvent;
import org.apache.royale.html.beads.IScrollBarView;
import org.apache.royale.utils.sendStrandEvent;
+ import org.apache.royale.html.util.getModelByType;
/**
* The ScrollBarMouseControllerBase class is the base class
@@ -91,7 +92,7 @@ package org.apache.royale.html.beads.controllers
public function set strand(value:IStrand):void
{
_strand = value;
- sbModel = value.getBeadByType(IScrollBarModel) as IScrollBarModel;
+ sbModel = getModelByType(value,IScrollBarModel) as IScrollBarModel;
sbView = value.getBeadByType(IScrollBarView) as IScrollBarView;
sbView.decrement.addEventListener(MouseEvent.CLICK, decrementClickHandler);
sbView.increment.addEventListener(MouseEvent.CLICK, incrementClickHandler);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/ButtonBarLayout.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/ButtonBarLayout.as
index 5bf485f..f7b788a 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/ButtonBarLayout.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/ButtonBarLayout.as
@@ -25,6 +25,7 @@ package org.apache.royale.html.beads.layouts
import org.apache.royale.core.IStrand;
import org.apache.royale.html.beads.models.ButtonBarModel;
import org.apache.royale.html.supportClasses.UIItemRendererBase;
+ import org.apache.royale.html.util.getModelByType;
/**
* The ButtonBarLayout class bead sizes and positions the button
@@ -83,7 +84,7 @@ package org.apache.royale.html.beads.layouts
{
var contentView:ILayoutView = layoutView;
- var model:ButtonBarModel = (host as IStrand).getBeadByType(ButtonBarModel) as ButtonBarModel;
+ var model:ButtonBarModel = getModelByType(_strand,ButtonBarModel) as ButtonBarModel;
if (model) {
buttonWidths = model.buttonWidths;
_widthType = model.widthType;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/DataGridLayout.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/DataGridLayout.as
index b1922c7..d29aa85 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/DataGridLayout.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/DataGridLayout.as
@@ -37,6 +37,7 @@ package org.apache.royale.html.beads.layouts
import org.apache.royale.html.beads.models.ButtonBarModel;
import org.apache.royale.html.supportClasses.IDataGridColumn;
import org.apache.royale.core.Bead;
+ import org.apache.royale.html.util.getModelByType;
/**
* DataGridLayout is a class that handles the size and positioning of the
@@ -106,7 +107,7 @@ package org.apache.royale.html.beads.layouts
// fancier DG's will filter invisible columns and only put visible columns
// in the bbmodel, so do all layout based on the bbmodel, not the set
// of columns that may contain invisible columns
- var bbmodel:ButtonBarModel = header.getBeadByType(ButtonBarModel) as ButtonBarModel;
+ var bbmodel:ButtonBarModel = getModelByType(header,ButtonBarModel) as ButtonBarModel;
return bbmodel.dataProvider as Array;
}
@@ -120,7 +121,7 @@ package org.apache.royale.html.beads.layouts
// fancier DG's will filter invisible columns and only put visible columns
// in the bbmodel, so do all layout based on the bbmodel, not the set
// of columns that may contain invisible columns
- var bbmodel:ButtonBarModel = header.getBeadByType(ButtonBarModel) as ButtonBarModel;
+ var bbmodel:ButtonBarModel = getModelByType(header,ButtonBarModel) as ButtonBarModel;
bbmodel.buttonWidths = columnWidths;
}
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/HScrollBarLayout.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/HScrollBarLayout.as
index 4b2ebd4..9446024 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/HScrollBarLayout.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/HScrollBarLayout.as
@@ -32,6 +32,7 @@ package org.apache.royale.html.beads.layouts
import org.apache.royale.geom.Rectangle;
import org.apache.royale.html.beads.IScrollBarView;
import org.apache.royale.html.Button;
+ import org.apache.royale.html.util.getModelByType;
/**
* The HScrollBarLayout class is a layout
@@ -84,7 +85,7 @@ package org.apache.royale.html.beads.layouts
public function layout():Boolean
{
if (!sbModel)
- sbModel = _strand.getBeadByType(IScrollBarModel) as IScrollBarModel
+ sbModel = getModelByType(_strand,IScrollBarModel) as IScrollBarModel
var metrics:EdgeData = (ValuesManager.valuesImpl as IBorderPaddingMarginValuesImpl).getBorderAndPaddingMetrics(_strand as IUIBase);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/TreeGridLayout.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/TreeGridLayout.as
index 4c38110..ff57506 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/TreeGridLayout.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/TreeGridLayout.as
@@ -36,6 +36,7 @@ package org.apache.royale.html.beads.layouts
import org.apache.royale.html.supportClasses.TreeGridColumn;
import org.apache.royale.core.IRenderedObject;
import org.apache.royale.core.Bead;
+ import org.apache.royale.html.util.getModelByType;
/**
* The TreeGridLayout class provides the sizing and positioning for the sub-components
@@ -166,7 +167,7 @@ package org.apache.royale.html.beads.layouts
xpos += columnList.width;
}
- var bbmodel:ButtonBarModel = header.getBeadByType(ButtonBarModel) as ButtonBarModel;
+ var bbmodel:ButtonBarModel = getModelByType(header,ButtonBarModel) as ButtonBarModel;
bbmodel.buttonWidths = columnWidths;
header.dispatchEvent(new Event("layoutNeeded"));
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/VScrollBarLayout.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/VScrollBarLayout.as
index 8490238..543d4d7 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/VScrollBarLayout.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/VScrollBarLayout.as
@@ -32,6 +32,7 @@ package org.apache.royale.html.beads.layouts
import org.apache.royale.geom.Rectangle;
import org.apache.royale.html.beads.IScrollBarView;
import org.apache.royale.html.beads.ScrollBarView;
+ import org.apache.royale.html.util.getModelByType;
/**
* The VScrollBarLayout class is a layout
@@ -83,7 +84,7 @@ package org.apache.royale.html.beads.layouts
public function layout():Boolean
{
if (!sbModel)
- sbModel = _strand.getBeadByType(IScrollBarModel) as IScrollBarModel
+ sbModel = getModelByType(_strand,IScrollBarModel) as IScrollBarModel
var metrics:EdgeData = (ValuesManager.valuesImpl as IBorderPaddingMarginValuesImpl).getBorderAndPaddingMetrics(_strand as IUIBase);
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/AccordionItemRenderer.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/AccordionItemRenderer.as
index 9cb303e..5479d3e 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/AccordionItemRenderer.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/AccordionItemRenderer.as
@@ -27,6 +27,7 @@ package org.apache.royale.html.supportClasses
import org.apache.royale.html.Panel;
import org.apache.royale.html.TitleBar;
import org.apache.royale.html.beads.PanelView;
+ import org.apache.royale.html.util.getModelByType;
public class AccordionItemRenderer extends Panel implements IItemRenderer, ICollapsible
{
@@ -60,7 +61,9 @@ package org.apache.royale.html.supportClasses
{
super.height = value;
}
-
+ /**
+ * @royaleignorecoercion org.apache.royale.core.IStrand
+ */
public function set data(value:Object):void
{
while (numElements > 0)
@@ -71,7 +74,7 @@ package org.apache.royale.html.supportClasses
var dataAsStrand:IStrand = value as IStrand;
if (dataAsStrand)
{
- var dataTitleModel:ITitleBarModel = dataAsStrand.getBeadByType(ITitleBarModel) as ITitleBarModel;
+ var dataTitleModel:ITitleBarModel = getModelByType(dataAsStrand,ITitleBarModel) as ITitleBarModel;
if (dataTitleModel)
{
// titleBar.model = dataTitleModel;