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
commit 1f6bbf16918b88950b576b9c4a4dc07fb232731f Author: Harbs <ha...@in-tools.com> AuthorDate: Sun Jan 2 22:32:07 2022 +0200 jewel models --- .../beads/controllers/DateFieldMouseController.as | 2 +- .../ListMultiSelectionMouseController.as | 3 +- .../royale/express/beads/layouts/DataGridLayout.as | 3 +- .../beads/InspireTreeCheckBoxModeBead.as | 14 ++-- .../inspiretree/beads/InspireTreeIconBead.as | 11 +++- .../inspiretree/beads/InspireTreePaginateBead.as | 7 +- .../beads/InspireTreeReadOnlyCheckBead.as | 16 +++-- .../beads/InspireTreeRevertCheckBead.as | 19 ++++-- frameworks/projects/Flat/asconfig.json | 7 +- .../beads/CSSContentAndTextToggleButtonView.as | 3 +- .../apache/royale/flat/beads/CSSScrollBarView.as | 4 +- .../apache/royale/flat/beads/DropDownListView.as | 3 +- frameworks/projects/GoogleMaps/asconfig.json | 4 +- .../org/apache/royale/maps/google/GoogleMap.as | 13 ++-- .../royale/maps/google/beads/GoogleMapView.as | 76 ++++++++++++---------- .../royale/org/apache/royale/jewel/ComboBox.as | 3 +- .../org/apache/royale/jewel/DataContainer.as | 3 +- .../royale/org/apache/royale/jewel/DataGrid.as | 3 +- .../royale/org/apache/royale/jewel/DropDownList.as | 3 +- .../main/royale/org/apache/royale/jewel/TabBar.as | 3 +- .../royale/org/apache/royale/jewel/WizardPage.as | 2 +- .../jewel/beads/controllers/ComboBoxController.as | 6 +- .../controllers/DateChooserMouseController.as | 4 +- .../beads/controllers/DateFieldMouseController.as | 7 +- .../beads/controllers/DropDownListController.as | 4 +- .../beads/controllers/ListKeyDownController.as | 3 +- .../beads/controllers/NumericStepperController.as | 3 +- .../jewel/beads/controllers/SnackbarController.as | 5 +- .../TableCellSelectionMouseController.as | 3 +- .../beads/controllers/TableKeyDownController.as | 3 +- .../controllers/VirtualListKeyDownController.as | 3 +- .../jewel/beads/controllers/WizardController.as | 2 +- .../beads/controls/DispatchChangeOnStartup.as | 5 +- .../jewel/beads/controls/datagrid/DataGridSort.as | 3 +- .../datechooser/DateChooserDateRangeRestriction.as | 3 +- .../datefield/SpanishDateComponentConfig.as | 3 +- .../RemoveAllItemRendererForArrayListData.as | 5 +- .../royale/jewel/beads/layouts/ButtonBarLayout.as | 3 +- .../jewel/beads/layouts/DataGridColumnLayout.as | 5 +- .../royale/jewel/beads/layouts/DataGridLayout.as | 7 +- .../beads/layouts/VirtualListVerticalLayout.as | 3 +- .../apache/royale/jewel/beads/views/ButtonView.as | 3 +- .../royale/jewel/beads/views/CheckBoxView.as | 5 +- .../royale/jewel/beads/views/ComboBoxPopUpView.as | 3 +- .../royale/jewel/beads/views/ComboBoxView.as | 5 +- .../royale/jewel/beads/views/DataGridView.as | 1 - .../royale/jewel/beads/views/DateFieldView.as | 3 +- .../royale/jewel/beads/views/DropDownListView.as | 3 +- .../royale/jewel/beads/views/FormHeadingView.as | 3 +- .../royale/jewel/beads/views/FormItemView.as | 3 +- .../apache/royale/jewel/beads/views/ListView.as | 5 +- .../royale/jewel/beads/views/NumericStepperView.as | 3 +- .../royale/jewel/beads/views/RadioButtonView.as | 3 +- .../apache/royale/jewel/beads/views/SliderView.as | 2 +- .../apache/royale/jewel/beads/views/SpinnerView.as | 3 +- .../royale/jewel/beads/views/VirtualListView.as | 3 +- .../apache/royale/jewel/beads/views/WizardView.as | 2 +- .../jewel/supportClasses/combobox/ComboBoxPopUp.as | 3 +- .../supportClasses/datagrid/DataGridColumnList.as | 3 +- .../datagrid/VirtualDataGridColumnList.as | 3 +- 60 files changed, 215 insertions(+), 126 deletions(-) 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 0cfafd0..df4d0a2 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 @@ -134,7 +134,7 @@ package org.apache.royale.html.beads.controllers var viewBead:DateFieldView = _strand.getBeadByType(DateFieldView) as DateFieldView; var model:IDateChooserModel = getModelByType(_strand,IDateChooserModel) as IDateChooserModel; - model.selectedDate = IDateChooserModel(viewBead.popUp.getBeadByType(IDateChooserModel)).selectedDate; + model.selectedDate = (getModelByType(viewBead.popUp as IStrand,IDateChooserModel) as IDateChooserModel).selectedDate; viewBead.popUpVisible = false; sendStrandEvent(_strand,"change"); diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListMultiSelectionMouseController.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListMultiSelectionMouseController.as index 9ec6ef4..e6fb419 100644 --- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListMultiSelectionMouseController.as +++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListMultiSelectionMouseController.as @@ -34,6 +34,7 @@ package org.apache.royale.html.beads.controllers import org.apache.royale.utils.getSelectionRenderBead; import org.apache.royale.utils.sendEvent; import org.apache.royale.core.Bead; + import org.apache.royale.html.util.getModelByType; /** * The ListMultiSelectionMouseController class is a controller for @@ -107,7 +108,7 @@ package org.apache.royale.html.beads.controllers override public function set strand(value:IStrand):void { _strand = value; - listModel = value.getBeadByType(IMultiSelectionModel) as IMultiSelectionModel; + listModel = getModelByType(value,IMultiSelectionModel) as IMultiSelectionModel; listView = value.getBeadByType(IListView) as IListView; listenOnStrand("itemAdded", handleItemAdded); listenOnStrand("itemRemoved", handleItemRemoved); diff --git a/frameworks/projects/Express/src/main/royale/org/apache/royale/express/beads/layouts/DataGridLayout.as b/frameworks/projects/Express/src/main/royale/org/apache/royale/express/beads/layouts/DataGridLayout.as index 3d63125..c6109f3 100644 --- a/frameworks/projects/Express/src/main/royale/org/apache/royale/express/beads/layouts/DataGridLayout.as +++ b/frameworks/projects/Express/src/main/royale/org/apache/royale/express/beads/layouts/DataGridLayout.as @@ -36,6 +36,7 @@ package org.apache.royale.express.beads.layouts import org.apache.royale.html.beads.IDrawingLayerBead; import org.apache.royale.html.beads.models.ButtonBarModel; import org.apache.royale.html.supportClasses.ScrollingViewport; + import org.apache.royale.html.util.getModelByType; /** * This DataGridLayout class sizes and positions all of the elements of the DataGrid @@ -170,7 +171,7 @@ package org.apache.royale.express.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.x = borderMetrics.left; diff --git a/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeCheckBoxModeBead.as b/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeCheckBoxModeBead.as index 246ea95..de0045b 100644 --- a/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeCheckBoxModeBead.as +++ b/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeCheckBoxModeBead.as @@ -37,6 +37,8 @@ package org.apache.royale.externsjs.inspiretree.beads import org.apache.royale.core.StyledUIBase; import org.apache.royale.externsjs.inspiretree.vos.ItemTreeNode; import org.apache.royale.events.ValueEvent; + import org.apache.royale.core.IStrandWithModel; + import org.apache.royale.core.IStrandWithModel; } COMPILE::JS public class InspireTreeCheckBoxModeBead extends Strand implements IBead @@ -86,10 +88,13 @@ package org.apache.royale.externsjs.inspiretree.beads } private var _treeModel:InspireTreeModel; + /** + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel + */ private function get treeModel():InspireTreeModel{ if(_strand && !_treeModel) { - _treeModel = _strand.getBeadByType(IBeadModel) as InspireTreeModel; + _treeModel = (_strand as IStrandWithModel).model as InspireTreeModel; } return _treeModel; } @@ -97,7 +102,6 @@ package org.apache.royale.externsjs.inspiretree.beads private function init(event:Event):void { (_strand as IEventDispatcher).removeEventListener("initComplete", init); - //treeModel = _strand.getBeadByType(IBeadModel) as InspireTreeModel; if(treeModel) { //treeModel.checkboxField = _checkboxField; @@ -268,11 +272,13 @@ package org.apache.royale.externsjs.inspiretree.beads fn_RevertSpecificNode(node.id, true); } } - + /** + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel + */ public function fn_RevertSpecificNode(pNodeFilter:String, byID:Boolean):String { var idNodeParent:String; - var arOrg:Array = (_strand.getBeadByType(IBeadModel) as InspireTreeModel).dataProviderTree; + var arOrg:Array = ((_strand as IStrandWithModel).model as InspireTreeModel).dataProviderTree; arOrg = completeTreeData(null,arOrg); var lenar:int = arOrg.length; diff --git a/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeIconBead.as b/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeIconBead.as index 4f0a45b..66fa9fc 100644 --- a/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeIconBead.as +++ b/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeIconBead.as @@ -33,6 +33,7 @@ package org.apache.royale.externsjs.inspiretree.beads import org.apache.royale.events.IEventDispatcher; import org.apache.royale.core.IBeadModel; import org.apache.royale.externsjs.inspiretree.beads.models.InspireTreeModel; + import org.apache.royale.core.IStrandWithModel; COMPILE::JS public class InspireTreeIconBead extends Strand implements IBead @@ -86,7 +87,7 @@ package org.apache.royale.externsjs.inspiretree.beads { (_strand as IEventDispatcher).removeEventListener("initComplete", init); - var treeModel:InspireTreeModel = (_strand.getBeadByType(IBeadModel) as InspireTreeModel); + var treeModel:InspireTreeModel = (_strand as IStrandWithModel).model as InspireTreeModel; treeModel.addEventListener("checkboxModeChanged", updateHost); setIcons(null); @@ -279,14 +280,18 @@ package org.apache.royale.externsjs.inspiretree.beads } private var lastUID:String = ""; - + /** + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel + * @royaleignorecoercion org.apache.royale.externsjs.inspiretree.beads.models.InspireTreeModel + */ private function updateHost( init:Boolean = false, propertyChange:String=""):void { if(!strand) return; //var hostelement:Element = (_strand as StyledUIBase).element; - var checkboxMode:Boolean =(_strand.getBeadByType(IBeadModel) as InspireTreeModel).checkboxMode; + var checkboxMode:Boolean =((_strand as IStrandWithModel).model as InspireTreeModel).checkboxMode; var existClasswithoutCB:Boolean = (_strand as IStyledUIBase).containsClass('withoutcheckbox') ? true : false; if(checkboxMode && existClasswithoutCB) diff --git a/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreePaginateBead.as b/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreePaginateBead.as index d1bcb26..a872764 100644 --- a/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreePaginateBead.as +++ b/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreePaginateBead.as @@ -34,6 +34,7 @@ package org.apache.royale.externsjs.inspiretree.beads import org.apache.royale.events.IEventDispatcher; import org.apache.royale.externsjs.inspiretree.beads.models.InspireTreeModel; import org.apache.royale.externsjs.inspiretree.IInspireTree; + import org.apache.royale.core.IStrandWithModel; } COMPILE::JS public class InspireTreePaginateBead extends Strand implements IBead @@ -81,10 +82,12 @@ package org.apache.royale.externsjs.inspiretree.beads } private var treeModel:InspireTreeModel; - + /** + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel + */ private function init(event:Event):void { - treeModel = _strand.getBeadByType(IBeadModel) as InspireTreeModel; + treeModel = (_strand as IStrandWithModel).model as InspireTreeModel; if(treeModel) { treeModel.addEventListener("paginateChanged", updateHost); diff --git a/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeReadOnlyCheckBead.as b/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeReadOnlyCheckBead.as index 3b9ad43..964e67b 100644 --- a/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeReadOnlyCheckBead.as +++ b/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeReadOnlyCheckBead.as @@ -37,6 +37,8 @@ package org.apache.royale.externsjs.inspiretree.beads import org.apache.royale.events.ValueEvent; import org.apache.royale.events.Event; import org.apache.royale.core.IStyledUIBase; + import org.apache.royale.core.IStrandWithModel; + import org.apache.royale.core.IStrandWithModel; } /** * Simulates the Read-Only state in checkboxes. @@ -90,12 +92,14 @@ package org.apache.royale.externsjs.inspiretree.beads _strand = value; (_strand as IEventDispatcher).addEventListener("initComplete", init); } - + /** + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel + */ private function init(event:Event):void { (_strand as IEventDispatcher).removeEventListener("initComplete", init); - var treeModel:InspireTreeModel = (_strand.getBeadByType(IBeadModel) as InspireTreeModel); + var treeModel:InspireTreeModel = ((_strand as IStrandWithModel).model as InspireTreeModel); treeModel.addEventListener("checkboxModeChanged", updateHost); updateHost(); @@ -126,8 +130,10 @@ package org.apache.royale.externsjs.inspiretree.beads sendStrandEvent(_strand, new ValueEvent("readonlyChange", readOnly)); } } - } - + } + /** + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel + */ private function updateHost(event:Event = null):void { if(!strand) @@ -139,7 +145,7 @@ package org.apache.royale.externsjs.inspiretree.beads initialized = true; - var checkboxMode:Boolean =(_strand.getBeadByType(IBeadModel) as InspireTreeModel).checkboxMode; + var checkboxMode:Boolean =((_strand as IStrandWithModel).model as InspireTreeModel).checkboxMode; if(!checkboxMode) return; diff --git a/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeRevertCheckBead.as b/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeRevertCheckBead.as index 4480bf5..ce383c0 100644 --- a/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeRevertCheckBead.as +++ b/frameworks/projects/ExternsJS/src/main/royale/org/apache/royale/externsjs/inspiretree/beads/InspireTreeRevertCheckBead.as @@ -36,6 +36,9 @@ package org.apache.royale.externsjs.inspiretree.beads import org.apache.royale.externsjs.inspiretree.IInspireTree; import org.apache.royale.core.StyledUIBase; import org.apache.royale.externsjs.inspiretree.vos.ItemTreeNode; + import org.apache.royale.core.IStrandWithModel; + import org.apache.royale.core.IStrandWithModel; + import org.apache.royale.core.IStrandWithModel; } /** * Deprecate - Use the combined bead "InspireTreeIconBead" instead. @@ -83,10 +86,12 @@ package org.apache.royale.externsjs.inspiretree.beads _strand = value; (_strand as IEventDispatcher).addEventListener("onBeforeCreation", init); } - + /** + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel + */ private function init(event:Event):void { - if( (_strand.getBeadByType(IBeadModel) as InspireTreeModel).checkboxMode == false && _revertIcon) + if( ((_strand as IStrandWithModel).model as InspireTreeModel).checkboxMode == false && _revertIcon) revertIcon = false; if(revertIcon) @@ -100,11 +105,14 @@ package org.apache.royale.externsjs.inspiretree.beads private var _revertIcon:Boolean = false; public function get revertIcon():Boolean{ return _revertIcon; } + /** + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel + */ public function set revertIcon(value:Boolean):void { if(_revertIcon != value) { - if(value && (_strand.getBeadByType(IBeadModel) as InspireTreeModel).checkboxMode == false) + if(value && ((_strand as IStrandWithModel).model as InspireTreeModel).checkboxMode == false) return; _revertIcon = value; updateHost(); @@ -136,10 +144,13 @@ package org.apache.royale.externsjs.inspiretree.beads } } + /** + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel + */ public function fn_RevertSpecificNode(pNodeFilter:String, byID:Boolean):String { var idNodeParent:String; - var arOrg:Array = (_strand.getBeadByType(IBeadModel) as InspireTreeModel).dataProviderTree; + var arOrg:Array = ((_strand as IStrandWithModel).model as InspireTreeModel).dataProviderTree; var lenar:int = arOrg.length; for (var idxnode:int=0; idxnode < lenar; idxnode++) diff --git a/frameworks/projects/Flat/asconfig.json b/frameworks/projects/Flat/asconfig.json index 629cc29..b84d873 100644 --- a/frameworks/projects/Flat/asconfig.json +++ b/frameworks/projects/Flat/asconfig.json @@ -1,8 +1,13 @@ { "config": "royale", + "type": "lib", "compilerOptions": { + "debug": true, - "js-output-type": "royale", + "targets":[ + "SWF", + "JSRoyale" + ], "define": [ { "name": "COMPILE::SWF", diff --git a/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/CSSContentAndTextToggleButtonView.as b/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/CSSContentAndTextToggleButtonView.as index abd49fd..8059847 100644 --- a/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/CSSContentAndTextToggleButtonView.as +++ b/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/CSSContentAndTextToggleButtonView.as @@ -34,6 +34,7 @@ package org.apache.royale.flat.beads import org.apache.royale.core.ValuesManager; import org.apache.royale.events.Event; import org.apache.royale.utils.CSSUtils; + import org.apache.royale.html.util.getModelByType; /** * The CSSContentAndTextToggleButtonView class is the default view for @@ -136,7 +137,7 @@ package org.apache.royale.flat.beads s.addChild(tf); } - _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/Flat/src/main/royale/org/apache/royale/flat/beads/CSSScrollBarView.as b/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/CSSScrollBarView.as index 38bf980..dd34f14 100644 --- a/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/CSSScrollBarView.as +++ b/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/CSSScrollBarView.as @@ -33,6 +33,7 @@ package org.apache.royale.flat.beads import org.apache.royale.html.Button; import org.apache.royale.html.beads.controllers.ButtonAutoRepeatController; import org.apache.royale.html.beads.IScrollBarView; + import org.apache.royale.html.util.getModelByType; /** * The ScrollBarView class is the default view for @@ -103,8 +104,7 @@ package org.apache.royale.flat.beads addBead(bead); var host:UIBase = UIBase(value); - sbModel = value.getBeadByType(IScrollBarModel) as IScrollBarModel; - sbModel = _strand.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/Flat/src/main/royale/org/apache/royale/flat/beads/DropDownListView.as b/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/DropDownListView.as index d970d28..223c8b5 100644 --- a/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/DropDownListView.as +++ b/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/DropDownListView.as @@ -44,6 +44,7 @@ package org.apache.royale.flat.beads import org.apache.royale.html.beads.IDropDownListView; import org.apache.royale.utils.CSSUtils; import org.apache.royale.utils.UIUtils; + import org.apache.royale.html.util.getModelByType; /** * The DropDownListView class is the default view for @@ -129,7 +130,7 @@ package org.apache.royale.flat.beads super.strand = value; var b:Button = Button(value); - selectionModel = value.getBeadByType(ISelectionModel) as ISelectionModel; + selectionModel = getModelByType(value,ISelectionModel) as ISelectionModel; selectionModel.addEventListener("selectedIndexChanged", selectionChangeHandler); selectionModel.addEventListener("dataProviderChanged", selectionChangeHandler); shape = new Shape(); diff --git a/frameworks/projects/GoogleMaps/asconfig.json b/frameworks/projects/GoogleMaps/asconfig.json index 738ac3b..1720fe8 100644 --- a/frameworks/projects/GoogleMaps/asconfig.json +++ b/frameworks/projects/GoogleMaps/asconfig.json @@ -20,8 +20,8 @@ "compilerOptions": { "debug": true, "targets": [ - "SWF", - "JSRoyale" + "JSRoyale", + "SWF" ], "include-classes": [ "GoogleMapsClasses", diff --git a/frameworks/projects/GoogleMaps/src/main/royale/org/apache/royale/maps/google/GoogleMap.as b/frameworks/projects/GoogleMaps/src/main/royale/org/apache/royale/maps/google/GoogleMap.as index 28da547..f68b8fd 100644 --- a/frameworks/projects/GoogleMaps/src/main/royale/org/apache/royale/maps/google/GoogleMap.as +++ b/frameworks/projects/GoogleMaps/src/main/royale/org/apache/royale/maps/google/GoogleMap.as @@ -58,12 +58,13 @@ package org.apache.royale.maps.google super(); className = "Map"; - - var model:IBeadModel = getBeadByType(IBeadModel) as IBeadModel; - if (model == null) { - model = new MapModel(); - addBead(model); - } + + this.model = new MapModel(); + // var model:IBeadModel = getBeadByType(IBeadModel) as IBeadModel; + // if (model == null) { + // model = new MapModel(); + // addBead(model); + // } } public function get token():String diff --git a/frameworks/projects/GoogleMaps/src/main/royale/org/apache/royale/maps/google/beads/GoogleMapView.as b/frameworks/projects/GoogleMaps/src/main/royale/org/apache/royale/maps/google/beads/GoogleMapView.as index 77fe7ab..1d0f00e 100644 --- a/frameworks/projects/GoogleMaps/src/main/royale/org/apache/royale/maps/google/beads/GoogleMapView.as +++ b/frameworks/projects/GoogleMaps/src/main/royale/org/apache/royale/maps/google/beads/GoogleMapView.as @@ -85,6 +85,7 @@ package org.apache.royale.maps.google.beads private var service:PlacesService; private var _strand:IStrand; + private var host:GoogleMap; /** * @copy org.apache.royale.core.IBead#strand @@ -98,8 +99,9 @@ package org.apache.royale.maps.google.beads { super.strand = value; _strand = value; + host = value as GoogleMap; - var token:String = (_strand as GoogleMap).token; + var token:String = host.token; var src:String = 'https://maps.googleapis.com/maps/api/js?v=3.exp'; if (token) src += '&key=' + token; @@ -128,14 +130,14 @@ package org.apache.royale.maps.google.beads public function mapit( centerLat:Number, centerLng:Number, zoom:Number ):void { if (!initialized) { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; model.currentCenter = new LatLng(centerLat, centerLng); model.zoom = zoom; var mapOptions:Object = new Object(); mapOptions['center'] = model.currentCenter; mapOptions['zoom'] = zoom; - realMap = new Map((_strand as UIBase).element, mapOptions); + realMap = new Map(host.element, mapOptions); geocoder = null; model.addEventListener("zoomChanged", handleModelChange); @@ -153,7 +155,7 @@ package org.apache.royale.maps.google.beads { mapit(37.333, -121.900, 12); initialized = true; - IEventDispatcher(_strand).dispatchEvent(new Event('ready')); + host.dispatchEvent(new Event('ready')); } /** @@ -180,7 +182,7 @@ package org.apache.royale.maps.google.beads */ public function setCenter(location:LatLng):void { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; model.currentCenter = new LatLng(location.lat(), location.lng()); realMap.setCenter(model.currentCenter); } @@ -195,7 +197,7 @@ package org.apache.royale.maps.google.beads */ public function markCurrentLocation():void { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; createMarker(model.currentCenter as LatLng); } @@ -245,7 +247,7 @@ package org.apache.royale.maps.google.beads */ public function nearbySearch(placeName:String):void { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; if (markers == null) markers = []; service = new PlacesService(realMap); @@ -278,7 +280,7 @@ package org.apache.royale.maps.google.beads */ public function centerChangeHandler() : void { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; model.currentCenter = realMap.getCenter(); var newEvent:Event = new Event('centered'); @@ -290,7 +292,7 @@ package org.apache.royale.maps.google.beads */ public function boundsChangeHandler():void { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; model.currentCenter = realMap.getCenter(); var newEvent:Event = new Event('boundsChanged'); @@ -302,7 +304,7 @@ package org.apache.royale.maps.google.beads */ public function zoomChangeHandler():void { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; model.currentCenter = realMap.getCenter(); var newEvent:Event = new Event('zoomChanged'); @@ -314,7 +316,7 @@ package org.apache.royale.maps.google.beads */ public function positionHandler(results:Array, status:String):void { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; if (status == GeocoderStatus.OK) { model.currentCenter = results[0].geometry.location; realMap.setCenter(model.currentCenter); @@ -329,7 +331,7 @@ package org.apache.royale.maps.google.beads */ public function geocodeHandler(results:Array, status:String):void { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; if (status == GeocoderStatus.OK) { model.currentCenter = results[0].geometry.location; realMap.setCenter(model.currentCenter); @@ -361,7 +363,7 @@ package org.apache.royale.maps.google.beads markers.push(marker); } - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; model.searchResults = searchResults; } } @@ -376,7 +378,7 @@ package org.apache.royale.maps.google.beads public function handleModelChange(event:Event):void { if (event.type == "zoomChanged") { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; realMap.setZoom(model.zoom); } } @@ -393,11 +395,11 @@ package org.apache.royale.maps.google.beads map: realMap }); - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; model.selectedMarker = newMarker; var newEvent:Event = new Event('markerClicked'); - IEventDispatcher(_strand).dispatchEvent(newEvent); + host.dispatchEvent(newEvent); } } // end ::JS @@ -427,6 +429,8 @@ package org.apache.royale.maps.google.beads private var _loader:HTMLLoader; private var page:String; + private var host:GoogleMap; + /** * @copy org.apache.royale.core.IBead#strand * @@ -438,24 +442,24 @@ package org.apache.royale.maps.google.beads override public function set strand(value:IStrand):void { super.strand = value; - + host = value as GoogleMap; _loader = new HTMLLoader(); _loader.x = 0; _loader.y = 0; - _loader.width = UIBase(value).width; - _loader.height = UIBase(value).height; + _loader.width = host.width; + _loader.height = host.height; _loader.placeLoadStringContentInApplicationSandbox = false; - IEventDispatcher(_strand).addEventListener("widthChanged",handleSizeChange); - IEventDispatcher(_strand).addEventListener("heightChanged",handleSizeChange); + host.addEventListener("widthChanged",handleSizeChange); + host.addEventListener("heightChanged",handleSizeChange); - var model:IBeadModel = _strand.getBeadByType(IBeadModel) as IBeadModel; + var model:IBeadModel = host.model as IBeadModel; model.addEventListener("zoomChanged", handleZoomChange); model.addEventListener("currentLocationChanged", handleCurrentLocationChange); - (_strand as UIBase).addChild(_loader); + host.addChild(_loader); - var token:String = GoogleMap(_strand).token; + var token:String = host.token; if (token) page = pageTemplateStart + "&key=" + token + pageTemplateEnd; else @@ -490,13 +494,13 @@ package org.apache.royale.maps.google.beads _loader.window.addEventListener("markerClicked",onMarkerClicked); } - IEventDispatcher(_strand).dispatchEvent(new org.apache.royale.events.Event("ready")); + host.dispatchEvent(new org.apache.royale.events.Event("ready")); } private function handleZoomChange(event:org.apache.royale.events.Event):void { if (_loader && page) { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; setZoom(model.zoom); } } @@ -504,7 +508,7 @@ package org.apache.royale.maps.google.beads private function handleCurrentLocationChange(event:org.apache.royale.events.Event):void { if (_loader && page) { - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; setCenter(model.currentCenter); } } @@ -514,8 +518,8 @@ package org.apache.royale.maps.google.beads */ private function handleSizeChange(event:org.apache.royale.events.Event):void { - _loader.width = UIBase(_strand).width; - _loader.height = UIBase(_strand).height; + _loader.width = host.width; + _loader.height = host.height; } /** @@ -523,7 +527,7 @@ package org.apache.royale.maps.google.beads */ private function onMapCentered():void { - IEventDispatcher(_strand).dispatchEvent( new org.apache.royale.events.Event("centered") ); + host.dispatchEvent( new org.apache.royale.events.Event("centered") ); } /** @@ -531,7 +535,7 @@ package org.apache.royale.maps.google.beads */ private function onMapBoundsChanged():void { - IEventDispatcher(_strand).dispatchEvent( new org.apache.royale.events.Event("boundsChanged") ); + host.dispatchEvent( new org.apache.royale.events.Event("boundsChanged") ); } /** @@ -539,7 +543,7 @@ package org.apache.royale.maps.google.beads */ private function onMapZoomChanged():void { - IEventDispatcher(_strand).dispatchEvent( new org.apache.royale.events.Event("zoomChanged") ); + host.dispatchEvent( new org.apache.royale.events.Event("zoomChanged") ); } /** @@ -547,7 +551,7 @@ package org.apache.royale.maps.google.beads */ private function onMapDragEnd():void { - IEventDispatcher(_strand).dispatchEvent( new org.apache.royale.events.Event("dragEnd") ); + host.dispatchEvent( new org.apache.royale.events.Event("dragEnd") ); } /** @@ -561,7 +565,7 @@ package org.apache.royale.maps.google.beads results.push(place); } - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; model.searchResults = results; } @@ -576,10 +580,10 @@ package org.apache.royale.maps.google.beads map: event.marker.getMap() }); - var model:MapModel = _strand.getBeadByType(IBeadModel) as MapModel; + var model:MapModel = host.model as MapModel; model.selectedMarker = marker; - IEventDispatcher(_strand).dispatchEvent(new org.apache.royale.events.Event("markerClicked")); + host.dispatchEvent(new org.apache.royale.events.Event("markerClicked")); } /** diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ComboBox.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ComboBox.as index 66613ad..5f55bf6 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ComboBox.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ComboBox.as @@ -27,6 +27,7 @@ package org.apache.royale.jewel import org.apache.royale.jewel.beads.models.ComboBoxPresentationModel; import org.apache.royale.jewel.supportClasses.combobox.IComboBoxPresentationModel; import org.apache.royale.core.IHasLabelField; + import org.apache.royale.html.util.getModelByType; //-------------------------------------- // Events @@ -227,7 +228,7 @@ package org.apache.royale.jewel */ public function get presentationModel():IComboBoxPresentationModel { - var presModel:IComboBoxPresentationModel = getBeadByType(IComboBoxPresentationModel) as IComboBoxPresentationModel; + var presModel:IComboBoxPresentationModel = getModelByType(this,IComboBoxPresentationModel) as IComboBoxPresentationModel; if (presModel == null) { presModel = new ComboBoxPresentationModel(); addBead(presModel); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DataContainer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DataContainer.as index 7220dc5..95313bc 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DataContainer.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DataContainer.as @@ -25,6 +25,7 @@ package org.apache.royale.jewel import org.apache.royale.jewel.supportClasses.container.DataContainerBase; import org.apache.royale.jewel.supportClasses.list.IListPresentationModel; import org.apache.royale.core.IHasLabelField; + import org.apache.royale.html.util.getModelByType; /** * The default property uses when additional MXML content appears within an element's @@ -134,7 +135,7 @@ package org.apache.royale.jewel */ public function get presentationModel():IBead { - var presModel:IListPresentationModel = getBeadByType(IListPresentationModel) as IListPresentationModel; + var presModel:IListPresentationModel = getModelByType(this,IListPresentationModel) as IListPresentationModel; if (presModel == null) { presModel = new ListPresentationModel(); addBead(presModel); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DataGrid.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DataGrid.as index 6de8f67..3a5348f 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DataGrid.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DataGrid.as @@ -27,6 +27,7 @@ package org.apache.royale.jewel import org.apache.royale.core.ValuesManager; import org.apache.royale.jewel.beads.models.DataGridPresentationModel; import org.apache.royale.jewel.supportClasses.datagrid.IDataGridPresentationModel; + import org.apache.royale.html.util.getModelByType; /** * The change event is dispatched whenever the datagrid's selection changes. @@ -220,7 +221,7 @@ package org.apache.royale.jewel */ public function get presentationModel():IBead { - var presModel:IDataGridPresentationModel = getBeadByType(IDataGridPresentationModel) as IDataGridPresentationModel; + var presModel:IDataGridPresentationModel = getModelByType(this,IDataGridPresentationModel) as IDataGridPresentationModel; if (presModel == null) { presModel = new DataGridPresentationModel(); addBead(presModel); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as index bf960da..e8ead86 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as @@ -33,6 +33,7 @@ package org.apache.royale.jewel import org.apache.royale.jewel.supportClasses.container.DataContainerBase; import org.apache.royale.jewel.supportClasses.list.IListPresentationModel; import org.apache.royale.core.IHasLabelField; + import org.apache.royale.html.util.getModelByType; //-------------------------------------- @@ -224,7 +225,7 @@ package org.apache.royale.jewel */ public function get presentationModel():IListPresentationModel { - var presModel:IListPresentationModel = getBeadByType(IListPresentationModel) as IListPresentationModel; + var presModel:IListPresentationModel = getModelByType(this,IListPresentationModel) as IListPresentationModel; if (presModel == null) { presModel = new ListPresentationModel(); addBead(presModel); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TabBar.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TabBar.as index 63926fa..b95316d 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TabBar.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TabBar.as @@ -23,6 +23,7 @@ package org.apache.royale.jewel import org.apache.royale.events.MouseEvent; import org.apache.royale.jewel.beads.models.TabBarPresentationModel; import org.apache.royale.jewel.supportClasses.list.IListPresentationModel; + import org.apache.royale.html.util.getModelByType; /** * The TabBar class is a List used for navigate other organized content @@ -92,7 +93,7 @@ package org.apache.royale.jewel */ override public function get presentationModel():IBead { - var presModel:IListPresentationModel = getBeadByType(IListPresentationModel) as IListPresentationModel; + var presModel:IListPresentationModel = getModelByType(this,IListPresentationModel) as IListPresentationModel; if (presModel == null) { presModel = new TabBarPresentationModel(); addBead(presModel); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/WizardPage.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/WizardPage.as index 4770822..906f219 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/WizardPage.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/WizardPage.as @@ -157,7 +157,7 @@ package org.apache.royale.jewel public function addWizardListeners(wizard:Wizard):void { this.wizard = wizard; - model = wizard.getBeadByType(WizardModel) as WizardModel; + model = wizard.model as WizardModel; if(model.activateEffect) { addClass("transitions"); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ComboBoxController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ComboBoxController.as index ffac21f..e888f43 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ComboBoxController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ComboBoxController.as @@ -45,6 +45,7 @@ package org.apache.royale.jewel.beads.controllers import org.apache.royale.jewel.beads.models.IJewelSelectionModel; import org.apache.royale.jewel.beads.views.ComboBoxPopUpView; import org.apache.royale.jewel.supportClasses.combobox.ComboBoxPopUp; + import org.apache.royale.core.IStrandWithModel; /** * The ComboBoxController class is responsible for listening to @@ -84,11 +85,12 @@ package org.apache.royale.jewel.beads.controllers * @productversion Royale 0.9.4 * @royaleignorecoercion org.apache.royale.jewel.beads.controls.combobox.IComboBoxView * @royaleignorecoercion org.apache.royale.events.IEventDispatcher + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel */ public function set strand(value:IStrand):void { _strand = value; - model = _strand.getBeadByType(IComboBoxModel) as IComboBoxModel; + model = (_strand as IStrandWithModel).model as IComboBoxModel; viewBead = _strand.getBeadByType(IComboBoxView) as IComboBoxView; if (viewBead) { finishSetup(); @@ -266,7 +268,7 @@ package org.apache.royale.jewel.beads.controllers private function changeHandler(event:Event):void { event.stopImmediatePropagation(); - model.selectedItem = IComboBoxModel(list.getBeadByType(IComboBoxModel)).selectedItem; + model.selectedItem = (list.model as IComboBoxModel).selectedItem; IEventDispatcher(_strand).dispatchEvent(new Event(Event.CHANGE)); } diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateChooserMouseController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateChooserMouseController.as index 36e9fcb..c078364 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateChooserMouseController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateChooserMouseController.as @@ -27,6 +27,7 @@ package org.apache.royale.jewel.beads.controllers import org.apache.royale.jewel.beads.models.DateChooserModel; import org.apache.royale.jewel.beads.views.DateChooserView; import org.apache.royale.jewel.supportClasses.datechooser.DateChooserTable; + import org.apache.royale.core.IStrandWithModel; /** * The DateChooserMouseController class is responsible for listening to @@ -63,12 +64,13 @@ package org.apache.royale.jewel.beads.controllers * @playerversion Flash 10.2 * @playerversion AIR 2.6 * @productversion Royale 0.9.4 + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel */ public function set strand(value:IStrand):void { _strand = value; - model = _strand.getBeadByType(IBeadModel) as DateChooserModel; + model = (_strand as IStrandWithModel).model as DateChooserModel; var view:DateChooserView = value.getBeadByType(IBeadView) as DateChooserView; view.previousButton.addEventListener(MouseEvent.CLICK, previousButtonClickHandler); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateFieldMouseController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateFieldMouseController.as index 88a3d8f..f1e1f1a 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateFieldMouseController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DateFieldMouseController.as @@ -31,6 +31,8 @@ package org.apache.royale.jewel.beads.controllers import org.apache.royale.jewel.beads.models.DateChooserModel; import org.apache.royale.jewel.beads.views.DateChooserView; import org.apache.royale.jewel.beads.views.DateFieldView; + import org.apache.royale.core.IStrandWithModel; + import org.apache.royale.html.util.getModelByType; /** * The DateFieldMouseController class is responsible for monitoring @@ -69,12 +71,13 @@ package org.apache.royale.jewel.beads.controllers * @playerversion Flash 10.2 * @playerversion AIR 2.6 * @productversion Royale 0.9.4 + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel */ public function set strand(value:IStrand):void { _strand = value; - model = _strand.getBeadByType(IDateChooserModel) as IDateChooserModel; + model = (_strand as IStrandWithModel).model as IDateChooserModel; viewBead = _strand.getBeadByType(DateFieldView) as DateFieldView; IEventDispatcher(viewBead.menuButton).addEventListener(MouseEvent.CLICK, clickHandler); @@ -129,7 +132,7 @@ package org.apache.royale.jewel.beads.controllers IUIBase(viewBead.popUp).removeEventListener(MouseEvent.MOUSE_DOWN, removePopUpWhenClickOutside); IEventDispatcher(viewBead.popUp).removeEventListener(Event.CHANGE, changeHandler); - model.selectedDate = IDateChooserModel(viewBead.popUp.getBeadByType(IDateChooserModel)).selectedDate; + model.selectedDate = (getModelByType(viewBead.popUp as IStrand,IDateChooserModel) as IDateChooserModel).selectedDate; viewBead.popUpVisible = false; IEventDispatcher(_strand).dispatchEvent(new Event(Event.CHANGE)); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DropDownListController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DropDownListController.as index 8c04456..455fc98 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DropDownListController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DropDownListController.as @@ -31,6 +31,7 @@ package org.apache.royale.jewel.beads.controllers import org.apache.royale.jewel.beads.models.DropDownListModel; import org.apache.royale.jewel.beads.models.IJewelSelectionModel; import org.apache.royale.jewel.beads.views.DropDownListView; + import org.apache.royale.core.IStrandWithModel; /** * The DropDownListController class is the controller for @@ -89,11 +90,12 @@ package org.apache.royale.jewel.beads.controllers * @playerversion AIR 2.6 * @productversion Royale 0.9.4 * @royaleignorecoercion org.apache.royale.events.IEventDispatcher + * @royaleignorecoercion org.apache.royale.core.IStrandWithModel */ public function set strand(value:IStrand):void { _strand = value; - model = value.getBeadByType(DropDownListModel) as DropDownListModel; + model = (value as IStrandWithModel).model as DropDownListModel; IEventDispatcher(_strand).addEventListener("itemAdded", handleItemAdded); IEventDispatcher(_strand).addEventListener("itemRemoved", handleItemRemoved); if (model is IJewelSelectionModel) { diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ListKeyDownController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ListKeyDownController.as index f16b600..1d9c383 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ListKeyDownController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ListKeyDownController.as @@ -32,6 +32,7 @@ package org.apache.royale.jewel.beads.controllers import org.apache.royale.jewel.beads.views.IScrollToIndexView; import org.apache.royale.jewel.supportClasses.textinput.ITextInput; import org.apache.royale.utils.sendEvent; + import org.apache.royale.html.util.getModelByType; /** * The Jewel ListSingleSelectionMouseController class is a controller for @@ -100,7 +101,7 @@ package org.apache.royale.jewel.beads.controllers override public function set strand(value:IStrand):void { _strand = value; - listModel = value.getBeadByType(ISelectionModel) as ISelectionModel; + listModel = getModelByType(value,ISelectionModel) as ISelectionModel; listView = value.getBeadByType(IListView) as IListView; listenOnStrand(KeyboardEvent.KEY_DOWN, keyDownEventHandler); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/NumericStepperController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/NumericStepperController.as index 8be3e65..9a8d1bd 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/NumericStepperController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/NumericStepperController.as @@ -29,6 +29,7 @@ package org.apache.royale.jewel.beads.controllers import org.apache.royale.jewel.TextInput; import org.apache.royale.jewel.beads.views.NumericStepperView; import org.apache.royale.utils.sendStrandEvent; + import org.apache.royale.html.util.getModelByType; /** * The NumericStepperController class is responsible for listening to @@ -103,7 +104,7 @@ package org.apache.royale.jewel.beads.controllers // as resizing the component spinner.addEventListener("valueChange", spinnerValueChanged); - var model:IRangeModel = _strand.getBeadByType(IRangeModel) as IRangeModel; + var model:IRangeModel = getModelByType(_strand,IRangeModel) as IRangeModel; // listen for changes and update the UI accordingly model.addEventListener("valueChange", modelChangeHandler); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/SnackbarController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/SnackbarController.as index dfbfb9e..c204e51 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/SnackbarController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/SnackbarController.as @@ -24,6 +24,7 @@ package org.apache.royale.jewel.beads.controllers import org.apache.royale.jewel.Snackbar; import org.apache.royale.jewel.beads.models.SnackbarModel; import org.apache.royale.utils.Timer; + import org.apache.royale.html.util.getModelByType; /** * The SnackbarController class bead handles duration of the Snackbar @@ -83,7 +84,7 @@ package org.apache.royale.jewel.beads.controllers // start the timer for dismiss durationChangeHandler(null); - var model:SnackbarModel = _strand.getBeadByType(SnackbarModel) as SnackbarModel; + var model:SnackbarModel = getModelByType(_strand,SnackbarModel) as SnackbarModel; model.addEventListener("durationChange", durationChangeHandler); } } @@ -113,7 +114,7 @@ package org.apache.royale.jewel.beads.controllers _timer.reset(); } - var model:SnackbarModel = _strand.getBeadByType(SnackbarModel) as SnackbarModel; + var model:SnackbarModel = getModelByType(_strand,SnackbarModel) as SnackbarModel; if (model.duration < 0) { timerHandler(null); } else if (model.duration > 0) { diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/TableCellSelectionMouseController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/TableCellSelectionMouseController.as index 1ebc4d3..e49437e 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/TableCellSelectionMouseController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/TableCellSelectionMouseController.as @@ -33,6 +33,7 @@ package org.apache.royale.jewel.beads.controllers import org.apache.royale.html.beads.ITableView; import org.apache.royale.html.supportClasses.StyledDataItemRenderer; import org.apache.royale.jewel.beads.models.IJewelSelectionModel; + import org.apache.royale.html.util.getModelByType; /** * The TableCellSelectionMouseController class is a controller for @@ -110,7 +111,7 @@ package org.apache.royale.jewel.beads.controllers { _strand = value; - model = value.getBeadByType(ITableModel) as ITableModel; + model = getModelByType(value,ITableModel) as ITableModel; view = value.getBeadByType(IBeadView) as ITableView; IEventDispatcher(_strand).addEventListener("itemAdded", handleItemAdded); IEventDispatcher(_strand).addEventListener("itemRemoved", handleItemRemoved); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/TableKeyDownController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/TableKeyDownController.as index d78ed69..0fc5958 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/TableKeyDownController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/TableKeyDownController.as @@ -29,6 +29,7 @@ package org.apache.royale.jewel.beads.controllers import org.apache.royale.events.KeyboardEvent; import org.apache.royale.events.utils.WhitespaceKeys; import org.apache.royale.html.beads.ITableView; + import org.apache.royale.html.util.getModelByType; /** * The Jewel TableKeyDownController class is a key controller for @@ -90,7 +91,7 @@ package org.apache.royale.jewel.beads.controllers override public function set strand(value:IStrand):void { _strand = value; - tableModel = value.getBeadByType(ISelectionModel) as ITableModel; + tableModel = getModelByType(value,ISelectionModel) as ITableModel; tableView = value.getBeadByType(IBeadView) as ITableView; listenOnStrand(KeyboardEvent.KEY_DOWN, keyDownEventHandler); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/VirtualListKeyDownController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/VirtualListKeyDownController.as index 6919638..3a097cd 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/VirtualListKeyDownController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/VirtualListKeyDownController.as @@ -30,6 +30,7 @@ package org.apache.royale.jewel.beads.controllers import org.apache.royale.jewel.beads.views.IScrollToIndexView; import org.apache.royale.utils.sendEvent; import org.apache.royale.events.utils.WhitespaceKeys; + import org.apache.royale.html.util.getModelByType; /** * The Jewel ListSingleSelectionMouseController class is a controller for @@ -98,7 +99,7 @@ package org.apache.royale.jewel.beads.controllers override public function set strand(value:IStrand):void { _strand = value; - listModel = value.getBeadByType(ISelectionModel) as ISelectionModel; + listModel = getModelByType(value,ISelectionModel) as ISelectionModel; listView = value.getBeadByType(IListView) as IListView; listenOnStrand(KeyboardEvent.KEY_DOWN, keyDownEventHandler); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/WizardController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/WizardController.as index a4c834d..1102713 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/WizardController.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/WizardController.as @@ -82,7 +82,7 @@ package org.apache.royale.jewel.beads.controllers wizard = value as Wizard; wizard.addEventListener("initComplete", finishSetUp); - model = wizard.getBeadByType(WizardModel) as WizardModel; + model = wizard.model as WizardModel; model.addEventListener("currentStepChange", handleStepChange); view = wizard.getBeadByType(WizardView) as WizardView; diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/DispatchChangeOnStartup.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/DispatchChangeOnStartup.as index 94529e4..40cdd11 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/DispatchChangeOnStartup.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/DispatchChangeOnStartup.as @@ -23,6 +23,7 @@ package org.apache.royale.jewel.beads.controls import org.apache.royale.events.IEventDispatcher; import org.apache.royale.events.Event; import org.apache.royale.core.ISelectionModel; + import org.apache.royale.html.util.getModelByType; /** * The DispatchChangeOnStartup bead class is a specialty bead that can be used @@ -79,14 +80,14 @@ package org.apache.royale.jewel.beads.controls private function listenToModel(event:Event):void { IEventDispatcher(_strand).removeEventListener('beadsAdded', listenToModel); - const model:ISelectionModel = _strand.getBeadByType(ISelectionModel) as ISelectionModel; + const model:ISelectionModel = getModelByType(_strand,ISelectionModel) as ISelectionModel; if (model) { IEventDispatcher(model).addEventListener('selectionChanged', onChange); } } private function onChange(event:Event):void{ - const model:ISelectionModel = _strand.getBeadByType(ISelectionModel) as ISelectionModel; + const model:ISelectionModel = getModelByType(_strand,ISelectionModel) as ISelectionModel; IEventDispatcher(model).removeEventListener('selectionChanged', onChange); IEventDispatcher(_strand).dispatchEvent(new Event('change')); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datagrid/DataGridSort.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datagrid/DataGridSort.as index 1e349ee..a59ca1b 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datagrid/DataGridSort.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datagrid/DataGridSort.as @@ -32,6 +32,7 @@ package org.apache.royale.jewel.beads.controls.datagrid import org.apache.royale.html.beads.EasyDataProviderChangeNotifier; import org.apache.royale.jewel.beads.views.DataGridView; import org.apache.royale.jewel.supportClasses.datagrid.IDataGridColumn; + import org.apache.royale.html.util.getModelByType; /** * The DataGridSort bead class is a specialty bead that can be use with a Jewel DataGrid control @@ -112,7 +113,7 @@ package org.apache.royale.jewel.beads.controls.datagrid { if(event.type == CollectionEvent.COLLECTION_CHANGED) { - var selectionModel:ISelectionModel = _strand.getBeadByType(ISelectionModel) as ISelectionModel; + var selectionModel:ISelectionModel = getModelByType(_strand,ISelectionModel) as ISelectionModel; selectionModel.dispatchEvent(event.cloneEvent() as Event); } else { diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as index 7036ddc..67756a0 100755 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datechooser/DateChooserDateRangeRestriction.as @@ -31,6 +31,7 @@ package org.apache.royale.jewel.beads.controls.datechooser import org.apache.royale.jewel.supportClasses.table.TBodyContentArea; import org.apache.royale.jewel.supportClasses.table.TableCell; import org.apache.royale.jewel.supportClasses.table.TableRow; + import org.apache.royale.html.util.getModelByType; /** * Disable dates which are outside restriction provided by minDate and maxDate properties @@ -134,7 +135,7 @@ package org.apache.royale.jewel.beads.controls.datechooser public function setUpBead():void { - model = _strand.getBeadByType(DateChooserModel) as DateChooserModel; + model = getModelByType(_strand,DateChooserModel) as DateChooserModel; view = _strand.getBeadByType(DateChooserView) as DateChooserView; view.previousButton.addEventListener(MouseEvent.CLICK, refreshDateRange); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/SpanishDateComponentConfig.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/SpanishDateComponentConfig.as index e6b16ee..5bbda2b 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/SpanishDateComponentConfig.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/datefield/SpanishDateComponentConfig.as @@ -22,6 +22,7 @@ package org.apache.royale.jewel.beads.controls.datefield import org.apache.royale.core.IStrand; import org.apache.royale.jewel.DateField; import org.apache.royale.jewel.beads.models.DateChooserModel; + import org.apache.royale.html.util.getModelByType; /** * The SpanishDateFieldConfig class is a specialty bead that is used @@ -62,7 +63,7 @@ package org.apache.royale.jewel.beads.controls.datefield { _strand = value; - var model:DateChooserModel = _strand.getBeadByType(DateChooserModel) as DateChooserModel; + var model:DateChooserModel = getModelByType(_strand,DateChooserModel) as DateChooserModel; model.dayNames = ['D', 'L', 'M', 'X', 'J', 'V', 'S']; model.monthNames = ["ENE", "FEB", "MAR", "ABR", "MAY", "JUN", "JUL", "AGO", "SEP", "OCT", "NOV", "DIC"]; model.firstDayOfWeek = 1; diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveAllItemRendererForArrayListData.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveAllItemRendererForArrayListData.as index e325f51..8e3a230 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveAllItemRendererForArrayListData.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/RemoveAllItemRendererForArrayListData.as @@ -28,6 +28,7 @@ package org.apache.royale.jewel.beads.itemRenderers 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; /** * Handles the removal of all itemRenderers. @@ -91,7 +92,7 @@ package org.apache.royale.jewel.beads.itemRenderers { IEventDispatcher(_strand).removeEventListener("initComplete", initComplete); - _dataProviderModel = _strand.getBeadByType(ISelectionModel) as ISelectionModel; + _dataProviderModel = getModelByType(_strand,ISelectionModel) as ISelectionModel; dataProviderModel.addEventListener("dataProviderChanged", dataProviderChangeHandler); // invoke now in case "dataProviderChanged" has already been dispatched. @@ -151,7 +152,7 @@ package org.apache.royale.jewel.beads.itemRenderers public function get dataProviderModel(): IDataProviderModel { if (_dataProviderModel == null) { - _dataProviderModel = _strand.getBeadByType(IDataProviderModel) as IDataProviderModel; + _dataProviderModel = getModelByType(_strand,IDataProviderModel) as IDataProviderModel; } return _dataProviderModel; } diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/ButtonBarLayout.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/ButtonBarLayout.as index 9c71f62..64d1a36 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/ButtonBarLayout.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/ButtonBarLayout.as @@ -24,6 +24,7 @@ package org.apache.royale.jewel.beads.layouts import org.apache.royale.core.IStyleableObject; import org.apache.royale.events.Event; import org.apache.royale.jewel.beads.models.ButtonBarModel; + import org.apache.royale.html.util.getModelByType; /** * The Jewel ButtonBarLayout class bead sizes and positions the button @@ -73,7 +74,7 @@ package org.apache.royale.jewel.beads.layouts { super.beadsAddedHandler(); - model = (host as IStrand).getBeadByType(ButtonBarModel) as ButtonBarModel; + model = getModelByType(_strand,ButtonBarModel) as ButtonBarModel; if (model) { widthType = model.buttonWidths != null ? model.widthType : NaN; } diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/DataGridColumnLayout.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/DataGridColumnLayout.as index 2d76631..4134858 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/DataGridColumnLayout.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/DataGridColumnLayout.as @@ -29,6 +29,7 @@ package org.apache.royale.jewel.beads.layouts import org.apache.royale.html.beads.IDataGridView; import org.apache.royale.jewel.beads.models.ButtonBarModel; import org.apache.royale.jewel.supportClasses.datagrid.DataGridColumnWidth; + import org.apache.royale.html.util.getModelByType; /** * The Jewel ButtonBarLayout class bead sizes and positions the button @@ -80,7 +81,7 @@ package org.apache.royale.jewel.beads.layouts { super.beadsAddedHandler(); - model = (host as IStrand).getBeadByType(ButtonBarModel) as ButtonBarModel; + model = getModelByType(_strand,ButtonBarModel) as ButtonBarModel; hostComponent.addEventListener("headerLayout", onHeaderLayoutCheck); hostComponent.addEventListener("headerLayoutReset", onHeaderLayoutCheck); } @@ -90,7 +91,7 @@ package org.apache.royale.jewel.beads.layouts */ protected function get datagrid():UIBase { - return (_strand as UIBase).parent as UIBase; + return host.parent as UIBase; } COMPILE::JS diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/DataGridLayout.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/DataGridLayout.as index 79fbd92..c52790f 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/DataGridLayout.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/DataGridLayout.as @@ -32,6 +32,7 @@ package org.apache.royale.jewel.beads.layouts import org.apache.royale.jewel.supportClasses.datagrid.DataGridWidthDenominator; import org.apache.royale.jewel.supportClasses.datagrid.IDataGridColumn; import org.apache.royale.jewel.supportClasses.datagrid.IDataGridPresentationModel; + import org.apache.royale.html.util.getModelByType; /** * DataGridLayout is a class that handles the size and positioning of the @@ -97,7 +98,7 @@ package org.apache.royale.jewel.beads.layouts { var view:IDataGridView = datagrid.view as IDataGridView var header:IUIBase = view.header; - var bbmodel:ButtonBarModel = header.getBeadByType(ButtonBarModel) as ButtonBarModel; + var bbmodel:ButtonBarModel = getModelByType(header,ButtonBarModel) as ButtonBarModel; bbmodel.buttonWidths = null; header.dispatchEvent(new Event('headerLayoutReset')); layout(); @@ -146,12 +147,12 @@ package org.apache.royale.jewel.beads.layouts } var view:IDataGridView = datagrid.view as IDataGridView - var presentationModel:IDataGridPresentationModel = datagrid.getBeadByType(IDataGridPresentationModel) as IDataGridPresentationModel; + var presentationModel:IDataGridPresentationModel = getModelByType(datagrid,IDataGridPresentationModel) as IDataGridPresentationModel; var header:IUIBase = view.header; // 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.dataProvider.source = model.columns; var bblayout:DataGridColumnLayout = header.getBeadByType(DataGridColumnLayout) as DataGridColumnLayout; var listArea:IUIBase = view.listArea; diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/VirtualListVerticalLayout.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/VirtualListVerticalLayout.as index 5c586b8..a544d93 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/VirtualListVerticalLayout.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/layouts/VirtualListVerticalLayout.as @@ -39,6 +39,7 @@ package org.apache.royale.jewel.beads.layouts import org.apache.royale.core.IStrand; import org.apache.royale.events.Event; import org.apache.royale.jewel.supportClasses.list.IListPresentationModel; + import org.apache.royale.html.util.getModelByType; /** * The VirtualListVerticalLayout class is used for Jewel List that wants to use VirtualListView @@ -70,7 +71,7 @@ package org.apache.royale.jewel.beads.layouts override public function set strand(value:IStrand):void { super.strand = value; - dataProviderModel = host.getBeadByType(IDataProviderModel) as IDataProviderModel; + dataProviderModel = getModelByType(value,IDataProviderModel) as IDataProviderModel; dataProviderModel.addEventListener("dataProviderChanged", dataProviderChangeHandler); COMPILE::JS diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ButtonView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ButtonView.as index 332aa2e..691c108 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ButtonView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ButtonView.as @@ -43,6 +43,7 @@ package org.apache.royale.jewel.beads.views 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 ButtonView class is the default view for @@ -104,7 +105,7 @@ package org.apache.royale.jewel.beads.views 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/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/CheckBoxView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/CheckBoxView.as index 6df6d9f..8d6469d 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/CheckBoxView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/CheckBoxView.as @@ -40,6 +40,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.core.UIBase; import org.apache.royale.jewel.CheckBox; import org.apache.royale.utils.css.addDynamicSelector; + import org.apache.royale.html.util.getModelByType; /** * The CheckBoxView class is the default view for SWF platform @@ -144,10 +145,10 @@ package org.apache.royale.jewel.beads.views // always run size change since there are no size change events sizeChangeHandler(null); } - + COMPILE::SWF { - _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/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ComboBoxPopUpView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ComboBoxPopUpView.as index 5bdad96..6496502 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ComboBoxPopUpView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ComboBoxPopUpView.as @@ -31,6 +31,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.jewel.supportClasses.combobox.ComboBoxPopUp; import org.apache.royale.jewel.supportClasses.combobox.IComboBoxPresentationModel; import org.apache.royale.jewel.supportClasses.list.IListPresentationModel; + import org.apache.royale.html.util.getModelByType; /** * The ComboBoxPopUpView class is a view bead for the ComboBoxPopUp. @@ -72,7 +73,7 @@ package org.apache.royale.jewel.beads.views _strand = value; // set model - var model:IDataProviderModel = _strand.getBeadByType(IDataProviderModel) as IDataProviderModel; + var model:IDataProviderModel = getModelByType(_strand,IDataProviderModel) as IDataProviderModel; list.model = model; // set rowHeight diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ComboBoxView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ComboBoxView.as index 3d71c88..2d8f402 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ComboBoxView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ComboBoxView.as @@ -44,6 +44,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.jewel.supportClasses.combobox.ComboBoxPopUp; import org.apache.royale.utils.UIUtils; import org.apache.royale.utils.sendStrandEvent; + import org.apache.royale.html.util.getModelByType; /** * The ComboBoxView class creates the visual elements of the org.apache.royale.jewel.ComboBox @@ -140,7 +141,7 @@ package org.apache.royale.jewel.beads.views parent.addElement(_textinput); parent.addElement(_button); - model = host.getBeadByType(IComboBoxModel) as IComboBoxModel; + model = getModelByType(value,IComboBoxModel) as IComboBoxModel; if (model is IJewelSelectionModel) { //do this here as well as in the controller, @@ -275,7 +276,7 @@ package org.apache.royale.jewel.beads.views */ protected function itemChangeAction(event:Event = null):void { - var model:IComboBoxModel = host.getBeadByType(IComboBoxModel) as IComboBoxModel; + var model:IComboBoxModel = getModelByType(_strand,IComboBoxModel) as IComboBoxModel; _textinput.text = getLabelFromData(model, model.selectedItem); } diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DataGridView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DataGridView.as index 1591ec4..f959c4e 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DataGridView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DataGridView.as @@ -261,7 +261,6 @@ package org.apache.royale.jewel.beads.views protected function configureColumnListPresentationModel(event:Event):void { var list:IDataGridColumnList = event.target as IDataGridColumnList; - //var pm:DataGridColumnListPresentationModel = list.getBeadByType(IListPresentationModel) as DataGridColumnListPresentationModel; --> this line doesn't work var pm:DataGridColumnListPresentationModel = list.presentationModel as DataGridColumnListPresentationModel; pm.rowHeight = _presentationModel.rowHeight; pm.variableRowHeight = false; diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateFieldView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateFieldView.as index 7831c2c..0fe9cfd 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateFieldView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DateFieldView.as @@ -50,6 +50,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.jewel.beads.views.DateChooserView; import org.apache.royale.utils.UIUtils; import org.apache.royale.utils.sendStrandEvent; + import org.apache.royale.html.util.getModelByType; /** * The DateFieldView class is a bead for DateField that creates the @@ -184,7 +185,7 @@ package org.apache.royale.jewel.beads.views */ protected function handleInitComplete(event:Event):void { - model = _strand.getBeadByType(IDateChooserModel) as IDateChooserModel; + model = getModelByType(_strand,IDateChooserModel) as IDateChooserModel; IEventDispatcher(model).addEventListener("selectedDateChanged", selectionChangeHandler); var mask:DateFieldMaskedTextInput = new DateFieldMaskedTextInput(); _textInput.addBead(mask); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as index cf10f46..03dde29 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as @@ -30,6 +30,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.jewel.DropDownList; import org.apache.royale.jewel.beads.models.IDropDownListModel; import org.apache.royale.utils.getSelectionRenderBead; + import org.apache.royale.html.util.getModelByType; /** * The DropDownListView class creates the visual elements of the org.apache.royale.jewel.DropDownList @@ -85,7 +86,7 @@ package org.apache.royale.jewel.beads.views dropDownList.addElement(dropDownList.dropDown); } - model = _strand.getBeadByType(ISelectionModel) as ISelectionModel; + model = getModelByType(_strand,ISelectionModel) as ISelectionModel; model.addEventListener("selectionChanged", selectionChangeHandler); super.handleInitComplete(event); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/FormHeadingView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/FormHeadingView.as index da79e42..3c7aa4c 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/FormHeadingView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/FormHeadingView.as @@ -25,6 +25,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.html.beads.GroupView; import org.apache.royale.jewel.FormHeading; import org.apache.royale.jewel.Label; + import org.apache.royale.html.util.getModelByType; /** * The FormHeadingView class creates the visual elements of the org.apache.royale.jewel.FormHeading @@ -86,7 +87,7 @@ package org.apache.royale.jewel.beads.views formHeading = value as FormHeading; - model = _strand.getBeadByType(ITextModel) as ITextModel; + model = getModelByType(_strand,ITextModel) as ITextModel; model.addEventListener("textChange", textChangeHandler); model.addEventListener("htmlChange", textChangeHandler); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/FormItemView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/FormItemView.as index f4e1337..9c3714f 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/FormItemView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/FormItemView.as @@ -38,6 +38,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.jewel.beads.models.FormItemModel; import org.apache.royale.jewel.supportClasses.LayoutProxy; import org.apache.royale.jewel.HGroup; + import org.apache.royale.html.util.getModelByType; /** @@ -120,7 +121,7 @@ package org.apache.royale.jewel.beads.views formItem = value as FormItem; - model = _strand.getBeadByType(FormItemModel) as FormItemModel; + model = getModelByType(_strand,FormItemModel) as FormItemModel; model.addEventListener("textChange", textChangeHandler); model.addEventListener("htmlChange", textChangeHandler); model.addEventListener("requiredChange", requiredChangeHandler); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ListView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ListView.as index dfba1ee..a22193c 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ListView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ListView.as @@ -39,6 +39,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.jewel.beads.models.ListPresentationModel; import org.apache.royale.jewel.supportClasses.list.IListPresentationModel; import org.apache.royale.utils.getSelectionRenderBead; + import org.apache.royale.html.util.getModelByType; /** * The ListView class creates the visual elements of the org.apache.royale.jewel.List @@ -91,7 +92,7 @@ package org.apache.royale.jewel.beads.views */ override protected function handleInitComplete(event:Event):void { - listModel = _strand.getBeadByType(ISelectionModel) as ISelectionModel; + listModel = getModelByType(_strand,ISelectionModel) as ISelectionModel; listModel.addEventListener("selectionChanged", selectionChangeHandler); listModel.addEventListener("rollOverIndexChanged", rollOverIndexChangeHandler); @@ -284,7 +285,7 @@ package org.apache.royale.jewel.beads.views { super.handleInitComplete(event); - listModel = _strand.getBeadByType(ISelectionModel) as ISelectionModel; + listModel = getModelByType(_strand,ISelectionModel) as ISelectionModel; listModel.addEventListener("selectionChanged", selectionChangeHandler); listModel.addEventListener("rollOverIndexChanged", rollOverIndexChangeHandler); } diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/NumericStepperView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/NumericStepperView.as index a9ac4e6..483a89b 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/NumericStepperView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/NumericStepperView.as @@ -32,6 +32,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.jewel.Label; import org.apache.royale.jewel.Spinner; import org.apache.royale.jewel.TextInput; + import org.apache.royale.html.util.getModelByType; /** * The NumericStepperView class creates the visual elements of the @@ -95,7 +96,7 @@ package org.apache.royale.jewel.beads.views (value as IParent).addElement(spinnerview.increment as IChild); (value as IParent).addElement(spinnerview.decrement as IChild); - var model:IRangeModel = _strand.getBeadByType(IRangeModel) as IRangeModel; + var model:IRangeModel = getModelByType(_strand,IRangeModel) as IRangeModel; spinner.value = model.value; input.text = String(model.value); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/RadioButtonView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/RadioButtonView.as index e26a169..9fc5dec 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/RadioButtonView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/RadioButtonView.as @@ -30,6 +30,7 @@ package org.apache.royale.jewel.beads.views 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.jewel.RadioButton @@ -107,7 +108,7 @@ package org.apache.royale.jewel.beads.views 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/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SliderView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SliderView.as index dc03a59..4859ee0 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SliderView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SliderView.as @@ -109,7 +109,7 @@ package org.apache.royale.jewel.beads.views super.strand = value; var host:UIBase = UIBase(_strand); - rangeModel = _strand.getBeadByType(IBeadModel) as IRangeModel; + rangeModel = host.model as IRangeModel; COMPILE::SWF { _track = new Button(); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SpinnerView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SpinnerView.as index d0d6569..f43081a 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SpinnerView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SpinnerView.as @@ -34,6 +34,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.events.Event; import org.apache.royale.jewel.Button; import org.apache.royale.jewel.beads.controls.spinner.ISpinnerView; + import org.apache.royale.core.IStrandWithModel; /** * The SpinnerView class creates the visual elements of the org.apache.royale.jewel.Spinner @@ -106,7 +107,7 @@ package org.apache.royale.jewel.beads.views UIBase(_strand).addChild(_decrement); UIBase(_strand).addChild(_increment); - rangeModel = _strand.getBeadByType(IBeadModel) as IRangeModel; + rangeModel = (_strand as IStrandWithModel).model as IRangeModel; } listenOnStrand("widthChanged",sizeChangeHandler); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/VirtualListView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/VirtualListView.as index 932664b..9177d39 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/VirtualListView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/VirtualListView.as @@ -26,6 +26,7 @@ package org.apache.royale.jewel.beads.views import org.apache.royale.events.Event; import org.apache.royale.html.beads.VirtualDataContainerView; import org.apache.royale.utils.getSelectionRenderBead; + import org.apache.royale.html.util.getModelByType; /** * The VirtualListView class creates the visual elements of the org.apache.royale.jewel.List @@ -59,7 +60,7 @@ package org.apache.royale.jewel.beads.views */ override protected function handleInitComplete(event:Event):void { - listModel = _strand.getBeadByType(ISelectionModel) as ISelectionModel; + listModel = getModelByType(_strand,ISelectionModel) as ISelectionModel; listModel.addEventListener("selectionChanged", selectionChangeHandler); listModel.addEventListener("rollOverIndexChanged", rollOverIndexChangeHandler); listModel.addEventListener("popUpCreated", itemsCreatedHandler); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/WizardView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/WizardView.as index 62627ae..08f3408 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/WizardView.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/WizardView.as @@ -171,7 +171,7 @@ package org.apache.royale.jewel.beads.views wizard = value as Wizard; - model = _strand.getBeadByType(WizardModel) as WizardModel; + model = wizard.model as WizardModel; model.addEventListener("currentStepChange", handleStepChange); model.addEventListener("showPreviousButtonChange", handleStepChange); model.addEventListener("showNextButtonChange", handleStepChange); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/combobox/ComboBoxPopUp.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/combobox/ComboBoxPopUp.as index c94c438..d3e5a51 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/combobox/ComboBoxPopUp.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/combobox/ComboBoxPopUp.as @@ -24,6 +24,7 @@ package org.apache.royale.jewel.supportClasses.combobox import org.apache.royale.core.ISelectionModel; import org.apache.royale.core.StyledUIBase; import org.apache.royale.jewel.beads.models.ComboBoxPresentationModel; + import org.apache.royale.html.util.getModelByType; //-------------------------------------- // Events @@ -139,7 +140,7 @@ package org.apache.royale.jewel.supportClasses.combobox */ public function get presentationModel():IComboBoxPresentationModel { - var presModel:IComboBoxPresentationModel = getBeadByType(IComboBoxPresentationModel) as IComboBoxPresentationModel; + var presModel:IComboBoxPresentationModel = getModelByType(this,IComboBoxPresentationModel) as IComboBoxPresentationModel; if (presModel == null) { presModel = new ComboBoxPresentationModel(); addBead(presModel); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/datagrid/DataGridColumnList.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/datagrid/DataGridColumnList.as index 1454155..59d06fa 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/datagrid/DataGridColumnList.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/datagrid/DataGridColumnList.as @@ -24,6 +24,7 @@ package org.apache.royale.jewel.supportClasses.datagrid import org.apache.royale.jewel.beads.models.DataGridColumnListPresentationModel; import org.apache.royale.jewel.supportClasses.datagrid.IDataGridColumnList; import org.apache.royale.jewel.supportClasses.list.IListPresentationModel; + import org.apache.royale.html.util.getModelByType; /** * The DataGridColumnList class is the List class used internally @@ -100,7 +101,7 @@ package org.apache.royale.jewel.supportClasses.datagrid */ override public function get presentationModel():IBead { - var presModel:IListPresentationModel = getBeadByType(IListPresentationModel) as IListPresentationModel; + var presModel:IListPresentationModel = getModelByType(this,IListPresentationModel) as IListPresentationModel; if (presModel == null) { presModel = new DataGridColumnListPresentationModel(); addBead(presModel); diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/datagrid/VirtualDataGridColumnList.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/datagrid/VirtualDataGridColumnList.as index b4daa96..5738c64 100644 --- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/datagrid/VirtualDataGridColumnList.as +++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/datagrid/VirtualDataGridColumnList.as @@ -24,6 +24,7 @@ package org.apache.royale.jewel.supportClasses.datagrid import org.apache.royale.jewel.beads.models.DataGridColumnListPresentationModel; import org.apache.royale.jewel.supportClasses.datagrid.IDataGridColumnList; import org.apache.royale.jewel.supportClasses.list.IListPresentationModel; + import org.apache.royale.html.util.getModelByType; /** * The VirtualDataGridColumnList class is the VirtualList class used internally @@ -100,7 +101,7 @@ package org.apache.royale.jewel.supportClasses.datagrid */ override public function get presentationModel():IBead { - var presModel:IListPresentationModel = getBeadByType(IListPresentationModel) as IListPresentationModel; + var presModel:IListPresentationModel = getModelByType(this,IListPresentationModel) as IListPresentationModel; if (presModel == null) { presModel = new DataGridColumnListPresentationModel(); addBead(presModel);