From 5100c457ad2f1faf1cffa8503c6baaf3a26c5d89 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Thu, 10 Jan 2013 23:42:16 +1300 Subject: Archive panel and some map features --- .../web/client/controller/MapController.java | 26 ++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) (limited to 'src/org/traccar/web/client/controller') diff --git a/src/org/traccar/web/client/controller/MapController.java b/src/org/traccar/web/client/controller/MapController.java index 5ab5bbcf..738b2811 100644 --- a/src/org/traccar/web/client/controller/MapController.java +++ b/src/org/traccar/web/client/controller/MapController.java @@ -1,5 +1,8 @@ package org.traccar.web.client.controller; +import java.util.Collections; +import java.util.Comparator; +import java.util.LinkedList; import java.util.List; import org.traccar.web.client.Application; @@ -13,7 +16,7 @@ import com.sencha.gxt.widget.core.client.ContentPanel; public class MapController implements ContentController { - private static final int UPDATE_INTERVAL = 10000; + private static final int UPDATE_INTERVAL = 15000; private MapView mapView; @@ -44,7 +47,7 @@ public class MapController implements ContentController { Application.getDataService().getLatestPositions(new AsyncCallback>() { @Override public void onSuccess(List result) { - mapView.showPositions(result); + mapView.showLatestPositions(result); updateTimer.schedule(UPDATE_INTERVAL); } @Override @@ -54,8 +57,23 @@ public class MapController implements ContentController { }); } - public void select(Device device) { - mapView.select(device, true); + public void selectDevice(Device device) { + mapView.selectDevice(device); + } + + public void showArchivePositions(List positions) { + List sortedPositions = new LinkedList(positions); + Collections.sort(sortedPositions, new Comparator() { + @Override + public int compare(Position o1, Position o2) { + return o1.getTime().compareTo(o2.getTime()); + } + }); + mapView.showArchivePositions(sortedPositions); + } + + public void selectArchivePosition(Position position) { + mapView.selectArchivePosition(position); } } -- cgit v1.2.3