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/05/12 07:53:46 UTC

[royale-asjs] branch color_picker updated: Make sure layout is called on palette after it's added to DOM

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

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


The following commit(s) were added to refs/heads/color_picker by this push:
     new f32314b  Make sure layout is called on palette after it's added to DOM
f32314b is described below

commit f32314be57989846054642e5fb71535620e2f35b
Author: DESKTOP-RH4S838\Yishay <yi...@hotmail.com>
AuthorDate: Sun May 12 10:53:39 2019 +0300

    Make sure layout is called on palette after it's added to DOM
---
 .../apache/royale/html/beads/ColorPickerView.as    |  3 +--
 .../royale/html/supportClasses/ColorPickerPopUp.as | 13 ++++++++++++
 .../supportClasses/ColorPickerPopUpWithPalette.as  | 24 ++++++++++++++--------
 .../html/supportClasses/IColorPickerPopUp.as       |  3 ++-
 4 files changed, 32 insertions(+), 11 deletions(-)

diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerView.as
index 138691e..9ea3a35 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ColorPickerView.as
@@ -144,8 +144,7 @@ package org.apache.royale.html.beads
 			host.addElement(selectedColorDisplay);
 			host.addElement(button);
 			
-			var popUpClass:Class = ValuesManager.valuesImpl.getValue(_strand, "iPopUp") as Class;
-			list = new popUpClass() as IUIBase;
+			list = _strand.getBeadByType(IColorPickerPopUp) as IUIBase;
 			list.visible = false;
 			
 			var model:IEventDispatcher = (_strand as IStrandWithModel).model as IEventDispatcher;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ColorPickerPopUp.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ColorPickerPopUp.as
index d4c3d7b..fd18bbd 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ColorPickerPopUp.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ColorPickerPopUp.as
@@ -20,6 +20,7 @@ package org.apache.royale.html.supportClasses
 {
 	import org.apache.royale.core.IColorModel;
 	import org.apache.royale.core.IColorSpectrumModel;
+	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
@@ -87,5 +88,17 @@ package org.apache.royale.html.supportClasses
 			(model as IColorModel).color = colorSpectrum.hsvModifiedColor;
 		}
 		
+		/**
+		 *  @copy org.apache.royale.core.IBead#strand
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function set strand(value:IStrand):void
+		{
+		}
+		
 	}
 }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ColorPickerPopUpWithPalette.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ColorPickerPopUpWithPalette.as
index 4c9273c..bcaf3df 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ColorPickerPopUpWithPalette.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ColorPickerPopUpWithPalette.as
@@ -18,14 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.supportClasses
 {
-	import org.apache.royale.core.IColorModel;
-	import org.apache.royale.core.IColorSpectrumModel;
-	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
-	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.HueSelector;
-	import org.apache.royale.utils.hsvToHex;
-	import org.apache.royale.utils.loadBeadFromValuesManager;
 
 	/**
 	 *  The ColorPickerPopUpWithPalette class is used in ColorPicker. It contains a set of controls for picking a color, incluse a color palette.
@@ -59,7 +52,22 @@ package org.apache.royale.html.supportClasses
 			colorPalette.y = colorSpectrum.height + 10;
 			colorPalette.x = colorSpectrum.x;
 			colorPalette.width =  300;
-			addElement(colorPalette);
+		}
+		
+		override public function set model(value:Object):void
+		{
+			super.model = value;
+			colorPalette.model = value;
+			if (getElementIndex(colorPalette) < 0)
+			{
+				addElement(colorPalette);
+			}
+		}
+		
+		override public function addedToParent():void
+		{
+			super.addedToParent();
+			colorPalette.dispatchEvent(new Event('layoutNeeded'));
 		}
 	}
 }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/IColorPickerPopUp.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/IColorPickerPopUp.as
index e79599a..ca1ab5e 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/IColorPickerPopUp.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/IColorPickerPopUp.as
@@ -19,6 +19,7 @@
 package org.apache.royale.html.supportClasses
 {
 	import org.apache.royale.core.IPopUp;
+	import org.apache.royale.core.IStrand;
 
 	/**
 	 * All color picker pop-ups must implement this interface.
@@ -28,7 +29,7 @@ package org.apache.royale.html.supportClasses
 	 *  @playerversion AIR 2.6
 	 *  @productversion Royale 0.9.6
 	 */
-	public interface IColorPickerPopUp extends IPopUp
+	public interface IColorPickerPopUp extends IPopUp, IStrand
 	{
 		/**
 		 * The model being used with the IColorPickerPopup.