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 2018/08/19 08:39:57 UTC

[royale-asjs] branch develop updated: Fix item renderers change based on column definitions in Tables and cleaning the item renderer hierarchy code

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 9d9e355  Fix item renderers change based on column definitions in Tables and cleaning the item renderer hierarchy code
9d9e355 is described below

commit 9d9e355af758108e20b15c7aab4609ef8a99580c
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Sun Aug 19 10:39:51 2018 +0200

    Fix item renderers change based on column definitions in Tables and cleaning the item renderer hierarchy code
---
 .../royale/itemRenderers/IconListItemRenderer.mxml |   4 +-
 .../NavigationIconLinkItemRenderer.mxml            |  12 +--
 ...er.mxml => TableCellCloseIconItemRenderer.mxml} |  27 +++--
 .../TableItemRendererFactoryForCollectionView.as   |   3 +-
 .../royale/jewel/beads/views/DateFieldView.as      |   4 -
 .../royale/jewel/itemRenderers/DateItemRenderer.as |   8 +-
 .../royale/jewel/itemRenderers/ListItemRenderer.as |  25 ++---
 .../jewel/itemRenderers/StringItemRenderer.as      |   3 +-
 .../jewel/itemRenderers/TableItemRenderer.as       | 115 +--------------------
 .../JewelTheme/src/main/resources/defaults.css     |   2 +-
 .../main/sass/components-primary/_datechooser.sass |   2 +-
 11 files changed, 38 insertions(+), 167 deletions(-)

diff --git a/examples/royale/JewelExample/src/main/royale/itemRenderers/IconListItemRenderer.mxml b/examples/royale/JewelExample/src/main/royale/itemRenderers/IconListItemRenderer.mxml
index 9a3119b..36e2c97 100644
--- a/examples/royale/JewelExample/src/main/royale/itemRenderers/IconListItemRenderer.mxml
+++ b/examples/royale/JewelExample/src/main/royale/itemRenderers/IconListItemRenderer.mxml
@@ -35,9 +35,9 @@ limitations under the License.
 		]]>
 	</fx:Script>
 
-    <mdl:beads>
+    <j:beads>
         <js:ItemRendererDataBinding />
-    </mdl:beads>
+    </j:beads>
     
     <js:FontIcon text="{iconList.icon}" material="true" visible="{iconList.icon != null}"/>
 
diff --git a/examples/royale/JewelExample/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml b/examples/royale/JewelExample/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
index 6bda7cd..7cf6f77 100644
--- a/examples/royale/JewelExample/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
+++ b/examples/royale/JewelExample/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
@@ -18,10 +18,10 @@ limitations under the License.
 
 -->
 <j:NavigationLinkItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
-                      xmlns:j="library://ns.apache.org/royale/jewel"
-                      xmlns:js="library://ns.apache.org/royale/basic"
-                      xmlns:html="library://ns.apache.org/royale/html"
-                      xmlns="http://www.w3.org/1999/xhtml">
+                              xmlns:j="library://ns.apache.org/royale/jewel"
+                              xmlns:js="library://ns.apache.org/royale/basic"
+                              xmlns:html="library://ns.apache.org/royale/html"
+                              xmlns="http://www.w3.org/1999/xhtml">
 
     <fx:Script>
 		<![CDATA[
@@ -35,9 +35,9 @@ limitations under the License.
 		]]>
 	</fx:Script>
 
-    <mdl:beads>
+    <j:beads>
         <js:ItemRendererDataBinding />
-    </mdl:beads>
+    </j:beads>
     
     <js:FontIcon text="{navlink.icon}" material="true" visible="{navlink.icon != null}"/>
 
diff --git a/examples/royale/JewelExample/src/main/royale/itemRenderers/IconListItemRenderer.mxml b/examples/royale/JewelExample/src/main/royale/itemRenderers/TableCellCloseIconItemRenderer.mxml
similarity index 57%
copy from examples/royale/JewelExample/src/main/royale/itemRenderers/IconListItemRenderer.mxml
copy to examples/royale/JewelExample/src/main/royale/itemRenderers/TableCellCloseIconItemRenderer.mxml
index 9a3119b..8ed5cad 100644
--- a/examples/royale/JewelExample/src/main/royale/itemRenderers/IconListItemRenderer.mxml
+++ b/examples/royale/JewelExample/src/main/royale/itemRenderers/TableCellCloseIconItemRenderer.mxml
@@ -17,31 +17,28 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<j:ListItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
-                    xmlns:j="library://ns.apache.org/royale/jewel"
-                    xmlns:js="library://ns.apache.org/royale/basic"
-                    xmlns:html="library://ns.apache.org/royale/html"
-                    xmlns="http://www.w3.org/1999/xhtml">
+<j:TableItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
+                     xmlns:j="library://ns.apache.org/royale/jewel"
+                     xmlns:js="library://ns.apache.org/royale/basic"
+                     xmlns:html="library://ns.apache.org/royale/html"
+                     xmlns="http://www.w3.org/1999/xhtml">
 
     <fx:Script>
 		<![CDATA[
-			import vos.IconListVO;
-            
-            [Bindable("dataChange")]
-            public function get iconList():IconListVO
+			[Bindable("dataChange")]
+            public function get guitarrist():Object
             {
-                return data as IconListVO;
+                return data;
             }
 		]]>
 	</fx:Script>
 
     <mdl:beads>
-        <js:ItemRendererDataBinding />
+        <js:ItemRendererDataBinding/>
     </mdl:beads>
     
-    <js:FontIcon text="{iconList.icon}" material="true" visible="{iconList.icon != null}"/>
-
-    <html:Span text="{iconList.label}"/>
+    <html:Span text="{guitarrist.year}"/>
+    <js:FontIcon text="{MaterialIconType.CLOSE}" material="true"/>
     
-</j:ListItemRenderer>
+</j:TableItemRenderer>
 
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/TableItemRendererFactoryForCollectionView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/TableItemRendererFactoryForCollectionView.as
index e064583..6b42fee 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/TableItemRendererFactoryForCollectionView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/TableItemRendererFactoryForCollectionView.as
@@ -209,8 +209,7 @@ package org.apache.royale.jewel.beads.itemRenderers
 					
 			        if(column.itemRenderer != null)
                     {
-						trace("create ir: " + column.itemRenderer);
-                        ir = column.itemRenderer.newInstance() as ITextItemRenderer;
+						ir = column.itemRenderer.newInstance() as ITextItemRenderer;
                     } else
                     {
                         ir = itemRendererFactory.createItemRenderer(tbody) as ITextItemRenderer;
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 6f44261..3904f70 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
@@ -116,8 +116,6 @@ package org.apache.royale.jewel.beads.views
 
 			_textInput = new TextInput();
 			getHost().addElement(_textInput);
-			_textInput.width = 100;
-			_textInput.height = 18;
 
 			_button = new Button();
 			_button.text = "⬇︎";
@@ -203,8 +201,6 @@ package org.apache.royale.jewel.beads.views
 					if (!_popUp)
 					{
 						_popUp = new DateChooser();
-						// _popUp.width = 210;
-						// _popUp.height = 230;
 					}
 
 					var model:IDateChooserModel = _strand.getBeadByType(IDateChooserModel) as IDateChooserModel;
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/DateItemRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/DateItemRenderer.as
index 2ce88c4..306745d 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/DateItemRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/DateItemRenderer.as
@@ -62,19 +62,15 @@ package org.apache.royale.jewel.itemRenderers
 		{
 			super.data = value;
 
-			COMPILE::SWF {
-				textField.autoSize = TextFieldAutoSize.CENTER;
-			}
-
 			if (value[labelField] is Date) {
-				this.text = String( (value[labelField] as Date).getDate() );
+				text = String( (value[labelField] as Date).getDate() );
 
 				COMPILE::SWF {
 					mouseEnabled = true;
 					mouseChildren = true;
 				}
 			} else {
-				this.text = "";
+				text = "";
 
 				COMPILE::SWF {
 					mouseEnabled = false;
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
index 20e4bec..c8a2e02 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
@@ -20,6 +20,7 @@ package org.apache.royale.jewel.itemRenderers
 {
 	import org.apache.royale.core.StyledMXMLItemRenderer;
 	import org.apache.royale.utils.ClassSelectorList;
+	import org.apache.royale.jewel.supportClasses.util.getLabelFromData;
 
     COMPILE::JS
     {
@@ -70,6 +71,14 @@ package org.apache.royale.jewel.itemRenderers
 		public function set text(value:String):void
 		{
              _text = value;
+			
+			COMPILE::JS
+			{
+			if(textNode != null)
+			{
+				textNode.nodeValue = text;
+			}	
+			}
 		}
 
 		COMPILE::JS
@@ -88,21 +97,7 @@ package org.apache.royale.jewel.itemRenderers
 		override public function set data(value:Object):void
 		{
 			super.data = value;
-
-            var text:String;
-			if (labelField || dataField) {
-                text = String(value[labelField]);
-            } else {
-                text = String(value);
-            }
-            
-			COMPILE::JS
-			{
-				if(textNode != null)
-				{
-					textNode.nodeValue = text;
-				}	
-			}
+            text = getLabelFromData(this, value);
 		}
 
         /**
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/StringItemRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/StringItemRenderer.as
index 5db55bf..37d06dd 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/StringItemRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/StringItemRenderer.as
@@ -170,8 +170,7 @@ package org.apache.royale.jewel.itemRenderers
 		override public function set data(value:Object):void
 		{
 			super.data = value;
-            var text:String;
-            this.text = getLabelFromData(this, value);
+            text = getLabelFromData(this, value);
 		}
 
         // COMPILE::JS
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/TableItemRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/TableItemRenderer.as
index 39ebc4b..83dfae5 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/TableItemRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/TableItemRenderer.as
@@ -20,15 +20,7 @@ package org.apache.royale.jewel.itemRenderers
 {
 	import org.apache.royale.jewel.beads.controls.TextAlign;
 	import org.apache.royale.jewel.beads.itemRenderers.ITextItemRenderer;
-	import org.apache.royale.jewel.supportClasses.util.getLabelFromData;
     
-	COMPILE::SWF
-    {
-        import flash.text.TextFieldAutoSize;
-        import flash.text.TextFieldType;
-
-        import org.apache.royale.core.CSSTextField;
-    }
     COMPILE::JS
     {
         import org.apache.royale.core.WrappedHTMLElement;
@@ -60,84 +52,12 @@ package org.apache.royale.jewel.itemRenderers
 
             typeNames = "jewel tableitem";
 
-            COMPILE::SWF
-            {
-                textField = new CSSTextField();
-                textField.type = TextFieldType.DYNAMIC;
-                textField.autoSize = TextFieldAutoSize.LEFT;
-                textField.selectable = false;
-                textField.parentDrawsBackground = true;
-            }
-
-			textAlign = new TextAlign();
+            textAlign = new TextAlign();
 			addBead(textAlign);
 		}
 
 		private var textAlign:TextAlign;
 
-        COMPILE::SWF
-		public var textField:CSSTextField;
-
-		/**
-		 * @private
-		 */
-        COMPILE::SWF
-		override public function addedToParent():void
-		{
-			super.addedToParent();
-
-			addChild(textField);
-
-			adjustSize();
-		}
-
-		/**
-		 * @private
-		 */
-        COMPILE::SWF
-		override public function adjustSize():void
-		{
-			var cy:Number = height/2;
-
-			textField.x = 0;
-			textField.y = cy - textField.height/2;
-			textField.width = width;
-
-			updateRenderer();
-		}
-
-		/**
-		 *  The text currently displayed by the itemRenderer instance.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9.3
-		 */
-		override public function get text():String
-		{
-            COMPILE::SWF
-            {
-                return textField.text;
-            }
-            COMPILE::JS
-            {
-                return this.element.textContent;
-            }
-		}
-
-		override public function set text(value:String):void
-		{
-            COMPILE::SWF
-            {
-                textField.text = value;
-            }
-            COMPILE::JS
-            {
-                this.element.textContent = value;
-            }
-		}
-
 		/**
 		 *  How text align in the itemRenderer instance.
 		 *
@@ -155,28 +75,7 @@ package org.apache.royale.jewel.itemRenderers
 		{
 			textAlign.align = value;
 		}
-
-		/**
-		 *  Sets the data value and uses the String version of the data for display.
-		 *
-		 *  @param Object data The object being displayed by the itemRenderer instance.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9
-		 *  @royaleignorecoercion String
-		 */
-		override public function set data(value:Object):void
-		{
-			super.data = value;
-            var text:String;
-            this.text = getLabelFromData(this, value);
-		}
-
-        // COMPILE::JS
-        // private var backgroundView:WrappedHTMLElement;
-
+		
         /**
          * @royaleignorecoercion org.apache.royale.core.WrappedHTMLElement
          */
@@ -195,15 +94,5 @@ package org.apache.royale.jewel.itemRenderers
             // backgroundView = element;
             return element;
         }
-
-		/**
-		 * @private
-		 */
-		override public function updateRenderer():void
-		{
-            toggleClass("selected", selected);
-			
-		}
-
 	}
 }
diff --git a/frameworks/themes/JewelTheme/src/main/resources/defaults.css b/frameworks/themes/JewelTheme/src/main/resources/defaults.css
index 220ba8b..5568ee5 100644
--- a/frameworks/themes/JewelTheme/src/main/resources/defaults.css
+++ b/frameworks/themes/JewelTheme/src/main/resources/defaults.css
@@ -262,7 +262,7 @@ j|Card {
   background: #e6e6e6;
 }
 .jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .prevMonthButton::after, .jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .nextMonthButton::after {
-  background-size: 52%;
+  background-size: 40%;
 }
 .jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .prevMonthButton::after {
   background: url("data:image/svg+xml,%3Csvg viewBox='0 0 8 12' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-7.000000, -5.000000)'%3E%3Crect x='0' y='0' width='22' height='22'%3E%3C/rect%3E%3Cpath d='M14.9911518,6.4116803 C14.9876664,5.88503401 14.7746504,5.53560917 14.5762939,5.35284424 C14.3779375,5.17007931 14.0808684,5.04951371 13.4608967,5.00170898 L7.01066011,11.0034834 L13.482210 [...]
diff --git a/frameworks/themes/JewelTheme/src/main/sass/components-primary/_datechooser.sass b/frameworks/themes/JewelTheme/src/main/sass/components-primary/_datechooser.sass
index 7b57152..52d7b21 100644
--- a/frameworks/themes/JewelTheme/src/main/sass/components-primary/_datechooser.sass
+++ b/frameworks/themes/JewelTheme/src/main/sass/components-primary/_datechooser.sass
@@ -57,7 +57,7 @@ $datechooser-buttons-border-radius: 50%
 
             .prevMonthButton::after, .nextMonthButton::after
                 
-                background-size: 52%
+                background-size: 40%
                 // border: 1px solid transparent
                 
                 // transition: all .3s ease