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 4e0940cf1d5aa8b8aa174b264780a2d93ca48cc5
Author: Carlos Rovira <[email protected]>
AuthorDate: Tue Feb 26 13:52:09 2019 +0100

    integration of validator locale with maven and asconfigc
---
 frameworks/projects/Jewel/asconfig.json            |  6 ++
 frameworks/projects/Jewel/pom.xml                  |  6 ++
 .../royale/jewel/beads/validators/Validator.as     | 71 ++++++++++++++++------
 3 files changed, 64 insertions(+), 19 deletions(-)

diff --git a/frameworks/projects/Jewel/asconfig.json 
b/frameworks/projects/Jewel/asconfig.json
index cb77061..9262709 100644
--- a/frameworks/projects/Jewel/asconfig.json
+++ b/frameworks/projects/Jewel/asconfig.json
@@ -29,6 +29,12 @@
         "source-path": [
             "src/main/royale"
         ],
+        "define": [
+            {
+                "name": "LOCALE::language",
+                "value": "'en_US'"
+            }
+        ],
         "output": "target/Jewel.swc"
     }
 }
diff --git a/frameworks/projects/Jewel/pom.xml 
b/frameworks/projects/Jewel/pom.xml
index 74d84db..74aa185 100644
--- a/frameworks/projects/Jewel/pom.xml
+++ b/frameworks/projects/Jewel/pom.xml
@@ -66,6 +66,12 @@
           <skipExtern>true</skipExtern>
           
<additionalCompilerOptions>-source-map=true</additionalCompilerOptions>
           
<!--<additionalCompilerOptions>-compiler.fxg-base-class=flash.display.Sprite</additionalCompilerOptions>-->
+          <defines>
+              <property>
+                  <name>LOCALE::language</name>
+                  <value>'"en_US"'</value>
+              </property>
+          </defines>
         </configuration>
       </plugin>
       <plugin>
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 5b18fc1..cb829b6 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
@@ -22,16 +22,12 @@ package org.apache.royale.jewel.beads.validators
        import org.apache.royale.core.ILocalizedValuesImpl;
        import org.apache.royale.core.IPopUpHost;
        import org.apache.royale.core.IStrand;
-       import org.apache.royale.core.SimpleLocalizedValuesImpl;
        import org.apache.royale.core.Strand;
        import org.apache.royale.core.UIBase;
        import org.apache.royale.events.Event;
        import org.apache.royale.events.IEventDispatcher;
        import org.apache.royale.geom.Point;
        import org.apache.royale.jewel.supportClasses.tooltip.ErrorTipLabel;
-       import org.apache.royale.utils.PointUtils;
-       import org.apache.royale.utils.UIUtils;
-       import org.apache.royale.utils.loadBeadFromValuesManager;
 
        /**
         *  The Validator class is the base class for all validators.
@@ -45,11 +41,25 @@ package org.apache.royale.jewel.beads.validators
         */
        public class Validator extends Strand implements IBead
        {
+               /**
+                * locale
+                */
+               public static var locale :String = LOCALE::language;
+
                [Embed("locale/en_US/validator.properties", 
mimeType="text/plain")]
+               /**
+                * @royalesuppresspublicvarwarning
+                */
                public var en_USvalidator:String;
                [Embed("locale/de_DE/validator.properties", 
mimeType="text/plain")]
+               /**
+                * @royalesuppresspublicvarwarning
+                */
                public var de_DEvalidator:String;
                [Embed("locale/es_ES/validator.properties", 
mimeType="text/plain")]
+               /**
+                * @royalesuppresspublicvarwarning
+                */
                public var es_ESvalidator:String;
 
                /**
@@ -146,26 +156,46 @@ package org.apache.royale.jewel.beads.validators
                public function set strand(value:IStrand):void
                {
                        hostComponent = value as UIBase;
-
-                       //get translations from bundles
-                       try{
-                       var resourceManager:SimpleLocalizedValuesImpl = 
loadBeadFromValuesManager(ILocalizedValuesImpl, "iLocalizedValuesImpl", this) 
as SimpleLocalizedValuesImpl;
-                               resourceManager.localeChain = "es_ES";
-                               var rfe:String = 
resourceManager.getValue("validator", "requiredFieldError");
-                               _requiredFieldError = rfe
-                       }
-                       catch(e:Error)
-                       {
-                trace(e.message);
-                       }
-                       
                        _trigger = hostComponent;
-
                        COMPILE::JS
                        {
                                hostClassList = 
hostComponent.positioner.classList;
                        }
                }
+
+               /**
+                * @private
+                */
+               private var _resourceManager:ILocalizedValuesImpl;
+               /**
+                *  The Validator's resource manager to get translations from 
bundles   
+                *
+                *  @langversion 3.0
+                *  @playerversion Flash 10.2
+                *  @playerversion AIR 2.6
+                *  @productversion Royale 0.9.6
+                *  @royaleignorecoercion 
org.apache.royale.core.ILocalizedValuesImpl
+                */
+               public function get resourceManager():ILocalizedValuesImpl
+               {
+                       if (_resourceManager == null) {
+                               var c:Class = 
ValuesManager.valuesImpl.getValue(this, "iLocalizedValuesImpl");
+                               if (c) {
+                                       _resourceManager = new c() as 
ILocalizedValuesImpl;
+                                       _resourceManager.localeChain = locale;
+                                       addBead(_resourceManager);
+                               }
+                       }
+                       return _resourceManager;
+               }
+               /**
+                * @royaleignorecoercion 
org.apache.royale.core.ILocalizedValuesImpl
+                */
+               public function set 
resourceManager(value:ILocalizedValuesImpl):void
+               {
+                       _resourceManager = value;
+               }
+
                /**
                 *  Contains true if the field generated a validation failure.
                 *
@@ -225,7 +255,7 @@ package org.apache.royale.jewel.beads.validators
                        _required = value;
                }
 
-               private var _requiredFieldError:String = "NO TRANS";
+               private var _requiredFieldError:String;
                /**
                 *  The string to use as the errorTip.
                 *
@@ -236,6 +266,9 @@ package org.apache.royale.jewel.beads.validators
                 */
                public function get requiredFieldError():String
                {
+                       if(_requiredFieldError == null) {
+                               _requiredFieldError = 
resourceManager.getValue("validator", "requiredFieldError");
+                       }
                        return _requiredFieldError;
                }
                public function set requiredFieldError(value:String):void

Reply via email to