From b69eb1d72ce706d4e76014daa19b3720ee633feb Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Sat, 18 Sep 2021 22:15:32 -0700 Subject: Add accuracy button --- web/app/view/map/Map.js | 16 ++++++++++++++-- web/app/view/map/MapController.js | 4 ++++ 2 files changed, 18 insertions(+), 2 deletions(-) (limited to 'web') diff --git a/web/app/view/map/Map.js b/web/app/view/map/Map.js index fbaa758..36e81de 100644 --- a/web/app/view/map/Map.js +++ b/web/app/view/map/Map.js @@ -65,6 +65,13 @@ Ext.define('Traccar.view.map.Map', { pressed: true, stateId: 'show-geofences-button', tooltip: Strings.sharedGeofences + }, { + handler: 'showAccuracy', + reference: 'showAccuracyButton', + glyph: 'xf140@FontAwesome', + pressed: true, + stateId: 'show-accuracy-button', + tooltip: Strings.positionAccuracy }, { handler: 'showCurrentLocation', glyph: 'xf124@FontAwesome', @@ -95,6 +102,10 @@ Ext.define('Traccar.view.map.Map', { return this.accuracySource; }, + getAccuracyLayer: function () { + return this.accuracyLayer; + }, + getRouteSource: function () { return this.routeSource; }, @@ -133,10 +144,11 @@ Ext.define('Traccar.view.map.Map', { })); this.accuracySource = new ol.source.Vector({}); - this.map.addLayer(new ol.layer.Vector({ + this.accuracyLayer = new ol.layer.Vector({ name: 'accuracyLayer', source: this.accuracySource - })); + }); + this.map.addLayer(this.accuracyLayer); this.markersSource = new ol.source.Vector({}); this.map.addLayer(new ol.layer.Vector({ diff --git a/web/app/view/map/MapController.js b/web/app/view/map/MapController.js index 7ba0ee3..d025b58 100644 --- a/web/app/view/map/MapController.js +++ b/web/app/view/map/MapController.js @@ -68,6 +68,10 @@ Ext.define('Traccar.view.map.MapController', { this.getView().getLiveRouteLayer().setVisible(button.pressed); }, + showAccuracy: function (button) { + this.getView().getAccuracyLayer().setVisible(button.pressed); + }, + getMapState: function () { var zoom, center, projection; projection = this.getView().getMapView().getProjection(); -- cgit v1.2.3