<?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.

-->
<!-- Simple example to demonstrate the Spark NumericStepper control -->
<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">

    <!-- Panel used as a container for Spark NumericStepper control examples -->
    <s:Panel title="Spark NumericStepper Control Example"
            width="75%" height="75%"
            horizontalCenter="0" verticalCenter="0">
        <s:VGroup left="10" right="10" top="10" bottom="10">
            <s:Label width="100%" text="Spark NumericStepper control with minimum=0, maximum=10, stepSize=1.5 and allowValueWrap=true"/>
            <s:Label width="100%" text="Value increments and decrements in multiples of 1.5 and wraps around."/>
            <s:Label width="100%" text="NOTE: snapInterval must be set to the same value as stepSize or the NumericStepper value will be rounded."/>

            <!-- Spark NumericStepper Control -->
            <s:NumericStepper id="myNS" width="55" value="1.5" stepSize="1.5" 
                    snapInterval="1.5" allowValueWrap="true"/>

            <!-- Label that displays the current value of the Spark NumericStepper -->
            <s:Label color="purple" text="Current value = {myNS.value}"/>
        </s:VGroup>
    </s:Panel>

</s:Application>
