mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-09 05:40:57 +00:00
Ensuring the correct default value for detailType in
MultiCompetitorLeaderboardChart
This commit is contained in:
1 parent
0d87afbdef
commit
9acb1acf53
5 files changed
+29
-7
No files matched your search
+1
-1
@@ -25,7 +25,7 @@ public class MultiCompetitorLeaderboardChartLifecycle implements
|
||||
|
||||
@Override
|
||||
public MultiCompetitorLeaderboardChartSettings createDefaultSettings() {
|
||||
return new MultiCompetitorLeaderboardChartSettings(null);
|
||||
return MultiCompetitorLeaderboardChartSettings.createWithDefaultDetailType(isOverall);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+20
-1
@@ -10,10 +10,13 @@ public class MultiCompetitorLeaderboardChartSettings extends AbstractGenericSeri
|
||||
|
||||
private EnumSetting<DetailType> detailType;
|
||||
|
||||
private MultiCompetitorLeaderboardChartSettings() {
|
||||
}
|
||||
|
||||
public MultiCompetitorLeaderboardChartSettings(DetailType detailType) {
|
||||
this.detailType.setValue(detailType);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected void addChildSettings() {
|
||||
detailType = new EnumSetting<>("detailType", this, new StringToEnumConverter<DetailType>() {
|
||||
@@ -27,4 +30,20 @@ public class MultiCompetitorLeaderboardChartSettings extends AbstractGenericSeri
|
||||
public DetailType getDetailType() {
|
||||
return detailType.getValue();
|
||||
}
|
||||
|
||||
public static MultiCompetitorLeaderboardChartSettings createWithDefaultDetailType(boolean isOverall, DetailType detailType) {
|
||||
MultiCompetitorLeaderboardChartSettings result = createWithDefaultDetailType(isOverall);
|
||||
result.detailType.setValue(detailType);
|
||||
return result;
|
||||
}
|
||||
|
||||
public static MultiCompetitorLeaderboardChartSettings createWithDefaultDetailType(boolean isOverall) {
|
||||
MultiCompetitorLeaderboardChartSettings result = new MultiCompetitorLeaderboardChartSettings();
|
||||
result.detailType.setDefaultValue(getDefaultDetailType(isOverall));
|
||||
return result;
|
||||
}
|
||||
|
||||
public static DetailType getDefaultDetailType(boolean isOverall) {
|
||||
return isOverall ? DetailType.OVERALL_RANK : DetailType.REGATTA_RANK;
|
||||
}
|
||||
}
|
||||
+4
-2
@@ -19,12 +19,14 @@ public class MultiCompetitorLeaderboardChartSettingsDialogComponent implements S
|
||||
private ListBox chartTypeSelectionListBox;
|
||||
private final DetailType initialDetailType;
|
||||
private final List<DetailType> availableDetailsTypes;
|
||||
private final boolean isOverall;
|
||||
|
||||
public MultiCompetitorLeaderboardChartSettingsDialogComponent(MultiCompetitorLeaderboardChartSettings settings, boolean isOverall) {
|
||||
this.isOverall = isOverall;
|
||||
this.initialDetailType = settings.getDetailType();
|
||||
|
||||
availableDetailsTypes = new ArrayList<DetailType>();
|
||||
availableDetailsTypes.add(isOverall ? DetailType.OVERALL_RANK : DetailType.REGATTA_RANK);
|
||||
availableDetailsTypes.add(MultiCompetitorLeaderboardChartSettings.getDefaultDetailType(isOverall));
|
||||
availableDetailsTypes.add(DetailType.REGATTA_NET_POINTS_SUM);
|
||||
}
|
||||
|
||||
@@ -72,7 +74,7 @@ public class MultiCompetitorLeaderboardChartSettingsDialogComponent implements S
|
||||
break;
|
||||
}
|
||||
}
|
||||
return new MultiCompetitorLeaderboardChartSettings(newDetailType);
|
||||
return MultiCompetitorLeaderboardChartSettings.createWithDefaultDetailType(isOverall, newDetailType);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+3
-2
@@ -26,7 +26,7 @@ public class MultiCompetitorLeaderboardChart extends AbstractCompetitorLeaderboa
|
||||
super(parent, context,sailingService, asyncActionsExecutor, leaderboardName, detailType, competitorSelectionProvider,
|
||||
timer, stringMessages, errorReporter);
|
||||
this.isOverall = isOverall;
|
||||
settings = new MultiCompetitorLeaderboardChartSettings(detailType);
|
||||
settings = MultiCompetitorLeaderboardChartSettings.createWithDefaultDetailType(isOverall, detailType);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -41,7 +41,8 @@ public class MultiCompetitorLeaderboardChart extends AbstractCompetitorLeaderboa
|
||||
|
||||
@Override
|
||||
public SettingsDialogComponent<MultiCompetitorLeaderboardChartSettings> getSettingsDialogComponent() {
|
||||
MultiCompetitorLeaderboardChartSettings chartSettings = new MultiCompetitorLeaderboardChartSettings(settings.getDetailType());
|
||||
MultiCompetitorLeaderboardChartSettings chartSettings = MultiCompetitorLeaderboardChartSettings
|
||||
.createWithDefaultDetailType(isOverall, settings.getDetailType());
|
||||
return new MultiCompetitorLeaderboardChartSettingsDialogComponent(chartSettings, isOverall);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -186,7 +186,7 @@ public class LeaderboardEntryPoint extends AbstractSailingEntryPoint {
|
||||
if (chartDetailType == DetailType.REGATTA_NET_POINTS_SUM) {
|
||||
return chartDetailType;
|
||||
}
|
||||
return leaderboardType.isMetaLeaderboard() ? DetailType.OVERALL_RANK : DetailType.REGATTA_RANK;
|
||||
return MultiCompetitorLeaderboardChartSettings.getDefaultDetailType(leaderboardType.isMetaLeaderboard());
|
||||
}
|
||||
|
||||
private void createUi(Widget leaderboardViewer, PerspectiveCompositeSettings<LeaderboardPerspectiveOwnSettings> settings, Timer timer, LeaderboardContextDefinition leaderboardContextSettings) {
|
||||
|
||||
Reference in new issue
Block a user