You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by yi...@apache.org on 2019/07/07 08:16:41 UTC

[royale-asjs] 01/04: Don't confuse menu bar item renderer for menu item renderer

This is an automated email from the ASF dual-hosted git repository.

yishayw pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git

commit 81769693cfefc706cfabc4099c916b69d9d62c3b
Author: DESKTOP-RH4S838\Yishay <yi...@hotmail.com>
AuthorDate: Sun Jul 7 11:05:34 2019 +0300

    Don't confuse menu bar item renderer for menu item renderer
---
 examples/mxroyale/HelloWorld/.build.xml.swp        |   0
 .../src/main/royale/.HelloWorld.mxml.swp           | Bin 12288 -> 0 bytes
 .../src/mx/controls/.MenuBarExample.mxml.swp       | Bin 12288 -> 0 bytes
 .../MXRoyale/src/main/resources/defaults.css       |   2 +-
 .../MXRoyale/src/main/royale/MXRoyaleClasses.as    |   1 +
 .../menuClasses/CascadingMenuItemRenderer.as       |  93 +++++++++++++++++++++
 .../mx/controls/menuClasses/MenuBarItemRenderer.as |  58 ++++---------
 7 files changed, 111 insertions(+), 43 deletions(-)

diff --git a/examples/mxroyale/HelloWorld/.build.xml.swp b/examples/mxroyale/HelloWorld/.build.xml.swp
deleted file mode 100644
index e69de29..0000000
diff --git a/examples/mxroyale/HelloWorld/src/main/royale/.HelloWorld.mxml.swp b/examples/mxroyale/HelloWorld/src/main/royale/.HelloWorld.mxml.swp
deleted file mode 100644
index 246985e..0000000
Binary files a/examples/mxroyale/HelloWorld/src/main/royale/.HelloWorld.mxml.swp and /dev/null differ
diff --git a/examples/mxroyale/tourdeflexmodules/src/mx/controls/.MenuBarExample.mxml.swp b/examples/mxroyale/tourdeflexmodules/src/mx/controls/.MenuBarExample.mxml.swp
deleted file mode 100644
index b671c07..0000000
Binary files a/examples/mxroyale/tourdeflexmodules/src/mx/controls/.MenuBarExample.mxml.swp and /dev/null differ
diff --git a/frameworks/projects/MXRoyale/src/main/resources/defaults.css b/frameworks/projects/MXRoyale/src/main/resources/defaults.css
index 6237249..6c51083 100644
--- a/frameworks/projects/MXRoyale/src/main/resources/defaults.css
+++ b/frameworks/projects/MXRoyale/src/main/resources/defaults.css
@@ -54,7 +54,7 @@ global {
 
 Basic|CascadingMenu
 {
-	IItemRenderer: ClassReference("mx.controls.menuClasses.MenuBarItemRenderer");
+	IItemRenderer: ClassReference("mx.controls.menuClasses.CascadingMenuItemRenderer");
 	IDataProviderItemRendererMapper: ClassReference("mx.controls.listClasses.DataItemRendererFactoryForICollectionViewData");
 	IBeadController: ClassReference("mx.controls.beads.controllers.CascadingMenuSelectionMouseController");
 }
diff --git a/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as b/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as
index c2eed63..fab546e 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as
@@ -238,6 +238,7 @@ internal class MXRoyaleClasses
     import mx.controls.buttonBarClasses.TextButtonDataGridColumnItemRenderer; TextButtonDataGridColumnItemRenderer;
     
     import mx.controls.menuClasses.MenuBarItemRenderer; MenuBarItemRenderer;
+    import mx.controls.menuClasses.CascadingMenuItemRenderer; CascadingMenuItemRenderer;
 
     import mx.containers.beads.FormItemView; FormItemView;
     import mx.containers.beads.FormItemContainer; FormItemContainer;
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/menuClasses/CascadingMenuItemRenderer.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/menuClasses/CascadingMenuItemRenderer.as
new file mode 100644
index 0000000..78f43f3
--- /dev/null
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/menuClasses/CascadingMenuItemRenderer.as
@@ -0,0 +1,93 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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 mx.controls.menuClasses
+{
+	import org.apache.royale.core.IBorderPaddingMarginValuesImpl;
+	import org.apache.royale.core.ValuesManager;
+	import org.apache.royale.core.layout.EdgeData;
+	import org.apache.royale.html.supportClasses.CascadingMenuItemRenderer;
+
+	/**
+	 *  The ListItemRenderer is the default renderer for mx.controls.List
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+
+	public class CascadingMenuItemRenderer extends org.apache.royale.html.supportClasses.CascadingMenuItemRenderer
+	{
+		public function CascadingMenuItemRenderer()
+		{
+			super();
+		}
+
+		override public function set data(value:Object):void
+		{
+			super.data = value;
+	/*        COMPILE::SWF
+			{
+				var edge:EdgeData = (ValuesManager.valuesImpl as IBorderPaddingMarginValuesImpl).getPaddingMetrics(this);
+				var h:Number = textField.textHeight + edge.top + edge.bottom;
+				textField.autoSize = "none";
+				textField.height = h;
+			}
+	*/    }
+		
+		override protected function getHasMenu():Boolean
+		{
+			if (!(data is XML))
+			{
+				return super.getHasMenu();
+			}
+			return (data as XML).children().length() > 0;
+		}
+		
+		override protected function getLabel():String
+		{
+			if (!(data is XML))
+			{
+				return super.getLabel();
+			}
+			var xml:XML = data as XML;
+			if (labelField)
+			{
+				return xml.attribute(labelField).toString();
+			}
+			if (dataField)
+			{
+				return xml.attribute(dataField).toString();
+			}
+			return xml.attribute("label").toString();
+		}
+		
+		override protected function getType():String
+		{
+			if (!(data is XML))
+			{
+				return super.getType();
+			}
+			var type:String = (data as XML).attribute("type").toString();
+			return type ? type : null;
+		}
+	}
+
+}
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/menuClasses/MenuBarItemRenderer.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/menuClasses/MenuBarItemRenderer.as
index 4f74fc0..734db75 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/menuClasses/MenuBarItemRenderer.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/menuClasses/MenuBarItemRenderer.as
@@ -22,7 +22,7 @@ package mx.controls.menuClasses
 import org.apache.royale.core.IBorderPaddingMarginValuesImpl;
 import org.apache.royale.core.ValuesManager;
 import org.apache.royale.core.layout.EdgeData;
-import org.apache.royale.html.supportClasses.CascadingMenuItemRenderer;
+import org.apache.royale.html.supportClasses.StringItemRenderer;
 
 /**
  *  The ListItemRenderer is the default renderer for mx.controls.List
@@ -33,56 +33,30 @@ import org.apache.royale.html.supportClasses.CascadingMenuItemRenderer;
  *  @productversion Flex 3
  */
 
-public class MenuBarItemRenderer extends CascadingMenuItemRenderer
+public class MenuBarItemRenderer extends StringItemRenderer
 {
-    override public function set data(value:Object):void
+    override public function set text(value:String):void
     {
-        super.data = value;
-/*        COMPILE::SWF
+        super.text = value;
+        COMPILE::SWF
         {
             var edge:EdgeData = (ValuesManager.valuesImpl as IBorderPaddingMarginValuesImpl).getPaddingMetrics(this);
             var h:Number = textField.textHeight + edge.top + edge.bottom;
             textField.autoSize = "none";
             textField.height = h;
         }
-*/    }
+    }
     
-	override protected function getHasMenu():Boolean
-	{
-		if (!(data is XML))
-		{
-			return super.getHasMenu();
-		}
-		return (data as XML).children().length() > 0;
-	}
-	
-	override protected function getLabel():String
-	{
-		if (!(data is XML))
-		{
-			return super.getLabel();
-		}
-		var xml:XML = data as XML;
-		if (labelField)
-		{
-			return xml.attribute(labelField).toString();
-		}
-		if (dataField)
-		{
-			return xml.attribute(dataField).toString();
-		}
-        return xml.attribute("label").toString();
-	}
-	
-	override protected function getType():String
-	{
-		if (!(data is XML))
-		{
-			return super.getType();
-		}
-		var type:String = (data as XML).attribute("type").toString();
-		return type ? type : null;
-	}
+    override protected function dataToString(value:Object):String
+    {
+        if (value is XML)
+        {
+            var xml:XML = value as XML;
+            return xml.attribute(labelField).toString();
+        }
+        return super.dataToString(value);
+    }
+
 }
 
 }