added text box to set start time offset of simulated races

This commit is contained in:
Alexander Ries committed 2015-09-08 11:47:32 +02:00
1 parent 819343e39e
commit 9738e708d7
6 files changed
+27 -2

No files matched your search

@@ -24,6 +24,7 @@ import com.google.gwt.user.client.ui.CaptionPanel;
import com.google.gwt.user.client.ui.CheckBox;
import com.google.gwt.user.client.ui.FlexTable;
import com.google.gwt.user.client.ui.FlexTable.FlexCellFormatter;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.Grid;
import com.google.gwt.user.client.ui.HTMLTable.ColumnFormatter;
import com.google.gwt.user.client.ui.HorizontalPanel;
@@ -84,6 +85,8 @@ public class TracTracEventManagementPanel extends AbstractEventManagementPanel {
private LabeledAbstractFilterablePanel<TracTracRaceRecordDTO> racesFilterablePanel;
private CellTable<TracTracRaceRecordDTO> racesTable;
private final static String ZERO_AS_STRING = "0";
public TracTracEventManagementPanel(final SailingServiceAsync sailingService, ErrorReporter errorReporter,
RegattaRefresher regattaRefresher, StringMessages stringMessages) {
super(sailingService, regattaRefresher, errorReporter, new RaceSelectionModel(), true, stringMessages);
@@ -276,10 +279,27 @@ public class TracTracEventManagementPanel extends AbstractEventManagementPanel {
correctWindCheckBox.setWordWrap(false);
correctWindCheckBox.setValue(Boolean.TRUE);
final CheckBox simulateWithStartTimeNowCheckBox = new CheckBox(stringMessages.simulateWithStartTimeNow());
final TextBox minutesBeforeSimulatedRaceStartTextBox = new TextBox();
minutesBeforeSimulatedRaceStartTextBox.setWidth("25px");
minutesBeforeSimulatedRaceStartTextBox.setEnabled(false);
minutesBeforeSimulatedRaceStartTextBox.setValue(ZERO_AS_STRING);
final CheckBox simulateWithStartTimeNowCheckBox = new CheckBox(stringMessages.simulateWithNowMinutesBeforeRaceStart());
simulateWithStartTimeNowCheckBox.ensureDebugId("SimulateWithStartTimeNowCheckBox");
simulateWithStartTimeNowCheckBox.setWordWrap(false);
simulateWithStartTimeNowCheckBox.setValue(Boolean.FALSE);
simulateWithStartTimeNowCheckBox.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
minutesBeforeSimulatedRaceStartTextBox.setEnabled(simulateWithStartTimeNowCheckBox.getValue());
minutesBeforeSimulatedRaceStartTextBox.setFocus(simulateWithStartTimeNowCheckBox.getValue());
}
});
final FlowPanel simulateStartTimePanel = new FlowPanel();
simulateStartTimePanel.add(simulateWithStartTimeNowCheckBox);
simulateStartTimePanel.add(minutesBeforeSimulatedRaceStartTextBox);
final CheckBox ignoreTracTracMarkPassingsCheckbox = new CheckBox(stringMessages.useInternalAlgorithm());
ignoreTracTracMarkPassingsCheckbox.setWordWrap(false);
ignoreTracTracMarkPassingsCheckbox.setValue(Boolean.FALSE);
@@ -287,7 +307,7 @@ public class TracTracEventManagementPanel extends AbstractEventManagementPanel {
layoutTable.setWidget(1, 0, trackSettingsLabel);
layoutTable.setWidget(1, 1, trackWindCheckBox);
layoutTable.setWidget(2, 1, correctWindCheckBox);
layoutTable.setWidget(3, 1, simulateWithStartTimeNowCheckBox);
layoutTable.setWidget(3, 1, simulateStartTimePanel);
layoutTable.setWidget(4, 1, ignoreTracTracMarkPassingsCheckbox);
// Filter
@@ -361,6 +361,7 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages, c
String errorUpdatingScoresForLeaderboard(String leaderboardName, String message);
String maneuverTypesToShowWhenCompetitorIsClicked();
String simulateWithStartTimeNow();
String simulateWithNowMinutesBeforeRaceStart();
String boatClassDoesNotMatchSelectedRegatta(String boatClass);
String regattaExistForSelectedBoatClass();
String reload();
@@ -371,6 +371,7 @@ successfullyUpdatedScores=Successfully updated scores
errorUpdatingScoresForLeaderboard=Error updating scores for leaderboard {0}: {1}
maneuverTypesToShowWhenCompetitorIsClicked=Maneuver types to show when competitor is clicked
simulateWithStartTimeNow=Simulate with "now" as start time
simulateWithNowMinutesBeforeRaceStart=Simulate race with "now" as start time offset in minutes:
boatClassDoesNotMatchSelectedRegatta=The selected races contain boat classes which are not the same as the boat class ''{0}'' of the selected regatta. No races will be loaded.
regattaExistForSelectedBoatClass=There is at least one regatta for the selected boat classes. Really create default regatta(s) for those race(s)?
reload=Reload
@@ -372,6 +372,7 @@ successfullyUpdatedScores=Ergebnisse erfolgreich aktualisiert
errorUpdatingScoresForLeaderboard=Fehler beim Aktualisieren der Ergebnisse für {0}: {1}
maneuverTypesToShowWhenCompetitorIsClicked=Anzuzeigende Manövertypen für angeklickte Teilnehmer
simulateWithStartTimeNow=Simulieren mit "jetzt" als Startzeit
simulateWithNowMinutesBeforeRaceStart=Simluliere mit "jetzt" als Start Zeit Offset in Minuten:
boatClassDoesNotMatchSelectedRegatta=Die ausgewählten Rennen enthalten eine Bootsklasse, die nicht der Bootsklasse der ausgewählten Regatta ''{0}'' entspricht. Es werden keine Rennen geladen.
regattaExistForSelectedBoatClass=Es gibt mindestens eine Regatta zu den ausgewählten Bootsklassen. Dennoch Default-Regatta für diese(s) Rennen anlegen?
reload=Neu laden
@@ -365,6 +365,7 @@ successfullyUpdatedScores=Очки обновлены успешно
errorUpdatingScoresForLeaderboard=Ошибка обновления очков для таблицы лидеров {0}: {1}
maneuverTypesToShowWhenCompetitorIsClicked=Типы маневров для отображения при нажатии на участника
simulateWithStartTimeNow=Моделирования с "сейчас" в качестве времени начала
simulateWithNowMinutesBeforeRaceStart=Simulate race with "now" as start time offset in minutes:
boatClassDoesNotMatchSelectedRegatta=Выбранные гонки содержат классы судов не соответствующие классу судов ''{0}'' выбранной регаты.
regattaExistForSelectedBoatClass=Есть только одна регата для выбранных классов судов.
reload=Перезагрузить
@@ -1067,6 +1067,7 @@ rawFixes=All fixes (including outliers)
showCompetitorFullNameColumn=Show Competitor Full Name
disableRaceFilter=Disable filter
simulateWithStartTimeNow=Simulate with "now" as start time
simulateWithNowMinutesBeforeRaceStart=Simulate race with "now" as start time offset in minutes:
polarSheetOutlierDetectionRadiusTooltip=The radius used in the distance based outlierndetection algorithm.
noWindFixesAvailable=No Wind-Fixes available.
correctScoreFor=Correct score for competitor {0} in race {1}