How to use Flex Script in Flash CS4

Hi All,

I have Flash CS4 and I have found this Flex Script, I can understand and easily read this Flex Script, however, I pulled all the actionscript out of it and I created the relevant Components it uses and tried using it in Flash.

It just wont work for me,

Has an got any idea how to get this working in the Flash IDE?

Thanks in advance.

[COLOR=#666600]<?[/COLOR]xml version[COLOR=#666600]=[/COLOR][COLOR=#008800]"1.0"[/COLOR] encoding[COLOR=#666600]=[/COLOR][COLOR=#008800]"utf-8"[/COLOR][COLOR=#666600]?>[/COLOR]
[COLOR=#880000]<!--
[/COLOR][COLOR=#880000] Copyright 2008 Google Inc. 
[/COLOR][COLOR=#880000] Licensed under the Apache License, Version 2.0:
[/COLOR][COLOR=#880000]    http://www.apache.org/licenses/LICENSE-2.0
[/COLOR][COLOR=#880000]-->[/COLOR]
[COLOR=#666600]<[/COLOR][COLOR=#000088]mx:Application[/COLOR] [COLOR=#660066]xmlns:mx[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"http://www.adobe.com/2006/mxml"[/COLOR] [COLOR=#660066]xmlns:maps[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"com.google.maps.*"[/COLOR] [COLOR=#660066]layout[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"absolute"[/COLOR] [COLOR=#660066]width[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR] [COLOR=#660066]height[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR][COLOR=#666600]>[/COLOR]
[COLOR=#666600]<[/COLOR][COLOR=#000088]mx:Panel[/COLOR] [COLOR=#660066]title[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"Google Maps API for Flash - DirectionsAdvanced"[/COLOR] [COLOR=#660066]width[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR] [COLOR=#660066]height[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR][COLOR=#666600]>[/COLOR]
  [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:VBox[/COLOR] [COLOR=#660066]width[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR] [COLOR=#660066]height[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"150"[/COLOR][COLOR=#666600]>[/COLOR]
    [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:HBox[/COLOR][COLOR=#666600]>[/COLOR]
      [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:Label[/COLOR] [COLOR=#660066]text[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"From: "[/COLOR] [COLOR=#660066]width[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"70"[/COLOR][COLOR=#666600]/>[/COLOR]
      [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:TextInput[/COLOR] [COLOR=#660066]id[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"from"[/COLOR] [COLOR=#660066]text[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"Boston, MA"[/COLOR] [COLOR=#660066]width[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR][COLOR=#666600]/>[/COLOR]
    [COLOR=#666600]</[/COLOR][COLOR=#000088]mx:HBox[/COLOR][COLOR=#666600]>[/COLOR]
    [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:HBox[/COLOR][COLOR=#666600]>[/COLOR]
      [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:Label[/COLOR] [COLOR=#660066]text[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"To: "[/COLOR] [COLOR=#660066]width[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"70"[/COLOR][COLOR=#666600]/>[/COLOR]
      [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:TextInput[/COLOR] [COLOR=#660066]id[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"to"[/COLOR] [COLOR=#660066]text[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"New York, NY"[/COLOR] [COLOR=#660066]width[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR][COLOR=#666600]/>[/COLOR]
    [COLOR=#666600]</[/COLOR][COLOR=#000088]mx:HBox[/COLOR][COLOR=#666600]>[/COLOR]
    [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:Button[/COLOR] [COLOR=#660066]id[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"getDirections"[/COLOR] [COLOR=#660066]label[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"Get Directions"[/COLOR] [COLOR=#660066]click[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"processDirections(event);"[/COLOR][COLOR=#666600]/>[/COLOR]
    [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:Button[/COLOR] [COLOR=#660066]id[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"getTurnByTurnDirections"[/COLOR] [COLOR=#660066]label[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"Get Next Step"[/COLOR] [COLOR=#660066]click[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"processTurnByTurn();"[/COLOR] [COLOR=#660066]enabled[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"false"[/COLOR][COLOR=#666600]/>[/COLOR]
    [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:Text[/COLOR] [COLOR=#660066]id[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"step"[/COLOR] [COLOR=#660066]htmlText[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]""[/COLOR] [COLOR=#660066]width[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR][COLOR=#666600]/>[/COLOR]
  [COLOR=#666600]</[/COLOR][COLOR=#000088]mx:VBox[/COLOR][COLOR=#666600]>[/COLOR]
   [COLOR=#666600]<[/COLOR][COLOR=#000088]maps:Map[/COLOR] 
    [COLOR=#660066]id[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"map"[/COLOR] 
    [COLOR=#660066]key[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"ABQIAAAA7QUChpcnvnmXxsjC7s1fCxQGj0PqsCtxKvarsoS-iqLdqZSKfxTd7Xf-2rEc_PC9o8IsJde80Wnj4g"[/COLOR] 
    [COLOR=#660066]mapevent_mapready[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"onMapReady(event)"[/COLOR]
    [COLOR=#660066]width[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR] [COLOR=#660066]height[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR][COLOR=#666600]/>[/COLOR]
  [COLOR=#666600]<[/COLOR][COLOR=#000088]mx:Text[/COLOR] [COLOR=#660066]id[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"directionsCopyright"[/COLOR] [COLOR=#660066]width[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#008800]"100%"[/COLOR][COLOR=#666600]/>[/COLOR]
[COLOR=#666600]</[/COLOR][COLOR=#000088]mx:Panel[/COLOR][COLOR=#666600]>[/COLOR]
[COLOR=#666600]<[/COLOR][COLOR=#000088]mx:Script[/COLOR][COLOR=#666600]>[/COLOR]
<![CDATA[
import mx.controls.Alert;
import flash.events.Event;
import com.google.maps.*;
import com.google.maps.overlays.*;
import com.google.maps.services.*;

private var dir:Directions;
private var turnCounter:uint = 0;

private function onMapReady(event:MapEvent):void {
  map.setCenter(new LatLng(41.651505,-72.094455), 8, MapType.NORMAL_MAP_TYPE);
  dir = new Directions();
  dir.addEventListener(DirectionsEvent.DIRECTIONS_SUCCESS, onDirLoad);
  dir.addEventListener(DirectionsEvent.DIRECTIONS_FAILURE, onDirFail);
}

private function processDirections(event:Event):void {
  dir.load("from: " + from.text + " to: " + to.text);
  getTurnByTurnDirections.enabled = true;
  
  // Reset turnCounter to zero for new directions
  turnCounter = 0;
  step.htmlText = "Start at " + from.text;
}

private function onDirFail(event:DirectionsEvent):void {
  Alert.show("Status: " + event.directions.status);
  step.htmlText = "";
}

private function onDirLoad(event:DirectionsEvent):void {
  var dir:Directions = event.directions;       
  var startMarker:Marker;
  var endMarker:Marker;
        
  map.clearOverlays();
  map.addOverlay(dir.createPolyline());
  map.setZoom(map.getBoundsZoomLevel(dir.bounds));
  map.setCenter(dir.bounds.getCenter());
  
  startMarker = new Marker(dir.getRoute(0).startGeocode.point, new MarkerOptions({fillStyle: {color:Color.GREEN}}));
  endMarker = new Marker(dir.getRoute(0).endGeocode.point, new MarkerOptions({fillStyle: {color:Color.BLUE}}));
  map.addOverlay(startMarker);
  map.addOverlay(endMarker);
}

private function processTurnByTurn():void  {
  
  var stepText:String;
  var stepMarker:Marker;
  turnCounter++;
  
  if (turnCounter <= dir.getRoute(0).numSteps) {
    stepText = dir.getRoute(0).getStep(turnCounter-1).descriptionHtml;
    stepMarker = new Marker(dir.getRoute(0).getStep(turnCounter-1).latLng, new MarkerOptions({label: turnCounter.toString()}));
    map.addOverlay(stepMarker);
    step.htmlText = "Step " + turnCounter + ": " + stepText;  
  } else {
    getTurnByTurnDirections.enabled = false;
    step.htmlText = "Arrive at " + to.text + " : " + dir.getRoute(0).summaryHtml;
  }  
}
]]>
[COLOR=#666600]</[/COLOR][COLOR=#000088]mx:Script[/COLOR][COLOR=#666600]>[/COLOR]
[COLOR=#666600]</[/COLOR][COLOR=#000088]mx:Application[/COLOR][COLOR=#666600]>[/COLOR]