consider null delay and null refresh rate as no change

This commit is contained in:
Axel Uhl committed 2012-03-09 17:35:00 +01:00
1 parent ffc8e185b9
commit 6bb15987fb
3 files changed
+31 -14

No files matched your search

@@ -254,12 +254,18 @@ public class LeaderboardPanel extends FormPanel implements TimeListener, PlaySta
}
}
}
selectedManeuverDetails.clear();
selectedManeuverDetails.addAll(newSettings.getManeuverDetailsToShow());
selectedLegDetails.clear();
selectedLegDetails.addAll(newSettings.getLegDetailsToShow());
selectedRaceDetails.clear();
selectedRaceDetails.addAll(newSettings.getRaceDetailsToShow());
if (newSettings.getManeuverDetailsToShow() != null) {
selectedManeuverDetails.clear();
selectedManeuverDetails.addAll(newSettings.getManeuverDetailsToShow());
}
if (newSettings.getLegDetailsToShow() != null) {
selectedLegDetails.clear();
selectedLegDetails.addAll(newSettings.getLegDetailsToShow());
}
if (newSettings.getRaceDetailsToShow() != null) {
selectedRaceDetails.clear();
selectedRaceDetails.addAll(newSettings.getRaceDetailsToShow());
}
if (newSettings.getRaceColumnsToShow() != null) {
selectedRaceColumns.clear();
selectedRaceColumns.addAll(newSettings.getRaceColumnsToShow());
@@ -269,8 +275,12 @@ public class LeaderboardPanel extends FormPanel implements TimeListener, PlaySta
updateLeaderboard(leaderboard);
setAutoExpandFirstRace(newSettings.isAutoExpandFirstRace());
timer.setRefreshInterval(newSettings.getDelayBetweenAutoAdvancesInMilliseconds());
setDelayInMilliseconds(newSettings.getDelayInMilliseconds());
if (newSettings.getDelayBetweenAutoAdvancesInMilliseconds() != null) {
timer.setRefreshInterval(newSettings.getDelayBetweenAutoAdvancesInMilliseconds());
}
if (newSettings.getDelayInMilliseconds() != null) {
setDelayInMilliseconds(newSettings.getDelayInMilliseconds());
}
for (ExpandableSortableColumn<?> expandableSortableColumn : columnsToExpandAgain) {
expandableSortableColumn.toggleExpansion();
}
@@ -12,8 +12,8 @@ public class LeaderboardSettings {
private final List<DetailType> legDetailsToShow;
private final List<DetailType> raceDetailsToShow;
private final boolean autoExpandFirstRace;
private final long delayBetweenAutoAdvancesInMilliseconds;
private final long delayInMilliseconds;
private final Long delayBetweenAutoAdvancesInMilliseconds;
private final Long delayInMilliseconds;
/**
* An optional sort column; if <code>null</code>, the leaderboard sorting won't be touched when updating the settings.
@@ -24,7 +24,7 @@ public class LeaderboardSettings {
public LeaderboardSettings(List<DetailType> meneuverDetailsToShow, List<DetailType> legDetailsToShow,
List<DetailType> raceDetailsToShow, List<RaceInLeaderboardDTO> raceColumnsToShow,
boolean autoExpandFirstRace, long delayBetweenAutoAdvancesInMilliseconds, long delayInMilliseconds,
boolean autoExpandFirstRace, Long delayBetweenAutoAdvancesInMilliseconds, Long delayInMilliseconds,
SortableColumn<LeaderboardRowDTO, ?> sortByColumn, boolean sortAscending) {
this.legDetailsToShow = legDetailsToShow;
this.raceDetailsToShow = raceDetailsToShow;
@@ -61,11 +61,18 @@ public class LeaderboardSettings {
return autoExpandFirstRace;
}
public long getDelayBetweenAutoAdvancesInMilliseconds() {
/**
* @return if <code>null</code>, leave refresh interval alone (don't change in
* {@link LeaderboardPanel#updateSettings(LeaderboardSettings)}
*/
public Long getDelayBetweenAutoAdvancesInMilliseconds() {
return delayBetweenAutoAdvancesInMilliseconds;
}
public long getDelayInMilliseconds() {
/**
* @return if <code>null</code>, leave delay alone (don't change in {@link LeaderboardPanel#updateSettings(LeaderboardSettings)}
*/
public Long getDelayInMilliseconds() {
return delayInMilliseconds;
}
@@ -36,7 +36,7 @@ public class LeaderboardSettingsFactory {
raceDetails.add(DetailType.NUMBER_OF_MANEUVERS);
settings = new LeaderboardSettings(maneuverDetails, legDetails, raceDetails,
/* don't change raceColumns */ null, true,
/* refresh interval */ 3000l, /* delay to live */ 5000l,
/* refresh interval */ null, /* delay to live */ null,
/* sort by column */ null, /* ascending */ true);
break;
case Replay: