mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-27 06:17:27 +00:00
Initial addition of the quickfinder for series
This commit is contained in:
1 parent
8e9bdb2c87
commit
fa6cc7f9f4
4 files changed
+38
-1
No files matched your search
+12
@@ -11,6 +11,7 @@ import com.sap.sailing.gwt.home.client.place.fakeseries.AbstractSeriesPlace;
|
||||
import com.sap.sailing.gwt.home.client.place.fakeseries.SeriesContext;
|
||||
import com.sap.sailing.gwt.home.client.place.fakeseries.tabs.EventSeriesOverallLeaderboardPlace;
|
||||
import com.sap.sailing.gwt.home.mobile.app.MobileApplicationClientFactory;
|
||||
import com.sap.sailing.gwt.home.mobile.places.minileaderboard.MiniLeaderboardPlace;
|
||||
import com.sap.sailing.gwt.home.mobile.places.series.minileaderboard.SeriesMiniOverallLeaderboardPlace;
|
||||
import com.sap.sailing.gwt.home.shared.app.PlaceNavigation;
|
||||
import com.sap.sailing.gwt.home.shared.dispatch.DispatchSystem;
|
||||
@@ -53,6 +54,8 @@ public class SeriesActivity extends AbstractActivity implements SeriesView.Prese
|
||||
|
||||
private void initUi(final AcceptsOneWidget panel, EventBus eventBus) {
|
||||
final SeriesView view = new SeriesViewImpl(this);
|
||||
EventSeriesViewDTO series = getCtx().getSeriesDTO();
|
||||
view.setQuickFinderValues(series.getDisplayName(), series.getEvents());
|
||||
panel.setWidget(view.asWidget());
|
||||
}
|
||||
|
||||
@@ -65,6 +68,15 @@ public class SeriesActivity extends AbstractActivity implements SeriesView.Prese
|
||||
return clientFactory.getDispatch();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void navigate(String eventId) {
|
||||
if(eventId == null || eventId.isEmpty()) {
|
||||
getMiniOverallLeaderboardNavigation().goToPlace();
|
||||
return;
|
||||
}
|
||||
clientFactory.getNavigator().getEventNavigation(new MiniLeaderboardPlace(eventId, null), null, false).goToPlace();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlaceNavigation<?> getOverallLeaderboardNavigation() {
|
||||
return clientFactory.getNavigator().getSeriesNavigation(new EventSeriesOverallLeaderboardPlace(getCtx()), null, false);
|
||||
|
||||
+7
-1
@@ -1,15 +1,21 @@
|
||||
package com.sap.sailing.gwt.home.mobile.places.series;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import com.google.gwt.user.client.ui.Widget;
|
||||
import com.sap.sailing.gwt.home.client.place.fakeseries.SeriesContext;
|
||||
import com.sap.sailing.gwt.home.mobile.partials.quickfinder.QuickfinderNavigationHandler;
|
||||
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.general.EventMetadataDTO;
|
||||
|
||||
public interface SeriesView {
|
||||
|
||||
Widget asWidget();
|
||||
|
||||
void setQuickFinderValues(String seriesName, Collection<EventMetadataDTO> eventsOfSeries);
|
||||
|
||||
public interface Presenter extends OverallLeaderboardNavigationProvider {
|
||||
public interface Presenter extends OverallLeaderboardNavigationProvider, QuickfinderNavigationHandler {
|
||||
SeriesContext getCtx();
|
||||
DispatchSystem getDispatch();
|
||||
PlaceNavigation<?> getEventNavigation(String eventId);
|
||||
|
||||
+18
@@ -1,5 +1,7 @@
|
||||
package com.sap.sailing.gwt.home.mobile.places.series;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import com.google.gwt.core.client.GWT;
|
||||
import com.google.gwt.uibinder.client.UiBinder;
|
||||
import com.google.gwt.uibinder.client.UiField;
|
||||
@@ -8,6 +10,7 @@ import com.google.gwt.user.client.ui.FlowPanel;
|
||||
import com.google.gwt.user.client.ui.Widget;
|
||||
import com.sap.sailing.gwt.home.client.place.event.regatta.tabs.reload.RefreshManager;
|
||||
import com.sap.sailing.gwt.home.mobile.partials.minileaderboard.MinileaderboardBox;
|
||||
import com.sap.sailing.gwt.home.mobile.partials.quickfinder.Quickfinder;
|
||||
import com.sap.sailing.gwt.home.mobile.partials.recents.EventsOverviewRecentYearEvent;
|
||||
import com.sap.sailing.gwt.home.mobile.partials.seriesheader.SeriesHeader;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
@@ -24,6 +27,7 @@ public class SeriesViewImpl extends Composite implements SeriesView {
|
||||
}
|
||||
|
||||
@UiField(provided = true) SeriesHeader eventHeaderUi;
|
||||
@UiField(provided = true) Quickfinder quickFinderUi;
|
||||
@UiField MinileaderboardBox leaderboardUi;
|
||||
@UiField FlowPanel eventsUi;
|
||||
// @UiField(provided = true) StatisticsBox statisticsBoxUi;
|
||||
@@ -36,6 +40,7 @@ public class SeriesViewImpl extends Composite implements SeriesView {
|
||||
this.refreshManager = new RefreshManager(this, currentPresenter.getDispatch());
|
||||
EventSeriesViewDTO series = currentPresenter.getCtx().getSeriesDTO();
|
||||
eventHeaderUi = new SeriesHeader(series);
|
||||
quickFinderUi = new Quickfinder(currentPresenter);
|
||||
// this.setupStatisticsBox(event);
|
||||
initWidget(uiBinder.createAndBindUi(this));
|
||||
this.setupListContent(series);
|
||||
@@ -54,6 +59,19 @@ public class SeriesViewImpl extends Composite implements SeriesView {
|
||||
first = false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setQuickFinderValues(String seriesName, Collection<EventMetadataDTO> eventsOfSeries) {
|
||||
if (eventsOfSeries == null) {
|
||||
quickFinderUi.removeFromParent();
|
||||
return;
|
||||
}
|
||||
quickFinderUi.addPlaceholderItem(MSG.resultsQuickfinder(), null);
|
||||
quickFinderUi.addItemToGroup(seriesName, MSG.overallLeaderboardSelection(), "");
|
||||
for (EventMetadataDTO eventOfSeries : eventsOfSeries) {
|
||||
quickFinderUi.addItemToGroup(seriesName, eventOfSeries.getLocationOrDisplayName(), eventOfSeries.getId().toString());
|
||||
}
|
||||
}
|
||||
|
||||
private void setupListContent(EventSeriesViewDTO event) {
|
||||
leaderboardUi.setAction(MSG.showAll(), currentPresenter.getMiniOverallLeaderboardNavigation());
|
||||
|
||||
+1
@@ -18,6 +18,7 @@
|
||||
<g:HTMLPanel>
|
||||
<div class="{style.headerWrapper}">
|
||||
<mp:seriesheader.SeriesHeader ui:field="eventHeaderUi" />
|
||||
<mp:quickfinder.Quickfinder ui:field="quickFinderUi" />
|
||||
</div>
|
||||
<g:FlowPanel ui:field="eventsUi" />
|
||||
<mp:minileaderboard.MinileaderboardBox ui:field="leaderboardUi"/>
|
||||
|
||||
Reference in new issue
Block a user