Regatta list - Leaderboard button color depending on regatta state

This commit is contained in:
Benjamin Barth committed 2015-07-13 15:07:10 +02:00
1 parent 1cc6a1d132
commit e487c7b22c
3 files changed
+16 -3

No files matched your search

@@ -7,6 +7,7 @@ import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.Widget;
import com.sap.sailing.gwt.home.client.place.event.multiregatta.EventMultiregattaView.Presenter;
import com.sap.sailing.gwt.home.client.place.event.partials.regattaHeader.RegattaHeader;
import com.sap.sailing.gwt.home.shared.app.PlaceNavigation;
import com.sap.sailing.gwt.ui.shared.dispatch.regatta.RegattaWithProgressDTO;
public class MultiRegattaListItem extends Composite {
@@ -26,7 +27,8 @@ public class MultiRegattaListItem extends Composite {
regattaStepsUi = new MultiRegattaListSteps(regattaWithProgress.getProgress());
initWidget(uiBinder.createAndBindUi(this));
regattaHeaderUi.setRegattaNavigation(presenter.getRegattaNavigation(regattaWithProgress.getId()));
regattaStepsUi.setLeaderboardNavigation(presenter.getRegattaLeaderboardNavigation(regattaWithProgress.getId()));
PlaceNavigation<?> leaderboardNavigation = presenter.getRegattaLeaderboardNavigation(regattaWithProgress.getId());
regattaStepsUi.setLeaderboardNavigation(regattaWithProgress.getState(), leaderboardNavigation);
}
void setVisibilityDependingOnBoatCategory(String visibleBoatCategory) {
@@ -10,9 +10,11 @@ import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.Widget;
import com.sap.sailing.gwt.common.client.SharedResources;
import com.sap.sailing.gwt.home.shared.app.PlaceNavigation;
import com.sap.sailing.gwt.ui.shared.dispatch.regatta.RegattaProgressDTO;
import com.sap.sailing.gwt.ui.shared.dispatch.regatta.RegattaProgressSeriesDTO;
import com.sap.sailing.gwt.ui.shared.eventview.HasRegattaMetadata.RegattaState;
public class MultiRegattaListSteps extends Composite {
@@ -34,9 +36,10 @@ public class MultiRegattaListSteps extends Composite {
}
}
void setLeaderboardNavigation(PlaceNavigation<?> placeNavigation) {
void setLeaderboardNavigation(RegattaState regattaState, PlaceNavigation<?> placeNavigation) {
placeNavigation.configureAnchorElement(leaderboardButtonUi);
leaderboardButtonUi.getStyle().clearDisplay();
leaderboardButtonUi.addClassName(getLeaderboardButtonStyle(regattaState));
Scheduler.get().scheduleDeferred(new ScheduledCommand() {
@Override
public void execute() {
@@ -45,4 +48,12 @@ public class MultiRegattaListSteps extends Composite {
});
}
private String getLeaderboardButtonStyle(RegattaState regattaState) {
switch (regattaState) {
case UPCOMING: return SharedResources.INSTANCE.mainCss().buttoninactive();
case RUNNING: return SharedResources.INSTANCE.mainCss().buttonred();
default: return SharedResources.INSTANCE.mainCss().buttonprimary();
}
}
}
@@ -8,7 +8,7 @@
<div class="{local_res.css.regattalistitem_steps}" ui:field="progressContainerUi">
<div ui:field="stepsContainerUi" />
<div class="{local_res.css.regattalistitem_steps_button}" ui:field="leaderboardButtonContainerUi">
<a class="{res.mainCss.button} {res.mainCss.buttonstrong} {res.mainCss.buttonprimary} {res.mainCss.buttonarrowrightwhite}"
<a class="{res.mainCss.button} {res.mainCss.buttonstrong} {res.mainCss.buttonarrowrightwhite}"
style="display:none;" ui:field="leaderboardButtonUi">
<ui:text from='{i18n.leaderboard}' />
</a>