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

piotrz 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 8d57f78  Jewel: Fix issue where using private tirgger/triggerEvent 
cause code duplication in derived classes
8d57f78 is described below

commit 8d57f78be2f3e2fc0d221e1ac826cc0eb4e26ce2
Author: Piotr Zarzycki <[email protected]>
AuthorDate: Sat Apr 20 17:54:36 2019 +0200

    Jewel: Fix issue where using private tirgger/triggerEvent cause code 
duplication in derived classes
---
 .../jewel/beads/validators/CheckBoxValidator.as    | 17 --------
 .../royale/jewel/beads/validators/DateValidator.as | 16 --------
 .../jewel/beads/validators/RadioButtonValidator.as | 20 ----------
 .../beads/validators/SelectedItemNullValidator.as  | 17 --------
 .../jewel/beads/validators/StringValidator.as      |  7 ++--
 .../royale/jewel/beads/validators/Validator.as     | 45 +++++++++++++++-------
 6 files changed, 34 insertions(+), 88 deletions(-)

diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/CheckBoxValidator.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/CheckBoxValidator.as
index 722e640..da018d9 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/CheckBoxValidator.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/CheckBoxValidator.as
@@ -18,7 +18,6 @@
 
////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.beads.validators
 {
-       import org.apache.royale.core.IStrand;
        import org.apache.royale.events.Event;
        import org.apache.royale.jewel.CheckBox;
 
@@ -46,22 +45,6 @@ package org.apache.royale.jewel.beads.validators
                        super()
                }
 
-               /**                             
-                *  @copy org.apache.royale.core.IBead#strand
-                *
-                *  @langversion 3.0
-                *  @playerversion Flash 10.2
-                *  @playerversion AIR 2.6
-                *  @productversion Royale 0.9.4
-                *  @royaleignorecoercion 
org.apache.royale.events.IEventDispatcher
-                */
-               override public function set strand(value:IStrand):void
-               {
-                       super.strand = value;
-                       hostComponent.addEventListener(triggerEvent, validate, 
false);
-               }
-
-
                /**
                 *  Override of the base class validate() method to validate if 
selected.
                 * 
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/DateValidator.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/DateValidator.as
index d96cab2..3ee95af 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/DateValidator.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/DateValidator.as
@@ -18,7 +18,6 @@
 
////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.beads.validators
 {
-    import org.apache.royale.core.IStrand;
     import org.apache.royale.events.Event;
     import org.apache.royale.jewel.DateField;
 
@@ -46,21 +45,6 @@ package org.apache.royale.jewel.beads.validators
                        super()
                }
 
-        /**                            
-                *  @copy org.apache.royale.core.IBead#strand
-                *
-                *  @langversion 3.0
-                *  @playerversion Flash 10.2
-                *  @playerversion AIR 2.6
-                *  @productversion Royale 0.9.4
-                *  @royaleignorecoercion 
org.apache.royale.events.IEventDispatcher
-                */
-               override public function set strand(value:IStrand):void
-               {
-                       super.strand = value;
-                       hostComponent.addEventListener(triggerEvent, validate, 
false);
-               }
-
                private function isValidDate(d:*):Boolean
                {
                        return (d is Date) && !isNaN(d);
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/RadioButtonValidator.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/RadioButtonValidator.as
index ae26b70..448c7e5 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/RadioButtonValidator.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/RadioButtonValidator.as
@@ -18,7 +18,6 @@
 
////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.beads.validators
 {
-       import org.apache.royale.core.IStrand;
        import org.apache.royale.events.Event;
        import org.apache.royale.jewel.RadioButton;
 
@@ -46,25 +45,6 @@ package org.apache.royale.jewel.beads.validators
                        super();
                }
 
-               /**                             
-                *  @copy org.apache.royale.core.IBead#strand
-                *
-                *  @langversion 3.0
-                *  @playerversion Flash 10.2
-                *  @playerversion AIR 2.6
-                *  @productversion Royale 0.9.4
-                *  @royaleignorecoercion 
org.apache.royale.events.IEventDispatcher
-                */
-               override public function set strand(value:IStrand):void
-               {
-                       super.strand = value;
-                       COMPILE::JS
-                       {
-                               hostComponent.addEventListener(triggerEvent, 
validate, false);
-                       }
-               }
-
-
                private var _groupName:String;
 
                public function get groupName():String
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/SelectedItemNullValidator.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/SelectedItemNullValidator.as
index 053ba74..3aa59a9 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/SelectedItemNullValidator.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/SelectedItemNullValidator.as
@@ -18,9 +18,7 @@
 
////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.beads.validators
 {
-    import org.apache.royale.core.IStrand;
     import org.apache.royale.events.Event;
-    import org.apache.royale.jewel.DateField;
 
     /**
         *  The SelectedItemNullValidator class is a specialty bead that can be 
used with
@@ -47,21 +45,6 @@ package org.apache.royale.jewel.beads.validators
                        super()
                }
 
-        /**                            
-                *  @copy org.apache.royale.core.IBead#strand
-                *
-                *  @langversion 3.0
-                *  @playerversion Flash 10.2
-                *  @playerversion AIR 2.6
-                *  @productversion Royale 0.9.4
-                *  @royaleignorecoercion 
org.apache.royale.events.IEventDispatcher
-                */
-               override public function set strand(value:IStrand):void
-               {
-                       super.strand = value;
-                       hostComponent.addEventListener(triggerEvent, validate, 
false);
-               }
-
         /**
                 *  Override of the base class validate() method to validate if 
selected.
                 * 
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/StringValidator.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/StringValidator.as
index db39884..aa966c6 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/StringValidator.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/StringValidator.as
@@ -69,7 +69,6 @@ package org.apache.royale.jewel.beads.validators
                        super.strand = value;
                        COMPILE::JS
                        {
-                               hostComponent.addEventListener(triggerEvent, 
validate);
                                updateHost();
                        }
                }
@@ -159,9 +158,9 @@ package org.apache.royale.jewel.beads.validators
                {
                        if (hostComponent)
             {
-                if(_maxLength > 0)
+                if(maxLength > 0)
                                {
-                                       
hostComponent.element.setAttribute('maxlength', _maxLength);
+                                       
hostComponent.element.setAttribute('maxlength', maxLength);
                                } else
                                {
                                        
hostComponent.element.removeAttribute('maxlength');
@@ -169,7 +168,7 @@ package org.apache.royale.jewel.beads.validators
 
                                if(OSUtils.getOS() == OSUtils.ANDROID_OS)
                                {
-                                       if(_maxLength > 0)
+                                       if(maxLength > 0)
                                        {
                                                //solves Android issue where 
you can enter more characters than maxlenght in the input
                                                
hostComponent.element.addEventListener("keyup", forceMaxLength, false);
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/Validator.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/Validator.as
index 2448b68..3116b79 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/Validator.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/Validator.as
@@ -107,14 +107,20 @@ package org.apache.royale.jewel.beads.validators
                {
                        return _trigger;
                }
+
                public function set trigger(value:IEventDispatcher):void
                {
-                       if (_triggerEvent) {
-                               if (_trigger)
-                                       
_trigger.removeEventListener(_triggerEvent, validate);
+                       if (triggerEvent)
+                       {
+                               if (trigger)
+                               {
+                                       
trigger.removeEventListener(triggerEvent, validate);
+                               }
 
                                if (value)
-                                       value.addEventListener(_triggerEvent, 
validate);
+                               {
+                                       value.addEventListener(triggerEvent, 
validate);
+                               }
                        }
                        _trigger = value;
                }
@@ -133,18 +139,29 @@ package org.apache.royale.jewel.beads.validators
                {
                        return _triggerEvent;
                }
+
                public function set triggerEvent(value:String):void
                {
-                       if (_trigger) {
-                               if (_triggerEvent)
-                                       
_trigger.removeEventListener(_triggerEvent, validate);
-                               if (value)
-                                       _trigger.addEventListener(value, 
validate);
-                       }
-                       _triggerEvent = value;
-                       if(hostComponent != null)
+                       if (triggerEvent != value)
                        {
-                               hostComponent.dispatchEvent(new 
Event("triggerEventChanged"));
+                               if(trigger)
+                               {
+                                       if(triggerEvent)
+                                       {
+                                               
trigger.removeEventListener(triggerEvent, validate);
+                                       }
+
+                                       if(value)
+                                       {
+                                               trigger.addEventListener(value, 
validate);
+                                       }
+                               }
+
+                               _triggerEvent = value;
+                               if(hostComponent != null)
+                               {
+                                       hostComponent.dispatchEvent(new 
Event("triggerEventChanged"));
+                               }
                        }
                }
 
@@ -163,7 +180,7 @@ package org.apache.royale.jewel.beads.validators
                public function set strand(value:IStrand):void
                {
                        hostComponent = value as UIBase;
-                       _trigger = hostComponent;
+                       trigger = hostComponent;
                        COMPILE::JS
                        {
                                hostClassList = 
hostComponent.positioner.classList;

Reply via email to