@Override
 public void onSelectionChanged(SelectionChangedEvent<Position> event) {
   if (event.getSelection().isEmpty()) {
     archiveHandler.onSelected(null);
   } else {
     archiveHandler.onSelected(event.getSelection().get(0));
   }
 }
 @UiHandler("clearButton")
 public void onClearClicked(SelectEvent event) {
   for (Map.Entry<Long, ArchivePanel> entry : archivePanels.entrySet()) {
     Device device = deviceStore.findModelWithKey(entry.getKey().toString());
     archiveHandler.onClear(device);
     devicesTabs.remove(entry.getValue().getContentPanel());
   }
   archivePanels.clear();
 }
 @UiHandler("loadButton")
 public void onLoadClicked(SelectEvent event) {
   archiveHandler.onLoad(
       deviceCombo.getValue(),
       getCombineDate(fromDate, fromTime),
       getCombineDate(toDate, toTime),
       !disableFilter.getValue(),
       snapToRoads.getValue(),
       new ArchiveStyle(style));
 }
 @UiHandler("devicesTabs")
 public void onDeviceTabClosed(CloseEvent<Widget> event) {
   for (Map.Entry<Long, ArchivePanel> entry : archivePanels.entrySet()) {
     if (entry.getValue().getContentPanel().equals(event.getItem())) {
       Device device = deviceStore.findModelWithKey(entry.getKey().toString());
       archiveHandler.onClear(device);
       archivePanels.remove(entry.getKey());
       break;
     }
   }
 }
 @UiHandler("filterButton")
 public void onFilterClicked(SelectEvent event) {
   archiveHandler.onFilterSettings();
 }