mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-25 05:23:51 +00:00
show racecontainer legend, based on existing data
This commit is contained in:
1 parent
bd88034550
commit
e46e8e1a66
5 files changed
+62
-9
No files matched your search
+15
@@ -86,5 +86,20 @@ public class LiveRacesList extends Composite {
|
||||
columnSet.addColumn(courseColumn);
|
||||
columnSet.addColumn(fleetNameColumn);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasWind() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasVideos() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasAudios() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
+6
-1
@@ -133,5 +133,10 @@ public abstract class AbstractRaceList<T extends RaceMetadataDTO<? extends Abstr
|
||||
}
|
||||
return filterableValues;
|
||||
}
|
||||
|
||||
|
||||
public abstract boolean hasWind();
|
||||
|
||||
public abstract boolean hasVideos();
|
||||
|
||||
public abstract boolean hasAudios();
|
||||
}
|
||||
+12
-1
@@ -15,7 +15,8 @@ import com.sap.sailing.gwt.home.communication.race.RaceMetadataDTO;
|
||||
import com.sap.sailing.gwt.home.shared.refresh.RefreshableWidget;
|
||||
import com.sap.sse.gwt.dispatch.shared.commands.CollectionResult;
|
||||
|
||||
public class RaceListContainer<T extends RaceMetadataDTO<?>> extends Composite implements RefreshableWidget<CollectionResult<T>> {
|
||||
public class RaceListContainer<T extends RaceMetadataDTO<?>> extends Composite
|
||||
implements RefreshableWidget<CollectionResult<T>> {
|
||||
|
||||
private static RaceListContainerUiBinder uiBinder = GWT.create(RaceListContainerUiBinder.class);
|
||||
|
||||
@@ -26,6 +27,10 @@ public class RaceListContainer<T extends RaceMetadataDTO<?>> extends Composite i
|
||||
@UiField DivElement infoUi;
|
||||
@UiField DivElement noContentPlaceholderUi;
|
||||
@UiField(provided = true) AbstractRaceList<T> raceListUi;
|
||||
@UiField DivElement iconWind;
|
||||
@UiField DivElement iconVideo;
|
||||
@UiField DivElement iconAudio;
|
||||
|
||||
private String noContentPlaceholderText;
|
||||
|
||||
public RaceListContainer(String title, AbstractRaceList<T> raceList) {
|
||||
@@ -55,11 +60,17 @@ public class RaceListContainer<T extends RaceMetadataDTO<?>> extends Composite i
|
||||
noContentPlaceholderUi.getStyle().clearDisplay();
|
||||
raceListUi.setVisible(false);
|
||||
}
|
||||
iconWind.getStyle().setDisplay(Display.NONE);
|
||||
iconVideo.getStyle().setDisplay(Display.NONE);
|
||||
iconAudio.getStyle().setDisplay(Display.NONE);
|
||||
} else {
|
||||
noContentPlaceholderUi.getStyle().setDisplay(Display.NONE);
|
||||
getElement().getStyle().clearDisplay();
|
||||
raceListUi.setVisible(true);
|
||||
this.raceListUi.setTableData(data);
|
||||
iconWind.getStyle().setDisplay(raceListUi.hasWind() ? Display.INLINE_BLOCK : Display.NONE);
|
||||
iconVideo.getStyle().setDisplay(raceListUi.hasVideos() ? Display.INLINE_BLOCK : Display.NONE);
|
||||
iconAudio.getStyle().setDisplay(raceListUi.hasAudios() ? Display.INLINE_BLOCK : Display.NONE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+4
-4
@@ -8,7 +8,7 @@
|
||||
<ui:style>
|
||||
.iconGPS, .iconWind, .iconVideo, .iconAudio{
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
display: none;
|
||||
margin-left: 0.666666666666667em;
|
||||
padding-left: 2.333333333333333em;
|
||||
background-size: 1.666666666666667rem 1.666666666666667rem;
|
||||
@@ -40,9 +40,9 @@
|
||||
<g:HTMLPanel addStyleNames="{local_res.css.raceslistlive}">
|
||||
<h3 ui:field="titleUi" class="{res.mediaCss.column} {res.mediaCss.medium12} {res.mediaCss.large4}"/>
|
||||
<div ui:field="legend" class="{res.mediaCss.column} {res.mediaCss.medium12} {res.mediaCss.large8} {style.legend}">
|
||||
<div class="{style.iconWind}"><ui:text from='{i18n.eventRegattaRacesLegendWind}'/></div>
|
||||
<div class="{style.iconVideo}"><ui:text from='{i18n.eventRegattaRacesLegendVideo}'/></div>
|
||||
<div class="{style.iconAudio}"><ui:text from='{i18n.eventRegattaRacesLegendAudio}'/></div>
|
||||
<div ui:field="iconWind" class="{style.iconWind}"><ui:text from='{i18n.eventRegattaRacesLegendWind}'/></div>
|
||||
<div ui:field="iconVideo" class="{style.iconVideo}"><ui:text from='{i18n.eventRegattaRacesLegendVideo}'/></div>
|
||||
<div ui:field="iconAudio" class="{style.iconAudio}"><ui:text from='{i18n.eventRegattaRacesLegendAudio}'/></div>
|
||||
</div>
|
||||
<div style="display: none;" ui:field="infoUi"></div>
|
||||
<div style="display: none; font-weight: bold; font-style: italic;" ui:field="noContentPlaceholderUi"></div>
|
||||
|
||||
+25
-3
@@ -196,6 +196,10 @@ public class RegattaRacesTabView extends Composite implements RegattaTabView<Reg
|
||||
private final SortableRaceListColumn<RaceListRaceDTO, ?> videoCountColumn = RaceListColumnFactory.getVideoCountColumn();
|
||||
private final SortableRaceListColumn<RaceListRaceDTO, ?> audioCountColumn = RaceListColumnFactory.getAudioCountColumn();
|
||||
private final SortableRaceListColumn<RaceListRaceDTO, ?> winnerColumn = RaceListColumnFactory.getWinnerColumn();
|
||||
private boolean hasWind;
|
||||
private boolean hasVideos;
|
||||
private boolean hasAudios;
|
||||
|
||||
|
||||
public RaceListFinishedRaces(EventView.Presenter presenter) {
|
||||
super(presenter, new RaceListColumnSet(1, 1));
|
||||
@@ -212,12 +216,15 @@ public class RegattaRacesTabView extends Composite implements RegattaTabView<Reg
|
||||
// TODO: this.startTimeColumn.setShowTimeOnly(!RaceListDataUtil.hasDifferentStartDates(data));
|
||||
this.startTimeColumn.setShowTimeOnly(false);
|
||||
this.durationColumn.setShowDetails(RaceListDataUtil.hasDurations(data));
|
||||
boolean hasWind = RaceListDataUtil.hasWind(data);
|
||||
this.hasWind = RaceListDataUtil.hasWind(data);
|
||||
this.hasVideos = RaceListDataUtil.hasVideos(data);
|
||||
this.hasAudios = RaceListDataUtil.hasAudios(data);
|
||||
|
||||
this.windSpeedColumn.setShowDetails(hasWind);
|
||||
this.windDirectionColumn.setShowDetails(hasWind);
|
||||
this.windSourcesCountColumn.setShowDetails(RaceListDataUtil.hasWindSources(data));
|
||||
this.videoCountColumn.setShowDetails(RaceListDataUtil.hasVideos(data));
|
||||
this.audioCountColumn.setShowDetails(RaceListDataUtil.hasAudios(data));
|
||||
this.videoCountColumn.setShowDetails(hasVideos);
|
||||
this.audioCountColumn.setShowDetails(hasAudios);
|
||||
this.winnerColumn.setShowDetails(RaceListDataUtil.hasWinner(data));
|
||||
super.setTableData(data);
|
||||
}
|
||||
@@ -245,6 +252,21 @@ public class RegattaRacesTabView extends Composite implements RegattaTabView<Reg
|
||||
columnSet.addColumn(audioCountColumn);
|
||||
columnSet.addColumn(fleetNameColumn);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasWind() {
|
||||
return hasWind;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasVideos() {
|
||||
return hasVideos;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasAudios() {
|
||||
return hasAudios;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user