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 <[email protected]>
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;
     }
 
 }

Reply via email to