From 3693891f53e664ad9674e5b63f7a89b7c92b3914 Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Wed, 19 Aug 2015 12:00:39 +0200 Subject: [PATCH] Refactored RacesViewImpl to use mobile event view abstraction --- .../home/mobile/places/races/RacesView.java | 28 ++------------- .../mobile/places/races/RacesViewImpl.java | 36 +++++-------------- .../mobile/places/races/RacesViewImpl.ui.xml | 10 ------ 3 files changed, 11 insertions(+), 63 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesView.java index 295a846d8de..5a2744226bd 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesView.java @@ -1,34 +1,12 @@ package com.sap.sailing.gwt.home.mobile.places.races; -import java.util.Collection; - -import com.google.gwt.user.client.ui.Widget; -import com.sap.sailing.gwt.home.client.place.event.EventContext; -import com.sap.sailing.gwt.home.mobile.places.RegattaLeaderboardNavigationProvider; import com.sap.sailing.gwt.home.mobile.places.RegattaRacesNavigationProvider; -import com.sap.sailing.gwt.home.mobile.places.SeriesLeaderboardNavigationProvider; -import com.sap.sailing.gwt.home.shared.app.PlaceNavigation; -import com.sap.sailing.gwt.home.shared.dispatch.DispatchSystem; -import com.sap.sailing.gwt.ui.shared.eventview.RegattaMetadataDTO; -import com.sap.sailing.gwt.ui.shared.general.EventReferenceDTO; +import com.sap.sailing.gwt.home.mobile.places.event.EventViewBase; -public interface RacesView { +public interface RacesView extends EventViewBase { - public interface Presenter extends RegattaLeaderboardNavigationProvider, SeriesLeaderboardNavigationProvider, - RegattaRacesNavigationProvider { + public interface Presenter extends EventViewBase.Presenter, RegattaRacesNavigationProvider { - PlaceNavigation getEventNavigation(); - - DispatchSystem getDispatch(); - - EventContext getCtx(); } - Widget asWidget(); - - void setQuickFinderValues(Collection regattas); - - void setQuickFinderValues(String seriesName, Collection eventsOfSeries); - - void hideQuickfinder(); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesViewImpl.java index f599f538dde..64e8930d15c 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesViewImpl.java @@ -1,59 +1,39 @@ package com.sap.sailing.gwt.home.mobile.places.races; import java.util.Collection; -import java.util.UUID; import com.google.gwt.core.client.GWT; 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.home.client.place.event.partials.listNavigation.RegattaNavigationResources; -import com.sap.sailing.gwt.home.client.place.event.regatta.tabs.reload.RefreshManager; -import com.sap.sailing.gwt.home.mobile.partials.eventheader.EventHeader; import com.sap.sailing.gwt.home.mobile.partials.quickfinder.Quickfinder; import com.sap.sailing.gwt.home.mobile.partials.regattacompetition.RegattaCompetition; import com.sap.sailing.gwt.home.mobile.places.QuickfinderPresenter; +import com.sap.sailing.gwt.home.mobile.places.event.AbstractEventView; import com.sap.sailing.gwt.ui.shared.dispatch.event.GetCompetitionFormatRacesAction; import com.sap.sailing.gwt.ui.shared.eventview.RegattaMetadataDTO; -import com.sap.sailing.gwt.ui.shared.general.EventReferenceDTO; -public class RacesViewImpl extends Composite implements RacesView { +public class RacesViewImpl extends AbstractEventView implements RacesView { private static RacesViewImplUiBinder uiBinder = GWT.create(RacesViewImplUiBinder.class); interface RacesViewImplUiBinder extends UiBinder { } - private Presenter currentPresenter; - @UiField(provided = true) EventHeader eventHeaderUi; @UiField(provided = true) RegattaCompetition regattaCompetitionUi; - @UiField Quickfinder quickFinderUi; - public RacesViewImpl(Presenter presenter) { - currentPresenter = presenter; - eventHeaderUi = new EventHeader(presenter.getCtx().getEventDTO(), presenter.getEventNavigation()); + public RacesViewImpl(RacesView.Presenter presenter) { + super(presenter, true); RegattaNavigationResources.INSTANCE.css().ensureInjected(); regattaCompetitionUi = new RegattaCompetition(presenter); - initWidget(uiBinder.createAndBindUi(this)); - RefreshManager refreshManager = new RefreshManager(this, presenter.getDispatch()); - UUID eventId = presenter.getCtx().getEventDTO().getId(); - refreshManager.add(regattaCompetitionUi, new GetCompetitionFormatRacesAction(eventId, presenter.getCtx().getRegattaId())); - } - - @Override - public void setQuickFinderValues(Collection regattaMetadatas) { - QuickfinderPresenter.getForRegattaRaces(quickFinderUi, currentPresenter, regattaMetadatas); + refreshManager.add(regattaCompetitionUi, new GetCompetitionFormatRacesAction(getEventId(), getRegattaId())); + setViewContent(uiBinder.createAndBindUi(this)); } @Override - public void setQuickFinderValues(String seriesName, Collection eventsOfSeries) { - QuickfinderPresenter.getForSeriesLeaderboards(quickFinderUi, seriesName, currentPresenter, eventsOfSeries); - } - - @Override - public void hideQuickfinder() { - quickFinderUi.removeFromParent(); + protected void setQuickFinderValues(Quickfinder quickfinder, Collection regattaMetadatas) { + QuickfinderPresenter.getForRegattaRaces(quickfinder, currentPresenter, regattaMetadatas); } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesViewImpl.ui.xml b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesViewImpl.ui.xml index e9319480c65..955e35d25f2 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesViewImpl.ui.xml +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/races/RacesViewImpl.ui.xml @@ -5,10 +5,6 @@ - .headerWrapper { - background-color: #f2f2f2; - padding-bottom: 10px; - } .pageTitle { font-size: 1.066666666666667em; font-weight: 700; @@ -20,12 +16,6 @@ } -
- - - - -