<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:svg="com.zavoo.svg.*" backgroundGradientColors="[#cccccc, #cccccc]" viewSourceURL="srcview/index.html">

    <mx:Script>
        <![CDATA[
            import popups.Loading;
            import mx.managers.PopUpManager;
            
            private var urlLoader:URLLoader;
            
            //Popup dialog displayed when fetching SVG files
            private var loading:Loading = new Loading();
                        
            private function loadSVG(url:String):void {
                
                //Show loading popup
                showLoading();
                
                if (urlLoader != null) {
                    urlLoader.close();
                }
                
                //Load SVG File
                urlLoader = new URLLoader(new URLRequest(url));
                urlLoader.addEventListener(Event.COMPLETE, onSVGLoad);    
            }
            
            private function onSVGLoad(event:Event):void {
                var loader:URLLoader = URLLoader(event.target);
                
                //Load XML data into the SVGViewer
                svgViewer.xml = new XML(loader.data);
                
                //Update SVG scale to match slider
                onZoom();
                
                //Hide loading popup
                hideLoading();
            }
            
            private function onZoom():void {
                svgViewer.scale = hsZoom.value;
            }
            
            private function showLoading():void {
                PopUpManager.addPopUp(loading, this, true);
                PopUpManager.centerPopUp(loading);
            }
            
            private function hideLoading():void {
                PopUpManager.removePopUp(loading);
            }
            
        ]]>
    </mx:Script>
    
    <mx:VBox paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10" verticalGap="10" height="100%" width="100%">
        <mx:HBox>
            <mx:Button label="Load -Elliptical Arcs" click="loadSVG('assets/arcs02.svg')"/>
            <mx:Button label="Load - Spring Tree" click="loadSVG('assets/spring_tree_final.svg')"/>
            <mx:Button label="Load - Eleven Below" click="loadSVG('assets/eleven_below_single.svg')"/>
            <mx:Label text="Zoom:" fontWeight="bold"/>
            <mx:HSlider width="350" minimum="0.1" maximum="10" snapInterval="0.1" value="1" id="hsZoom" change="onZoom()"/>
        </mx:HBox>        
        <svg:SVGViewer id="svgViewer"/>            
    </mx:VBox>
</mx:Application>