<?xml version="1.0"?>
<!--
  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 Fade effect. -->
<mx:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx"
				paddingBottom="0" paddingTop="0" paddingLeft="0" paddingRight="0"
				height="100%" width="100%">
	
	<fx:Style>
	     @font-face {
	        src:url("./assets/OpenSans-Regular.ttf");
	        fontFamily: OpenSans;
			embedAsCFF: false;
	     }    
	</fx:Style>
    
	<fx:Declarations>
    	<mx:Fade id="fadeOut" duration="1000" alphaFrom="1.0" alphaTo="0.0"/>
    	<mx:Fade id="fadeIn" duration="1000" alphaFrom="0.0" alphaTo="1.0"/>
	</fx:Declarations>

    <mx:Panel title="Fade Effect Example"
				paddingBottom="10" paddingTop="10" paddingLeft="10" paddingRight="10"
				height="100%" width="100%">

        <mx:Text width="100%" 
            text="Use the Fade effect to show or hide the text and image. Use an embedded font when applying the Fade effect to text."/>

        <mx:Label text="Apache Flex"  
            fontFamily="OpenSans" fontSize="14"
            visible="{cb1.selected}"
            hideEffect="{fadeOut}" showEffect="{fadeIn}"/>
            
        <mx:Image source="@Embed(source='assets/ApacheFlexLogo.png')" 
			width="50%" height="50%"
            visible="{cb1.selected}"
            hideEffect="{fadeOut}" showEffect="{fadeIn}"/>
            
        <mx:CheckBox id="cb1" label="visible" selected="true"/>

    </mx:Panel>
</mx:Application>
