<?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.NumberFormatter -->
<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:NumberFormatter id="numberFormatter"/>
    </fx:Declarations>
    
    <s:Form>
        <s:FormItem label="Input Locale ID Name">
            <s:HGroup>
                <s:TextInput id="inputLocaleIDName"/>
                <!-- 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"/>
            </s:HGroup>
            <s:Label text="Example: 'en-US', 'fr-FR', 'ja-JP', 'ar-SA'"/>
        </s:FormItem>
        <s:FormItem label="Input Number">
            <s:TextInput id="inputNumber"/>
            <s:Label text="Example: {numberFormatter.format(123456789.123)}"/>
        </s:FormItem>
        <s:FormItem label="Actual Locale ID Name">
            <s:Label text="{numberFormatter.actualLocaleIDName}"/>
        </s:FormItem>
        <s:FormItem label="Parsed Result">
            <s:Label
                text="{numberFormatter.parseNumber(inputNumber.text).toString()}"/>
        </s:FormItem>
    </s:Form>
</s:Application>
