mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-09-30 17:36:40 +00:00
trying to fix automatic sorting or leaderboard in case of pre-selected race
This commit is contained in:
1 parent
c610eac44c
commit
586a6c9a3e
2 files changed
+10
-21
No files matched your search
+5
-18
@@ -147,11 +147,6 @@ public class LeaderboardPanel extends FormPanel implements TimeListener, PlaySta
|
|||||||
|
|
||||||
private final Timer timer;
|
private final Timer timer;
|
||||||
|
|
||||||
/**
|
|
||||||
* The delay with which the timer shall work. Before the timer is resumed, the delay is set to this value.
|
|
||||||
*/
|
|
||||||
private long delayInMilliseconds;
|
|
||||||
|
|
||||||
private boolean autoExpandFirstRace;
|
private boolean autoExpandFirstRace;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -844,7 +839,6 @@ public class LeaderboardPanel extends FormPanel implements TimeListener, PlaySta
|
|||||||
ErrorReporter errorReporter, final StringMessages stringMessages, final UserAgentTypes userAgentType) {
|
ErrorReporter errorReporter, final StringMessages stringMessages, final UserAgentTypes userAgentType) {
|
||||||
this(sailingService, settings, preSelectedRace, competitorSelectionProvider, new Timer(PlayModes.Replay, /* delayBetweenAutoAdvancesInMilliseconds */3000l),
|
this(sailingService, settings, preSelectedRace, competitorSelectionProvider, new Timer(PlayModes.Replay, /* delayBetweenAutoAdvancesInMilliseconds */3000l),
|
||||||
leaderboardName, leaderboardGroupName, errorReporter, stringMessages, userAgentType);
|
leaderboardName, leaderboardGroupName, errorReporter, stringMessages, userAgentType);
|
||||||
timer.setDelay(getDelayInMilliseconds()); // set time/delay before adding as listener
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public LeaderboardPanel(SailingServiceAsync sailingService, LeaderboardSettings settings, RaceIdentifier preSelectedRace,
|
public LeaderboardPanel(SailingServiceAsync sailingService, LeaderboardSettings settings, RaceIdentifier preSelectedRace,
|
||||||
@@ -865,7 +859,6 @@ public class LeaderboardPanel extends FormPanel implements TimeListener, PlaySta
|
|||||||
selectedLegDetails.addAll(settings.getLegDetailsToShow());
|
selectedLegDetails.addAll(settings.getLegDetailsToShow());
|
||||||
selectedManeuverDetails.addAll(settings.getManeuverDetailsToShow());
|
selectedManeuverDetails.addAll(settings.getManeuverDetailsToShow());
|
||||||
selectedRaceDetails.addAll(settings.getRaceDetailsToShow());
|
selectedRaceDetails.addAll(settings.getRaceDetailsToShow());
|
||||||
delayInMilliseconds = settings.getDelayInMilliseconds();
|
|
||||||
setAutoExpandFirstRace(settings.isAutoExpandFirstRace());
|
setAutoExpandFirstRace(settings.isAutoExpandFirstRace());
|
||||||
|
|
||||||
this.timer = timer;
|
this.timer = timer;
|
||||||
@@ -930,7 +923,6 @@ public class LeaderboardPanel extends FormPanel implements TimeListener, PlaySta
|
|||||||
if (LeaderboardPanel.this.timer.getPlayState() == PlayStates.Playing) {
|
if (LeaderboardPanel.this.timer.getPlayState() == PlayStates.Playing) {
|
||||||
LeaderboardPanel.this.timer.pause();
|
LeaderboardPanel.this.timer.pause();
|
||||||
} else {
|
} else {
|
||||||
LeaderboardPanel.this.timer.setDelay(getDelayInMilliseconds());
|
|
||||||
LeaderboardPanel.this.timer.play();
|
LeaderboardPanel.this.timer.play();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -996,16 +988,8 @@ public class LeaderboardPanel extends FormPanel implements TimeListener, PlaySta
|
|||||||
return AbstractImagePrototype.create(playIcon).getSafeHtml();
|
return AbstractImagePrototype.create(playIcon).getSafeHtml();
|
||||||
}
|
}
|
||||||
|
|
||||||
private long getDelayInMilliseconds() {
|
|
||||||
return delayInMilliseconds;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void setDelayInMilliseconds(long delayInMilliseconds) {
|
private void setDelayInMilliseconds(long delayInMilliseconds) {
|
||||||
this.delayInMilliseconds = delayInMilliseconds;
|
|
||||||
timer.setDelay(delayInMilliseconds);
|
timer.setDelay(delayInMilliseconds);
|
||||||
if (timer.getPlayMode() == PlayModes.Live) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isAutoExpandFirstRace() {
|
public boolean isAutoExpandFirstRace() {
|
||||||
@@ -1584,7 +1568,10 @@ public class LeaderboardPanel extends FormPanel implements TimeListener, PlaySta
|
|||||||
playPause.setHTML(getPlayPauseImgHtml(playState));
|
playPause.setHTML(getPlayPauseImgHtml(playState));
|
||||||
playPause.setTitle(playState == PlayStates.Playing ? stringMessages.pauseAutomaticRefresh() : stringMessages.autoRefresh());
|
playPause.setTitle(playState == PlayStates.Playing ? stringMessages.pauseAutomaticRefresh() : stringMessages.autoRefresh());
|
||||||
if (!settingsUpdatedExplicitly && playMode != oldPlayMode) {
|
if (!settingsUpdatedExplicitly && playMode != oldPlayMode) {
|
||||||
updateSettings(LeaderboardSettingsFactory.getInstance().createNewSettingsForPlayMode(playMode, /* columnToSort */ null));
|
// if settings weren't explicitly modified, auto-switch to live mode settings and sort for
|
||||||
|
// any pre-selected race
|
||||||
|
updateSettings(LeaderboardSettingsFactory.getInstance().createNewSettingsForPlayMode(playMode,
|
||||||
|
/* don't touch columnToSort */ preSelectedRace == null ? null : preSelectedRace.getRaceName()));
|
||||||
}
|
}
|
||||||
currentlyHandlingPlayStateChange = false;
|
currentlyHandlingPlayStateChange = false;
|
||||||
oldPlayMode = playMode;
|
oldPlayMode = playMode;
|
||||||
@@ -1623,7 +1610,7 @@ public class LeaderboardPanel extends FormPanel implements TimeListener, PlaySta
|
|||||||
Collections.unmodifiableList(selectedLegDetails),
|
Collections.unmodifiableList(selectedLegDetails),
|
||||||
Collections.unmodifiableList(selectedRaceDetails), /* All races to select */
|
Collections.unmodifiableList(selectedRaceDetails), /* All races to select */
|
||||||
leaderboard.getRaceList(), selectedRaceColumns,
|
leaderboard.getRaceList(), selectedRaceColumns,
|
||||||
autoExpandFirstRace, timer.getRefreshInterval(), delayInMilliseconds, stringMessages);
|
autoExpandFirstRace, timer.getRefreshInterval(), timer.getLivePlayDelayInMillis(), stringMessages);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
+5
-3
@@ -129,8 +129,10 @@ public class RaceBoardPanel extends FormPanel implements EventDisplayer, RaceSel
|
|||||||
componentsNavigationPanel.addStyleName("raceBoardNavigation");
|
componentsNavigationPanel.addStyleName("raceBoardNavigation");
|
||||||
|
|
||||||
// create the default leaderboard and select the right race
|
// create the default leaderboard and select the right race
|
||||||
LeaderboardSettings leaderBoardSettings = LeaderboardSettingsFactory.getInstance().createNewSettingsForPlayMode(timer.getPlayMode(), /* columnToSort */ null);
|
LeaderboardSettings leaderBoardSettings = LeaderboardSettingsFactory.getInstance()
|
||||||
LeaderboardPanel leaderboardPanel = new LeaderboardPanel(sailingService, leaderBoardSettings, selectedRaceIdentifier, competitorSelectionModel,
|
.createNewSettingsForPlayMode(timer.getPlayMode(), /* nameOfRaceToSort */ selectedRaceIdentifier.getRaceName());
|
||||||
|
LeaderboardPanel leaderboardPanel = new LeaderboardPanel(sailingService, leaderBoardSettings,
|
||||||
|
selectedRaceIdentifier, competitorSelectionModel,
|
||||||
timer, leaderboardName, leaderboardGroupName, errorReporter, stringMessages, userAgentType);
|
timer, leaderboardName, leaderboardGroupName, errorReporter, stringMessages, userAgentType);
|
||||||
RaceMap raceMap = new RaceMap(sailingService, errorReporter, timer, competitorSelectionModel, stringMessages);
|
RaceMap raceMap = new RaceMap(sailingService, errorReporter, timer, competitorSelectionModel, stringMessages);
|
||||||
raceMap.onRaceSelectionChange(Collections.singletonList(selectedRaceIdentifier));
|
raceMap.onRaceSelectionChange(Collections.singletonList(selectedRaceIdentifier));
|
||||||
@@ -201,7 +203,7 @@ public class RaceBoardPanel extends FormPanel implements EventDisplayer, RaceSel
|
|||||||
// create the default leaderboard and select the right race
|
// create the default leaderboard and select the right race
|
||||||
if(showLeaderboard) {
|
if(showLeaderboard) {
|
||||||
LeaderboardSettings leaderBoardSettings = LeaderboardSettingsFactory.getInstance()
|
LeaderboardSettings leaderBoardSettings = LeaderboardSettingsFactory.getInstance()
|
||||||
.createNewSettingsForPlayMode(timer.getPlayMode(), /* nameOfRaceToSort */null);
|
.createNewSettingsForPlayMode(timer.getPlayMode(), /* nameOfRaceToSort */ selectedRaceIdentifier.getRaceName());
|
||||||
LeaderboardPanel leaderboardPanel = new LeaderboardPanel(sailingService, leaderBoardSettings,
|
LeaderboardPanel leaderboardPanel = new LeaderboardPanel(sailingService, leaderBoardSettings,
|
||||||
selectedRaceIdentifier, competitorSelectionModel, timer, leaderboardName, leaderboardGroupName,
|
selectedRaceIdentifier, competitorSelectionModel, timer, leaderboardName, leaderboardGroupName,
|
||||||
errorReporter, stringMessages, userAgentType);
|
errorReporter, stringMessages, userAgentType);
|
||||||
|
|||||||
Reference in new issue
Block a user