You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ca...@apache.org on 2020/03/11 21:05:31 UTC
[royale-asjs] branch develop updated: jewel-list: refactor to use
Basic DataItemRendererFactoryForCollectionView and create its own
ListItemRendererInitializer and remove JewelListItemRendererInitializer
This is an automated email from the ASF dual-hosted git repository.
carlosrovira 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 ad8392f jewel-list: refactor to use Basic DataItemRendererFactoryForCollectionView and create its own ListItemRendererInitializer and remove JewelListItemRendererInitializer
new 7dca67b Merge branch 'develop' of https://github.com/apache/royale-asjs into develop
ad8392f is described below
commit ad8392fdd14a8e0448070645b4cb46835e2bed30
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Wed Mar 11 22:04:54 2020 +0100
jewel-list: refactor to use Basic DataItemRendererFactoryForCollectionView and create its own ListItemRendererInitializer and remove JewelListItemRendererInitializer
---
.../projects/Jewel/src/main/resources/defaults.css | 4 +-
.../projects/Jewel/src/main/royale/JewelClasses.as | 2 +-
.../main/royale/org/apache/royale/jewel/List.as | 2 +
...itializer.as => ListItemRendererInitializer.as} | 51 +++++-----------------
.../Jewel/src/main/sass/components/_list.sass | 4 +-
5 files changed, 17 insertions(+), 46 deletions(-)
diff --git a/frameworks/projects/Jewel/src/main/resources/defaults.css b/frameworks/projects/Jewel/src/main/resources/defaults.css
index d8246f4..a005b9d 100644
--- a/frameworks/projects/Jewel/src/main/resources/defaults.css
+++ b/frameworks/projects/Jewel/src/main/resources/defaults.css
@@ -3207,12 +3207,12 @@ j|List {
IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.VerticalLayout");
IItemRendererClassFactory: ClassReference("org.apache.royale.core.SelectableItemRendererClassFactory");
IItemRenderer: ClassReference("org.apache.royale.jewel.itemRenderers.ListItemRenderer");
- IItemRendererInitializer: ClassReference("org.apache.royale.jewel.beads.itemRenderers.JewelListItemRendererInitializer");
+ IItemRendererInitializer: ClassReference("org.apache.royale.jewel.beads.itemRenderers.ListItemRendererInitializer");
ISelectableItemRenderer: ClassReference("org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListSelectableItemRendererBead");
IViewport: ClassReference("org.apache.royale.jewel.supportClasses.scrollbar.ScrollingViewport");
IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.ArrayListSelectionModel");
- IDataProviderItemRendererMapper: ClassReference("org.apache.royale.jewel.beads.itemRenderers.DataItemRendererFactoryForCollectionView");
+ IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForCollectionView");
}
j|ListItemRenderer {
diff --git a/frameworks/projects/Jewel/src/main/royale/JewelClasses.as b/frameworks/projects/Jewel/src/main/royale/JewelClasses.as
index 612ce48..f5fb7e2 100644
--- a/frameworks/projects/Jewel/src/main/royale/JewelClasses.as
+++ b/frameworks/projects/Jewel/src/main/royale/JewelClasses.as
@@ -134,8 +134,8 @@ package
import org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListSelectableItemRendererBead; ClassSelectorListSelectableItemRendererBead;
import org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListHoverOnlySelectableItemRendererBead; ClassSelectorListHoverOnlySelectableItemRendererBead;
- import org.apache.royale.jewel.beads.itemRenderers.JewelListItemRendererInitializer; JewelListItemRendererInitializer;
import org.apache.royale.jewel.beads.itemRenderers.DataContainerItemRendererInitializer; DataContainerItemRendererInitializer;
+ import org.apache.royale.jewel.beads.itemRenderers.ListItemRendererInitializer; ListItemRendererInitializer;
import org.apache.royale.jewel.beads.itemRenderers.ButtonBarItemRendererInitializer; ButtonBarItemRendererInitializer;
import org.apache.royale.jewel.beads.itemRenderers.TabBarItemRendererInitializer; TabBarItemRendererInitializer;
import org.apache.royale.jewel.beads.itemRenderers.NavigationItemRendererInitializer; NavigationItemRendererInitializer;
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/List.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/List.as
index 315d4db..4ddcf8e 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/List.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/List.as
@@ -79,6 +79,8 @@ package org.apache.royale.jewel
{
super();
typeNames = "jewel list";
+ // rowHeight is not set by default, so set it to NaN
+ rowHeight = NaN;
}
[Bindable("labelFieldChanged")]
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/JewelListItemRendererInitializer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/ListItemRendererInitializer.as
similarity index 64%
rename from frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/JewelListItemRendererInitializer.as
rename to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/ListItemRendererInitializer.as
index f0166f7..a2d095a 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/JewelListItemRendererInitializer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/ListItemRendererInitializer.as
@@ -18,30 +18,27 @@
////////////////////////////////////////////////////////////////////////////////
package org.apache.royale.jewel.beads.itemRenderers
{
- import org.apache.royale.core.Bead;
- import org.apache.royale.core.IDataProviderModel;
import org.apache.royale.core.IIndexedItemRenderer;
import org.apache.royale.core.IIndexedItemRendererInitializer;
- import org.apache.royale.core.IItemRenderer;
import org.apache.royale.core.IItemRendererOwnerView;
- import org.apache.royale.core.ILabelFieldItemRenderer;
import org.apache.royale.core.IStrand;
import org.apache.royale.core.IStrandWithModelView;
import org.apache.royale.core.IStrandWithPresentationModel;
import org.apache.royale.core.StyledMXMLItemRenderer;
import org.apache.royale.core.UIBase;
+ import org.apache.royale.html.beads.IndexedItemRendererInitializer;
import org.apache.royale.jewel.supportClasses.list.IListPresentationModel;
/**
* The ListItemRendererInitializer class initializes item renderers
- * in list classes.
+ * in list classes and use the base class of many other initializers based on lists
*
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion Royale 0.0
+ * @productversion Royale 0.9.7
*/
- public class JewelListItemRendererInitializer extends Bead implements IIndexedItemRendererInitializer
+ public class ListItemRendererInitializer extends IndexedItemRendererInitializer implements IIndexedItemRendererInitializer
{
/**
* constructor.
@@ -49,16 +46,14 @@ package org.apache.royale.jewel.beads.itemRenderers
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion Royale 0.0
+ * @productversion Royale 0.9.7
*/
- public function JewelListItemRendererInitializer()
+ public function ListItemRendererInitializer()
{
}
protected var presentationModel:IListPresentationModel;
- protected var dataProviderModel:IDataProviderModel;
- protected var labelField:String;
- private var ownerView:IItemRendererOwnerView;
+ protected var ownerView:IItemRendererOwnerView;
/**
* @copy org.apache.royale.core.IBead#strand
@@ -66,43 +61,18 @@ package org.apache.royale.jewel.beads.itemRenderers
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion Royale 0.0
+ * @productversion Royale 0.9.7
* @royaleignorecoercion HTMLInputElement
* @royaleignorecoercion org.apache.royale.core.UIBase;
*/
override public function set strand(value:IStrand):void
{
- _strand = value;
+ super.strand = value;
ownerView = (value as IStrandWithModelView).view as IItemRendererOwnerView;
presentationModel = (_strand as IStrandWithPresentationModel).presentationModel as IListPresentationModel;
- dataProviderModel = _strand.getBeadByType(IDataProviderModel) as IDataProviderModel;
- labelField = dataProviderModel.labelField;
}
-
- /**
- * @private
- * @royaleignorecoercion org.apache.royale.core.HTMLElementWrapper
- * @royaleignorecoercion org.apache.royale.core.IIndexedItemRenderer
- */
- public function initializeItemRenderer(ir:IItemRenderer, data:Object):void
- {
- if (ir is ILabelFieldItemRenderer)
- (ir as ILabelFieldItemRenderer).labelField = labelField;
-
- setupVisualsForItemRenderer(ir as IIndexedItemRenderer);
- }
- /**
- * @private
- * @royaleignorecoercion org.apache.royale.core.HTMLElementWrapper
- */
- public function initializeIndexedItemRenderer(ir:IIndexedItemRenderer, data:Object, index:int):void
- {
- ir.index = index;
- initializeItemRenderer(ir, data);
- }
-
- protected function setupVisualsForItemRenderer(ir:IIndexedItemRenderer):void
+ override protected function setupVisualsForItemRenderer(ir:IIndexedItemRenderer):void
{
if (presentationModel) {
UIBase(ir).height = presentationModel.rowHeight;
@@ -115,6 +85,5 @@ package org.apache.royale.jewel.beads.itemRenderers
if (ir is StyledMXMLItemRenderer && ownerView)
(ir as StyledMXMLItemRenderer).itemRendererOwnerView = ownerView;
}
-
}
}
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_list.sass b/frameworks/projects/Jewel/src/main/sass/components/_list.sass
index ec5fe2a..a6dac28 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_list.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_list.sass
@@ -41,12 +41,12 @@ j|List
IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.VerticalLayout")
IItemRendererClassFactory: ClassReference("org.apache.royale.core.SelectableItemRendererClassFactory")
IItemRenderer: ClassReference("org.apache.royale.jewel.itemRenderers.ListItemRenderer")
- IItemRendererInitializer: ClassReference("org.apache.royale.jewel.beads.itemRenderers.JewelListItemRendererInitializer")
+ IItemRendererInitializer: ClassReference("org.apache.royale.jewel.beads.itemRenderers.ListItemRendererInitializer")
ISelectableItemRenderer: ClassReference("org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListSelectableItemRendererBead")
IViewport: ClassReference("org.apache.royale.jewel.supportClasses.scrollbar.ScrollingViewport")
IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel")
IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.ArrayListSelectionModel")
- IDataProviderItemRendererMapper: ClassReference("org.apache.royale.jewel.beads.itemRenderers.DataItemRendererFactoryForCollectionView")
+ IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForCollectionView")
//IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel")
//IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData")