<?xml version="1.0" encoding="utf-8"?>
<mx:Application 
    xmlns:mx="http://www.adobe.com/2006/mxml"
    xmlns:control="com.wowserverstatus.control.*"
    xmlns:business="com.wowserverstatus.business.*"
    xmlns:view="com.wowserverstatus.view.*"
    layout="absolute"
    creationComplete="onCreationComplete();"
     backgroundGradientColors="[#000000, #000000]" 
     backgroundGradientAlphas="[1.0, 1.0]" 
     cornerRadius="0" viewSourceURL="srcview/index.html">

    <mx:Script>
        <![CDATA[
        import com.adobe.cairngorm.CairngormMessageCodes;
        import com.adobe.cairngorm.control.CairngormEventDispatcher;
        import com.adobe.cairngorm.control.CairngormEvent;
        import com.wowserverstatus.control.ServerStatusController;
        import com.wowserverstatus.event.*;
        import com.wowserverstatus.model.ServerStatusModelLocator;
        import com.wowserverstatus.util.ChartingDataLocator;
        
        [Bindable]
        public var model : ServerStatusModelLocator = ServerStatusModelLocator.getInstance();
        
        private function onCreationComplete() : void
        {
            CairngormEventDispatcher.getInstance().dispatchEvent( new CairngormEvent( GetServerStatusEvent.EVENT_GET_SERVER_STATUS ) );

            serverStatSelectCanvas.addEventListener(ViewClassByFactionEvent.EVENT_VIEW_CLASS_BY_FACTION, viewClassByFaction);
            serverStatSelectCanvas.addEventListener(ViewClassByLevelEvent.EVENT_VIEW_CLASS_BY_LEVEL, viewClassByLevel);
            serverStatSelectCanvas.addEventListener(ViewRaceByClassEvent.EVENT_VIEW_RACE_BY_CLASS, viewRaceByClass);
            
            //Loading is finished, set the current state to be serverStatSelectCanvas
            currentState = "viewStatOptions"
        }
        
        public function viewClassByFaction( evt : Event ) : void
        {
            ChartingDataLocator.getInstance().initClassByFactionArrays();
            statisticsShowPanel.showClassByFaction();
            currentState="viewStatResults";
        }
        
        public function viewClassByLevel( evt : Event ) : void
        {
            ChartingDataLocator.getInstance().initClassByLevelArrays();
            statisticsShowPanel.showClassByLevel();
            currentState="viewStatResults";
        }
        
        public function viewRaceByClass( evt : Event ) : void
        {
            ChartingDataLocator.getInstance().initRaceByClassArrays();
            statisticsShowPanel.showRaceByClass();
            currentState="viewStatResults";    
        }
                
        ]]>
    </mx:Script>
    
    <mx:Style>
        ScrollBar
        {
            track-colors: #000000, #000000;
            fill-colors: #333333, #000000;
            border-color: #000000;
            theme-color: #0000ff;
            corner-radius: 0;
        }
        PieChart
        {
            fontSize:12;
              fontWeight:bold;
              fontFamily:VerdanaFont;
        }
        HBox
        {
            fontFamily:accordionHeader;
        }
        VBox
        {
            fontFamily:accordionHeader;
        }
        @font-face 
        {
            src:url("/assets/Florsn30.ttf");
            fontWeight: bold;
            fontFamily: accordionHeader;
        }                
    </mx:Style>
    
    <!-- the FrontController, containing Commands specific to this appliation -->
    <control:ServerStatusController id="controller" />
    
    <mx:states>
        <mx:State name="viewStatOptions">
            <mx:SetProperty target="{serverStatSelectCanvas}" name="visible" value="true" />
            <mx:SetProperty target="{statisticsShowPanel}"       name="visible" value="false" />
        </mx:State>
        <mx:State name="viewStatResults">            
            <mx:SetProperty target="{serverStatSelectCanvas}" name="visible" value="false" />
            <mx:SetProperty target="{statisticsShowPanel}"       name="visible" value="true" />
        </mx:State>
    </mx:states>
        
    <view:StatisticsSelectCanvas width="900" height="750" x="0" y="0" id="serverStatSelectCanvas" visible="false" />
            
    <view:StatisticsShowCanvas width="900" height="750" x="0" y="0" id="statisticsShowPanel" visible="false" />
                        
    <mx:Image source="assets/WoWStatus_Bottom_Bar.png" x="-29.5" y="10" />

    <mx:Image source="assets/WoWStatus_Top_Bar.png" x="-29.5" y="600"/>

    <mx:Label text="Census data provided by WarcraftRealms.com" x="570" y="755" color="#d5d5d5"  alpha="0.0"/>

    <mx:Button x="20" y="100" label="Home" fontFamily="accordionHeader" fontWeight="bold" fontSize="14" click="currentState='viewStatOptions'" />
        
</mx:Application>