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/05/13 14:50:20 UTC

[royale-asjs] branch develop updated (05dd255 -> ee195ca)

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

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


    from 05dd255  alert shown in close handler was going up before the controller removed the first alert.  Should fix #812
     new f95291c  jewel-itemrender: make renders use basic layout by default
     new 07d450c  tour-de-jewel: use HGroup layout to layout content. also use gap instead of custom css
     new b9a1c86  table style: needs more work
     new 0ea630b  jewel: css changes in renders
     new 0a6114d  tour-de-jewel: refacotr item renders and even clean checks in bindings not need now
     new 57941ef  tour-de-jewel: another refactor on renderer left
     new d1b325e  changes in collapsible
     new 0474a10  navigation link config beads
     new 41ccf01  finish collapsible renderer finished
     new ee195ca  Merge branch 'feature/item-render-layouts' into develop

The 10 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../src/main/resources/jewel-example-styles.css    | 19 -----
 .../AdvancedIconListItemRenderer.mxml              | 10 +--
 .../CheckBoxDataGridItemRenderer.mxml              |  2 +-
 .../itemRenderers/IconDataGridItemRenderer.mxml    |  4 +-
 .../royale/itemRenderers/IconListItemRenderer.mxml |  5 +-
 .../itemRenderers/ImageDataGridItemRenderer.mxml   |  2 +-
 .../NavigationGroupExampleItemRenderer.mxml        | 22 ++++--
 .../NavigationIconLinkItemRenderer.mxml            | 10 ++-
 .../itemRenderers/SimpleIconListItemRenderer.mxml  |  8 +-
 .../TabBarHorizontalIconItemRenderer.mxml          |  6 +-
 .../TabBarVerticalIconItemRenderer.mxml            |  6 +-
 .../itemRenderers/TableStyleListItemRenderer.mxml  | 11 ++-
 .../projects/Jewel/src/main/resources/defaults.css | 36 ++++-----
 .../CollapsibleNavigationSectionRenderer.as        | 85 +++++++---------------
 .../royale/jewel/itemRenderers/ListItemRenderer.as | 26 +++++--
 .../itemRenderers/NavigationLinkItemRenderer.as    |  5 --
 .../src/main/sass/components/_itemRenderer.sass    | 14 ++--
 .../Jewel/src/main/sass/components/_layout.sass    | 14 ++--
 .../Jewel/src/main/sass/components/_list.sass      |  6 +-
 .../src/main/sass/components/_navigation.sass      | 10 ++-
 .../Jewel/src/main/sass/components/_table.sass     |  3 +-
 21 files changed, 143 insertions(+), 161 deletions(-)


[royale-asjs] 04/10: jewel: css changes in renders

Posted by ca...@apache.org.
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

commit 0ea630b2a7c730000add94d9f1acf855743f92e3
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Mon May 11 19:43:50 2020 +0200

    jewel: css changes in renders
---
 .../projects/Jewel/src/main/resources/defaults.css | 36 ++++++++--------------
 .../CollapsibleNavigationSectionRenderer.as        |  7 ++---
 .../royale/jewel/itemRenderers/ListItemRenderer.as | 22 ++++++++++---
 .../itemRenderers/NavigationLinkItemRenderer.as    |  5 ---
 .../src/main/sass/components/_itemRenderer.sass    | 16 +++++-----
 .../Jewel/src/main/sass/components/_layout.sass    | 14 ++++-----
 .../Jewel/src/main/sass/components/_list.sass      |  6 ++--
 .../src/main/sass/components/_navigation.sass      |  1 -
 .../Jewel/src/main/sass/components/_table.sass     |  3 +-
 9 files changed, 51 insertions(+), 59 deletions(-)

diff --git a/frameworks/projects/Jewel/src/main/resources/defaults.css b/frameworks/projects/Jewel/src/main/resources/defaults.css
index 6a9b04e..fc97ee8 100644
--- a/frameworks/projects/Jewel/src/main/resources/defaults.css
+++ b/frameworks/projects/Jewel/src/main/resources/defaults.css
@@ -979,21 +979,15 @@ j|ImageButton {
 }
 
 .jewel.item, .jewel.navigationlink, .jewel.tabbarbutton {
-  display: flex;
   min-height: 34px;
   text-decoration: none;
   letter-spacing: 0;
   line-height: normal !important;
   overflow: hidden;
   cursor: auto;
-}
-.jewel.item.mxmlContent, .jewel.navigationlink.mxmlContent, .jewel.tabbarbutton.mxmlContent {
+  flex-shrink: 0;
   position: relative;
-  flex: 0 0 auto;
-  align-items: center;
-}
-.jewel.item.mxmlContent > *, .jewel.navigationlink.mxmlContent > *, .jewel.tabbarbutton.mxmlContent > * {
-  position: absolute !important;
+  list-style: none;
 }
 .jewel.item.selectable, .jewel.navigationlink.selectable, .jewel.tabbarbutton.selectable {
   cursor: pointer;
@@ -1002,6 +996,11 @@ j|ImageButton {
   cursor: inherit;
 }
 
+j|ListItemRenderer {
+  IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.BasicLayout");
+  IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+}
+
 .jewel.label {
   -webkit-font-smoothing: antialiased;
   cursor: default;
@@ -1030,7 +1029,7 @@ j|Label {
   position: relative;
 }
 .layout.basic > * {
-  position: absolute !important;
+  position: absolute;
 }
 
 .layout {
@@ -1044,9 +1043,6 @@ j|Label {
 .layout.horizontal > * {
   flex: 0 1 auto;
 }
-.layout.horizontal.variableRowHeight > * {
-  flex: 0 0 auto;
-}
 .layout.horizontal.flow {
   flex-wrap: wrap;
   max-width: 100%;
@@ -1146,9 +1142,6 @@ j|Label {
 .layout.vertical > * {
   flex: 0 1 auto;
 }
-.layout.vertical.variableRowHeight > * {
-  flex: 0 0 auto;
-}
 .layout.vertical.flow {
   flex-wrap: wrap;
 }
@@ -3233,6 +3226,9 @@ j|Label {
   align-content: flex-start;
   -webkit-overflow-scrolling: touch;
 }
+.jewel.list > *, .jewel.navigation > * {
+  flex: 0 0 auto;
+}
 .jewel.list.no-chrome, .jewel.navigation.no-chrome {
   background: transparent;
   border: none;
@@ -3259,10 +3255,6 @@ j|List {
   IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForCollectionView");
 }
 
-j|ListItemRenderer {
-  IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
-}
-
 @media -royale-swf {
   j|List {
     IContentView: ClassReference("org.apache.royale.jewel.supportClasses.list.DataGroup");
@@ -3289,10 +3281,6 @@ j|Navigation {
   IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForCollectionView");
 }
 
-.jewel.navigationlink {
-  min-height: 48px;
-}
-
 j|NavigationLinkItemRenderer {
   IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
 }
@@ -3836,7 +3824,6 @@ j|Table {
   padding: 10px;
   cursor: pointer;
   text-decoration: none;
-  align-items: center;
   letter-spacing: 0;
   line-height: normal !important;
   overflow: hidden;
@@ -3861,6 +3848,7 @@ j|Table {
 
 j|TableItemRenderer {
   IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+  IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.NullLayout");
 }
 
 j|TBody {
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as
index 1067e17..81fda21 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as
@@ -57,14 +57,11 @@ package org.apache.royale.jewel.itemRenderers
 		{
 			super();
 			typeNames = "jewel navigationgroup";
+			
 			navLinkClassSelector = new ClassSelectorList(sectionNavItem);
 			navLinkClassSelector.addNames("jewel navigationlink");
 			navLinkClassSelector.add("selectable");
- 
-			if(MXMLDescriptor != null)
-			{
-				navLinkClassSelector.add("mxmlContent");
-			}
+
 			open = false;
 			addEventListener('click', onSectionNav);
 		}
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 b41b09e..9ed7cec 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
@@ -23,12 +23,14 @@ package org.apache.royale.jewel.itemRenderers
 	import org.apache.royale.core.WrappedHTMLElement;
 	import org.apache.royale.html.util.addElementToWrapper;
 	}
+    import org.apache.royale.core.IBeadLayout;
     import org.apache.royale.core.StyledMXMLItemRenderer;
     import org.apache.royale.events.Event;
     import org.apache.royale.html.util.getLabelFromData;
     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.utils.loadBeadFromValuesManager;
 	
 	/**
 	 *  The ListItemRenderer defines the basic Item Renderer for a Jewel List Component.
@@ -53,11 +55,6 @@ package org.apache.royale.jewel.itemRenderers
 			super();
 
 			typeNames = "jewel item";
-
-			if(MXMLDescriptor != null)
-			{
-				addClass("mxmlContent");
-			}
 		}
 
 		private var _text:String = "";
@@ -143,5 +140,20 @@ package org.apache.royale.jewel.itemRenderers
 			// tabIndex = -1;
             return element;
         }
+
+
+		/**
+		 *  The method called when added to a parent.
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.6
+		 */
+		override public function addedToParent():void
+		{
+			super.addedToParent();
+			loadBeadFromValuesManager(IBeadLayout, "iBeadLayout", this);
+		}
 	}
 }
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 9508cae..c514e4a 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
@@ -51,11 +51,6 @@ package org.apache.royale.jewel.itemRenderers
 			super();
 
 			typeNames = "jewel navigationlink";
-
-			if(MXMLDescriptor != null)
-			{
-				addClass("mxmlContent");
-			}
 		}
 
 		// private var _href:String = "#";
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass b/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass
index db20ecd..b3058a9 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass
@@ -23,22 +23,19 @@
 $item-min-height: 34px
 
 .jewel.item, .jewel.navigationlink, .jewel.tabbarbutton
-    display: flex
+    // display: flex
     min-height: $item-min-height
     text-decoration: none
     letter-spacing: 0
     line-height: normal !important
     overflow: hidden
     cursor: auto
+    flex-shrink: 0
     // align-items: center -> this need to be in mxmlContent to not modify basic list renders
     // pointer-events: none
     // used when the renderer is extended, so we change to flex display
-    &.mxmlContent
-        position: relative
-        flex: 0 0 auto
-        align-items: center
-        > *
-            position: absolute !important
+    position: relative
+    list-style: none
 
     &.selectable
         cursor: pointer
@@ -47,5 +44,8 @@ $item-min-height: 34px
     .fonticon
         cursor: inherit
 
-    
+j|ListItemRenderer
+    IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.BasicLayout")
+    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController")
+ 
 
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_layout.sass b/frameworks/projects/Jewel/src/main/sass/components/_layout.sass
index 1227acd..37664a7 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_layout.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_layout.sass
@@ -40,7 +40,7 @@ $gap-size: 10px !default
 .layout.basic
 	position: relative
 	> *
-		position: absolute !important
+		position: absolute
 
 .layout
 	display: flex
@@ -54,9 +54,9 @@ $gap-size: 10px !default
 		> *
 			flex: 0 1 auto
 
-		&.variableRowHeight
-			> *
-				flex: 0 0 auto
+		// &.variableRowHeight
+		// 	> *
+		// 		flex: 0 0 auto
 				
 		&.flow
 			flex-wrap: wrap
@@ -110,9 +110,9 @@ $gap-size: 10px !default
 		> *
 			flex: 0 1 auto
 		
-		&.variableRowHeight
-			> *
-				flex: 0 0 auto
+		// &.variableRowHeight
+		// 	> *
+		// 		flex: 0 0 auto
 		
 		&.flow
 			flex-wrap: wrap
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_list.sass b/frameworks/projects/Jewel/src/main/sass/components/_list.sass
index fe08705..e6aae70 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_list.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_list.sass
@@ -24,6 +24,9 @@
     align-items: stretch
     align-content: flex-start
     -webkit-overflow-scrolling: touch //Momentum (innercial) Scrolling on iOS 
+    
+    > *
+        flex: 0 0 auto
 
     &.no-chrome
         background: transparent
@@ -51,9 +54,6 @@ j|List
     //IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel")
     //IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData")
 
-j|ListItemRenderer
-    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController")
-
     
 @media -royale-swf	
     j|List
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass b/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass
index 17947ca..45e88d7 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass
@@ -43,7 +43,6 @@ j|Navigation
 
 // NavigationLinkItemRenderer variables
 .jewel.navigationlink
-    min-height: 48px
 
 j|NavigationLinkItemRenderer
     IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController")
\ No newline at end of file
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_table.sass b/frameworks/projects/Jewel/src/main/sass/components/_table.sass
index b9d5bc4..d7a106f 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_table.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_table.sass
@@ -119,7 +119,7 @@ j|Table
     padding: 10px
     cursor: pointer
     text-decoration: none
-    align-items: center
+    // align-items: center
     letter-spacing: 0
     line-height: normal !important
     overflow: hidden
@@ -143,6 +143,7 @@ j|Table
 
 j|TableItemRenderer
     IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController")
+    IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.NullLayout")
 
 
 


[royale-asjs] 09/10: finish collapsible renderer finished

Posted by ca...@apache.org.
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

commit 41ccf01b170a4171bd6e9c3640972ddd39bea584
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Wed May 13 16:48:19 2020 +0200

    finish collapsible renderer finished
---
 .../itemRenderers/NavigationGroupExampleItemRenderer.mxml | 14 +++++++++-----
 frameworks/projects/Jewel/src/main/resources/defaults.css |  1 -
 .../itemRenderers/CollapsibleNavigationSectionRenderer.as | 15 ++++++++++++++-
 .../apache/royale/jewel/itemRenderers/ListItemRenderer.as |  4 ++++
 .../Jewel/src/main/sass/components/_navigation.sass       |  3 +--
 5 files changed, 28 insertions(+), 9 deletions(-)

diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
index c7412af..3ea5289 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
@@ -21,9 +21,10 @@ limitations under the License.
                                         xmlns:j="library://ns.apache.org/royale/jewel"
                                         xmlns:js="library://ns.apache.org/royale/basic"
                                         xmlns:html="library://ns.apache.org/royale/html"
-                                        className="layout vertical"
+                                        
                                         sectionClick="handleNavToggle(event)"
-                                        height="48">
+                                        minHeight="48">
+                                        <!-- using 'minHeight' instead of 'height' here since collapsible changes heigth of the renderer -->
 
     <fx:Script>
 		<![CDATA[
@@ -80,15 +81,18 @@ limitations under the License.
 
     <j:beads>
         <js:ItemRendererDataBinding />
+        <!-- We can't add layout here since this renderer has its own needed to work -->
     </j:beads>
 
-    <!-- <j:HGroup gap="8" itemsVerticalAlign="itemsCenter"> -->
+    <!-- if we need to layout items in the render introduce a container like the following -->
+    <j:HGroup gap="8" itemsVerticalAlign="itemsCenter" height="48">
         <js:MaterialIcon text="{navlink.icon}"  visible="{navlink.icon != null}"/>
 
         <html:Span className="navigation-section-title" text="{text}"/>
         
         <js:MaterialIcon text="{open? MaterialIconType.EXPAND_LESS: MaterialIconType.EXPAND_MORE}"  className="hint" 
-                        visible="{navlink.subMenu != null}" />
-    <!-- </j:HGroup> -->
+                        visible="{navlink.subMenu != null}"/>
+    </j:HGroup>
+
 </j:CollapsibleNavigationSectionRenderer>
 
diff --git a/frameworks/projects/Jewel/src/main/resources/defaults.css b/frameworks/projects/Jewel/src/main/resources/defaults.css
index aba279f..9fa93e1 100644
--- a/frameworks/projects/Jewel/src/main/resources/defaults.css
+++ b/frameworks/projects/Jewel/src/main/resources/defaults.css
@@ -3286,7 +3286,6 @@ j|NavigationLinkItemRenderer {
 }
 
 j|CollapsibleNavigationSectionRenderer {
-  IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.NullLayout");
   IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
 }
 
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as
index 2bb5133..d513935 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as
@@ -28,6 +28,7 @@ package org.apache.royale.jewel.itemRenderers
 	import org.apache.royale.events.Event;
 	import org.apache.royale.html.elements.A;
 	import org.apache.royale.jewel.Navigation;
+	import org.apache.royale.jewel.beads.layouts.VerticalLayout;
 	import org.apache.royale.jewel.supportClasses.INavigationRenderer;
 	import org.apache.royale.utils.ClassSelectorList;
 	import org.apache.royale.utils.MXMLDataInterpreter;
@@ -37,6 +38,9 @@ package org.apache.royale.jewel.itemRenderers
 	 *  The NavigationLinkItemRenderer defines the basic Item Renderer for a Jewel 
      *  Navigation List Component. It handles Objects with "label" and "href" data.
 	 *  Extend this (you can do it in MXML) to support more data like for example: icon data.
+	 * 
+	 *  Note: This render creates a sub list, so we add in this class a concrete layout (VerticalLayout). So don't try
+	 *  to change layout (adding via CSS, mxml beads, etc...). For layout the renderer parts, use a container (i.e: HGroup, VGroup,...)
 	 *  
 	 *  @langversion 3.0
 	 *  @playerversion Flash 10.2
@@ -68,7 +72,9 @@ package org.apache.royale.jewel.itemRenderers
 		
 		private function onSectionNav(event:Event):void{
 			var navTarget:Object = event.target;
-			if (event.target == sectionNavItem || event.target.parent == sectionNavItem) {
+
+			// this check should be smarter, check sectionNavItem and its childs
+			if (event.target == sectionNavItem || event.target.parent == sectionNavItem || event.target.parent.parent == sectionNavItem) {
 				event.stopImmediatePropagation();
 				navTarget = this;
 				//make 'this' the event.target
@@ -262,6 +268,13 @@ package org.apache.royale.jewel.itemRenderers
 			MXMLDataInterpreter.generateMXMLInstances(this, sectionNavItem, MXMLDescriptor);
 			MXMLDescriptor.length = 0;
 			super.addedToParent();
+			addLayoutBead();
+		}
+
+		public function addLayoutBead():void {
+			var parentLayout:VerticalLayout = new VerticalLayout();
+			parentLayout.itemsVerticalAlign = "itemsCentered";
+			addBead(parentLayout);
 		}
 		
 		/**
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 9ed7cec..1e44284 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
@@ -153,6 +153,10 @@ package org.apache.royale.jewel.itemRenderers
 		override public function addedToParent():void
 		{
 			super.addedToParent();
+			addLayoutBead();
+		}
+
+		public function addLayoutBead():void {
 			loadBeadFromValuesManager(IBeadLayout, "iBeadLayout", this);
 		}
 	}
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass b/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass
index 906569e..3641081 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass
@@ -51,6 +51,5 @@ j|NavigationLinkItemRenderer
 .jewel.navigationgroup
 
 j|CollapsibleNavigationSectionRenderer
-    IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.NullLayout")
     IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController")
-    // itemsVerticalAlign: itemsCenter
\ No newline at end of file
+    // don't add IBeadLayout. We add one in code since this render creates additional elements
\ No newline at end of file


[royale-asjs] 10/10: Merge branch 'feature/item-render-layouts' into develop

Posted by ca...@apache.org.
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

commit ee195ca96698f0a6a62edf8365db4bca7b871644
Merge: 05dd255 41ccf01
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Wed May 13 16:50:02 2020 +0200

    Merge branch 'feature/item-render-layouts' into develop
    
    * feature/item-render-layouts:
      finish collapsible renderer finished
      navigation link config beads
      changes in collapsible
      tour-de-jewel: another refactor on renderer left
      tour-de-jewel: refacotr item renders and even clean checks in bindings not need now
      jewel: css changes in renders
      table style: needs more work
      tour-de-jewel: use HGroup layout to layout content. also use gap instead of custom css
      jewel-itemrender: make renders use basic layout by default

 .../src/main/resources/jewel-example-styles.css    | 19 -----
 .../AdvancedIconListItemRenderer.mxml              | 10 +--
 .../CheckBoxDataGridItemRenderer.mxml              |  2 +-
 .../itemRenderers/IconDataGridItemRenderer.mxml    |  4 +-
 .../royale/itemRenderers/IconListItemRenderer.mxml |  5 +-
 .../itemRenderers/ImageDataGridItemRenderer.mxml   |  2 +-
 .../NavigationGroupExampleItemRenderer.mxml        | 22 ++++--
 .../NavigationIconLinkItemRenderer.mxml            | 10 ++-
 .../itemRenderers/SimpleIconListItemRenderer.mxml  |  8 +-
 .../TabBarHorizontalIconItemRenderer.mxml          |  6 +-
 .../TabBarVerticalIconItemRenderer.mxml            |  6 +-
 .../itemRenderers/TableStyleListItemRenderer.mxml  | 11 ++-
 .../projects/Jewel/src/main/resources/defaults.css | 36 ++++-----
 .../CollapsibleNavigationSectionRenderer.as        | 85 +++++++---------------
 .../royale/jewel/itemRenderers/ListItemRenderer.as | 26 +++++--
 .../itemRenderers/NavigationLinkItemRenderer.as    |  5 --
 .../src/main/sass/components/_itemRenderer.sass    | 14 ++--
 .../Jewel/src/main/sass/components/_layout.sass    | 14 ++--
 .../Jewel/src/main/sass/components/_list.sass      |  6 +-
 .../src/main/sass/components/_navigation.sass      | 10 ++-
 .../Jewel/src/main/sass/components/_table.sass     |  3 +-
 21 files changed, 143 insertions(+), 161 deletions(-)


[royale-asjs] 03/10: table style: needs more work

Posted by ca...@apache.org.
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

commit b9a1c8603b2b7dbc54d1f6a96fae109526d241a8
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Thu May 7 11:16:04 2020 +0200

    table style: needs more work
---
 .../royale/itemRenderers/TableStyleListItemRenderer.mxml  | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TableStyleListItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TableStyleListItemRenderer.mxml
index b164048..49c6d7f 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TableStyleListItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TableStyleListItemRenderer.mxml
@@ -20,17 +20,20 @@ limitations under the License.
 <ir:IconListItemRenderer 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:ir="itemRenderers.*">
+    xmlns:ir="itemRenderers.*"
+    width="100%">
 
     <ir:beads>
         <js:ItemRendererDataBinding />
         <j:HorizontalLayout/>
     </ir:beads>
 
-    <js:MaterialIcon text="{iconList ? iconList.icon : ''}"  visible="{iconList ? iconList.icon != null : false}" click="clickCloseButton()" width="100"/>
-    <j:Label html="{text}" multiline="true" width="300"/>
-    <j:Label html="Third field" multiline="true" width="100"/>
-    <j:Label html="Fourth field" multiline="true" width="200"/>
-
+    <!-- <j:HGroup itemsVerticalAlign="itemsCenter"> -->
+        <js:MaterialIcon text="{iconList ? iconList.icon : ''}"  visible="{iconList ? iconList.icon != null : false}" click="clickCloseButton()" width="100"/>
+        <j:Label html="{text}" multiline="true" width="300"/>
+        <j:Label html="Third field" multiline="true" width="100"/>
+        <j:Label html="Fourth field" multiline="true" width="200"/>
+    <!-- </j:HGroup> -->
+    
 </ir:IconListItemRenderer>
 


[royale-asjs] 02/10: tour-de-jewel: use HGroup layout to layout content. also use gap instead of custom css

Posted by ca...@apache.org.
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

commit 07d450c4768cb22136db4e61d5b95422ae9ad390
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Thu May 7 11:15:16 2020 +0200

    tour-de-jewel: use HGroup layout to layout content. also use gap instead of custom css
---
 .../royale/itemRenderers/AdvancedIconListItemRenderer.mxml |  8 ++++----
 .../main/royale/itemRenderers/IconListItemRenderer.mxml    |  7 ++++---
 .../itemRenderers/NavigationGroupExampleItemRenderer.mxml  | 14 ++++++++------
 .../itemRenderers/NavigationIconLinkItemRenderer.mxml      |  7 ++++---
 4 files changed, 20 insertions(+), 16 deletions(-)

diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/AdvancedIconListItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/AdvancedIconListItemRenderer.mxml
index 5ce2503..45123c4 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/AdvancedIconListItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/AdvancedIconListItemRenderer.mxml
@@ -85,12 +85,12 @@ limitations under the License.
         <js:ItemRendererDataBinding/>
     </j:beads>
 
-    <js:MaterialIcon text="{iconListItem ? iconListItem.icon : ''}"
-                
+    <j:HGroup gap="8" itemsVerticalAlign="itemsCenter">
+        <js:MaterialIcon text="{iconListItem ? iconListItem.icon : ''}"
                 visible="{iconListItem ? iconListItem.icon != null : false}"
                 className="{colorClass}"
                 click="clickCloseButton()"/>
-
-    <j:Label html="{text}" multiline="true"/>
+        <j:Label html="{text}" multiline="true"/>
+    </j:HGroup>
 
 </j:ListItemRenderer>
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconListItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconListItemRenderer.mxml
index d22dfc0..a827384 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconListItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconListItemRenderer.mxml
@@ -60,9 +60,10 @@ limitations under the License.
         <js:ToolTipRemovalWhenItemRemoved tooltip="{tt}"/>
     </j:beads>
 
-    <js:MaterialIcon text="{iconList ? iconList.icon : ''}"  visible="{iconList ? iconList.icon != null : false}" click="clickCloseButton()"/>
-
-    <j:Label html="{text}" multiline="true"/>
+    <j:HGroup gap="8" itemsVerticalAlign="itemsCenter">
+        <js:MaterialIcon text="{iconList.icon}"  visible="{iconList.icon != null}" click="clickCloseButton()"/>
+        <j:Label html="{text}" multiline="true"/>
+    </j:HGroup>
 
 </j:ListItemRenderer>
 
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
index 182238e..5041fd2 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
@@ -81,12 +81,14 @@ limitations under the License.
         <js:ItemRendererDataBinding />
     </j:beads>
 
-    <js:MaterialIcon text="{navlink ? navlink.icon : ''}"  visible="{navlink ? navlink.icon != null : false}"/>
-
-    <html:Span className="navigation-section-title" text="{text}"/>
-    
-    <js:MaterialIcon text="{open? MaterialIconType.EXPAND_LESS: MaterialIconType.EXPAND_MORE}"  className="hint" 
-                visible="{navlink.subMenu != null}" />
+    <j:HGroup gap="8" itemsVerticalAlign="itemsCenter">
+        <js:MaterialIcon text="{navlink.icon}"  visible="{navlink.icon != null}"/>
+
+        <html:Span className="navigation-section-title" text="{text}"/>
+        
+        <js:MaterialIcon text="{open? MaterialIconType.EXPAND_LESS: MaterialIconType.EXPAND_MORE}"  className="hint" 
+                        visible="{navlink.subMenu != null}" />
+    </j:HGroup>
 
 </j:CollapsibleNavigationSectionRenderer>
 
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
index f9a6644..42aff86 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
@@ -39,9 +39,10 @@ limitations under the License.
         <js:ItemRendererDataBinding />
     </j:beads>
 
-    <js:MaterialIcon text="{navlink ? navlink.icon : ''}"  visible="{navlink ? navlink.icon != null : false}"/>
-
-    <html:Span text="{navlink ? navlink.label : ''}"/>
+    <j:HGroup gap="8" itemsVerticalAlign="itemsCenter">
+        <js:MaterialIcon text="{navlink.icon}"  visible="{navlink.icon != null}"/>
+        <html:Span text="{navlink.label}"/>
+    </j:HGroup>
 
 </j:NavigationLinkItemRenderer>
 


[royale-asjs] 07/10: changes in collapsible

Posted by ca...@apache.org.
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

commit d1b325e20a0eada0404fb1eff3fc3f9c76f2b26e
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Wed May 13 12:37:58 2020 +0200

    changes in collapsible
---
 .../NavigationGroupExampleItemRenderer.mxml        | 17 +++---
 .../CollapsibleNavigationSectionRenderer.as        | 63 +++++-----------------
 2 files changed, 21 insertions(+), 59 deletions(-)

diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
index e6a02d6..c7412af 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
@@ -21,6 +21,7 @@ limitations under the License.
                                         xmlns:j="library://ns.apache.org/royale/jewel"
                                         xmlns:js="library://ns.apache.org/royale/basic"
                                         xmlns:html="library://ns.apache.org/royale/html"
+                                        className="layout vertical"
                                         sectionClick="handleNavToggle(event)"
                                         height="48">
 
@@ -64,7 +65,7 @@ limitations under the License.
 
         override public function onChange(selectedItem:Object):void{
             trace('selectedItem',selectedItem)
-            var parentNav:Navigation =   this.itemRendererOwnerView ? this.itemRendererOwnerView.host as Navigation : null;
+            var parentNav:Navigation =  this.itemRendererOwnerView ? this.itemRendererOwnerView.host as Navigation : null;
             if (parentNav) {
                 //this hierarchy support is a bit kooky, and probably there will be something better later with Hierarchical data setup
                 navlink.selectedChild =selectedItem as NavigationLinkVO;
@@ -79,15 +80,15 @@ limitations under the License.
 
     <j:beads>
         <js:ItemRendererDataBinding />
-        <j:HorizontalLayout gap="8" itemsVerticalAlign="itemsCenter"/>
     </j:beads>
 
-    <js:MaterialIcon text="{navlink.icon}"  visible="{navlink.icon != null}"/>
-
-    <html:Span className="navigation-section-title" text="{text}"/>
-    
-    <js:MaterialIcon text="{open? MaterialIconType.EXPAND_LESS: MaterialIconType.EXPAND_MORE}"  className="hint" 
-                    visible="{navlink.subMenu != null}" />
+    <!-- <j:HGroup gap="8" itemsVerticalAlign="itemsCenter"> -->
+        <js:MaterialIcon text="{navlink.icon}"  visible="{navlink.icon != null}"/>
 
+        <html:Span className="navigation-section-title" text="{text}"/>
+        
+        <js:MaterialIcon text="{open? MaterialIconType.EXPAND_LESS: MaterialIconType.EXPAND_MORE}"  className="hint" 
+                        visible="{navlink.subMenu != null}" />
+    <!-- </j:HGroup> -->
 </j:CollapsibleNavigationSectionRenderer>
 
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as
index 81fda21..2bb5133 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/CollapsibleNavigationSectionRenderer.as
@@ -81,39 +81,14 @@ package org.apache.royale.jewel.itemRenderers
 			}
 		}
 		
-		public function getSelectedSubmenuItem():Object{
+		public function getSelectedSubmenuItem():Object {
 			if (childNavigation && open) return childNavigation.selectedItem;
 			return null;
 		}
-		
 
 		private var navLinkClassSelector:ClassSelectorList;
-		
-		// private var _href:String = "#";
-        /**
-         *  the navigation link url
-		 *  while the parent is primarily for hiding or showing its
-		 *  children, it is still an active link, and will dispatch events,
-		 *  so that other external view state changes may (or may not) be reflected
-		 *  So it has the same capabilities for navigation as its children, if that
-		 *  is needed.
-         *  
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion Royale 0.9.6
-         */
-		// public function get href():String
-		// {
-        //     return _href;   
-		// }
-		// public function set href(value:String):void
-		// {
-        //     _href = value;
-		// }
 
 		private var _text:String = "";
-
         /**
          *  The text of the navigation link
          *  
@@ -127,7 +102,6 @@ package org.apache.royale.jewel.itemRenderers
 		{
             return _text;
 		}
-
 		public function set text(value:String):void
 		{
              _text = value;
@@ -195,16 +169,15 @@ package org.apache.royale.jewel.itemRenderers
 				super.addElement(childNavigation);
 				if (!_open) 
 				{
-					COMPILE::JS
-					{
-					childNavigation.element.style.height = 0;
-					}
+				COMPILE::JS
+				{
+				childNavigation.element.style.height = 0;
+				}
 				}
 			}
 			childNavigation.dataProvider = children;
 		}
 		
-		
 		private var sectionNavItem:A;
 		
 		COMPILE::JS
@@ -225,7 +198,6 @@ package org.apache.royale.jewel.itemRenderers
 		override public function set data(value:Object):void
 		{
 			if(value == null) {
-				// _href = "#";
 				_text = null;
 				open = false;
 				//super.data setter will dispatch dataChange
@@ -246,19 +218,13 @@ package org.apache.royale.jewel.itemRenderers
 				_text = String(value);
 			}
 			// text = getLabelFromData(this, value);
-			
-            // if(value.href !== undefined)
-			// {
-            //     href = String(value.href);
-			// }
 
 			COMPILE::JS
 			{
-				if(textNode != null)
-				{
-					textNode.nodeValue = text;
-					// (element as HTMLElement).setAttribute('href', href);
-				}	
+			if(textNode != null)
+			{
+				textNode.nodeValue = text;
+			}	
 			}
 			
 			if (submenuField in value && value[submenuField] is IArrayList){
@@ -269,15 +235,12 @@ package org.apache.royale.jewel.itemRenderers
 				processChildren();
 			}
 			
-			
 			//super.data dispatches the dataChange
-			_inData=true;
-			super.data=value;
-			_inData=false;
+			_inData = true;
+			super.data = value;
+			_inData = false;
 		}
 		
-		
-		
 		private var _mxmlProperties:Array ;
 		
 		/**
@@ -299,7 +262,6 @@ package org.apache.royale.jewel.itemRenderers
 			MXMLDataInterpreter.generateMXMLInstances(this, sectionNavItem, MXMLDescriptor);
 			MXMLDescriptor.length = 0;
 			super.addedToParent();
-			
 		}
 		
 		/**
@@ -309,7 +271,6 @@ package org.apache.royale.jewel.itemRenderers
         COMPILE::JS
         override protected function createElement():WrappedHTMLElement
         {
-
 			var nav:WrappedHTMLElement = addElementToWrapper(this, 'nav');
 			sectionNavItem = new A();
 			// sectionNavItem.href = href;


[royale-asjs] 06/10: tour-de-jewel: another refactor on renderer left

Posted by ca...@apache.org.
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

commit 57941ef3209a2fc3c5b86d503cc6075404752830
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Tue May 12 00:01:10 2020 +0200

    tour-de-jewel: another refactor on renderer left
---
 .../src/main/royale/itemRenderers/SimpleIconListItemRenderer.mxml | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/SimpleIconListItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/SimpleIconListItemRenderer.mxml
index 359edaa..841527c 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/SimpleIconListItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/SimpleIconListItemRenderer.mxml
@@ -36,12 +36,12 @@ limitations under the License.
 
     <j:beads>
         <js:ItemRendererDataBinding />
+        <j:HorizontalLayout gap="6" itemsVerticalAlign="itemsCenter"/>
     </j:beads>
 
-    <j:HGroup gap="6" itemsVerticalAlign="itemsCenter">
-        <js:MaterialIcon text="{iconList.icon}"  visible="{iconList.icon != null}"/>
-        <j:Label html="{text}"/>
-    </j:HGroup>
+    <js:MaterialIcon text="{iconList.icon}"  visible="{iconList.icon != null}"/>
+   
+    <j:Label html="{text}"/>
 
 </j:ListItemRenderer>
 


[royale-asjs] 01/10: jewel-itemrender: make renders use basic layout by default

Posted by ca...@apache.org.
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

commit f95291c47d796ff41845c252883e685c610632da
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Thu May 7 11:14:01 2020 +0200

    jewel-itemrender: make renders use basic layout by default
---
 .../TourDeJewel/src/main/resources/jewel-example-styles.css | 13 -------------
 frameworks/projects/Jewel/src/main/resources/defaults.css   |  4 ++++
 .../Jewel/src/main/sass/components/_itemRenderer.sass       |  4 +++-
 3 files changed, 7 insertions(+), 14 deletions(-)

diff --git a/examples/jewel/TourDeJewel/src/main/resources/jewel-example-styles.css b/examples/jewel/TourDeJewel/src/main/resources/jewel-example-styles.css
index dfc5731..3bed732 100644
--- a/examples/jewel/TourDeJewel/src/main/resources/jewel-example-styles.css
+++ b/examples/jewel/TourDeJewel/src/main/resources/jewel-example-styles.css
@@ -48,10 +48,6 @@ j|IconButtonBar
 {
     IItemRenderer: ClassReference("itemRenderers.IconListItemRenderer");
 }
-.iconListItemRenderer .fonticon
-{
-    margin-right: 24px;
-}
 
 .advancedIconListItemRenderer
 {
@@ -83,11 +79,6 @@ j|IconButtonBar
     IItemRenderer: ClassReference("itemRenderers.NavigationIconLinkItemRenderer");
 }
 
-.navIconLinkItemRenderer .fonticon
-{
-    margin-right: 24px;
-}
-
 .tabBarVerticalIconItemRenderer
 {
     IItemRenderer: ClassReference("itemRenderers.TabBarVerticalIconItemRenderer");
@@ -141,8 +132,4 @@ j|IconButtonBar
 .navSectionItemRenderer{
     IItemRenderer: ClassReference("itemRenderers.NavigationGroupExampleItemRenderer");
 }
-.navSectionItemRenderer .fonticon
-{
-    margin-right: 24px;
-}
 
diff --git a/frameworks/projects/Jewel/src/main/resources/defaults.css b/frameworks/projects/Jewel/src/main/resources/defaults.css
index d08238e..6a9b04e 100644
--- a/frameworks/projects/Jewel/src/main/resources/defaults.css
+++ b/frameworks/projects/Jewel/src/main/resources/defaults.css
@@ -988,9 +988,13 @@ j|ImageButton {
   cursor: auto;
 }
 .jewel.item.mxmlContent, .jewel.navigationlink.mxmlContent, .jewel.tabbarbutton.mxmlContent {
+  position: relative;
   flex: 0 0 auto;
   align-items: center;
 }
+.jewel.item.mxmlContent > *, .jewel.navigationlink.mxmlContent > *, .jewel.tabbarbutton.mxmlContent > * {
+  position: absolute !important;
+}
 .jewel.item.selectable, .jewel.navigationlink.selectable, .jewel.tabbarbutton.selectable {
   cursor: pointer;
 }
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass b/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass
index 74d3f89..db20ecd 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass
@@ -32,11 +32,13 @@ $item-min-height: 34px
     cursor: auto
     // align-items: center -> this need to be in mxmlContent to not modify basic list renders
     // pointer-events: none
-
     // used when the renderer is extended, so we change to flex display
     &.mxmlContent
+        position: relative
         flex: 0 0 auto
         align-items: center
+        > *
+            position: absolute !important
 
     &.selectable
         cursor: pointer


[royale-asjs] 05/10: tour-de-jewel: refacotr item renders and even clean checks in bindings not need now

Posted by ca...@apache.org.
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

commit 0a6114def781f7c8320967ccb09e499c5e0e6004
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Mon May 11 19:44:27 2020 +0200

    tour-de-jewel: refacotr item renders and even clean checks in bindings not need now
---
 .../src/main/resources/jewel-example-styles.css      |  6 ------
 .../itemRenderers/AdvancedIconListItemRenderer.mxml  | 14 +++++++-------
 .../itemRenderers/CheckBoxDataGridItemRenderer.mxml  |  2 +-
 .../itemRenderers/IconDataGridItemRenderer.mxml      |  4 ++--
 .../royale/itemRenderers/IconListItemRenderer.mxml   |  8 ++++----
 .../itemRenderers/ImageDataGridItemRenderer.mxml     |  2 +-
 .../NavigationGroupExampleItemRenderer.mxml          | 17 ++++++++---------
 .../NavigationIconLinkItemRenderer.mxml              | 11 ++++++-----
 .../TabBarHorizontalIconItemRenderer.mxml            |  6 +++---
 .../TabBarVerticalIconItemRenderer.mxml              |  6 +++---
 .../itemRenderers/TableStyleListItemRenderer.mxml    | 20 +++++++++++---------
 11 files changed, 46 insertions(+), 50 deletions(-)

diff --git a/examples/jewel/TourDeJewel/src/main/resources/jewel-example-styles.css b/examples/jewel/TourDeJewel/src/main/resources/jewel-example-styles.css
index 3bed732..a1febdb 100644
--- a/examples/jewel/TourDeJewel/src/main/resources/jewel-example-styles.css
+++ b/examples/jewel/TourDeJewel/src/main/resources/jewel-example-styles.css
@@ -42,8 +42,6 @@ j|IconButtonBar
     IItemRenderer: ClassReference("itemRenderers.SimpleIconListItemRenderer");
 }
 
-
-
 .iconListItemRenderer
 {
     IItemRenderer: ClassReference("itemRenderers.IconListItemRenderer");
@@ -53,10 +51,6 @@ j|IconButtonBar
 {
     IItemRenderer: ClassReference("itemRenderers.AdvancedIconListItemRenderer");
 }
-.advancedIconListItemRenderer .fonticon
-{
-    margin-right: 24px;
-}
 
 .jewel.item .jewelItem {
     color: #3cadf1;
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/AdvancedIconListItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/AdvancedIconListItemRenderer.mxml
index 45123c4..7eea4ea 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/AdvancedIconListItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/AdvancedIconListItemRenderer.mxml
@@ -83,14 +83,14 @@ limitations under the License.
 
     <j:beads>
         <js:ItemRendererDataBinding/>
+        <j:HorizontalLayout gap="8" itemsVerticalAlign="itemsCenter"/>
     </j:beads>
 
-    <j:HGroup gap="8" itemsVerticalAlign="itemsCenter">
-        <js:MaterialIcon text="{iconListItem ? iconListItem.icon : ''}"
-                visible="{iconListItem ? iconListItem.icon != null : false}"
-                className="{colorClass}"
-                click="clickCloseButton()"/>
-        <j:Label html="{text}" multiline="true"/>
-    </j:HGroup>
+    <js:MaterialIcon text="{iconListItem.icon}"
+            visible="{iconListItem.icon != null}"
+            className="{colorClass}"
+            click="clickCloseButton()"/>
+
+    <j:Label html="{text}" multiline="true"/>
 
 </j:ListItemRenderer>
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/CheckBoxDataGridItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/CheckBoxDataGridItemRenderer.mxml
index c65ac99..40a3069 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/CheckBoxDataGridItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/CheckBoxDataGridItemRenderer.mxml
@@ -47,7 +47,7 @@ limitations under the License.
         <j:HorizontalCenteredLayout/>
     </j:beads>
 
-    <j:CheckBox selected="{detailIconList ? detailIconList.componentSet == 'Jewel' : false}">
+    <j:CheckBox selected="{detailIconList.componentSet == 'Jewel'}">
         <j:beads>
             <j:Disabled disabled="true"/>
         </j:beads>
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconDataGridItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconDataGridItemRenderer.mxml
index 299fe3f..b5e6e78 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconDataGridItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconDataGridItemRenderer.mxml
@@ -50,8 +50,8 @@ limitations under the License.
         <j:HorizontalCenteredLayout/>
     </j:beads>
 
-    <js:MaterialIcon text="{iconList ? iconList.icon : ''}" 
-        visible="{iconList ? iconList.icon != null : false}"
+    <js:MaterialIcon text="{iconList.icon}" 
+        visible="{iconList.icon != null}"
         click="clickCloseButton(event)"/>
 
 </j:DataGridItemRenderer>
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconListItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconListItemRenderer.mxml
index a827384..8f79390 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconListItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/IconListItemRenderer.mxml
@@ -58,12 +58,12 @@ limitations under the License.
         <js:ItemRendererDataBinding />
         <j:ToolTip localId="tt" toolTip="{getToolTip(text)}"/>
         <js:ToolTipRemovalWhenItemRemoved tooltip="{tt}"/>
+        <j:HorizontalLayout gap="8" itemsVerticalAlign="itemsCenter"/>
     </j:beads>
 
-    <j:HGroup gap="8" itemsVerticalAlign="itemsCenter">
-        <js:MaterialIcon text="{iconList.icon}"  visible="{iconList.icon != null}" click="clickCloseButton()"/>
-        <j:Label html="{text}" multiline="true"/>
-    </j:HGroup>
+    <js:MaterialIcon text="{iconList.icon}"  visible="{iconList.icon != null}" click="clickCloseButton()"/>
+    
+    <j:Label html="{text}" multiline="true"/>
 
 </j:ListItemRenderer>
 
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/ImageDataGridItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/ImageDataGridItemRenderer.mxml
index bc6be43..83c5f6f 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/ImageDataGridItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/ImageDataGridItemRenderer.mxml
@@ -39,7 +39,7 @@ limitations under the License.
         <j:HorizontalCenteredLayout/>
     </j:beads>
 
-    <j:Image src="{ product ? product.image : '' }"/>
+    <j:Image src="{product.image}"/>
 
 </j:DataGridItemRenderer>
 
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
index 5041fd2..e6a02d6 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationGroupExampleItemRenderer.mxml
@@ -21,8 +21,8 @@ limitations under the License.
                                         xmlns:j="library://ns.apache.org/royale/jewel"
                                         xmlns:js="library://ns.apache.org/royale/basic"
                                         xmlns:html="library://ns.apache.org/royale/html"
-                                        className="layout vertical"
-                                        sectionClick="handleNavToggle(event)">
+                                        sectionClick="handleNavToggle(event)"
+                                        height="48">
 
     <fx:Script>
 		<![CDATA[
@@ -79,16 +79,15 @@ limitations under the License.
 
     <j:beads>
         <js:ItemRendererDataBinding />
+        <j:HorizontalLayout gap="8" itemsVerticalAlign="itemsCenter"/>
     </j:beads>
 
-    <j:HGroup gap="8" itemsVerticalAlign="itemsCenter">
-        <js:MaterialIcon text="{navlink.icon}"  visible="{navlink.icon != null}"/>
+    <js:MaterialIcon text="{navlink.icon}"  visible="{navlink.icon != null}"/>
 
-        <html:Span className="navigation-section-title" text="{text}"/>
-        
-        <js:MaterialIcon text="{open? MaterialIconType.EXPAND_LESS: MaterialIconType.EXPAND_MORE}"  className="hint" 
-                        visible="{navlink.subMenu != null}" />
-    </j:HGroup>
+    <html:Span className="navigation-section-title" text="{text}"/>
+    
+    <js:MaterialIcon text="{open? MaterialIconType.EXPAND_LESS: MaterialIconType.EXPAND_MORE}"  className="hint" 
+                    visible="{navlink.subMenu != null}" />
 
 </j:CollapsibleNavigationSectionRenderer>
 
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
index 42aff86..86c92f0 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/NavigationIconLinkItemRenderer.mxml
@@ -21,7 +21,8 @@ limitations under the License.
     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="http://www.w3.org/1999/xhtml"
+    height="48">
 
     <fx:Script>
         <![CDATA[
@@ -37,12 +38,12 @@ limitations under the License.
 
     <j:beads>
         <js:ItemRendererDataBinding />
+        <j:HorizontalLayout gap="8" itemsVerticalAlign="itemsCenter"/>
     </j:beads>
 
-    <j:HGroup gap="8" itemsVerticalAlign="itemsCenter">
-        <js:MaterialIcon text="{navlink.icon}"  visible="{navlink.icon != null}"/>
-        <html:Span text="{navlink.label}"/>
-    </j:HGroup>
+    <js:MaterialIcon text="{navlink.icon}"  visible="{navlink.icon != null}"/>
+    
+    <html:Span text="{navlink.label}"/>
 
 </j:NavigationLinkItemRenderer>
 
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TabBarHorizontalIconItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TabBarHorizontalIconItemRenderer.mxml
index 26f8828..ab6c292 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TabBarHorizontalIconItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TabBarHorizontalIconItemRenderer.mxml
@@ -40,9 +40,9 @@ limitations under the License.
     </j:beads>
 
     <j:HGroup gap="4" itemsVerticalAlign="itemsCenter">
-        <js:MaterialIcon text="{tabButton ? tabButton.icon : ''}"  
-                    visible="{tabButton ? tabButton.icon != null : false}"/>
-        <html:Span text="{tabButton ? tabButton.label : ''}"/>
+        <js:MaterialIcon text="{tabButton.icon}"  
+                    visible="{tabButton.icon != null}"/>
+        <html:Span text="{tabButton.label}"/>
     </j:HGroup>
 
 </j:TabBarButtonInidicatorRestrictedToContentItemRenderer>
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TabBarVerticalIconItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TabBarVerticalIconItemRenderer.mxml
index b323763..c5d5c4f 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TabBarVerticalIconItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TabBarVerticalIconItemRenderer.mxml
@@ -40,9 +40,9 @@ limitations under the License.
     </j:beads>
 
     <j:VGroup itemsHorizontalAlign="itemsCenter">
-        <js:MaterialIcon text="{tabButton ? tabButton.icon : ''}"  
-                    visible="{tabButton ? tabButton.icon != null : false}"/>
-        <html:Span text="{tabButton ? tabButton.label : ''}"/>
+        <js:MaterialIcon text="{tabButton.icon}"  
+                    visible="{tabButton.icon != null}"/>
+        <html:Span text="{tabButton.label}"/>
     </j:VGroup>
 
 </j:TabBarButtonInidicatorRestrictedToContentItemRenderer>
diff --git a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TableStyleListItemRenderer.mxml b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TableStyleListItemRenderer.mxml
index 49c6d7f..afbef18 100644
--- a/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TableStyleListItemRenderer.mxml
+++ b/examples/jewel/TourDeJewel/src/main/royale/itemRenderers/TableStyleListItemRenderer.mxml
@@ -20,20 +20,22 @@ limitations under the License.
 <ir:IconListItemRenderer 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:ir="itemRenderers.*"
-    width="100%">
+    xmlns:ir="itemRenderers.*">
 
     <ir:beads>
         <js:ItemRendererDataBinding />
-        <j:HorizontalLayout/>
+        <j:HorizontalLayout itemsVerticalAlign="itemsCenter"/>
     </ir:beads>
 
-    <!-- <j:HGroup itemsVerticalAlign="itemsCenter"> -->
-        <js:MaterialIcon text="{iconList ? iconList.icon : ''}"  visible="{iconList ? iconList.icon != null : false}" click="clickCloseButton()" width="100"/>
-        <j:Label html="{text}" multiline="true" width="300"/>
-        <j:Label html="Third field" multiline="true" width="100"/>
-        <j:Label html="Fourth field" multiline="true" width="200"/>
-    <!-- </j:HGroup> -->
+    <js:MaterialIcon text="{iconList.icon}"  
+                    visible="{iconList.icon != null}" 
+                    click="clickCloseButton()" width="100"/>
+
+    <j:Label html="{text}" multiline="true" width="300"/>
+    
+    <j:Label html="Third field" multiline="true" width="100"/>
+    
+    <j:Label html="Fourth field" multiline="true" width="200"/>
     
 </ir:IconListItemRenderer>
 


[royale-asjs] 08/10: navigation link config beads

Posted by ca...@apache.org.
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

commit 0474a10a3b3579c01b7ac1c6351db3a11434a575
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Wed May 13 12:38:18 2020 +0200

    navigation link config beads
---
 frameworks/projects/Jewel/src/main/resources/defaults.css      |  5 +++++
 .../projects/Jewel/src/main/sass/components/_navigation.sass   | 10 +++++++++-
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/frameworks/projects/Jewel/src/main/resources/defaults.css b/frameworks/projects/Jewel/src/main/resources/defaults.css
index fc97ee8..aba279f 100644
--- a/frameworks/projects/Jewel/src/main/resources/defaults.css
+++ b/frameworks/projects/Jewel/src/main/resources/defaults.css
@@ -3285,6 +3285,11 @@ j|NavigationLinkItemRenderer {
   IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
 }
 
+j|CollapsibleNavigationSectionRenderer {
+  IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.NullLayout");
+  IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+}
+
 .jewel.numericstepper .jewel.textinput {
   display: inline-flex;
 }
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass b/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass
index 45e88d7..906569e 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_navigation.sass
@@ -45,4 +45,12 @@ j|Navigation
 .jewel.navigationlink
 
 j|NavigationLinkItemRenderer
-    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController")
\ No newline at end of file
+    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController")
+
+// Jewel CollapsibleNavigationSectionRenderer
+.jewel.navigationgroup
+
+j|CollapsibleNavigationSectionRenderer
+    IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.NullLayout")
+    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController")
+    // itemsVerticalAlign: itemsCenter
\ No newline at end of file