You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ah...@apache.org on 2020/01/08 21:05:24 UTC

[royale-asjs] branch develop updated: get ColorPicker to work in both Basic and MXRoyale. Fixes #661

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

aharui 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 891b66a  get ColorPicker to work in both Basic and MXRoyale.  Fixes #661
891b66a is described below

commit 891b66aa23f57a119e5665b451690a99c5cd298e
Author: Alex Harui <ah...@apache.org>
AuthorDate: Wed Jan 8 13:05:04 2020 -0800

    get ColorPicker to work in both Basic and MXRoyale.  Fixes #661
---
 .../org/apache/royale/html/beads/ColorPickerView.as  |  3 +++
 .../royale/html/supportClasses/ColorPickerPopUp.as   |  2 ++
 .../MXRoyale/src/main/resources/defaults.css         |  8 ++++++++
 .../src/main/royale/mx/controls/ColorPicker.as       | 20 +++++++++-----------
 4 files changed, 22 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 294f374..b17bbca 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
@@ -35,11 +35,13 @@ package org.apache.royale.html.beads
 		import org.apache.royale.utils.CSSUtils;
 		import org.apache.royale.core.IRenderedObject;
 	}
+    import org.apache.royale.utils.loadBeadFromValuesManager;
 	import org.apache.royale.utils.PointUtils;
 	import org.apache.royale.utils.UIUtils;
 	import org.apache.royale.core.IStrandWithModel;
 	import org.apache.royale.html.supportClasses.IColorPickerPopUp;
 	import org.apache.royale.core.IColorModel;
+    import org.apache.royale.core.IPopUp;
 	
 	/**
 	 *  The ColorPickerView class creates the visual elements of the org.apache.royale.html.ColorPicker 
@@ -144,6 +146,7 @@ package org.apache.royale.html.beads
 			host.addElement(selectedColorDisplay);
 			host.addElement(button);
 			
+            loadBeadFromValuesManager(IPopUp, "iPopUp", _strand);
 			list = _strand.getBeadByType(IColorPickerPopUp) as IUIBase;
 			list.visible = false;
 			
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 276bd2a..8c01fa1 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
@@ -62,6 +62,7 @@ package org.apache.royale.html.supportClasses
 			hueSelector.width = 20;
 			hueSelector.height = 300;
 			hueSelector.x = 310;
+            hueSelector.y = 0;
 			hueSelector.addEventListener("valueChange", hueChangeHandler);
 			COMPILE::JS 
 			{
@@ -87,6 +88,7 @@ package org.apache.royale.html.supportClasses
 		protected function colorSpectrumChangeHandler(event:Event):void
 		{
 			(model as IColorModel).color = colorSpectrum.hsvModifiedColor;
+            dispatchEvent(new Event("change"));
 		}
 		
 		/**
diff --git a/frameworks/projects/MXRoyale/src/main/resources/defaults.css b/frameworks/projects/MXRoyale/src/main/resources/defaults.css
index 3f2d325..4cbb35a 100644
--- a/frameworks/projects/MXRoyale/src/main/resources/defaults.css
+++ b/frameworks/projects/MXRoyale/src/main/resources/defaults.css
@@ -169,6 +169,14 @@ CheckBox
 	IBeadModel: ClassReference("org.apache.royale.html.beads.models.ToggleButtonModel");
 }
 
+ColorPicker
+{
+	IBeadModel: ClassReference("org.apache.royale.html.beads.models.ColorModel");
+	IBeadView: ClassReference("org.apache.royale.html.beads.ColorPickerView");
+	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ComboBoxController");
+	IPopUp: ClassReference("org.apache.royale.html.supportClasses.ColorPickerPopUp");
+}
+
 ComboBox
 {
 	IBeadModel: ClassReference("mx.controls.beads.models.ComboBoxModel");
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/ColorPicker.as b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/ColorPicker.as
index f2a666a..277d258 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/controls/ColorPicker.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/controls/ColorPicker.as
@@ -20,7 +20,9 @@
 package mx.controls
 {
 	import org.apache.royale.events.Event;
-	import mx.controls.ComboBase;
+    import org.apache.royale.core.IColorModel;
+	//import mx.controls.ComboBase;
+    import mx.core.UIComponent;
 /*
 import flash.display.DisplayObject;
 import flash.events.Event;
@@ -465,7 +467,7 @@ use namespace mx_internal;
  *  @playerversion AIR 1.1
  *  @productversion Royale 0.9.3
  */
-public class ColorPicker extends ComboBase
+public class ColorPicker extends UIComponent //ComboBase
 {
     //include "../core/Version.as";
 
@@ -499,12 +501,13 @@ public class ColorPicker extends ComboBase
     {
         super();
 
+        typeNames = "ColorPicker";
         //if (!isModelInited)
         //    loadDefaultPalette();
 
         // Make editable false so that focus doesn't go
         // to the comboBase's textInput which is not used by CP
-        super.editable = false;
+        //super.editable = false;
 
         // Register for events.
         //addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
@@ -623,12 +626,6 @@ public class ColorPicker extends ComboBase
     //  selectedColor
     //----------------------------------
 
-    /**
-     *  @private
-     *  Storage for the selectedColor property.
-     */
-    private var _selectedColor:uint = 0x000000;
-
     //[Bindable("change")]
     //[Bindable("valueCommit")]
     //[Inspectable(category="General", defaultValue="0", format="Color")]
@@ -651,7 +648,7 @@ public class ColorPicker extends ComboBase
      */
     public function get selectedColor():uint
     {
-        return _selectedColor;
+        return (model as IColorModel).color;
     }
 
     /**
@@ -668,7 +665,6 @@ public class ColorPicker extends ComboBase
         {
             indexFlag = false;
         }
-		*/
         if (value != selectedColor)
         {
             _selectedColor = value;
@@ -680,6 +676,8 @@ public class ColorPicker extends ComboBase
         }
 
         //dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT));
+        */
+        (model as IColorModel).color = value;
     }
 
 }