Rough initial version. Based on original annotation from http://spaces.msn.com/members/sompost/ with additions.
Original name (as listed in maps.2.js) is given in square brackets and linked to the original source. Meta data is from Google Maps meta data file. Generated by Javascript deobfuscation helper.
Sd, Pd, xd, Jd, Id
setTimeout("_finishDrop()",1)
gd
rg, wh
return approxEquals(this.x,S.x)&&approxEquals(this.y,S.y)
return approxEquals(this.width,S.width)&&approxEquals(this.height,S.height)
x
this.layer[a].style.left=asPixels(x);
this.layer[a].style.top=asPixels(l)
f.style.left=asPixels(K);
f.style.height=asPixels(k);
f.style.width=asPixels(g);
...
bf, ja, sf
attachEvent(window,"beforeprint",this.eventHandler("beforePrint"));
attachEvent(window,"afterprint",this.eventHandler("afterPrint"));
attachEvent(window,"resize",this.eventHandler("resizeMapView"));
Uh, Pg, ed, Jc
toString()
containsSegment(md,Pc)
containsBounds(pd)
var Ab=new Bounds(wa.x,ra.y,ra.x,wa.y);
var ea=new Bounds();
fa=new Bounds()
var A=new Bounds(rc,1,rc+22,166);
var _expandedBounds=new Bounds();
...
Bg, Vf, Eh
var m=new BrowserInfo(0,0,null);
b
cancelBubble(b)
cancelBubble(b);
Fb, gi
return createLink(Fb,Qg)
D, Fe
Something about encoding XML? values as HTML tags e.g. title.
var str=dc(this.error,false);
var Ya=dc(Wa.getElementsByTagName("title")[0],false);
var ng=dc(this.spelling,false);
var str=dc(fd,false);
Q+=dc(Ea,true)
rb, Oc, da
loadFromXML(c)
getSegmentById(F)
toHTML(R)
return new Directions(rb,Oc,c)
C, K, top, R
Handles mouse tracking
moveTo(K,top)
onMouseDown(b)
onMouseMove(b)
onMouseUp(b)
onWindowMouseOut(b)
disable()
enable()
var Gd=new DragTracker(ge,rc,this.getRelativeZoomSliderPos(),A);
this.dragObject=new DragTracker(this.div,0,0);
Q, ba
Fiddles value if it's negative/positive before passing to encodeNumberAsCharArray?
encodeNumber(xb-mb,u);
encodeNumber(mb-A.minY,u)
encodeNumber(Hb-ib,u);
encodeNumber(ib-A.minX,u);
encodeNumber(9999,u);
...
Q, ba
return encodeNumberAsCharArray(Q<0?~(Q<<1):Q<<1,ba)
c, xa
extendClassName(lc,"noprint");
extendClassName(i,"noselect");
extendClassName(f,xa)
extendClassName(this.shadowDiv,"infowindow");
extendClassName(this.windowDiv,"infowindow");
F
Sd, Pd, xd, Jd, Id
Main class
beforePrint()
afterPrint()
loadMap(ni)
createMapControl()
onMapStateChanged()
resizeMapView()
getWindowSize(e)
loadIconClasses()
loadXML(Ug,Fg)
loadVPage(da)
showOverlayPanel(ia)
showDirectionsPanel(y)
search(bb,Zh,ug)
clearSearchState()
getPageURL()
email()
print()
initSafari()
loadSafari(ga)
return new GoogleMapsApp(Sd,Pd,xd,Jd,Id)
createElement(C,ac)
create(C,g,k,K,top,Ga,ac,xa)
f, s
Is this actually Icon & other Icon is IconClass or Marker or something?
loadFromXML(c)
return new Icon1(c.getAttribute("image"),s)
ja, g, k, vg, Wh, og, kh, Gg, Cd
(?) Actually IconClass? Image used for marker
translateImageMapArray(x,l)
load(s)
get(ja)
Icon.load(new Icon("local",20,34,new n(9,34),new n(9,2),new n(17,23),q+"shadow50.png",37,Cd));
Icon.load(new Icon("noicon",0,0,new n(0,0),new n(0,0),new n(0,0),null,0,null))
gd
ih(gd)
Dh, Kh, Cf, bg, Wf
Popup window pointing at location
setContentSize(g,k)
setSize(g,k)
getWindowHeight()
getTotalHeight()
getTotalHeightAboveGround()
getTotalShadowHeight()
getTotalWidth()
getOffsetLeft()
getOffsetTop()
setWindowSize(g,k)
setShadowSize(g,k)
setMaskSize()
hide()
show()
isVisible()
sizeToContent(ad)
positionAt(x,l,s)
calculatePointerOffset(g)
createCroppingDiv(f)
createWindow(Ga)
createShadow(Ga)
hasMask()
getMaskMap()
createMask()
addAreaToMaskMap(ne,cg)
clearMaskMap()
getMaskLeft()
getMaskTop()
createContentArea(g)
prepareOffscreen()
clearOffscreenArea()
flipOffscreenArea()
onMouseDown(b)
createCloseButton()
onCloseMouseDown(b)
this.infoWindow=new InfoWin("14em",this.eventHandler("onInfoCloseClick"),this.div,50,20)
D
line -> list of coordinates (getLineAsString?)
var Mf=Ke(this.xml.getElementsByTagName("source")[0]);
var pf=Ke(this.xml.getElementsByTagName("destination")[0]);
F, ue, V
loadFromXML(c)
return new Ld(F,ue,V)
kd, Sg, da
Collection of Location
loadFromXML(c)
getLocationById(F)
toHTML(R)
return new Locations(kd,c.getAttribute("panelStyle"),c)
F, j, X, Hg, da
A place answering to query
loadFromXML(c)
toHTML(R)
return new Location(c.getAttribute("id"),j,X,c.getAttribute("infoStyle"),c)
start()
end()
addTime(ve)
p
onMapStateChanged()
onMapResize()
reset()
addPoint(Uc,od,Wg)
new MapHolder(this.map,this);
R, Ub, g, k, eg, ze
This is the main view class containing the user interface/Map view (also used by map blow up.)
createMapDiv()
loadTileImages()
deleteTiles()
initializeMap()
getSpanLatLng(e)
getCenterLatLng(e)
getBoundsBitmap(e)
getBoundsLatLng(e)
calculateTileMeasurements()
configureImage(f,x,l)
onDrag()
onMove()
rotateTiles()
rotateLeft()
rotateRight()
rotateUp()
rotateDown()
getTotalOffset(c)
onDragStart(b)
onDragEnd(b)
onDoubleClick(b)
onClick(b)
getRelativeClickPoint(b,wg,e)
reconfigureAllImages()
pan(va,za)
doPan()
cancelPan()
recenterOrPanToLatLng(j)
recenterOrPanToBitmap(j)
centerAndZoom(Hc,J)
centerAtLatLng(j)
centerAtBitmap(j)
addStateListener(bh)
onStateChanged()
onResize(b)
getCurrentOffset(e)
switchSpecification(ab)
setSpecification(ab)
zoomTo(ka)
toggleTileBorders()
addOverlay(ia)
createLocalMarker(r)
createLocationMarker(We,s)
clearOverlays()
getDivCoordinate(x,l,e)
orderLocations(af,Ae)
repositionOverlays()
setMarkerPosition(pa,s,If)
loadVPage(E,Bf,Ng)
registerKeyHandlers(C)
onKeyPress(b)
onKeyUp(b)
ignoreKeyEvent(b)
startContinuousPan()
doContinuousPan()
onWindowBlur(b)
onIconMouseDown(r,b)
clearInfoWindowArgs(da)
infoWindowNavigate(Mg,Qe,Jf,Ye)
showInfoWindow(r)
addMarkersToInfoWindowMask()
addMarkerToInfoWindowMask(Da,hb,pa)
showSizedInfoWindow(x,l,s,ad)
showMapBlowup(j,s)
createSpecChangeLink(p,Fb,Ub)
onInfoCloseClick(b)
closeInfoWindow()
panToInfoWindow()
repositionInfoWindow()
getVMLPathString(y)
createRawVML(re,i,c)
getBitmapVectors(eb,v,A)
getVectorPath(v,A)
getEncodedImageSource(v,A)
createVectorSegments(rb,Ab,La,fa)
createImageSegments(rb,Ab,La,fa)
drawDirections(y,O,oh)
drawDirectionsMarkers()
showDirectionsStart()
showDirectionsEnd()
showDirectionsStep(Kb)
getDirIndicatorAngle(V)
getDirIndicatorPath(Za)
hideDirectionsMarkers()
directionsMarkersAreVisible()
createMapControl()
createZoomControls(Y)
createPanningControls(Y)
createZoomSlider(Y)
getRelativeZoomSliderPos()
getZoomFromRelativeCoord(l)
showCopyright()
createCopyright(T)
var jd=new Map(R,this.spec,200,200,true,true);
this.map=new Map(this.mapContainer,Cc);
X, Ib, Ua, p, Sb
addLayer(f)
setPosition(x,l)
appendTo(i)
removeFrom(i)
hide()
show()
isVisible()
var Dc=new Marker(X,Ib,Ua,p,Sb);
Yh, ka
Used for logging/creating hyperlinks? (Blank at present.)
nd('<a href="'+kc.xmlEscape()+'">'+kc.xmlEscape()+"</a>",0);
nd('<a href="'+ga.xmlEscape()+'">'+ga.xmlEscape()+"</a>",0);
nd('<a href="'+C.xmlEscape()+'">'+C.xmlEscape()+"</a>",0);
str, Fd
Some sort of parser/converter for paste/drag'n'drop data?
Ac=Ne(b.dataTransfer.getData("Text"),null);
Cb.text=Ne(Fb,null);
fb
return num2Str(Ma.height)+","+num2Str(Ma.width)
return num2Str(j.y)+","+num2Str(j.x)
b
b
bb, Ya, Bc, Tc, B, Zg, dg, Gh, jg, z, Sc, y, nb, da
XML record
loadFromXML(c)
getNodeValue(D)
metaToHTML(R)
return new Page(bb,Ya,Bc,Tc,B,Ma,Kf,jf,null,null,Sc,y,nb,c)
Yf
reset()
next()
more()
this.panSiner=new PanSiner(uh);
this.panSiner=new PanSiner(100);
str
var da=parseXmlFromString(Ug);
x, l
toString()
equals(S)
distanceFrom(S)
approxEquals(S)
var _infoDivCoord=new Point(0,0);
this.centerLatLng=new Point(j.x,j.y);
if(!e)e=new Point(0,0);
B=new Point(parseFloat(vd.value),parseFloat(ud.value))
oa.push(new Point([131072,65536,32768,16384,8192,4096,2048,1024,512,256,128,64,32,16,8][_i]*0.77162458338772,[131072,65536,32768,16384,8192,4096,2048,1024,512,256,128,64,32,16,8][_i]))
...
gh, yd, ie, Dd
decodePolyline(Vb)
decodeLevels(Vb)
getPoint(pb,j)
getVectors(A,J,v)
getVectorsHelper(A,Xh,tb,ka,Gf,v)
var rb=new Polyline(Og,yd,ie,Dd);
D
Something to do with calculating total offset from top?
var k=Ah.height-qh(this.mapContainer)-10;
c
removeAllChildren(this.offscreenArea)
ba
add(kb)
remove(kb)
contains(kb)
this.panKeys=new Set()
this.panKeys=new Set();
g, k
toString()
equals(S)
approxEquals(S)
return new Size(kf.width+c.offsetLeft,kf.height+c.offsetTop)
var Ma=new Size(y.polyline.minTolerance,y.polyline.minTolerance);
this.panDistance=new Size(0,0);
this.tilePaddingOffset=new Size(0,0);
this.span=new Size(Infinity,Infinity);
...
F, Ba
create(Ba)
invalidateAll()
invalidate(xa)
isValid()
return new Synchronizer(db[Ba],Ba)
Always returns false
Ee
getBitmapCoordinate(Ka,Pa,J,e)
getLatLng(x,l,J,e)
getTileCoordinate(Ka,Pa,J,e)
getTileURL(x,l,J)
getLowestZoomLevel(vf,Ce,Le)
getPixelsPerDegree(J)
var Cc=new Tiles();
setValue(ja,Q)
setAllMapValues(p)
getLatLngArg(j)
getSpanArg(Ma)
getSpecArg(Ub)
reset()
getURL(Mh)
this.urlMaker=new UrlMaker();
var w=new UrlMaker();
create()
Vc
create(Vc)
getCached(lb)
cache(lb,Tf)
transformToHTML(qc,vb)
asynchronousTransform(qc,vb,kc,Nc,Ba)
return new Xslt(Vc)
Used for creating image tags?
create(C,g,k,K,top,Ga,ac,xa,rf)