mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-07 21:01:03 +00:00
disable medal checkbox in race column edit table for regatta leaderboards
This commit is contained in:
1 parent
ba949292b1
commit
af4580d431
3 files changed
+37
-3
No files matched your search
+26
@@ -0,0 +1,26 @@
|
||||
package com.sap.sailing.gwt.ui.adminconsole;
|
||||
|
||||
import com.google.gwt.cell.client.CheckboxCell;
|
||||
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
|
||||
|
||||
public class DisablableCheckboxCell extends CheckboxCell {
|
||||
public static interface IsEnabled {
|
||||
boolean isEnabled();
|
||||
}
|
||||
|
||||
private final IsEnabled isEnabled;
|
||||
|
||||
public DisablableCheckboxCell(IsEnabled isEnabled) {
|
||||
this.isEnabled = isEnabled;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(com.google.gwt.cell.client.Cell.Context context, Boolean value, SafeHtmlBuilder sb) {
|
||||
if (isEnabled.isEnabled()) {
|
||||
super.render(context, value, sb);
|
||||
} else {
|
||||
sb.appendEscaped(value ? "x" : "");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
+8
-2
@@ -47,6 +47,7 @@ import com.sap.sailing.domain.common.RegattaIdentifier;
|
||||
import com.sap.sailing.domain.common.RegattaName;
|
||||
import com.sap.sailing.domain.common.RegattaNameAndRaceName;
|
||||
import com.sap.sailing.domain.common.impl.Util.Pair;
|
||||
import com.sap.sailing.gwt.ui.adminconsole.DisablableCheckboxCell.IsEnabled;
|
||||
import com.sap.sailing.gwt.ui.adminconsole.RaceColumnInLeaderboardDialog.RaceColumnDescriptor;
|
||||
import com.sap.sailing.gwt.ui.client.DataEntryDialog.DialogCallback;
|
||||
import com.sap.sailing.gwt.ui.client.ErrorReporter;
|
||||
@@ -393,7 +394,12 @@ public class LeaderboardConfigPanel extends FormPanel implements SelectedLeaderb
|
||||
};
|
||||
|
||||
Column<Pair<RaceColumnDTO, FleetDTO>, Boolean> isMedalRaceCheckboxColumn = new Column<Pair<RaceColumnDTO, FleetDTO>, Boolean>(
|
||||
new CheckboxCell()) {
|
||||
new DisablableCheckboxCell(new IsEnabled() {
|
||||
@Override
|
||||
public boolean isEnabled() {
|
||||
return !getSelectedLeaderboard().isRegattaLeaderboard;
|
||||
}
|
||||
})) {
|
||||
@Override
|
||||
public Boolean getValue(Pair<RaceColumnDTO, FleetDTO> race) {
|
||||
return race.getA().isMedalRace();
|
||||
@@ -746,7 +752,7 @@ public class LeaderboardConfigPanel extends FormPanel implements SelectedLeaderb
|
||||
}
|
||||
existingRacesWithoutThisRace.remove(raceColumnWithFleet.getA());
|
||||
final RaceColumnInLeaderboardDialog raceDialog = new RaceColumnInLeaderboardDialog(existingRacesWithoutThisRace,
|
||||
raceColumnWithFleet.getA(), stringMessages, new DialogCallback<RaceColumnDescriptor>() {
|
||||
raceColumnWithFleet.getA(), getSelectedLeaderboard().isRegattaLeaderboard, stringMessages, new DialogCallback<RaceColumnDescriptor>() {
|
||||
@Override
|
||||
public void cancel() {
|
||||
}
|
||||
|
||||
+3
-1
@@ -96,15 +96,17 @@ public class RaceColumnInLeaderboardDialog extends DataEntryDialog<RaceColumnInL
|
||||
}
|
||||
|
||||
public RaceColumnInLeaderboardDialog(List<RaceColumnDTO> existingRaces, RaceColumnDTO raceColumnToEdit,
|
||||
StringMessages stringMessages, DialogCallback<RaceColumnDescriptor> callback) {
|
||||
boolean isRegattaLeaderboard, StringMessages stringMessages, DialogCallback<RaceColumnDescriptor> callback) {
|
||||
super(stringMessages.actionRaceEdit(), null, stringMessages.ok(), stringMessages.cancel(),
|
||||
new RaceDialogValidator(stringMessages, existingRaces), callback);
|
||||
this.stringMessages = stringMessages;
|
||||
raceNameBox = createTextBox(raceColumnToEdit.getRaceColumnName());
|
||||
raceNameBox.setEnabled(!isRegattaLeaderboard);
|
||||
explicitFactorBox = raceColumnToEdit.getExplicitFactor() == null ?
|
||||
createDoubleBox(/* visibleLength */ 4) : createDoubleBox(raceColumnToEdit.getExplicitFactor(), /* visibleLength */ 4);
|
||||
isMedalRace = createCheckbox(stringMessages.medalRace());
|
||||
isMedalRace.setValue(raceColumnToEdit.isMedalRace());
|
||||
isMedalRace.setEnabled(!isRegattaLeaderboard);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in new issue
Block a user