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/03/17 23:00:42 UTC

[royale-asjs] branch develop updated: jewel drawer and bars positioner refactor

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 61a97a3  jewel drawer and bars positioner refactor
61a97a3 is described below

commit 61a97a3a91057072b8c4cf69b254d985c40eaa07
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Mon Mar 18 00:00:36 2019 +0100

    jewel drawer and bars positioner refactor
---
 .../src/main/royale/org/apache/royale/jewel/Bar.as | 42 +++++++++++--------
 .../royale/org/apache/royale/jewel/FooterBar.as    | 16 +++----
 .../royale/org/apache/royale/jewel/TopAppBar.as    | 16 +++----
 .../jewel/supportClasses/drawer/DrawerBase.as      | 49 ++++++++++++----------
 4 files changed, 68 insertions(+), 55 deletions(-)

diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Bar.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Bar.as
index 44b1e60..b7e3ec2 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Bar.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Bar.as
@@ -20,14 +20,14 @@ package org.apache.royale.jewel
 {
 	COMPILE::SWF
     {
-		import flash.display.DisplayObject;
+	import flash.display.DisplayObject;
 
-		import org.apache.royale.core.IRenderedObject;
+	import org.apache.royale.core.IRenderedObject;
     }
     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.core.IChild;
 	import org.apache.royale.core.IUIBase;
@@ -60,9 +60,6 @@ package org.apache.royale.jewel
             typeNames = "jewel bar";
 		}
 
-		COMPILE::JS
-		protected var header:HTMLElement;
-
 		protected function get headerClassName():String
 		{
 			return "barHeader";
@@ -74,18 +71,29 @@ package org.apache.royale.jewel
         COMPILE::JS
         override protected function createElement():WrappedHTMLElement
         {
-			header = addElementToWrapper(this,'header');
-			header.className = headerClassName;
-			
-			var div:HTMLDivElement = document.createElement('div') as HTMLDivElement;
-			div.appendChild(header);
-
-			positioner = div as WrappedHTMLElement;
-			positioner.royale_wrapper = this;
-
+			addElementToWrapper(this,'header');
+			element.className = headerClassName;
+			positioner = document.createElement('div') as WrappedHTMLElement;
 			return element;
         }
 
+		COMPILE::JS
+		private var _positioner:WrappedHTMLElement;
+
+		COMPILE::JS
+		override public function get positioner():WrappedHTMLElement
+		{
+			return _positioner;
+		}
+
+		COMPILE::JS
+		override public function set positioner(value:WrappedHTMLElement):void
+		{
+			_positioner = value;
+            _positioner.royale_wrapper = this;
+			_positioner.appendChild(element);
+		}
+
 		/**
          *  @copy org.apache.royale.core.IParent#addElement()
          * 
@@ -112,7 +120,7 @@ package org.apache.royale.jewel
             }
             COMPILE::JS
             {
-                header.appendChild(c.positioner);
+                element.appendChild(c.positioner);
                 (c as IUIBase).addedToParent();
             }
 		}
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/FooterBar.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/FooterBar.as
index 0e2418c..13d7e80 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/FooterBar.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/FooterBar.as
@@ -20,14 +20,14 @@ package org.apache.royale.jewel
 {
 	COMPILE::SWF
     {
-		import flash.display.DisplayObject;
+	import flash.display.DisplayObject;
 
-		import org.apache.royale.core.IRenderedObject;
+	import org.apache.royale.core.IRenderedObject;
     }
     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;
     }
 
 	/**
@@ -75,12 +75,12 @@ package org.apache.royale.jewel
 			{
 			if(_fixed)
 			{
-				header.classList.add("fixed");
+				element.classList.add("fixed");
 				// window.removeEventListener('scroll', scrollHandler, false);
 			}
 			else
 			{
-				header.classList.remove("fixed");
+				element.classList.remove("fixed");
 				// window.addEventListener('scroll', scrollHandler, false);
 			}
 			}
@@ -173,11 +173,11 @@ package org.apache.royale.jewel
                 {
 				if(_hasDrawer)
 				{
-					header.classList.add("has-drawer");
+					element.classList.add("has-drawer");
 				}
 				else
 				{
-					header.classList.remove("has-drawer");
+					element.classList.remove("has-drawer");
 				}
                 }
             }
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TopAppBar.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TopAppBar.as
index 197365e..905628f 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TopAppBar.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TopAppBar.as
@@ -77,12 +77,12 @@ package org.apache.royale.jewel
 			{
 			if(_fixed)
 			{
-				header.classList.add("fixed");
+				element.classList.add("fixed");
 				window.removeEventListener('scroll', scrollHandler, false);
 			}
 			else
 			{
-				header.classList.remove("fixed");
+				element.classList.remove("fixed");
 				window.addEventListener('scroll', scrollHandler, false);
 			}
 			}
@@ -110,16 +110,16 @@ package org.apache.royale.jewel
 				
 				if (currentOffset > 0) {
 					currentOffset = 0;
-				} else if (Math.abs(currentOffset) > header.clientHeight) {
-					currentOffset = -header.clientHeight;
+				} else if (Math.abs(currentOffset) > element.clientHeight) {
+					currentOffset = -element.clientHeight;
 				}
 
 				offset = currentOffset;
-				if (Math.abs(offset) >= header.clientHeight) {
+				if (Math.abs(offset) >= element.clientHeight) {
 					offset = -128;
 				}
 				
-				header.style.top = offset + "px";
+				element.style.top = offset + "px";
 			}
 		}
 
@@ -175,11 +175,11 @@ package org.apache.royale.jewel
                 {
 				if(_hasDrawer)
 				{
-					header.classList.add("has-drawer");
+					element.classList.add("has-drawer");
 				}
 				else
 				{
-					header.classList.remove("has-drawer");
+					element.classList.remove("has-drawer");
 				}
                 }
             }
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/drawer/DrawerBase.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/drawer/DrawerBase.as
index be09ec8..7c1e107 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/drawer/DrawerBase.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/drawer/DrawerBase.as
@@ -18,23 +18,20 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.supportClasses.drawer
 {
-	import org.apache.royale.events.MouseEvent;
-	import org.apache.royale.core.UIBase;
-	import org.apache.royale.core.IChild;
-	import org.apache.royale.core.IUIBase;
-	import org.apache.royale.jewel.Group;
-
 	COMPILE::SWF
     {
+		import flash.display.DisplayObject;
+
 		import org.apache.royale.core.IRenderedObject;
-        import flash.display.DisplayObject;
     }
-
 	COMPILE::JS
     {
         import org.apache.royale.core.WrappedHTMLElement;
-		import org.apache.royale.html.util.addElementToWrapper;
+        import org.apache.royale.html.util.addElementToWrapper;
     }
+	import org.apache.royale.core.IChild;
+	import org.apache.royale.core.IUIBase;
+	import org.apache.royale.jewel.Group;
 
 	/**
      *  Dispatched when the drawer open
@@ -82,27 +79,35 @@ package org.apache.royale.jewel.supportClasses.drawer
             typeNames = "jewel drawer";
 		}
 
-		COMPILE::JS
-		protected var nav:HTMLElement;
-
 		/**
          * @royaleignorecoercion org.apache.royale.core.WrappedHTMLElement
          */
         COMPILE::JS
         override protected function createElement():WrappedHTMLElement
         {
-			nav = addElementToWrapper(this,'nav');
-			nav.className = "drawermain";
-			
-			var aside:HTMLElement = document.createElement('aside') as HTMLElement;
-			aside.appendChild(nav);
-
-			positioner = aside as WrappedHTMLElement;
-			positioner.royale_wrapper = this;
-
+			addElementToWrapper(this,'nav');
+			element.className = "drawermain";
+			positioner = document.createElement('aside') as WrappedHTMLElement;
 			return element;	
         }
 
+        COMPILE::JS
+		private var _positioner:WrappedHTMLElement;
+
+		COMPILE::JS
+		override public function get positioner():WrappedHTMLElement
+		{
+			return _positioner;
+		}
+
+		COMPILE::JS
+		override public function set positioner(value:WrappedHTMLElement):void
+		{
+			_positioner = value;
+            _positioner.royale_wrapper = this;
+			_positioner.appendChild(element);
+		}
+
 		/**
          *  @copy org.apache.royale.core.IParent#addElement()
          * 
@@ -129,7 +134,7 @@ package org.apache.royale.jewel.supportClasses.drawer
             }
             COMPILE::JS
             {
-                nav.appendChild(c.positioner);
+                element.appendChild(c.positioner);
                 (c as IUIBase).addedToParent();
             }
 		}