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

-->


<!--- The default skin class for the Spark HSlider component. The thumb and track skins are defined by the
HSliderThumbSkin and HSliderTrackSkin classes, respectively.  

@langversion 3.0
@playerversion Flash 10
@playerversion AIR 1.5
@productversion Flex 4
-->
<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx"
			 xmlns:fb="http://ns.adobe.com/flashbuilder/2009" minHeight="11" alpha.disabled="0.5">
	
	<fx:Metadata>
		<![CDATA[ 
		/** 
		* @copy spark.skins.spark.ApplicationSkin#hostComponent
		*/
		[HostComponent("spark.components.HSlider")]
		]]>
	</fx:Metadata> 
    
    
    <s:states>
    	<s:State name="normal" />
    	<s:State name="disabled" />
    </s:states>
    
    <fx:Declarations>
	<!--- Defines the appearance of the the Slider's DataTip. To customize the DataTip's appearance, create a custom HSliderSkin class. -->
        <fx:Component id="dataTip">    	
			<s:DataRenderer minHeight="24" y="-34">	
				<mx:Image left="0" top="0" right="0" bottom="0" maintainAspectRatio="false"
						  source= "@Embed(source='/assets/flex_skins.swf', symbol='ToolTip_borderSkin')"/>
				
				<s:Label id="labelDisplay" text="{data}"
						 horizontalCenter="0" verticalCenter="1"
						 left="5" right="5" top="5" bottom="5"
						 textAlign="center" verticalAlign="middle"
						 fontWeight="normal" color="0x4C2600" fontSize="11">
				</s:Label>
			</s:DataRenderer>
	   </fx:Component>
	</fx:Declarations>
    
    <!--- Defines the skin class for the HSliderSkin's track. The default skin class is HSliderTrackSkin. -->
    <!-- using a graphical skin, need to increase constraints top and bottom so track does not scale to the bounding height of the thumb -->
    <s:Button id="track" left="0" right="0" top="4" bottom="4"
    		skinClass="zen.skins.HSliderTrackSkin"/>
    <!--- Defines the skin class for the HSliderSkin's thumb. The default skin class is HSliderThumbSkin. -->
    <s:Button id="thumb" top="0" bottom="0" width="11" height="11" 
             skinClass="zen.skins.HSliderThumbSkin"/>
</s:Skin>
