| Package | spark.validators |
| Class | public class CurrencyValidator |
| Inheritance | CurrencyValidator NumberValidatorBase GlobalizationValidatorBase GlobalizationBase AdvancedStyleClient flash.events.EventDispatcher |
| Language Version : | ActionScript 3.0 |
| Product Version : | Flex 4.5 |
| Runtime Versions : | Flash Player 10.1, AIR 2.5 |
CurrencyValidator class ensures that a String represents
a valid currency amount according to the conventions of a locale.
This class uses the locale style for specifying the Locale ID.
The validator can ensure that a currency string falls within a given
range (specified by minValue and maxValue
properties), is an integer (specified by domain property),
is non-negative (specified by allowNegative property),
correctly specifies negative and positive numbers,
has the correct currency ISO code or currency symbol,
and does not exceed the specified number of fractionalDigits.
The validator sets default property values by making use of the
flash.globalization.CurrencyFormatter class and therefore the
locale specific values are supplied by the operating system.
The flash.globalization.CurrencyFormatter class uses the
underlying operating system to supply the locale specific data. In case
the operating system does not provide currency formatting, this class
provides fallback functionality.
Hide MXML SyntaxThe <s:CurrencyValidator> tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:CurrencyValidator
Properties
currencyISOCode="locale specified string or customized by user."
currencyStringError="Currency name is repeated or not correct."
currencySymbol="locale specified string or customized by user."
negativeCurrencyFormat="locale specified string or customized by user."
negativeCurrencyFormatError="The negative format of the input currency is incorrect."
positiveCurrencyFormat="locale specified string or customized by user."
positiveCurrencyFormatError="The positive format of the input currency is incorrect."
/>
See also
| Property | Defined By | ||
|---|---|---|---|
![]() | actualLocaleIDName : String [read-only]
The name of the actual locale ID used by this class object. | GlobalizationBase | |
![]() | allowNegative : Boolean
Specifies whether negative numbers are permitted. | NumberValidatorBase | |
![]() | className : String [read-only]
The name of the component class. | AdvancedStyleClient | |
| currencyISOCode : String
The three letter ISO 4217 currency code for the locale
being used. | CurrencyValidator | ||
| currencyStringError : String
Error message when the currency symbol or currency ISO code is repeated
or is in the incorrect location. | CurrencyValidator | ||
| currencySymbol : String
The currency symbol or string for the locale being used. | CurrencyValidator | ||
![]() | decimalPointCountError : String
Error message when the decimal separator character occurs more than
once. | NumberValidatorBase | |
![]() | decimalSeparator : String
The decimal separator character used for validating numbers that have
a decimal part. | NumberValidatorBase | |
![]() | digitsType : uint
Defines the set of digit characters to be used when
validating numbers. | NumberValidatorBase | |
![]() | domain : String
Type of number to be validated. | NumberValidatorBase | |
![]() | enabled : Boolean
Setting this value to false will stop the validator
from performing validation. | GlobalizationValidatorBase | |
![]() | fractionalDigits : int
The maximum number of digits that can appear after the decimal
separator. | NumberValidatorBase | |
![]() | fractionalDigitsError : String
Error message when fraction digits exceeds the value specified
by the fractionalDigits property. | NumberValidatorBase | |
![]() | greaterThanMaxError : String
Error message when the value exceeds the maxValue property. | NumberValidatorBase | |
![]() | groupingSeparator : String
The character or string used for the grouping separator. | NumberValidatorBase | |
![]() | id : String
The identity of the component. | AdvancedStyleClient | |
![]() | inheritingStyles : Object
An object containing the inheritable styles for this non-visual
style client instance. | AdvancedStyleClient | |
![]() | invalidCharError : String
Error message when the value contains invalid characters. | NumberValidatorBase | |
![]() | invalidFormatCharsError : String
Error message when the value contains invalid format characters, which
means that it contains a digit or minus sign (-) as a separator
character, or it contains two or more consecutive separator characters. | NumberValidatorBase | |
![]() | lastOperationStatus : String [override] [read-only]
The status of the most recent operation that this class object
performed. | NumberValidatorBase | |
![]() | lessThanMinError : String
Error message when the value is less than the minValue. | NumberValidatorBase | |
![]() | listener : Object
Specifies the validation listener. | GlobalizationValidatorBase | |
![]() | localeUndefinedError : String
Error message when the locale is undefined or is not available. | NumberValidatorBase | |
![]() | maxValue : Number
Maximum value for a valid number. | NumberValidatorBase | |
![]() | minValue : Number
Minimum value for a valid number. | NumberValidatorBase | |
![]() | moduleFactory : IFlexModuleFactory
A module factory is used as context for
finding the style manager that controls the styles for this
non-visual style client instance. | AdvancedStyleClient | |
| negativeCurrencyFormat : uint
A numeric value that indicates a validating pattern for negative
currency amounts. | CurrencyValidator | ||
| negativeCurrencyFormatError : String
Error message when the negative number format of the input currency
string is incorrect. | CurrencyValidator | ||
![]() | negativeError : String
Error message when the value is negative and the
allowNegative property is false. | NumberValidatorBase | |
![]() | negativeSymbol : String [read-only]
The negative symbol to be used when validating negative values. | NumberValidatorBase | |
![]() | negativeSymbolError : String
Error message when the negative symbol is repeated or is in wrong place. | NumberValidatorBase | |
![]() | nonInheritingStyles : Object
The beginning of this component's chain of non-inheriting styles. | AdvancedStyleClient | |
![]() | notAnIntegerError : String
Error message when the number must be an integer, as defined
by the domain property. | NumberValidatorBase | |
![]() | parseError : String
Error message when number could not be parsed. | NumberValidatorBase | |
| positiveCurrencyFormat : uint
A numeric value that indicates a validating pattern for positive
currency amounts. | CurrencyValidator | ||
| positiveCurrencyFormatError : String
Error message when the positive currency number format is incorrect. | CurrencyValidator | ||
![]() | property : String
A String specifying the name of the property
of the source object that contains
the value to validate. | GlobalizationValidatorBase | |
![]() | required : Boolean = true
If true, specifies that a missing or empty
value causes a validation error. | GlobalizationValidatorBase | |
![]() | requiredFieldError : String
Error message when a value is missing and the
required property is true. | GlobalizationValidatorBase | |
![]() | source : Object
Specifies the object containing the property to validate. | GlobalizationValidatorBase | |
![]() | styleDeclaration : CSSStyleDeclaration
The style declaration that holds the inline styles declared by this
object. | AdvancedStyleClient | |
![]() | styleManager : IStyleManager2 [read-only]
Returns the StyleManager instance used by this component. | AdvancedStyleClient | |
![]() | styleName : Object
The source of this object's style values. | AdvancedStyleClient | |
![]() | styleParent : IAdvancedStyleClient
A component's parent is used to evaluate descendant selectors. | AdvancedStyleClient | |
![]() | trigger : IEventDispatcher
Specifies the component generating the event that triggers the
validator. | GlobalizationValidatorBase | |
![]() | triggerEvent : String
Specifies the event that triggers the validation. | GlobalizationValidatorBase | |
| Method | Defined By | ||
|---|---|---|---|
Constructs a new CurrencyValidator object to validate
numbers representing currency amounts according to
the conventions of a given locale. | CurrencyValidator | ||
![]() | clearStyle(styleProp:String):void
Deletes a style property from this component instance. | AdvancedStyleClient | |
![]() | getClassStyleDeclarations():Array
Returns an Array of CSSStyleDeclaration objects for the type selector
that applies to this component, or null if none exist. | AdvancedStyleClient | |
![]() | getStyle(styleProp:String):* [override]
Gets a style property that has been set anywhere in this
component's style lookup chain. | GlobalizationBase | |
![]() | hasCSSState():Boolean
Returns true if currentCSSState is not null. | AdvancedStyleClient | |
![]() | initialized(document:Object, id:String):void
The initialized method is called when this class or a class that
extends this class is used in an MXML declaration. | AdvancedStyleClient | |
![]() | matchesCSSState(cssState:String):Boolean
Returns true if cssState matches currentCSSState. | AdvancedStyleClient | |
![]() | matchesCSSType(cssType:String):Boolean
Determines whether this instance is the same as, or is a subclass of,
the given type. | AdvancedStyleClient | |
![]() | notifyStyleChangeInChildren(styleProp:String, recursive:Boolean):void
Propagates style changes to the children of this style client
instance. | AdvancedStyleClient | |
![]() | regenerateStyleCache(recursive:Boolean):void
Sets up the internal style cache values so that the
getStyle()
method functions. | AdvancedStyleClient | |
![]() | registerEffects(effects:Array):void
Registers the EffectManager as one of the event listeners
for each effect event. | AdvancedStyleClient | |
![]() | setStyle(styleProp:String, newValue:*):void
Sets a style property on this component instance. | AdvancedStyleClient | |
![]() | styleChanged(styleProp:String):void
Detects changes to style properties. | AdvancedStyleClient | |
![]() | stylesInitialized():void
Flex calls the stylesInitialized() method when
the styles for a component are first initialized. | AdvancedStyleClient | |
![]() | validate(value:Object = null, suppressEvents:Boolean = false):ValidationResultEvent
Performs validation and optionally notifies
the listeners of the result. | GlobalizationValidatorBase | |
![]() | validateAll(validators:Array):Array [static]
Invokes all the validators in the validators Array. | GlobalizationValidatorBase | |
validateCurrency(value:Object, baseField:String):Array
Convenience method for calling a validator
from within a custom validation function. | CurrencyValidator | ||
| currencyISOCode | property |
currencyISOCode:String| Language Version : | ActionScript 3.0 |
| Product Version : | Flex 4.5 |
| Runtime Versions : | Flash Player 10.1, AIR 2.5 |
The three letter ISO 4217 currency code for the locale being used.
This property is used to validate the currency string or symbol
present in the input currency amounts using the validate()
method.
This property is initialized by the constructor based on the actual locale that is used. When a fallback locale is used this property reflects the preferred, default currency code for the fallback locale.
The default value is dependent on the actual locale and
operating system.
This property can be used as the source for data binding.
public function get currencyISOCode():String public function set currencyISOCode(value:String):voidSee also
| currencyStringError | property |
currencyStringError:String| Language Version : | ActionScript 3.0 |
| Product Version : | Flex 4.5 |
| Runtime Versions : | Flash Player 10.1, AIR 2.5 |
Error message when the currency symbol or currency ISO code is repeated or is in the incorrect location.
The default value is "Currency name is repeated or not correct.".
This property can be used as the source for data binding.
public function get currencyStringError():String public function set currencyStringError(value:String):void| currencySymbol | property |
currencySymbol:String| Language Version : | ActionScript 3.0 |
| Product Version : | Flex 4.5 |
| Runtime Versions : | Flash Player 10.1, AIR 2.5 |
The currency symbol or string for the locale being used.
This property is used as the currency symbol when validating
currency amounts using the validate() method.The
currency symbol or currency name in the validation string,
must match either the value of the currencySymbol property
or the value of the currencyISOCode property.
This property is initialized by the constructor based on the actual locale that is used. When a fallback locale is used this property reflects the preferred, default currency symbol for the fallback locale.
The default value is dependent on the actual locale and
operating system.
This property can be used as the source for data binding.
public function get currencySymbol():String public function set currencySymbol(value:String):voidSee also
| negativeCurrencyFormat | property |
negativeCurrencyFormat:uint| Language Version : | ActionScript 3.0 |
| Product Version : | Flex 4.5 |
| Runtime Versions : | Flash Player 10.1, AIR 2.5 |
A numeric value that indicates a validating pattern for negative currency amounts. This property defines the location of the currency symbol and the negative symbol or parentheses in relation to the numeric portion of the currency amount. This property is used to validate whether or not the input currency string follows this pattern for negative amounts.
The value of this property must be one of the constants defined in the table below.
| Negative currency format type | Formatting pattern |
| 0 | (¤n) |
| 1 | -¤n |
| 2 | ¤-n |
| 3 | ¤n- |
| 4 | (n¤) |
| 5 | -n¤ |
| 6 | n-¤ |
| 7 | n¤- |
| 8 | -n ¤ |
| 9 | -¤ n |
| 10 | n ¤- |
| 11 | ¤ n- |
| 12 | ¤ -n |
| 13 | n- ¤ |
| 14 | (¤ n) |
| 15 | (n ¤) |
The default value is dependent on the actual locale and operating system.
This property can be used as the source for data binding.
public function get negativeCurrencyFormat():uint public function set negativeCurrencyFormat(value:uint):voidArgumentError — if the assigned value is not between 0 and 15.
|
See also
| negativeCurrencyFormatError | property |
negativeCurrencyFormatError:String| Language Version : | ActionScript 3.0 |
| Product Version : | Flex 4.5 |
| Runtime Versions : | Flash Player 10.1, AIR 2.5 |
Error message when the negative number format of the input currency string is incorrect.
The default value is "The negative format of the input currency is incorrect.".
This property can be used as the source for data binding.
public function get negativeCurrencyFormatError():String public function set negativeCurrencyFormatError(value:String):void| positiveCurrencyFormat | property |
positiveCurrencyFormat:uint| Language Version : | ActionScript 3.0 |
| Product Version : | Flex 4.5 |
| Runtime Versions : | Flash Player 10.1, AIR 2.5 |
A numeric value that indicates a validating pattern for positive currency amounts. This property defines the location of currency symbol relative to the numeric portion of the currency amount. This property is used to validate if the input currency string follows this pattern for positive amounts.
The value of this property must be one of the constants defined in the table below.
currencyISOCode or the currencySymbol
in the currency string.currencyISOCode or the currencySymbol
in the currency string.| Positive currency format type | Formatting pattern |
| 0 | ¤n |
| 1 | n¤ |
| 2 | ¤ n |
| 3 | n ¤ |
The default value is dependent on the actual locale and operating system.
This property can be used as the source for data binding.
public function get positiveCurrencyFormat():uint public function set positiveCurrencyFormat(value:uint):voidArgumentError — if the assigned value is not between 0 and 3.
|
See also
| positiveCurrencyFormatError | property |
positiveCurrencyFormatError:String| Language Version : | ActionScript 3.0 |
| Product Version : | Flex 4.5 |
| Runtime Versions : | Flash Player 10.1, AIR 2.5 |
Error message when the positive currency number format is incorrect.
The default value is "The positive format of the input currency is incorrect.".
This property can be used as the source for data binding.
public function get positiveCurrencyFormatError():String public function set positiveCurrencyFormatError(value:String):void| CurrencyValidator | () | Constructor |
public function CurrencyValidator()| Language Version : | ActionScript 3.0 |
| Product Version : | Flex 4.5 |
| Runtime Versions : | Flash Player 10.1, AIR 2.5 |
Constructs a new CurrencyValidator object to validate
numbers representing currency amounts according to
the conventions of a given locale.
The locale for this class is supplied by the locale
style property.
The locale style can be set in several ways:
UIComponent by calling the
UIComponent's addStyleClient method.
<fx:Declarations>
<s:CurrencyValidator id="cv" />
</fx:Declarations>
<fx:Declarations>
<s:CurrencyValidator id="cv_turkish" locale="tr-TR" />
</fx:Declarations>
cv.setStyle("locale", "tr-TR")
If the locale style is not set by one of the above
techniques, the instance of this class will be added as a
StyleClient to the topLevelApplication and
will therefore inherit the locale style from the
topLevelApplication object when the locale
dependent property getter or locale dependent method is
called.
The properties related to the currency string format are set to default values based on the locale.
NOTE: When a fallback locale is used, the currency
properties are set to default values of en_US locale,
and therefore might not match the currency for which the validation is
intended.
It is a good idea to
examine the currencySymbol and currencyISOCode
property values before validating a currency amount.
See also
| validateCurrency | () | method |
public function validateCurrency(value:Object, baseField:String):Array| Language Version : | ActionScript 3.0 |
| Product Version : | Flex 4.5 |
| Runtime Versions : | Flash Player 10.1, AIR 2.5 |
Convenience method for calling a validator
from within a custom validation function.
Each of the standard Flex validators has a similar convenience method.
Caller must check the ValidationResult objects in the
returned array for validation status.
Parameters
value:Object — A currency number string to validate.The number string can
use unicode minus symbols 0x2212, 0xFE63, 0xFF0D besides ascii minus.
| |
baseField:String — Text representation of the subfield
specified in the value parameter.
For example, if the value parameter specifies value.number,
the baseField value is "number".
|
Array — An Array of ValidationResult objects, with
one ValidationResult object for each field examined by
the validator.
|
See also
<?xml version="1.0" encoding="utf-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Sample program for spark.formatters.NumberValidator -->
<s:Application
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Declarations>
<s:CurrencyValidator id="currencyValidator" source='{inputNumber}'
property="text" trigger='{validateBtn}'
triggerEvent="click" />
<s:CurrencyFormatter id="currencyFormatter" useCurrencySymbol="true"
useGrouping="true"/>
</fx:Declarations>
<fx:Script>
<![CDATA[
[Bindable]
private var number:Number = 123456789.12;
]]>
</fx:Script>
<mx:Form>
<mx:FormItem label="Input Locale ID Name">
<mx:HBox>
<s:TextInput id="inputLocaleIDName" text="en-US"/>
<!-- Upon button click, sets the locale style on the document
UI component. The formatter will inherit this style. -->
<s:Button click="setStyle('locale', inputLocaleIDName.text);"
label="Apply"/>
</mx:HBox>
<mx:Text text="Example: 'en-US', 'fr-FR', 'ja-JP', 'ar-SA'"/>
</mx:FormItem>
<mx:FormItem label="Allow Negative">
<mx:CheckBox id="alowNegative" selected="true"
change="currencyValidator.allowNegative = alowNegative.selected"/>
</mx:FormItem>
<mx:FormItem label="Fractional Digits">
<mx:TextInput id="fractionalDigits" text='{currencyValidator.fractionalDigits}'
change="currencyFormatter.fractionalDigits =
currencyValidator.fractionalDigits = Number(fractionalDigits.text)"/>
</mx:FormItem>
<mx:FormItem label="Currency Symbol">
<mx:TextInput id="currencySymbol" text='{currencyValidator.currencySymbol}'
change="currencyFormatter.currencySymbol =
currencyValidator.currencySymbol = currencySymbol.text"/>
</mx:FormItem>
<mx:FormItem label="Actual Locale ID Name">
<mx:Text text="{currencyValidator.actualLocaleIDName}"/>
</mx:FormItem>
<mx:FormItem label="Enter currency amount" >
<mx:HBox>
<mx:TextInput id="inputNumber" />
<mx:Button id="validateBtn" label="Validate" />
</mx:HBox>
</mx:FormItem>
<mx:FormItem label="Example currency">
<mx:Text text="{currencyFormatter.format(123456789.12)}"/>
</mx:FormItem>
</mx:Form>
</s:Application>