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/04/10 17:41:23 UTC

[royale-asjs] branch develop updated: jewel-datagridcolumn: use its own initializer

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 6730865  jewel-datagridcolumn: use its own initializer
6730865 is described below

commit 67308650cae684984aaf3fd38f28a13c903079c3
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Fri Apr 10 19:41:18 2020 +0200

    jewel-datagridcolumn: use its own initializer
---
 .../projects/Jewel/src/main/resources/defaults.css |  1 +
 .../projects/Jewel/src/main/royale/JewelClasses.as |  1 +
 .../DataGridColumnListItemRendererInitializer.as   | 69 ++++++++++++++++++++++
 .../Jewel/src/main/sass/components/_datagrid.sass  |  1 +
 4 files changed, 72 insertions(+)

diff --git a/frameworks/projects/Jewel/src/main/resources/defaults.css b/frameworks/projects/Jewel/src/main/resources/defaults.css
index 239406a..0761d26 100644
--- a/frameworks/projects/Jewel/src/main/resources/defaults.css
+++ b/frameworks/projects/Jewel/src/main/resources/defaults.css
@@ -583,6 +583,7 @@ j|DataGridListArea {
 j|DataGridColumnList {
   IItemRendererClassFactory: ClassReference("org.apache.royale.core.SelectableItemRendererClassFactory");
   IItemRenderer: ClassReference("org.apache.royale.jewel.itemRenderers.DataGridItemRenderer");
+  IItemRendererInitializer: ClassReference("org.apache.royale.jewel.beads.itemRenderers.DataGridColumnListItemRendererInitializer");
   ISelectableItemRenderer: ClassReference("org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListSelectableItemRendererBead");
   IViewport: ClassReference("org.apache.royale.jewel.supportClasses.Viewport");
 }
diff --git a/frameworks/projects/Jewel/src/main/royale/JewelClasses.as b/frameworks/projects/Jewel/src/main/royale/JewelClasses.as
index a5a7ba1..7f8068a 100644
--- a/frameworks/projects/Jewel/src/main/royale/JewelClasses.as
+++ b/frameworks/projects/Jewel/src/main/royale/JewelClasses.as
@@ -135,6 +135,7 @@ package
         
         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.DataGridColumnListItemRendererInitializer; DataGridColumnListItemRendererInitializer;
         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/beads/itemRenderers/DataGridColumnListItemRendererInitializer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/DataGridColumnListItemRendererInitializer.as
new file mode 100644
index 0000000..698970e
--- /dev/null
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/DataGridColumnListItemRendererInitializer.as
@@ -0,0 +1,69 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.jewel.beads.itemRenderers
+{	
+	import org.apache.royale.core.IIndexedItemRenderer;
+	import org.apache.royale.core.StyledMXMLItemRenderer;
+	import org.apache.royale.core.StyledUIBase;
+
+	/**
+	 *  The DataGridColumnListItemRendererInitializer class initializes item renderers
+     *  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.9.7
+	 */
+	public class DataGridColumnListItemRendererInitializer extends ListItemRendererInitializer
+	{
+		/**
+		 *  constructor.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.7
+		 */
+		public function DataGridColumnListItemRendererInitializer()
+		{
+		}
+		
+        override protected function setupVisualsForItemRenderer(ir:IIndexedItemRenderer):void
+        {
+            if (presentationModel) {
+				// temp
+                StyledUIBase(ir).height = presentationModel.rowHeight;
+                
+                if(ir is IAlignItemRenderer)
+                {
+                    (ir as IAlignItemRenderer).align = presentationModel.align;
+                }
+            }
+            if (ir is StyledMXMLItemRenderer && ownerView)
+			{
+                (ir as StyledMXMLItemRenderer).itemRendererOwnerView = ownerView;
+				if(StyledUIBase(_strand).emphasis != null)
+				{
+					(ir as StyledMXMLItemRenderer).emphasis = StyledUIBase(_strand).emphasis;
+				}
+			}
+		}
+	}
+}
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_datagrid.sass b/frameworks/projects/Jewel/src/main/sass/components/_datagrid.sass
index 3f29691..71b3254 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_datagrid.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_datagrid.sass
@@ -63,6 +63,7 @@ j|DataGridListArea
 j|DataGridColumnList
     IItemRendererClassFactory: ClassReference("org.apache.royale.core.SelectableItemRendererClassFactory")
     IItemRenderer: ClassReference("org.apache.royale.jewel.itemRenderers.DataGridItemRenderer")
+    IItemRendererInitializer: ClassReference("org.apache.royale.jewel.beads.itemRenderers.DataGridColumnListItemRendererInitializer")
     ISelectableItemRenderer: ClassReference("org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListSelectableItemRendererBead")
     IViewport: ClassReference("org.apache.royale.jewel.supportClasses.Viewport")