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
