From fcaf637431fee2cdd5ccab79b6de1edf44bac777 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Mon, 3 Aug 2015 15:13:14 +1200 Subject: Remove files and update readme --- .../web/client/view/ApplicationSettingsDialog.java | 81 -------- .../client/view/ApplicationSettingsDialog.ui.xml | 33 ---- .../traccar/web/client/view/ApplicationView.java | 52 ----- .../traccar/web/client/view/ApplicationView.ui.xml | 56 ------ src/org/traccar/web/client/view/ArchiveView.java | 196 ------------------- src/org/traccar/web/client/view/ArchiveView.ui.xml | 62 ------ src/org/traccar/web/client/view/DeviceDialog.java | 84 -------- .../traccar/web/client/view/DeviceDialog.ui.xml | 40 ---- src/org/traccar/web/client/view/DeviceView.java | 186 ------------------ src/org/traccar/web/client/view/DeviceView.ui.xml | 57 ------ src/org/traccar/web/client/view/LoginDialog.java | 84 -------- src/org/traccar/web/client/view/LoginDialog.ui.xml | 40 ---- .../web/client/view/MapPositionRenderer.java | 185 ------------------ src/org/traccar/web/client/view/MapView.java | 211 --------------------- .../traccar/web/client/view/MarkerIconFactory.java | 51 ----- src/org/traccar/web/client/view/StateView.java | 58 ------ src/org/traccar/web/client/view/StateView.ui.xml | 22 --- src/org/traccar/web/client/view/UserDialog.java | 95 ---------- src/org/traccar/web/client/view/UserDialog.ui.xml | 47 ----- .../web/client/view/UserSettingsDialog.java | 97 ---------- .../web/client/view/UserSettingsDialog.ui.xml | 33 ---- src/org/traccar/web/client/view/UsersDialog.java | 110 ----------- src/org/traccar/web/client/view/UsersDialog.ui.xml | 50 ----- 23 files changed, 1930 deletions(-) delete mode 100644 src/org/traccar/web/client/view/ApplicationSettingsDialog.java delete mode 100644 src/org/traccar/web/client/view/ApplicationSettingsDialog.ui.xml delete mode 100644 src/org/traccar/web/client/view/ApplicationView.java delete mode 100644 src/org/traccar/web/client/view/ApplicationView.ui.xml delete mode 100644 src/org/traccar/web/client/view/ArchiveView.java delete mode 100644 src/org/traccar/web/client/view/ArchiveView.ui.xml delete mode 100644 src/org/traccar/web/client/view/DeviceDialog.java delete mode 100644 src/org/traccar/web/client/view/DeviceDialog.ui.xml delete mode 100644 src/org/traccar/web/client/view/DeviceView.java delete mode 100644 src/org/traccar/web/client/view/DeviceView.ui.xml delete mode 100644 src/org/traccar/web/client/view/LoginDialog.java delete mode 100644 src/org/traccar/web/client/view/LoginDialog.ui.xml delete mode 100644 src/org/traccar/web/client/view/MapPositionRenderer.java delete mode 100644 src/org/traccar/web/client/view/MapView.java delete mode 100644 src/org/traccar/web/client/view/MarkerIconFactory.java delete mode 100644 src/org/traccar/web/client/view/StateView.java delete mode 100644 src/org/traccar/web/client/view/StateView.ui.xml delete mode 100644 src/org/traccar/web/client/view/UserDialog.java delete mode 100644 src/org/traccar/web/client/view/UserDialog.ui.xml delete mode 100644 src/org/traccar/web/client/view/UserSettingsDialog.java delete mode 100644 src/org/traccar/web/client/view/UserSettingsDialog.ui.xml delete mode 100644 src/org/traccar/web/client/view/UsersDialog.java delete mode 100644 src/org/traccar/web/client/view/UsersDialog.ui.xml (limited to 'src/org/traccar/web/client/view') diff --git a/src/org/traccar/web/client/view/ApplicationSettingsDialog.java b/src/org/traccar/web/client/view/ApplicationSettingsDialog.java deleted file mode 100644 index 24b9f96..0000000 --- a/src/org/traccar/web/client/view/ApplicationSettingsDialog.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import org.traccar.web.shared.model.ApplicationSettings; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.editor.client.Editor; -import com.google.gwt.editor.client.SimpleBeanEditorDriver; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.uibinder.client.UiHandler; -import com.google.gwt.user.client.ui.Widget; -import com.sencha.gxt.widget.core.client.Window; -import com.sencha.gxt.widget.core.client.event.SelectEvent; -import com.sencha.gxt.widget.core.client.form.CheckBox; - -public class ApplicationSettingsDialog implements Editor { - - private static ApplicationSettingsDialogUiBinder uiBinder = GWT.create(ApplicationSettingsDialogUiBinder.class); - - interface ApplicationSettingsDialogUiBinder extends UiBinder { - } - - private ApplicationSettingsDriver driver = GWT.create(ApplicationSettingsDriver.class); - - interface ApplicationSettingsDriver extends SimpleBeanEditorDriver { - } - - public interface ApplicationSettingsHandler { - public void onSave(ApplicationSettings applicationSettings); - } - - private ApplicationSettingsHandler applicationSettingsHandler; - - @UiField - Window window; - - @UiField - CheckBox registrationEnabled; - - public ApplicationSettingsDialog(ApplicationSettings applicationSettings, ApplicationSettingsHandler applicationSettingsHandler) { - this.applicationSettingsHandler = applicationSettingsHandler; - uiBinder.createAndBindUi(this); - driver.initialize(this); - driver.edit(applicationSettings); - } - - public void show() { - window.show(); - } - - public void hide() { - window.hide(); - } - - @UiHandler("saveButton") - public void onLoginClicked(SelectEvent event) { - window.hide(); - applicationSettingsHandler.onSave(driver.flush()); - } - - @UiHandler("cancelButton") - public void onRegisterClicked(SelectEvent event) { - window.hide(); - } - -} diff --git a/src/org/traccar/web/client/view/ApplicationSettingsDialog.ui.xml b/src/org/traccar/web/client/view/ApplicationSettingsDialog.ui.xml deleted file mode 100644 index effdc4a..0000000 --- a/src/org/traccar/web/client/view/ApplicationSettingsDialog.ui.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/org/traccar/web/client/view/ApplicationView.java b/src/org/traccar/web/client/view/ApplicationView.java deleted file mode 100644 index dfa5335..0000000 --- a/src/org/traccar/web/client/view/ApplicationView.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.user.client.ui.Composite; -import com.google.gwt.user.client.ui.Widget; -import com.sencha.gxt.widget.core.client.ContentPanel; - -public class ApplicationView extends Composite { - - private static ApplicationViewUiBinder uiBinder = GWT.create(ApplicationViewUiBinder.class); - - interface ApplicationViewUiBinder extends UiBinder { - } - - @UiField(provided = true) - ContentPanel devicePanel; - - @UiField(provided = true) - ContentPanel statePanel; - - @UiField(provided = true) - ContentPanel mapPanel; - - @UiField(provided = true) - ContentPanel archivePanel; - - public ApplicationView(ContentPanel deviceView, ContentPanel stateView, ContentPanel mapView, ContentPanel archiveView) { - devicePanel = deviceView; - statePanel = stateView; - mapPanel = mapView; - archivePanel = archiveView; - initWidget(uiBinder.createAndBindUi(this)); - } - -} diff --git a/src/org/traccar/web/client/view/ApplicationView.ui.xml b/src/org/traccar/web/client/view/ApplicationView.ui.xml deleted file mode 100644 index 0b05ab9..0000000 --- a/src/org/traccar/web/client/view/ApplicationView.ui.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/org/traccar/web/client/view/ArchiveView.java b/src/org/traccar/web/client/view/ArchiveView.java deleted file mode 100644 index 9cc579f..0000000 --- a/src/org/traccar/web/client/view/ArchiveView.java +++ /dev/null @@ -1,196 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import java.util.Date; -import java.util.LinkedList; -import java.util.List; - -import org.traccar.web.client.ApplicationContext; -import org.traccar.web.client.model.BaseStoreHandlers; -import org.traccar.web.client.model.DeviceProperties; -import org.traccar.web.client.model.PositionProperties; -import org.traccar.web.shared.model.Device; -import org.traccar.web.shared.model.Position; - -import com.google.gwt.cell.client.DateCell; -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.uibinder.client.UiHandler; -import com.google.gwt.user.client.ui.Widget; -import com.sencha.gxt.cell.core.client.NumberCell; -import com.sencha.gxt.core.client.Style.SelectionMode; -import com.sencha.gxt.data.shared.ListStore; -import com.sencha.gxt.data.shared.event.StoreHandlers; -import com.sencha.gxt.widget.core.client.ContentPanel; -import com.sencha.gxt.widget.core.client.event.SelectEvent; -import com.sencha.gxt.widget.core.client.form.ComboBox; -import com.sencha.gxt.widget.core.client.form.DateField; -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 implements SelectionChangedEvent.SelectionChangedHandler { - - private static ArchiveViewUiBinder uiBinder = GWT.create(ArchiveViewUiBinder.class); - - interface ArchiveViewUiBinder extends UiBinder { - } - - public interface ArchiveHandler { - public void onSelected(Position position); - public void onLoad(Device device, Date from, Date to); - public void onClear(); - } - - private ArchiveHandler archiveHandler; - - @UiField - ContentPanel contentPanel; - - public ContentPanel getView() { - return contentPanel; - } - - ListStore deviceStore; - - @UiField - DateField fromDate; - - @UiField - TimeField fromTime; - - @UiField - DateField toDate; - - @UiField - TimeField toTime; - - @UiField(provided = true) - ComboBox deviceCombo; - - @UiField(provided = true) - ColumnModel columnModel; - - @UiField(provided = true) - ListStore positionStore; - - @UiField - Grid grid; - - public ArchiveView(ArchiveHandler archiveHandler, ListStore positionStore, ListStore deviceStore) { - this.archiveHandler = archiveHandler; - this.positionStore = positionStore; - deviceStore.addStoreHandlers(deviceStoreHandlers); - this.deviceStore = deviceStore; - - DeviceProperties deviceProperties = GWT.create(DeviceProperties.class); - deviceCombo = new ComboBox(deviceStore, deviceProperties.label()); - - PositionProperties positionProperties = GWT.create(PositionProperties.class); - - List> columnConfigList = new LinkedList>(); - - columnConfigList.add(new ColumnConfig(positionProperties.valid(), 0, "Valid")); - - ColumnConfig columnConfigDate = new ColumnConfig(positionProperties.time(), 0, "Time"); - columnConfigDate.setCell(new DateCell(ApplicationContext.getInstance().getFormatterUtil().getTimeFormat())); - columnConfigList.add(columnConfigDate); - - columnConfigList.add(new ColumnConfig(positionProperties.latitude(), 0, "Latitude")); - columnConfigList.add(new ColumnConfig(positionProperties.longitude(), 0, "Longitude")); - columnConfigList.add(new ColumnConfig(positionProperties.altitude(), 0, "Altitude")); - - ColumnConfig columnConfigDouble = new ColumnConfig(positionProperties.speed(), 0, "Speed"); - columnConfigDouble.setCell(new NumberCell(ApplicationContext.getInstance().getFormatterUtil().getSpeedFormat())); - columnConfigList.add(columnConfigDouble); - - columnConfigList.add(new ColumnConfig(positionProperties.course(), 0, "Course")); - columnConfigList.add(new ColumnConfig(positionProperties.power(), 0, "Power")); - - columnModel = new ColumnModel(columnConfigList); - - uiBinder.createAndBindUi(this); - - grid.getSelectionModel().addSelectionChangedHandler(this); - grid.getSelectionModel().setSelectionMode(SelectionMode.SINGLE); - - // Initialize with current time - long min = 60 * 1000; - Date now = new Date(); - Date to = new Date(((now.getTime() + 15 * min) / (15 * min)) * 15 * min); - Date from = new Date(to.getTime() - 60 * min); - fromDate.setValue(from); - fromTime.setValue(from); - toDate.setValue(to); - toTime.setValue(to); - } - - @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; - Date date = dateField.getValue(); - Date time = timeField.getValue(); - if (date != null && time != null) { - result = new Date( - date.getYear(), date.getMonth(), date.getDate(), - time.getHours(), time.getMinutes(), time.getSeconds()); - } - return result; - } - - @UiHandler("loadButton") - public void onLoadClicked(SelectEvent event) { - archiveHandler.onLoad( - deviceCombo.getValue(), - getCombineDate(fromDate, fromTime), - getCombineDate(toDate, toTime)); - } - - @UiHandler("clearButton") - public void onClearClicked(SelectEvent event) { - archiveHandler.onClear(); - } - - private StoreHandlers deviceStoreHandlers = new BaseStoreHandlers() { - - @Override - public void onAnything() { - Device oldDevice = deviceCombo.getValue(); - if (oldDevice != null) { - deviceCombo.setValue(deviceStore.findModel(oldDevice)); - } - } - - }; - - public void selectPosition(Position position) { - grid.getSelectionModel().select(positionStore.findModel(position), false); - } - -} diff --git a/src/org/traccar/web/client/view/ArchiveView.ui.xml b/src/org/traccar/web/client/view/ArchiveView.ui.xml deleted file mode 100644 index f27d38f..0000000 --- a/src/org/traccar/web/client/view/ArchiveView.ui.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/org/traccar/web/client/view/DeviceDialog.java b/src/org/traccar/web/client/view/DeviceDialog.java deleted file mode 100644 index 9e94e96..0000000 --- a/src/org/traccar/web/client/view/DeviceDialog.java +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import org.traccar.web.shared.model.Device; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.editor.client.Editor; -import com.google.gwt.editor.client.SimpleBeanEditorDriver; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.uibinder.client.UiHandler; -import com.google.gwt.user.client.ui.Widget; -import com.sencha.gxt.widget.core.client.Window; -import com.sencha.gxt.widget.core.client.event.SelectEvent; -import com.sencha.gxt.widget.core.client.form.TextField; - -public class DeviceDialog implements Editor { - - private static DeviceDialogUiBinder uiBinder = GWT.create(DeviceDialogUiBinder.class); - - interface DeviceDialogUiBinder extends UiBinder { - } - - private DeviceDriver driver = GWT.create(DeviceDriver.class); - - interface DeviceDriver extends SimpleBeanEditorDriver { - } - - public interface DeviceHandler { - public void onSave(Device device); - } - - private DeviceHandler deviceHandler; - - @UiField - Window window; - - @UiField - TextField name; - - @UiField - TextField uniqueId; - - public DeviceDialog(Device device, DeviceHandler deviceHandler) { - this.deviceHandler = deviceHandler; - uiBinder.createAndBindUi(this); - driver.initialize(this); - driver.edit(device); - } - - public void show() { - window.show(); - } - - public void hide() { - window.hide(); - } - - @UiHandler("saveButton") - public void onLoginClicked(SelectEvent event) { - window.hide(); - deviceHandler.onSave(driver.flush()); - } - - @UiHandler("cancelButton") - public void onRegisterClicked(SelectEvent event) { - window.hide(); - } - -} diff --git a/src/org/traccar/web/client/view/DeviceDialog.ui.xml b/src/org/traccar/web/client/view/DeviceDialog.ui.xml deleted file mode 100644 index 4f7ccc5..0000000 --- a/src/org/traccar/web/client/view/DeviceDialog.ui.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/org/traccar/web/client/view/DeviceView.java b/src/org/traccar/web/client/view/DeviceView.java deleted file mode 100644 index 21d906c..0000000 --- a/src/org/traccar/web/client/view/DeviceView.java +++ /dev/null @@ -1,186 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import java.util.LinkedList; -import java.util.List; - -import org.traccar.web.client.Application; -import org.traccar.web.client.ApplicationContext; -import org.traccar.web.client.model.BaseAsyncCallback; -import org.traccar.web.client.model.DeviceProperties; -import org.traccar.web.shared.model.Device; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.event.logical.shared.SelectionEvent; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.uibinder.client.UiHandler; -import com.google.gwt.user.client.Window; -import com.google.gwt.user.client.ui.Widget; -import com.sencha.gxt.core.client.Style.SelectionMode; -import com.sencha.gxt.data.shared.ListStore; -import com.sencha.gxt.widget.core.client.ContentPanel; -import com.sencha.gxt.widget.core.client.button.TextButton; -import com.sencha.gxt.widget.core.client.event.SelectEvent; -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.menu.Item; -import com.sencha.gxt.widget.core.client.menu.MenuItem; -import com.sencha.gxt.widget.core.client.selection.SelectionChangedEvent; - -public class DeviceView implements SelectionChangedEvent.SelectionChangedHandler { - - private static DeviceViewUiBinder uiBinder = GWT.create(DeviceViewUiBinder.class); - - interface DeviceViewUiBinder extends UiBinder { - } - - public interface DeviceHandler { - public void onSelected(Device device); - public void onAdd(); - public void onEdit(Device device); - public void onRemove(Device device); - } - - private DeviceHandler deviceHandler; - - @UiField - ContentPanel contentPanel; - - public ContentPanel getView() { - return contentPanel; - } - - @UiField - TextButton addButton; - - @UiField - TextButton editButton; - - @UiField - TextButton removeButton; - - @UiField(provided = true) - ColumnModel columnModel; - - @UiField(provided = true) - ListStore deviceStore; - - @UiField - Grid grid; - - @UiField - MenuItem settingsUsers; - - @UiField - MenuItem settingsGlobal; - - public DeviceView(DeviceHandler deviceHandler, SettingsHandler settingsHandler, ListStore deviceStore) { - this.deviceHandler = deviceHandler; - this.settingsHandler = settingsHandler; - this.deviceStore = deviceStore; - - DeviceProperties deviceProperties = GWT.create(DeviceProperties.class); - - List> columnConfigList = new LinkedList>(); - columnConfigList.add(new ColumnConfig(deviceProperties.name(), 0, "Name")); - columnConfigList.add(new ColumnConfig(deviceProperties.uniqueId(), 0, "Unique Identifier")); - columnModel = new ColumnModel(columnConfigList); - - uiBinder.createAndBindUi(this); - - grid.getSelectionModel().addSelectionChangedHandler(this); - grid.getSelectionModel().setSelectionMode(SelectionMode.SINGLE); - - if (ApplicationContext.getInstance().getUser().getAdmin()) { - settingsUsers.enable(); - settingsGlobal.enable(); - } - } - - @Override - public void onSelectionChanged(SelectionChangedEvent event) { - editButton.setEnabled(!event.getSelection().isEmpty()); - removeButton.setEnabled(!event.getSelection().isEmpty()); - - if (event.getSelection().isEmpty()) { - deviceHandler.onSelected(null); - } else { - deviceHandler.onSelected(event.getSelection().get(0)); - } - } - - @UiHandler("addButton") - public void onAddClicked(SelectEvent event) { - deviceHandler.onAdd(); - } - - @UiHandler("editButton") - public void onEditClicked(SelectEvent event) { - deviceHandler.onEdit(grid.getSelectionModel().getSelectedItem()); - } - - @UiHandler("removeButton") - public void onRemoveClicked(SelectEvent event) { - deviceHandler.onRemove(grid.getSelectionModel().getSelectedItem()); - } - - @UiHandler("logoutButton") - public void onLogoutClicked(SelectEvent event) { - Application.getDataService().logout(new BaseAsyncCallback() { - @Override - public void onSuccess(Boolean result) { - Window.Location.reload(); - } - }); - } - - public void selectDevice(Device device) { - grid.getSelectionModel().select(deviceStore.findModel(device), false); - } - - public interface SettingsHandler { - public void onAccountSelected(); - public void onPreferencesSelected(); - public void onUsersSelected(); - public void onApplicationSelected(); - } - - private SettingsHandler settingsHandler; - - @UiHandler("settingsAccount") - public void onSettingsAccountSelected(SelectionEvent event) { - settingsHandler.onAccountSelected(); - } - - @UiHandler("settingsPreferences") - public void onSettingsPreferencesSelected(SelectionEvent event) { - settingsHandler.onPreferencesSelected(); - } - - @UiHandler("settingsUsers") - public void onSettingsUsersSelected(SelectionEvent event) { - settingsHandler.onUsersSelected(); - } - - @UiHandler("settingsGlobal") - public void onSettingsGlobalSelected(SelectionEvent event) { - settingsHandler.onApplicationSelected(); - } - -} diff --git a/src/org/traccar/web/client/view/DeviceView.ui.xml b/src/org/traccar/web/client/view/DeviceView.ui.xml deleted file mode 100644 index 38721ca..0000000 --- a/src/org/traccar/web/client/view/DeviceView.ui.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/org/traccar/web/client/view/LoginDialog.java b/src/org/traccar/web/client/view/LoginDialog.java deleted file mode 100644 index 59b4623..0000000 --- a/src/org/traccar/web/client/view/LoginDialog.java +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import org.traccar.web.client.ApplicationContext; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.uibinder.client.UiHandler; -import com.google.gwt.user.client.ui.Widget; -import com.sencha.gxt.widget.core.client.Window; -import com.sencha.gxt.widget.core.client.button.TextButton; -import com.sencha.gxt.widget.core.client.event.SelectEvent; -import com.sencha.gxt.widget.core.client.form.PasswordField; -import com.sencha.gxt.widget.core.client.form.TextField; - -public class LoginDialog { - - private static LoginDialogUiBinder uiBinder = GWT.create(LoginDialogUiBinder.class); - - interface LoginDialogUiBinder extends UiBinder { - } - - public interface LoginHandler { - public void onLogin(String login, String password); - public void onRegister(String login, String password); - } - - private LoginHandler loginHandler; - - @UiField - Window window; - - @UiField - TextField login; - - @UiField - PasswordField password; - - @UiField - TextButton registerButton; - - public LoginDialog(LoginHandler loginHandler) { - this.loginHandler = loginHandler; - uiBinder.createAndBindUi(this); - - if (ApplicationContext.getInstance().getApplicationSettings().getRegistrationEnabled()) { - registerButton.enable(); - } - } - - public void show() { - window.show(); - } - - public void hide() { - window.hide(); - } - - @UiHandler("loginButton") - public void onLoginClicked(SelectEvent event) { - loginHandler.onLogin(login.getText(), password.getText()); - } - - @UiHandler("registerButton") - public void onRegisterClicked(SelectEvent event) { - loginHandler.onRegister(login.getText(), password.getText()); - } - -} diff --git a/src/org/traccar/web/client/view/LoginDialog.ui.xml b/src/org/traccar/web/client/view/LoginDialog.ui.xml deleted file mode 100644 index c931443..0000000 --- a/src/org/traccar/web/client/view/LoginDialog.ui.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/org/traccar/web/client/view/MapPositionRenderer.java b/src/org/traccar/web/client/view/MapPositionRenderer.java deleted file mode 100644 index 15ba082..0000000 --- a/src/org/traccar/web/client/view/MapPositionRenderer.java +++ /dev/null @@ -1,185 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.gwtopenmaps.openlayers.client.Icon; -import org.gwtopenmaps.openlayers.client.Marker; -import org.gwtopenmaps.openlayers.client.event.EventHandler; -import org.gwtopenmaps.openlayers.client.event.EventObject; -import org.gwtopenmaps.openlayers.client.feature.VectorFeature; -import org.gwtopenmaps.openlayers.client.geometry.LineString; -import org.gwtopenmaps.openlayers.client.geometry.Point; -import org.gwtopenmaps.openlayers.client.layer.Markers; -import org.gwtopenmaps.openlayers.client.layer.Vector; -import org.traccar.web.shared.model.Device; -import org.traccar.web.shared.model.Position; - -import com.google.gwt.dom.client.Style; -import com.google.gwt.user.client.ui.RootPanel; - - -public class MapPositionRenderer { - - public interface SelectHandler { - public void onSelected(Position position); - } - - private final MapView mapView; - private final MarkerIconFactory.IconType iconType; - - protected Vector getVectorLayer() { - return mapView.getVectorLayer(); - } - - protected Markers getMarkerLayer() { - return mapView.getMarkerLayer(); - } - - private SelectHandler selectHandler; - - public MapPositionRenderer(MapView mapView, MarkerIconFactory.IconType iconType, SelectHandler selectHandler) { - this.mapView = mapView; - this.iconType = iconType; - this.selectHandler = selectHandler; - } - - private void addSelectEvent(Marker marker, final Position position) { - if (selectHandler != null) { - marker.getEvents().register("click", marker, new EventHandler() { - @Override - public void onHandle(EventObject eventObject) { - selectHandler.onSelected(position); - } - }); - marker.getEvents().register("mouseover", marker, new EventHandler() { - @Override - public void onHandle(EventObject eventObject) { - RootPanel.get().getElement().getStyle().setCursor(Style.Cursor.SE_RESIZE); - } - }); - marker.getEvents().register("mouseout", marker, new EventHandler() { - @Override - public void onHandle(EventObject eventObject) { - RootPanel.get().getElement().getStyle().setCursor(Style.Cursor.AUTO); - } - }); - } - } - - private void changeMarkerIcon(Long positionId, Icon icon) { - Marker oldMarker = markerMap.get(positionId); - Marker newMarker = new Marker(oldMarker.getLonLat(), icon); - addSelectEvent(newMarker, positionMap.get(positionId)); - markerMap.put(positionId, newMarker); - getMarkerLayer().addMarker(newMarker); - getMarkerLayer().removeMarker(oldMarker); - } - - private Map markerMap = new HashMap(); // Position.id -> Marker - private Map deviceMap = new HashMap(); // Device.id -> Position.id - private Map positionMap = new HashMap(); // Position.id -> Position - - private Long selectedPositionId; - private Long selectedDeviceId; - - public void showPositions(List positions) { - for (Marker marker : markerMap.values()) { - getMarkerLayer().removeMarker(marker); - } - markerMap.clear(); - deviceMap.clear(); - positionMap.clear(); - - for (Position position : positions) { - Marker marker = new Marker( - mapView.createLonLat(position.getLongitude(), position.getLatitude()), - MarkerIconFactory.getIcon(iconType, false)); - markerMap.put(position.getId(), marker); - deviceMap.put(position.getDevice().getId(), position.getId()); - positionMap.put(position.getId(), position); - addSelectEvent(marker, position); - getMarkerLayer().addMarker(marker); - } - - if (selectedPositionId != null) { - if (!selectPosition(null, selectedPositionId, false)) { - selectedPositionId = null; - } - } - - if (selectedDeviceId != null) { - if (!selectPosition(null, deviceMap.get(selectedDeviceId), false)) { - selectedDeviceId = null; - } - } - } - - public void showTrack(List positions) { - getVectorLayer().destroyFeatures(); - - if (!positions.isEmpty()) { - Point[] linePoints = new Point[positions.size()]; - - int i = 0; - for (Position position : positions) { - linePoints[i++] = mapView.createPoint(position.getLongitude(), position.getLatitude()); - } - - LineString lineString = new LineString(linePoints); - getVectorLayer().addFeature(new VectorFeature(lineString)); - //mapView.getMap().zoomToExtent(lineString.getBounds()); - } - } - - public void selectPosition(Position position, boolean center) { - Long oldPositionId = selectedPositionId; - Long newPositionId = (position != null) ? position.getId() : null; - if (selectPosition(oldPositionId, newPositionId, center)) { - selectedPositionId = position.getId(); - } else { - selectedPositionId = null; - } - } - - public void selectDevice(Device device, boolean center) { - Long oldPositionId = (selectedDeviceId != null) ? deviceMap.get(selectedDeviceId) : null; - Long newPositionId = (device != null) ? deviceMap.get(device.getId()) : null; - if (selectPosition(oldPositionId, newPositionId, center)) { - selectedDeviceId = device.getId(); - } else { - selectedDeviceId = null; - } - } - - private boolean selectPosition(Long oldPositionId, Long newPositionId, boolean center) { - if (oldPositionId != null && markerMap.containsKey(oldPositionId)) { - changeMarkerIcon(oldPositionId, MarkerIconFactory.getIcon(iconType, false)); - } - if (newPositionId != null && markerMap.containsKey(newPositionId)) { - changeMarkerIcon(newPositionId, MarkerIconFactory.getIcon(iconType, true)); - if (center) { - mapView.getMap().panTo(markerMap.get(newPositionId).getLonLat()); - } - return true; - } - return false; - } - -} diff --git a/src/org/traccar/web/client/view/MapView.java b/src/org/traccar/web/client/view/MapView.java deleted file mode 100644 index db51cd3..0000000 --- a/src/org/traccar/web/client/view/MapView.java +++ /dev/null @@ -1,211 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import java.util.List; - -import org.gwtopenmaps.openlayers.client.LonLat; -import org.gwtopenmaps.openlayers.client.Map; -import org.gwtopenmaps.openlayers.client.MapOptions; -import org.gwtopenmaps.openlayers.client.MapWidget; -import org.gwtopenmaps.openlayers.client.Projection; -import org.gwtopenmaps.openlayers.client.Style; -import org.gwtopenmaps.openlayers.client.control.LayerSwitcher; -import org.gwtopenmaps.openlayers.client.control.ScaleLine; -import org.gwtopenmaps.openlayers.client.geometry.Point; -import org.gwtopenmaps.openlayers.client.layer.Bing; -import org.gwtopenmaps.openlayers.client.layer.BingOptions; -import org.gwtopenmaps.openlayers.client.layer.BingType; -import org.gwtopenmaps.openlayers.client.layer.GoogleV3; -import org.gwtopenmaps.openlayers.client.layer.GoogleV3MapType; -import org.gwtopenmaps.openlayers.client.layer.GoogleV3Options; -import org.gwtopenmaps.openlayers.client.layer.Markers; -import org.gwtopenmaps.openlayers.client.layer.MarkersOptions; -import org.gwtopenmaps.openlayers.client.layer.OSM; -import org.gwtopenmaps.openlayers.client.layer.Vector; -import org.gwtopenmaps.openlayers.client.layer.VectorOptions; -import org.traccar.web.shared.model.Device; -import org.traccar.web.shared.model.Position; - -import com.google.gwt.core.client.Scheduler; -import com.google.gwt.event.logical.shared.ResizeEvent; -import com.google.gwt.event.logical.shared.ResizeHandler; -import com.google.gwt.user.client.Command; -import com.sencha.gxt.widget.core.client.ContentPanel; - -public class MapView { - - public interface MapHandler { - public void onPositionSelected(Position position); - public void onArchivePositionSelected(Position position); - } - - private MapHandler mapHandler; - - private ContentPanel contentPanel; - - public ContentPanel getView() { - return contentPanel; - } - - private MapWidget mapWidget; - private Map map; - private Vector vectorLayer; - private Markers markerLayer; - - public Map getMap() { - return map; - } - - public Vector getVectorLayer() { - return vectorLayer; - } - - public Markers getMarkerLayer() { - return markerLayer; - } - - public LonLat createLonLat(double longitude, double latitude) { - LonLat lonLat = new LonLat(longitude, latitude); - lonLat.transform(new Projection("EPSG:4326").getProjectionCode(), map.getProjection()); - return lonLat; - } - - public Point createPoint(double x, double y) { - Point point = new Point(x, y); - point.transform(new Projection("EPSG:4326"), new Projection(map.getProjection())); - return point; - } - - private void initMapLayers(Map map) { - map.addLayer(OSM.Mapnik("OpenStreetMap")); - - GoogleV3Options gHybridOptions = new GoogleV3Options(); - gHybridOptions.setNumZoomLevels(20); - gHybridOptions.setType(GoogleV3MapType.G_HYBRID_MAP); - map.addLayer(new GoogleV3("Google Hybrid", gHybridOptions)); - - GoogleV3Options gNormalOptions = new GoogleV3Options(); - gNormalOptions.setNumZoomLevels(22); - gNormalOptions.setType(GoogleV3MapType.G_NORMAL_MAP); - map.addLayer(new GoogleV3("Google Normal", gNormalOptions)); - - GoogleV3Options gSatelliteOptions = new GoogleV3Options(); - gSatelliteOptions.setNumZoomLevels(20); - gSatelliteOptions.setType(GoogleV3MapType.G_SATELLITE_MAP); - map.addLayer(new GoogleV3("Google Satellite", gSatelliteOptions)); - - GoogleV3Options gTerrainOptions = new GoogleV3Options(); - gTerrainOptions.setNumZoomLevels(16); - gTerrainOptions.setType(GoogleV3MapType.G_TERRAIN_MAP); - map.addLayer(new GoogleV3("Google Terrain", gTerrainOptions)); - - final String bingKey = "AseEs0DLJhLlTNoxbNXu7DGsnnH4UoWuGue7-irwKkE3fffaClwc9q_Mr6AyHY8F"; - map.addLayer(new Bing(new BingOptions("Bing Road", bingKey, BingType.ROAD))); - map.addLayer(new Bing(new BingOptions("Bing Hybrid", bingKey, BingType.HYBRID))); - map.addLayer(new Bing(new BingOptions("Bing Aerial", bingKey, BingType.AERIAL))); - } - - public MapView(MapHandler mapHandler) { - this.mapHandler = mapHandler; - contentPanel = new ContentPanel(); - contentPanel.setHeadingText("Map"); - - MapOptions defaultMapOptions = new MapOptions(); - - mapWidget = new MapWidget("100%", "100%", defaultMapOptions); - map = mapWidget.getMap(); - - Style style = new Style(); - style.setStrokeColor("blue"); - style.setStrokeWidth(3); - style.setFillOpacity(1); - - VectorOptions vectorOptions = new VectorOptions(); - vectorOptions.setStyle(style); - vectorLayer = new Vector("Vector", vectorOptions); - - MarkersOptions markersOptions = new MarkersOptions(); - markerLayer = new Markers("Markers", markersOptions); - - initMapLayers(map); - - map.addLayer(vectorLayer); - map.addLayer(markerLayer); - - map.addControl(new LayerSwitcher()); - map.addControl(new ScaleLine()); - map.setCenter(createLonLat(12.5, 41.9), 1); - - contentPanel.add(mapWidget); - - // Update map size - contentPanel.addResizeHandler(new ResizeHandler() { - @Override - public void onResize(ResizeEvent event) { - Scheduler.get().scheduleDeferred(new Command() { - @Override - public void execute() { - map.updateSize(); - } - }); - } - }); - - latestPositionRenderer = new MapPositionRenderer(this, MarkerIconFactory.IconType.iconLatest, latestPositionSelectHandler); - archivePositionRenderer = new MapPositionRenderer(this, MarkerIconFactory.IconType.iconArchive, archivePositionSelectHandler); - } - - private final MapPositionRenderer latestPositionRenderer; - - private final MapPositionRenderer archivePositionRenderer; - - public void showLatestPositions(List positions) { - latestPositionRenderer.showPositions(positions); - } - - public void showArchivePositions(List positions) { - archivePositionRenderer.showTrack(positions); - archivePositionRenderer.showPositions(positions); - } - - public void selectDevice(Device device) { - latestPositionRenderer.selectDevice(device, true); - } - - public void selectArchivePosition(Position position) { - archivePositionRenderer.selectPosition(position, true); - } - - private MapPositionRenderer.SelectHandler latestPositionSelectHandler = new MapPositionRenderer.SelectHandler() { - - @Override - public void onSelected(Position position) { - mapHandler.onPositionSelected(position); - } - - }; - - private MapPositionRenderer.SelectHandler archivePositionSelectHandler = new MapPositionRenderer.SelectHandler() { - - @Override - public void onSelected(Position position) { - mapHandler.onArchivePositionSelected(position); - } - - }; - -} diff --git a/src/org/traccar/web/client/view/MarkerIconFactory.java b/src/org/traccar/web/client/view/MarkerIconFactory.java deleted file mode 100644 index 46965d5..0000000 --- a/src/org/traccar/web/client/view/MarkerIconFactory.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import org.gwtopenmaps.openlayers.client.Icon; -import org.gwtopenmaps.openlayers.client.Pixel; -import org.gwtopenmaps.openlayers.client.Size; - -class MarkerIconFactory { - - private static final Size iconSize = new Size(21, 25); - private static final Pixel iconOffset = new Pixel(-10.5f, -25.0f); - - private static final String iconUrl = "http://cdnjs.cloudflare.com/ajax/libs/openlayers/2.13.1/img/"; - private static final String iconRed = iconUrl + "marker.png"; - private static final String iconBlue = iconUrl + "marker-blue.png"; - private static final String iconGreen = iconUrl + "marker-green.png"; - private static final String iconGold = iconUrl + "marker-gold.png"; - - public static enum IconType { - iconLatest, - iconArchive - }; - - public static String getIconUrl(IconType type, boolean selected) { - if (type == IconType.iconLatest) { - return selected ? iconGreen : iconRed; - } else if (type == IconType.iconArchive) { - return selected ? iconGold : iconBlue; - } - return null; - } - - public static Icon getIcon(IconType type, boolean selected) { - return new Icon(getIconUrl(type, selected), iconSize, iconOffset); - } - -} diff --git a/src/org/traccar/web/client/view/StateView.java b/src/org/traccar/web/client/view/StateView.java deleted file mode 100644 index 700d55a..0000000 --- a/src/org/traccar/web/client/view/StateView.java +++ /dev/null @@ -1,58 +0,0 @@ -package org.traccar.web.client.view; - -import java.util.LinkedList; -import java.util.List; - -import org.traccar.web.client.model.StateItem; -import org.traccar.web.client.model.StateItemProperties; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.user.client.ui.Widget; -import com.sencha.gxt.data.shared.ListStore; -import com.sencha.gxt.widget.core.client.ContentPanel; -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; - -public class StateView { - - private static StateViewUiBinder uiBinder = GWT.create(StateViewUiBinder.class); - - interface StateViewUiBinder extends UiBinder { - } - - @UiField - ContentPanel contentPanel; - - public ContentPanel getView() { - return contentPanel; - } - - @UiField(provided = true) - ColumnModel columnModel; - - @UiField(provided = true) - ListStore stateStore; - - @UiField - Grid grid; - - public StateView(ListStore stateStore) { - this.stateStore = stateStore; - - StateItemProperties stateItemProperties = GWT.create(StateItemProperties.class); - - List> columnConfigList = new LinkedList>(); - columnConfigList.add(new ColumnConfig(stateItemProperties.name(), 0, "Attribute")); - columnConfigList.add(new ColumnConfig(stateItemProperties.value(), 0, "Value")); - columnModel = new ColumnModel(columnConfigList); - - uiBinder.createAndBindUi(this); - - grid.getSelectionModel().setLocked(true); - } - -} - diff --git a/src/org/traccar/web/client/view/StateView.ui.xml b/src/org/traccar/web/client/view/StateView.ui.xml deleted file mode 100644 index 2a7c2ac..0000000 --- a/src/org/traccar/web/client/view/StateView.ui.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/src/org/traccar/web/client/view/UserDialog.java b/src/org/traccar/web/client/view/UserDialog.java deleted file mode 100644 index ac2eca3..0000000 --- a/src/org/traccar/web/client/view/UserDialog.java +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import org.traccar.web.client.ApplicationContext; -import org.traccar.web.shared.model.User; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.editor.client.Editor; -import com.google.gwt.editor.client.SimpleBeanEditorDriver; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.uibinder.client.UiHandler; -import com.google.gwt.user.client.ui.Widget; -import com.sencha.gxt.widget.core.client.Window; -import com.sencha.gxt.widget.core.client.event.SelectEvent; -import com.sencha.gxt.widget.core.client.form.CheckBox; -import com.sencha.gxt.widget.core.client.form.PasswordField; -import com.sencha.gxt.widget.core.client.form.TextField; - -public class UserDialog implements Editor { - - private static UserDialogUiBinder uiBinder = GWT.create(UserDialogUiBinder.class); - - interface UserDialogUiBinder extends UiBinder { - } - - private UserDriver driver = GWT.create(UserDriver.class); - - interface UserDriver extends SimpleBeanEditorDriver { - } - - public interface UserHandler { - public void onSave(User user); - } - - private UserHandler userHandler; - - @UiField - Window window; - - @UiField - TextField login; - - @UiField - PasswordField password; - - @UiField - CheckBox admin; - - public UserDialog(User user, UserHandler userHandler) { - this.userHandler = userHandler; - uiBinder.createAndBindUi(this); - - if (ApplicationContext.getInstance().getUser().getAdmin()) { - admin.setEnabled(true); - } - - driver.initialize(this); - driver.edit(user); - } - - public void show() { - window.show(); - } - - public void hide() { - window.hide(); - } - - @UiHandler("saveButton") - public void onLoginClicked(SelectEvent event) { - window.hide(); - userHandler.onSave(driver.flush()); - } - - @UiHandler("cancelButton") - public void onRegisterClicked(SelectEvent event) { - window.hide(); - } - -} diff --git a/src/org/traccar/web/client/view/UserDialog.ui.xml b/src/org/traccar/web/client/view/UserDialog.ui.xml deleted file mode 100644 index 9f7fe21..0000000 --- a/src/org/traccar/web/client/view/UserDialog.ui.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/org/traccar/web/client/view/UserSettingsDialog.java b/src/org/traccar/web/client/view/UserSettingsDialog.java deleted file mode 100644 index be13eca..0000000 --- a/src/org/traccar/web/client/view/UserSettingsDialog.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import java.util.Arrays; - -import org.traccar.web.client.model.EnumKeyProvider; -import org.traccar.web.client.model.UserSettingsProperties; -import org.traccar.web.shared.model.UserSettings; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.editor.client.Editor; -import com.google.gwt.editor.client.SimpleBeanEditorDriver; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.uibinder.client.UiHandler; -import com.google.gwt.user.client.ui.Widget; -import com.sencha.gxt.cell.core.client.form.ComboBoxCell.TriggerAction; -import com.sencha.gxt.data.shared.ListStore; -import com.sencha.gxt.widget.core.client.Window; -import com.sencha.gxt.widget.core.client.event.SelectEvent; -import com.sencha.gxt.widget.core.client.form.ComboBox; - -public class UserSettingsDialog implements Editor { - - private static UserSettingsDialogUiBinder uiBinder = GWT.create(UserSettingsDialogUiBinder.class); - - interface UserSettingsDialogUiBinder extends UiBinder { - } - - private UserSettingsDriver driver = GWT.create(UserSettingsDriver.class); - - interface UserSettingsDriver extends SimpleBeanEditorDriver { - } - - public interface UserSettingsHandler { - public void onSave(UserSettings userSettings); - } - - private UserSettingsHandler userSettingsHandler; - - @UiField - Window window; - - @UiField(provided = true) - ComboBox speedUnit; - - public UserSettingsDialog(UserSettings userSettings, UserSettingsHandler userSettingsHandler) { - this.userSettingsHandler = userSettingsHandler; - - ListStore speedUnitStore = new ListStore( - new EnumKeyProvider()); - speedUnitStore.addAll(Arrays.asList(UserSettings.SpeedUnit.values())); - - speedUnit = new ComboBox( - speedUnitStore, new UserSettingsProperties.SpeedUnitLabelProvider()); - speedUnit.setForceSelection(true); - speedUnit.setTriggerAction(TriggerAction.ALL); - - uiBinder.createAndBindUi(this); - driver.initialize(this); - driver.edit(userSettings); - } - - public void show() { - window.show(); - } - - public void hide() { - window.hide(); - } - - @UiHandler("saveButton") - public void onLoginClicked(SelectEvent event) { - window.hide(); - userSettingsHandler.onSave(driver.flush()); - } - - @UiHandler("cancelButton") - public void onRegisterClicked(SelectEvent event) { - window.hide(); - } - -} diff --git a/src/org/traccar/web/client/view/UserSettingsDialog.ui.xml b/src/org/traccar/web/client/view/UserSettingsDialog.ui.xml deleted file mode 100644 index db6c693..0000000 --- a/src/org/traccar/web/client/view/UserSettingsDialog.ui.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/org/traccar/web/client/view/UsersDialog.java b/src/org/traccar/web/client/view/UsersDialog.java deleted file mode 100644 index 3da8979..0000000 --- a/src/org/traccar/web/client/view/UsersDialog.java +++ /dev/null @@ -1,110 +0,0 @@ -/* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.web.client.view; - -import java.util.LinkedList; -import java.util.List; - -import org.traccar.web.client.model.UserProperties; -import org.traccar.web.shared.model.User; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.uibinder.client.UiBinder; -import com.google.gwt.uibinder.client.UiField; -import com.google.gwt.uibinder.client.UiHandler; -import com.google.gwt.user.client.ui.Widget; -import com.sencha.gxt.core.client.Style.SelectionMode; -import com.sencha.gxt.data.shared.ListStore; -import com.sencha.gxt.widget.core.client.Window; -import com.sencha.gxt.widget.core.client.button.TextButton; -import com.sencha.gxt.widget.core.client.event.SelectEvent; -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 UsersDialog implements SelectionChangedEvent.SelectionChangedHandler { - - private static UsersDialogUiBinder uiBinder = GWT.create(UsersDialogUiBinder.class); - - interface UsersDialogUiBinder extends UiBinder { - } - - public interface UserHandler { - public void onAdd(); - public void onRemove(User user); - } - - private UserHandler userHandler; - - @UiField - Window window; - - @UiField - TextButton addButton; - - @UiField - TextButton removeButton; - - @UiField(provided = true) - ColumnModel columnModel; - - @UiField(provided = true) - ListStore userStore; - - @UiField - Grid grid; - - public UsersDialog(ListStore userStore, UserHandler userHandler) { - this.userStore = userStore; - this.userHandler = userHandler; - - UserProperties userProperties = GWT.create(UserProperties.class); - - List> columnConfigList = new LinkedList>(); - columnConfigList.add(new ColumnConfig(userProperties.login(), 0, "Name")); - columnConfigList.add(new ColumnConfig(userProperties.admin(), 0, "Administrator")); - columnModel = new ColumnModel(columnConfigList); - - uiBinder.createAndBindUi(this); - - grid.getSelectionModel().addSelectionChangedHandler(this); - grid.getSelectionModel().setSelectionMode(SelectionMode.SINGLE); - } - - public void show() { - window.show(); - } - - public void hide() { - window.hide(); - } - - @Override - public void onSelectionChanged(SelectionChangedEvent event) { - removeButton.setEnabled(!event.getSelection().isEmpty()); - } - @UiHandler("addButton") - public void onAddClicked(SelectEvent event) { - userHandler.onAdd(); - } - - @UiHandler("removeButton") - public void onRemoveClicked(SelectEvent event) { - userHandler.onRemove(grid.getSelectionModel().getSelectedItem()); - } - -} diff --git a/src/org/traccar/web/client/view/UsersDialog.ui.xml b/src/org/traccar/web/client/view/UsersDialog.ui.xml deleted file mode 100644 index 2110e76..0000000 --- a/src/org/traccar/web/client/view/UsersDialog.ui.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- cgit v1.2.3