<?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 track of a Spark VSlider component.  

@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">
	
	<fx:Metadata>
		<![CDATA[ 
		/** 
		* @copy spark.skins.spark.ApplicationSkin#hostComponent
		*/
		[HostComponent("spark.components.Button")]
		]]>
	</fx:Metadata> 
    
    <s:states>
        <s:State name="up" />
        <s:State name="down" />
        <s:State name="over" />
        <s:State name="disabled" />
    </s:states>

    <!-- skin -->
    <mx:Image top="0" left="0" bottom="0" right="0" maintainAspectRatio="false" rotation="90"
    	source.up="@Embed(source='/assets/flex_skins.swf', symbol='SliderTrack_Skin')"
    	source.over="@Embed(source='/assets/flex_skins.swf', symbol='SliderTrack_Skin')"
    	source.down="@Embed(source='/assets/flex_skins.swf', symbol='SliderTrack_Skin')"
    	source.disabled="@Embed(source='/assets/flex_skins.swf', symbol='SliderTrack_Skin')"
    />

    
    <!-- hit area -->
	<s:Rect left="0" right="0" top="0" bottom="0">
		<s:fill>
			<s:SolidColor alpha="0"/>
		</s:fill>
	</s:Rect>
</s:Skin>
