<?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:View xmlns:fx="http://ns.adobe.com/mxml/2009" 
		xmlns:s="library://ns.adobe.com/flex/spark"
		title="Hello World" viewActivate="view1_viewActivateHandler(event)">
	
	<fx:Script>
		<![CDATA[
			import spark.effects.Move3D;
			import spark.effects.easing.EaseInOutBase;
			import spark.events.ViewNavigatorEvent;
			
			protected function view1_viewActivateHandler(event:ViewNavigatorEvent):void
			{
				lbl.visible=true;
				trace("Screen resolution:" + Capabilities.screenResolutionX);
			}
		]]>
	</fx:Script>
	
	<fx:Declarations>
		<s:DropShadowFilter id="df"/>
	</fx:Declarations>

	<s:navigationContent>
		<s:Button label="Home" height="100" click="navigator.popToFirstView()"/>
	</s:navigationContent>
	<s:actionContent>
		<s:Button id="btn" height="100" label="Back" click="navigator.pushView(data as Class)"/>
	</s:actionContent>
	<s:Label id="lbl" top="270" horizontalCenter="0" color="#FD5ABE" fontSize="50" fontWeight="bold" text="Hello World!" depth="1"/>
	
	<s:Group width="200" horizontalCenter="0" height="200" top="100" filters="{[df]}" >
		<s:Rect width="400" height="400" horizontalCenter="0" depth="0">
			<s:filters>
				<s:DropShadowFilter color="0x000000" blurX="10" blurY="10"/>
			</s:filters>
			<s:fill>
				<s:SolidColor color="0xac66d8" alpha=".4"/>
			</s:fill>
		</s:Rect>
	</s:Group>
</s:View>
