== Introduction == This note is intended to document the changes that occurred with the upgrade from `maps.keyhole.3.js` to `maps.keyhole.4.js` as they affect embedded Google Maps map display widgets. == XML File Data == XML data files are now required to have a element as a child of the element--it can be empty. e.g.: ... == XSL File == [Updated] If you have a custom sidepanel XSL file you may need to change the onclick handler to: showLocationInfo('{@id}') instead of: showLocationInfo(this) == _Map Class == The `asyncLoadVPageFromURL` method of the `_Map` class has been removed. A new class `_DocumentTransport` has been added--as the class has a "constant" name it would seem we can consider it part of the "unofficial" API. The following seems to do the equivalent of the former `asyncLoadVPageFromURL` method: var dt = _DocumentTransport.create(); dt.continueWith("demo1.xml", function (responseText) {myMap.loadVPageStr(responseText);}) (Assuming you have a global `_Map` instance named `myMap` and a XML data file named `demo1.xsl`.) == _MapsApplication == It appears a global string variable `_mUsePrintLink` must now be defined, an empty value such as the following seems to work: _mUsePrintLink=""; A non-null "permalink"
now seems to be a required parameter to the `_MapsApplication` constructor. [Correction: This should really be an element.] A non-null "printheader"
has been added as a required parameter to the `_MapsApplication` constructor. == Conclusion == While there may have been additional functionality changes these seem to be the only ones that affect the classes discussed. 26 May 2005 -- (C) Copyright 2005 -- follower at rancidbacon.com