<?xml version="1.0" encoding="utf-8"?> <!-- Copyright 2008 Google Inc. Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0 --> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" width="100%" height="100%" layout="absolute" viewSourceURL="srcview/index.html"> <mx:Panel title="GTA Fishing" width="100%" height="100%">
<mx:HDividedBox width="100%" height="100%">
<mx:VBox width="20%" height="100%" paddingLeft="5"
paddingTop="5"
cornerRadius="6" borderStyle="outset" borderColor="#A2C2D8"
alpha="0.66" backgroundAlpha="0.89" themeColor="#4E6472">
<mx:HBox>
<mx:CheckBox
selected="true"
change="toggleCategory('markham')"/>
<mx:Label
text="Markham"/>
</mx:HBox>
<mx:HBox>
<mx:CheckBox
selected="true"
change="toggleCategory('vaughan')"/>
<mx:Label
text="Vaughan"/>
</mx:HBox>
<mx:HBox>
<mx:CheckBox
selected="true"
change="toggleCategory('toronto')"/>
<mx:Label
text="Toronto"/>
</mx:HBox>
<mx:HBox>
<mx:CheckBox
selected="true"
change="toggleCategory('mississauga')"/>
<mx:Label
text="Mississauga"/>
</mx:HBox>
<mx:HBox>
<mx:CheckBox
selected="true"
change="toggleCategory('brampton')"/>
<mx:Label
text="Brampton"/>
</mx:HBox>
</mx:VBox>
<mx:UIComponent id="mapHolder"
initialize="onHolderCreated(event);"
resize="onHolderResized(event)"
width="80%"
height="100%"/>
</mx:HDividedBox>
</mx:Panel>
<mx:Script>
<![CDATA[
import com.google.maps.InfoWindowOptions;
import com.google.maps.LatLng;
import com.google.maps.LatLngBounds;
import com.google.maps.Map;
import com.google.maps.MapEvent;
import com.google.maps.MapMouseEvent;
import com.google.maps.MapType;
import com.google.maps.controls.MapTypeControl;
import com.google.maps.controls.ZoomControl;
import com.google.maps.overlays.Marker;
import com.google.maps.overlays.MarkerOptions;
import com.google.maps.styles.FillStyle;
import mx.controls.Alert;
private var map:Map;
[Embed(source="fish.png")] private var fish:Class;
private var categories:Object =
{ "markham": {
"markers": []},
"vaughan": {
"color": 0x0000FF,
"markers": []},
"toronto": {
"color": 0x0000FF,
"markers": []},
"mississauga": {
"color": 0x0000FF,
"markers": []},
"brampton": {
"color": 0x0000FF,
"markers": []}
};
public function onHolderCreated(event:Event):void {
map = new Map();
map.key = "ABQIAAAA0f-2tnmVnVXqNTOgQns2-
xT2yXp_ZAY8_ufC3CFXhHIE1NvwkxSJYORd2Ak8QZnmQctx6hjitfHcig";
map.addEventListener(MapEvent.MAP_READY,
onMapReady);
map.sensor="false";
mapHolder.addChild(map);
}
public function onHolderResized(event:Event):void {
map.setSize(new Point(mapHolder.width,
mapHolder.height));
}
private function onMapReady(event:Event):void {
map.enableScrollWheelZoom();
map.enableContinuousZoom();
map.setCenter(new LatLng(43.779175,-79.444313),
10,
MapType.HYBRID_MAP_TYPE);
map.addControl(new ZoomControl());
map.addControl(new MapTypeControl());
var xmlString:URLRequest = new
URLRequest("markers.xml");
var xmlLoader:URLLoader = new
URLLoader(xmlString);
xmlLoader.addEventListener("complete", readXml);
}
public function readXml(event:Event):void{
var markersXML:XML = new XML(event.target.data);
var markers:XMLList = markersXML..marker;
var markersCount:int = markers.length();
for (var i:Number = 0; i < markersCount; i++) {
var marker:XML = markers[i];
var name:String = mark...@name;
var type:String = mark...@type;
var latlng:LatLng = new
LatLng(mark...@lat, mark...@lng);
createMarker(latlng, name, type);
}
}
public function createMarker(latlng:LatLng, name:String,
type:String):void {
var markerOptions:MarkerOptions = new
MarkerOptions({icon:bm});
var bm:Bitmap = new fish() as Bitmap;
var marker:Marker = new Marker(latlng,
markerOptions);
var html:String = "<b>" + name + "</b> <br/>";
marker.addEventListener(MapMouseEvent.CLICK,
function(e:MapMouseEvent):void {
marker.openInfoWindow(new
InfoWindowOptions({contentHTML:html}));
});
categories[type].markers.push(marker);
map.addOverlay(marker);
}
private function toggleCategory(type:String):void {
for (var i:Number = 0; i <
categories[type].markers.length; i++) {
var marker:Marker =
categories[type].markers[i];
if (!marker.visible) {
marker.visible = true;
} else {
marker.visible = false;
}
}
}
]]>
</mx:Script>
</mx:Application>
--
You received this message because you are subscribed to the Google Groups
"Google Maps API For Flash" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-maps-api-for-flash?hl=en.
