summaryrefslogtreecommitdiff
path: root/media/javascript/latlonselector.js
blob: 735b661524c7e4639aef916bd98c638b20eb5a9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53


function LatLonSelector() {
	var latitude;
	var longitude;
	var map;
	var marker;
	var control;
	
	return {
		init: function(mape, latelement, lonelement) {
			// Map is a instance of the Map class from Map.js
			// Latelement and lonelement are JQuery objects referring to <input> boxes or similar.
			map = mape;
			var markers = new OpenLayers.Layer.Markers("Lat/Lon selector");
			marker = map.createMarker(0, 0);
			markers.addMarker(marker);
			map.getMap().addLayer(markers);
			
			control = new OpenLayers.Control.DragMarker(markers, {'onComplete': function() { this.onComplete(); }, 'onDrag': function() { this.onDrag(); }});
			map.getMap().addControl(control);
			control.activate();
		},
		
		onComplete: function(layer, pixel) {
			var lonlat = map.getLonLatFromViewPortPx(pixel.x, pixel.y);
			alert("You dropped it near " + lonlat.lat + " N, " + lonlat.lon + " E");		
		},
		
		onDrag: function(layer, pixel) {
		},
		
		activate: function() {
			control.activate();
		},
		
		deactivate: function() {
			control.deactivate();
		},
		
		setLocation: function(lat, lon) {
			
		},
		
		getLocation: function() {
			
		},
		
		update: function() {
			
		}
	};
}