<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" 
    xmlns:subversion="com.dougmccune.subversion.*"
    layout="vertical" creationComplete="init()" width="400" height="600" viewSourceURL="srcview/index.html">
    
    <mx:Script>
        <![CDATA[
            import org.httpclient.Log;
            import com.dougmccune.subversion.events.SVNRevisionListEvent;
            import mx.controls.Alert;
            import com.dougmccune.subversion.events.SVNLatestRevisionNumberEvent;
            import com.dougmccune.subversion.SVNClient;
            
            private var svnClient:SVNClient;
            
            private function init():void {
                Log.level = Log.DEBUG;
                
                svnClient = new SVNClient();
                
                svnClient.addEventListener(SVNLatestRevisionNumberEvent.LATEST_REVISION_NUMBER_LOADED, showLatestRevision);
                svnClient.addEventListener(SVNRevisionListEvent.REVISIONS_LOADED, revisionsLoaded);
            }
            
            private function showLatestRevision(event:SVNLatestRevisionNumberEvent):void {
                Alert.show("Latest revision is: " + event.revisionNumber);
            }
            
            private function getLatestRev():void {
                svnClient.getLatestRevisionNumber(repoInput.text);
            }
            
            private function getLast50Revisions():void {
                svnClient.getLatestRevisions(repoInput.text, 50, true);
            }
            
            private function revisionsLoaded(event:SVNRevisionListEvent):void {
                var revisions:Array = event.revisions;
                
                grid.dataProvider = revisions;
                grid.visible = true;
            }
        ]]>
    </mx:Script>
    
    <mx:TextInput width="100%" id="repoInput" text="http://opensource.adobe.com/svn/opensource/flex" />    
    
    <mx:Button label="Get Latest Revision #" click="getLatestRev()" />
    
    <mx:Button label="Load last 50 revisions" click="getLast50Revisions()" />
    
    <mx:DataGrid id="grid" width="100%" height="100%" visible="false">
        <mx:columns>
            <mx:DataGridColumn dataField="revisionNumber" headerText="#" width="40" />
            <mx:DataGridColumn dataField="creatorName" />
            <mx:DataGridColumn dataField="date" />
            <mx:DataGridColumn dataField="comment" showDataTips="true" dataTipField="comment" />
        </mx:columns>
    </mx:DataGrid>
    
</mx:WindowedApplication>