Hi, I'm using the new OpenLayers mapview extension [1] & [2] and need to use a custom map constructor, to add in some custom layers and controls, but am currently stuck with the SelectFeature control configuration for the vector layer (the control that looks after what happens when a marker is clicked).
The constructor code, below was adapted partly from : http://code.google.com/p/simile-widgets/source/browse/exhibit/trunk/src/webapp/api/extensions/map/scripts/olmap-view.js The map is displayed and vectors for the markers are added fine, but when a marker is clicked I get an error: "self._onFeatureUnselect is not a function" It's clear that the self reference from the code is referring to the OLMapView object. Is it possible to access this in the constructor?. I've tried self = Exhibit.OLMapView.prototype; but that also gave an error, any ideas? function customMapConstructor(mapdiv){ var map = new OpenLayers.Map({ "div": mapdiv, "controls": [], "projection": new OpenLayers.Projection("EPSG:900913"), "displayProjection": new OpenLayers.Projection("EPSG:4326"), "units": "m", "numZoomLevels": 18, "maxResolution": 156543.0339, "maxExtent": new OpenLayers.Bounds(-20037508.34, -20037508.34, 20037508.34, 20037508.34) }); var mapnik = new OpenLayers.Layer.OSM.Mapnik(); mapnik.setVisibility(true); var vectors = new OpenLayers.Layer.Vector("Features", {"wrapDateLine":true}); map.addLayers([mapnik, vectors]); map.setCenter(new OpenLayers.LonLat(-73.4,41.7).transform (map.displayProjection, map.getProjectionObject()), 7); //Stuck on this bit. var self = this; var selectControl = new OpenLayers.Control.SelectFeature(vectors, { onSelect: function(feature) { self._onFeatureSelect(self, feature); }, onUnselect: function(feature) { self._onFeatureUnselect(self, feature); } }); map.addControl(selectControl); selectControl.activate(); map.addControl(new OpenLayers.Control.Navigation()); map.addControl(new OpenLayers.Control.LayerSwitcher()); map.events.register("click", null, SimileAjax.WindowManager.cancelPopups); return map; } Cheers! Many thanks in advance, Tim [1] http://www.simile-widgets.org/wiki/Exhibit/OpenLayers_Map_View [2] http://groups.google.com/group/simile-widgets/browse_thread/thread/ae59496c3a5bc2bd/fa9a6ad0ffdd774e?lnk=gst --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "SIMILE Widgets" 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/simile-widgets?hl=en -~----------~----~----~----~------~----~------~--~---
