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

-->
<s:SparkSkin xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:mx="library://ns.adobe.com/flex/mx" 
    xmlns:s="library://ns.adobe.com/flex/spark" 
	xmlns:skins="skins.*"
	creationComplete="initTitleSkin()">
    
    <!-- Properties of the parent ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    
    <s:states>
        
        <s:State name="normal" />
        <s:State name="disabled" />
		<s:State name="normalWithControlBar" />
		<s:State name="disabledWithControlBar" />
        
    </s:states>
    
    <!-- Metadata ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    
    <fx:Metadata>
        
        [HostComponent("components.EmployeePortalPanel")]
        
    </fx:Metadata>
    
    <!-- Styles ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    
    
    
    <!-- Script ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    
    <fx:Script>
		<![CDATA[
			
			private function initTitleSkin():void
			{
				headerSkinColor.color = hostComponent.panelTitleColor;
			}
			
		]]>
	</fx:Script>
    
    <!-- Declarations ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    
	<fx:Declarations>
		
	</fx:Declarations>
    
    <!-- UI components ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->	
    
	<s:Rect radiusX="12" radiusY="12"
        	height="100%" width="100%" >
       	
        <s:fill>
			<s:SolidColor id="panelSkin" 
						   color="#E8E8E8"/>
		</s:fill>
        
    </s:Rect>
	
	<skins:PanelSkin rotation="90"
					 top="0" bottom="0" right="0"/>
	
	<s:Rect height="23" width="23"
			right="0">
		
		<s:fill>
			<s:SolidColor id="headerSkinColor"/>
		</s:fill>
		
	</s:Rect>
	
	<s:Label id="titleDisplay" 
			 lineBreak="explicit"
			 right="8" 
			 top="35"
			 height="30"
	         fontWeight="bold"
			 color="#FFFFFF"
			 rotation="90"/>
	

	<s:Group id="contentGroup"
			 width="100%" height="100%">
        
	</s:Group>        
	
</s:SparkSkin>
