//>>built define("dojo/_base/kernel dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/json dojo/dom dojo/dom-style ./_base ./TouchInteractionSupport ./Layer ./Patch".split(" "),function(m,n,u,l,p,q,v,g,r,k,t){m.experimental("dojox.geo.openlayers.Map");t.patchGFX();return n("dojox.geo.openlayers.Map",null,{olMap:null,_tp:null,constructor:function(a,b){b||(b={});a=q.byId(a);this._tp={x:0,y:0};var d=b.openLayersMapOptions;d||(d={controls:[new OpenLayers.Control.ScaleLine({maxWidth:200}),new OpenLayers.Control.Navigation]}); if(b.accessible){var c=new OpenLayers.Control.KeyboardDefaults;d.controls||(d.controls=[]);d.controls.push(c)}c=b.baseLayerType;c||(c=g.BaseLayerType.OSM);this.olMap=a=new OpenLayers.Map(a,d);this._layerDictionary={olLayers:[],layers:[]};b.touchHandler&&(this._touchControl=new r(a));a=this._createBaseLayer(b);this.addLayer(a);this.initialFit(b)},initialFit:function(a){(a=a.initialLocation)||(a=[-160,70,160,-70]);this.fitTo(a)},setBaseLayerType:function(a){if(a==this.baseLayerType)return null;var b= null;"string"==typeof a?(b={baseLayerName:a,baseLayerType:a},this.baseLayerType=a):"object"==typeof a&&(b=a,this.baseLayerType=b.baseLayerType);a=null;if(null!=b&&(a=this._createBaseLayer(b),null!=a)){var b=this.olMap,d=b.getZoom(),c=b.getCenter(),e=!!c&&!!b.baseLayer&&!!b.baseLayer.map;if(e){var f=b.getProjectionObject();null!=f&&(c=c.transform(f,g.EPSG4326))}f=b.baseLayer;null!=f&&(f=this._getLayer(f),this.removeLayer(f));null!=a&&this.addLayer(a);e&&(f=b.getProjectionObject(),null!=f&&(c=c.transform(g.EPSG4326, f)),b.setCenter(c,d))}return a},getBaseLayerType:function(){return this.baseLayerType},getScale:function(a){var b=null,b=this.olMap;if(a){if(!b.getUnits())return null;a=OpenLayers.INCHES_PER_UNIT;b=(b.getGeodesicPixelSize().w||1E-6)*a.km*OpenLayers.DOTS_PER_INCH}else b=b.getScale();return b},getOLMap:function(){return this.olMap},_createBaseLayer:function(a){var b=null,d=a.baseLayerType,c=a.baseLayerUrl,e=a.baseLayerName;a=a.baseLayerOptions;e||(e=d);a||(a={});switch(d){case g.BaseLayerType.OSM:a.transitionEffect= "resize";b=new k(e,{olLayer:new OpenLayers.Layer.OSM(e,c,a)});break;case g.BaseLayerType.Transport:a.transitionEffect="resize";b=new k(e,{olLayer:new OpenLayers.Layer.OSM.TransportMap(e,c,a)});break;case g.BaseLayerType.WMS:c||(c="http://labs.metacarta.com/wms/vmap0",a.layers||(a.layers="basic"));b=new k(e,{olLayer:new OpenLayers.Layer.WMS(e,c,a,{transitionEffect:"resize"})});break;case g.BaseLayerType.GOOGLE:b=new k(e,{olLayer:new OpenLayers.Layer.Google(e,a)});break;case g.BaseLayerType.VIRTUAL_EARTH:b= new k(e,{olLayer:new OpenLayers.Layer.VirtualEarth(e,a)});break;case g.BaseLayerType.YAHOO:b=new k(e,{olLayer:new OpenLayers.Layer.Yahoo(e,a)});break;case g.BaseLayerType.ARCGIS:c||(c="http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer/export"),b=new k(e,{olLayer:new OpenLayers.Layer.ArcGIS93Rest(e,c,a,{})})}null==b&&(d instanceof OpenLayers.Layer?b=d:(a.transitionEffect="resize",b=new k(e,{olLayer:new OpenLayers.Layer.OSM(e,c,a)}),this.baseLayerType=g.BaseLayerType.OSM)); return b},removeLayer:function(a){var b=this.olMap,d=l.indexOf(this._layerDictionary.layers,a);0