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 --- src/org/traccar/web/client/view/ArchiveView.java | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'src/org/traccar/web/client/view/ArchiveView.java') diff --git a/src/org/traccar/web/client/view/ArchiveView.java b/src/org/traccar/web/client/view/ArchiveView.java index f61ffcc..5d74f37 100644 --- a/src/org/traccar/web/client/view/ArchiveView.java +++ b/src/org/traccar/web/client/view/ArchiveView.java @@ -28,8 +28,9 @@ import com.sencha.gxt.widget.core.client.form.TimeField; import com.sencha.gxt.widget.core.client.grid.ColumnConfig; import com.sencha.gxt.widget.core.client.grid.ColumnModel; import com.sencha.gxt.widget.core.client.grid.Grid; +import com.sencha.gxt.widget.core.client.selection.SelectionChangedEvent; -public class ArchiveView { +public class ArchiveView implements SelectionChangedEvent.SelectionChangedHandler { private static ArchiveViewUiBinder uiBinder = GWT.create(ArchiveViewUiBinder.class); @@ -107,6 +108,7 @@ public class ArchiveView { uiBinder.createAndBindUi(this); + grid.getSelectionModel().addSelectionChangedHandler(this); grid.getSelectionModel().setSelectionMode(SelectionMode.SINGLE); // Initialize with current time @@ -117,6 +119,15 @@ public class ArchiveView { toTime.setValue(now); } + @Override + public void onSelectionChanged(SelectionChangedEvent event) { + if (event.getSelection().isEmpty()) { + archiveHandler.onSelected(null); + } else { + archiveHandler.onSelected(event.getSelection().get(0)); + } + } + @SuppressWarnings("deprecation") private static Date getCombineDate(DateField dateField, TimeField timeField) { Date result = null; @@ -147,7 +158,13 @@ public class ArchiveView { @Override public void onAnything() { - deviceCombo.setValue(deviceStore.findModel(deviceCombo.getValue())); + Device oldDevice = deviceCombo.getValue(); + if (oldDevice != null) { + Device newDevice = deviceStore.findModel(oldDevice); + if (newDevice != null) { + deviceCombo.setValue(newDevice); + } + } } }; -- cgit v1.2.3