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

-->
<mx:Application backgroundColor="0xFFFFFF"  height="555" width="500" xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*"
    xmlns:comps="comps.*"  >
<mx:Script>
<![CDATA[

        [Embed(source="../../../../Assets/Images/yellowrect.jpg")]
        public var blueback:Class;
]]>
</mx:Script>
<mx:Style source="Assets/myStyles.css" />

<mx:Style>
	@namespace "library://ns.adobe.com/flex/mx";
    .myStyle {
        paddingTop: 10;
    }
    .myBackground {
        backgroundColor: #CCDD22;
    }
    .disabledOverlayAlphaStyle {
        disabledOverlayAlpha: 0.8;
        backgroundDisabledColor: #FF0000;
    }
    .myDisabledColor {
	    backgroundDisabledColor: #00CC99;
    }
   .dropShadowColorStyle {
        dropShadowEnabled: true;
        dropShadowColor: #FF0000;
   }

   .redStyle {
       color: #FF0000;
   }
</mx:Style>
    <mx:Style>
	    @namespace "library://ns.adobe.com/flex/mx";
		@font-face {
			src: url("../../../../Assets/Fonts/Open_Sans/OpenSans-Regular.ttf");
			fontFamily: EmbeddedArial;
			embedAsCFF: false;
		}

		@font-face {
			src: url("../../../../Assets/Fonts/Open_Sans/OpenSans-Bold.ttf");
			fontWeight: bold;
			fontFamily: EmbeddedArial;
			embedAsCFF: false;
		}

		@font-face {
			src: url("../../../../Assets/Fonts/Open_Sans/OpenSans-Italic.ttf");
			fontStyle: italic;
			fontFamily: EmbeddedArial;
			embedAsCFF: false;
		}

		@font-face {
			src: url("../../../../Assets/Fonts/Open_Sans/OpenSans-Regular.ttf");
			fontFamily: EmbeddedVerdana;
			embedAsCFF: false;
		}

		@font-face {
			src: url("../../../../Assets/Fonts/Open_Sans/OpenSans-Bold.ttf");
			fontWeight: bold;
			fontFamily: EmbeddedVerdana;
			embedAsCFF: false;
		}

		@font-face {
			src: url("../../../../Assets/Fonts/Open_Sans/OpenSans-Italic.ttf");
			fontStyle: italic;
			fontFamily: EmbeddedVerdana;
			embedAsCFF: false;
		}
		
        TabNavigator{
            fontFamily: EmbeddedVerdana;
            fontAntiAliasType: normal;
        }
    </mx:Style>
	<mx:Canvas id="canvas1" width="250" height="120">
        <TNComp2 id="tabnav_1" />
    </mx:Canvas>

    <mx:TextInput />

<mx:HBox>
    <comps:CustomTabNav id="tabnav_2">
        <mx:Box label="First View" width="180" height="70" />
        <mx:Box label="Second View" width="180" height="70" />
        <mx:Box label="Third View" width="180" height="70" />
    </comps:CustomTabNav>

    <comps:CustomTabNav2 id="tabnav_3">
        <mx:Box label="First View" width="180" height="70" />
        <mx:Box label="Second View" width="180" height="70" />
        <mx:Box label="Third View" width="180" height="70" />
    </comps:CustomTabNav2>
</mx:HBox>
     <comps:CustomTabNav3 id="tabnav_4">
         <mx:Box label="First View" width="180" height="70" />
         <mx:Box label="Second View" width="180" height="70" />
         <mx:Box label="Third View" width="180" height="70" />
    </comps:CustomTabNav3>
</mx:Application>
