From cdd83e0d13961c3465c7faf554ea8c709bd761b3 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Sun, 8 Nov 2015 13:47:26 +1300 Subject: Add map feature selection event --- web/app/view/Map.js | 6 ++++++ web/app/view/MapController.js | 9 +++++++++ 2 files changed, 15 insertions(+) diff --git a/web/app/view/Map.js b/web/app/view/Map.js index 2c73f4cc5..b6c8cf815 100644 --- a/web/app/view/Map.js +++ b/web/app/view/Map.js @@ -95,6 +95,12 @@ Ext.define('Traccar.view.Map', { layers: [layer, vectorLayer], view: this.mapView }); + + this.map.on("click", function(e) { + this.map.forEachFeatureAtPixel(e.pixel, function (feature, layer) { + this.fireEvent('selectFeature', feature); + }, this); + }, this); }, resize: function () { diff --git a/web/app/view/MapController.js b/web/app/view/MapController.js index 205d40882..15bc24cdf 100644 --- a/web/app/view/MapController.js +++ b/web/app/view/MapController.js @@ -35,6 +35,11 @@ Ext.define('Traccar.view.MapController', { load: 'loadReport', clear: 'clearReport' } + }, + component: { + '#': { + selectFeature: 'selectFeature' + } } } }, @@ -206,5 +211,9 @@ Ext.define('Traccar.view.MapController', { selectReport: function (position) { this.selectMarker(this.reportMarkers[position.get('id')]); + }, + + selectFeature: function (feature) { + console.log(feature); } }); -- cgit v1.2.3