<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/halo"
               creationComplete="{init()}" width="500" height="100" viewSourceURL="srcview/index.html">
    <fx:Script>
        <![CDATA[
            [Bindable]private var bigImageHandler:BigImagehandler;
            
            public function init():void
            {
                bigImageHandler = new BigImagehandler( 1500 );
                bigImageHandler.addEventListener(Event.CANCEL, userFail);
                bigImageHandler.addEventListener(Event.COMPLETE, userSuccess);
                bigImageHandler.addEventListener(Event.CLOSE, userCancel);
            }
            public function userCancel(e:Event):void
            {
                debug.text ="The user pressed Cancel";
            }
            public function userSuccess(e:Event):void
            {
                debug.text ="The image was scaled to "+bigImageHandler.image.width+" width and "+bigImageHandler.image.height+" height.";
            }
            public function userFail(e:Event):void
            {
                debug.text ="The selected image was too big. Alert the user in some clever way.";
            }
        ]]>
    </fx:Script>
    <s:VGroup width="100%" height="100%">
        <s:Button click="{ bigImageHandler.getimage(); debug.text = ''; }"  label="Get the Image"/>
        <s:TextArea id="debug"  width="100%" height="100%"/>
    </s:VGroup>
</s:Application>