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 2019/04/17 08:14:04 UTC

[royale-asjs] branch develop updated: jewel-itemrenders: refactor align property to a new interface and remove align from renderers that are not using it

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 c80b5a5  jewel-itemrenders: refactor align property to a new interface and remove align from renderers that are not using it
c80b5a5 is described below

commit c80b5a51b457a309d699ff074f15c079ece9901c
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Wed Apr 17 10:13:56 2019 +0200

    jewel-itemrenders: refactor align property to a new interface and remove align from renderers that are not using it
---
 ...{ITextItemRenderer.as => IAlignItemRenderer.as} | 25 +++++--------------
 .../jewel/beads/itemRenderers/ITextItemRenderer.as | 11 --------
 .../TableItemRendererFactoryForCollectionView.as   |  8 +++---
 .../royale/jewel/itemRenderers/ListItemRenderer.as | 12 +++++----
 .../itemRenderers/NavigationLinkItemRenderer.as    | 24 ------------------
 .../jewel/itemRenderers/StringItemRenderer.as      | 13 +++++-----
 .../itemRenderers/TabBarButtonItemRenderer.as      | 29 ----------------------
 .../jewel/itemRenderers/TableItemRenderer.as       |  9 +++++--
 8 files changed, 31 insertions(+), 100 deletions(-)

diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/ITextItemRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/IAlignItemRenderer.as
similarity index 71%
copy from frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/ITextItemRenderer.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/IAlignItemRenderer.as
index 48b4e1c..43e3651 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/ITextItemRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/IAlignItemRenderer.as
@@ -18,37 +18,24 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.beads.itemRenderers
 {
-	import org.apache.royale.core.ISelectableItemRenderer;
-
-    /**
-     *  The ITextItemRenderer interface is the interface for
-     *  for org.apache.royale.core.IItemRenderer that display text.
+	/**
+     *  The IAlignItemRenderer interface is the interface for
+     *  for org.apache.royale.core.IItemRenderer that display text aligned.
      *  
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
-     *  @productversion Royale 0.0
+     *  @productversion Royale 0.9.6
      */
-	public interface ITextItemRenderer extends ISelectableItemRenderer
+	public interface IAlignItemRenderer
 	{
         /**
-         *  The text to be displayed in the item renderer.
-         *  
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
-         */
-        function get text():String;
-        function set text(value:String):void;
-
-        /**
          *  How text align in the itemRenderer instance.
          *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.9.4
+         *  @productversion Royale 0.9.6
          */
         function get align():String
         function set align(value:String):void
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/ITextItemRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/ITextItemRenderer.as
index 48b4e1c..d54db68 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/ITextItemRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/itemRenderers/ITextItemRenderer.as
@@ -41,16 +41,5 @@ package org.apache.royale.jewel.beads.itemRenderers
          */
         function get text():String;
         function set text(value:String):void;
-
-        /**
-         *  How text align in the itemRenderer instance.
-         *
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion Royale 0.9.4
-         */
-        function get align():String
-        function set align(value:String):void
     }
 }
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 4ccab08..862aea8 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
@@ -38,9 +38,9 @@ package org.apache.royale.jewel.beads.itemRenderers
     import org.apache.royale.jewel.Label;
     import org.apache.royale.jewel.Table;
     import org.apache.royale.jewel.beads.controls.TextAlign;
-    import org.apache.royale.jewel.beads.itemRenderers.ITextItemRenderer;
     import org.apache.royale.jewel.beads.models.TableModel;
     import org.apache.royale.jewel.beads.views.TableView;
+    import org.apache.royale.jewel.itemRenderers.TableItemRenderer;
     import org.apache.royale.jewel.supportClasses.table.TBodyContentArea;
     import org.apache.royale.jewel.supportClasses.table.THead;
     import org.apache.royale.jewel.supportClasses.table.TableColumn;
@@ -182,7 +182,7 @@ package org.apache.royale.jewel.beads.itemRenderers
 			labelField = model.labelField;
 			
             var column:TableColumn;
-            var ir:ITextItemRenderer;
+            var ir:TableItemRenderer;
 
 			var n:int = dp.length;
 			var index:int = 0;
@@ -194,10 +194,10 @@ package org.apache.royale.jewel.beads.itemRenderers
 					
 			        if(column.itemRenderer != null)
                     {
-						ir = column.itemRenderer.newInstance() as ITextItemRenderer;
+						ir = column.itemRenderer.newInstance() as TableItemRenderer;
                     } else
                     {
-                        ir = itemRendererFactory.createItemRenderer(tbody) as ITextItemRenderer;
+                        ir = itemRendererFactory.createItemRenderer(tbody) as TableItemRenderer;
                     }
 
 					labelField =  column.dataField;
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 c56bb2d..bfd352d 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
@@ -26,6 +26,7 @@ package org.apache.royale.jewel.itemRenderers
 	import org.apache.royale.core.StyledMXMLItemRenderer;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.jewel.beads.controls.TextAlign;
+	import org.apache.royale.jewel.beads.itemRenderers.IAlignItemRenderer;
 	import org.apache.royale.jewel.beads.itemRenderers.ITextItemRenderer;
 	import org.apache.royale.jewel.supportClasses.util.getLabelFromData;
 	
@@ -37,7 +38,7 @@ package org.apache.royale.jewel.itemRenderers
 	 *  @playerversion AIR 2.6
 	 *  @productversion Royale 0.9.4
 	 */
-	public class ListItemRenderer extends StyledMXMLItemRenderer implements ITextItemRenderer
+	public class ListItemRenderer extends StyledMXMLItemRenderer implements ITextItemRenderer, IAlignItemRenderer
 	{
 		/**
 		 *  constructor.
@@ -57,10 +58,11 @@ package org.apache.royale.jewel.itemRenderers
 			if(MXMLDescriptor != null)
 			{
 				addClass("mxmlContent");
+			} else
+			{
+				textAlign = new TextAlign();
+				addBead(textAlign);
 			}
-
-			textAlign = new TextAlign();
-			addBead(textAlign);
 		}
 
 		private var _text:String = "";
@@ -94,7 +96,7 @@ package org.apache.royale.jewel.itemRenderers
 			}
 		}
 
-        private var textAlign:TextAlign;
+        protected var textAlign:TextAlign;
 
 		/**
 		 *  How text align in the itemRenderer instance.
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/NavigationLinkItemRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/NavigationLinkItemRenderer.as
index af3a196..39c562a 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/NavigationLinkItemRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/NavigationLinkItemRenderer.as
@@ -59,30 +59,6 @@ package org.apache.royale.jewel.itemRenderers
 			{
 				addClass("mxmlContent");
 			}
-
-			textAlign = new TextAlign();
-			textAlign.align = TextAlign.CENTER;
-			addBead(textAlign);
-		}
-
-		private var textAlign:TextAlign;
-
-		/**
-		 *  How text align in the itemRenderer instance.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9.4
-		 */
-		public function get align():String
-		{
-			return textAlign.align;
-		}
-
-		public function set align(value:String):void
-		{
-			textAlign.align = value;
 		}
 
 		private var _href:String = "#";
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 145e196..d0c612c 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
@@ -20,18 +20,19 @@ package org.apache.royale.jewel.itemRenderers
 {
     COMPILE::SWF
     {
-        import flash.text.TextFieldAutoSize;
-        import flash.text.TextFieldType;
+	import flash.text.TextFieldAutoSize;
+	import flash.text.TextFieldType;
 
-        import org.apache.royale.core.CSSTextField;
+	import org.apache.royale.core.CSSTextField;
     }
     COMPILE::JS
     {
-        import org.apache.royale.core.WrappedHTMLElement;
-        import org.apache.royale.html.util.addElementToWrapper;
+	import org.apache.royale.core.WrappedHTMLElement;
+	import org.apache.royale.html.util.addElementToWrapper;
     }
     import org.apache.royale.html.supportClasses.DataItemRenderer;
     import org.apache.royale.jewel.beads.controls.TextAlign;
+    import org.apache.royale.jewel.beads.itemRenderers.IAlignItemRenderer;
     import org.apache.royale.jewel.beads.itemRenderers.ITextItemRenderer;
     import org.apache.royale.jewel.supportClasses.util.getLabelFromData;
 
@@ -44,7 +45,7 @@ package org.apache.royale.jewel.itemRenderers
 	 *  @playerversion AIR 2.6
 	 *  @productversion Royale 0.9.4
 	 */
-	public class StringItemRenderer extends DataItemRenderer implements ITextItemRenderer
+	public class StringItemRenderer extends DataItemRenderer implements ITextItemRenderer, IAlignItemRenderer
 	{
 		/**
 		 *  constructor.
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/TabBarButtonItemRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/TabBarButtonItemRenderer.as
index 648d7dc..12fdb95 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/TabBarButtonItemRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/TabBarButtonItemRenderer.as
@@ -55,15 +55,6 @@ package org.apache.royale.jewel.itemRenderers
 
 			typeNames = "jewel tabbarbutton";
 			addClass("selectable");
-
-			if(MXMLDescriptor != null)
-			{
-				addClass("mxmlContent");
-			}
-
-			textAlign = new TextAlign();
-			textAlign.align = TextAlign.CENTER;
-			addBead(textAlign);
 		}
 
 		private var _href:String = "#";
@@ -115,26 +106,6 @@ package org.apache.royale.jewel.itemRenderers
 			}
 		}
 
-		private var textAlign:TextAlign;
-
-		/**
-		 *  How text align in the itemRenderer instance.
-		 *
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9.4
-		 */
-		public function get align():String
-		{
-			return textAlign.align;
-		}
-
-		public function set align(value:String):void
-		{
-			textAlign.align = value;
-		}
-
 		/**
 		 *  Sets the data value and uses the String version of the data for display.
 		 * 
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 6e768c4..6f820bf 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,9 +20,11 @@ package org.apache.royale.jewel.itemRenderers
 {
 	COMPILE::JS
     {
-        import org.apache.royale.core.WrappedHTMLElement;
-    	import org.apache.royale.html.util.addElementToWrapper;
+	import org.apache.royale.core.WrappedHTMLElement;
+	import org.apache.royale.html.util.addElementToWrapper;
+	import org.apache.royale.jewel.beads.itemRenderers.IAlignItemRenderer;
     }
+	import org.apache.royale.jewel.beads.controls.TextAlign;
 
 	/**
 	 *  The TableItemRenderer class displays data in string form using the data's toString()
@@ -53,6 +55,9 @@ package org.apache.royale.jewel.itemRenderers
 			{
             	typeNames += " with-childs";
 			}
+
+			textAlign = new TextAlign();
+			addBead(textAlign);
 		}
 		
         /**