summaryrefslogtreecommitdiff
path: root/inventory/media/javascript/latlonselector.js
blob: a2d01db3d6554e2c93e97b29ad2599741dd12e53 (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() {
                        
                }
        };
}