mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-18 02:00:58 +00:00
filter added to MediaPanel
This commit is contained in:
1 parent
6b27b76a43
commit
c3cdcb5cbf
8 files changed
+44
-8
No files matched your search
@@ -628,7 +628,7 @@ img.openColumn {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.gwt-Button, .gwt-Button:visited {
|
||||
.gwt-Button, .gwt-Button:visited, .test, .test:visited {
|
||||
background-color: #fcbb22;
|
||||
background-image: none !important;
|
||||
-moz-box-shadow: none;
|
||||
@@ -641,4 +641,8 @@ img.openColumn {
|
||||
|
||||
.gwt-Button:hover {
|
||||
background-color: #fcbb22 !important;
|
||||
}
|
||||
|
||||
.test:hover {
|
||||
|
||||
}
|
||||
+35
-4
@@ -3,6 +3,7 @@ package com.sap.sailing.gwt.ui.adminconsole;
|
||||
import static com.google.gwt.dom.client.BrowserEvents.CLICK;
|
||||
import static com.google.gwt.dom.client.BrowserEvents.KEYUP;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.Comparator;
|
||||
import java.util.Date;
|
||||
@@ -30,6 +31,9 @@ import com.google.gwt.user.client.rpc.AsyncCallback;
|
||||
import com.google.gwt.user.client.ui.Button;
|
||||
import com.google.gwt.user.client.ui.FlowPanel;
|
||||
import com.google.gwt.user.client.ui.Grid;
|
||||
import com.google.gwt.user.client.ui.HasVerticalAlignment;
|
||||
import com.google.gwt.user.client.ui.HorizontalPanel;
|
||||
import com.google.gwt.user.client.ui.Label;
|
||||
import com.google.gwt.view.client.DefaultSelectionEventManager;
|
||||
import com.google.gwt.view.client.ListDataProvider;
|
||||
import com.google.gwt.view.client.SelectionModel;
|
||||
@@ -50,6 +54,7 @@ import com.sap.sailing.gwt.ui.client.media.TimeFormatUtil;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaDTO;
|
||||
import com.sap.sse.gwt.client.async.MarkedAsyncCallback;
|
||||
import com.sap.sse.gwt.client.dialog.DataEntryDialog.DialogCallback;
|
||||
import com.sap.sse.gwt.client.panels.LabeledAbstractFilterablePanel;
|
||||
|
||||
/**
|
||||
* Table inspired by http://gwt.google.com/samples/Showcase/Showcase.html#!CwCellTable
|
||||
@@ -60,6 +65,8 @@ import com.sap.sse.gwt.client.dialog.DataEntryDialog.DialogCallback;
|
||||
public class MediaPanel extends FlowPanel {
|
||||
|
||||
private final SailingServiceAsync sailingService;
|
||||
private final LabeledAbstractFilterablePanel<MediaTrack> filterableMediaTracks;
|
||||
private List<MediaTrack> allMediaTracks;
|
||||
private final RegattaRefresher regattaRefresher;
|
||||
private final MediaServiceAsync mediaService;
|
||||
private final ErrorReporter errorReporter;
|
||||
@@ -76,12 +83,14 @@ public class MediaPanel extends FlowPanel {
|
||||
this.regattasDisplayers = regattasDisplayers;
|
||||
this.sailingService = sailingService;
|
||||
this.regattaRefresher = regattaRefresher;
|
||||
this.mediaService = mediaService;
|
||||
this.mediaService = mediaService;
|
||||
this.stringMessages = stringMessages;
|
||||
this.errorReporter = errorReporter;
|
||||
mediaTracks = new Grid();
|
||||
mediaTracks.resizeColumns(3);
|
||||
add(mediaTracks);
|
||||
HorizontalPanel buttonAndFilterPanel = new HorizontalPanel();
|
||||
allMediaTracks = new ArrayList<MediaTrack>();
|
||||
Button refreshButton = new Button(stringMessages.refresh());
|
||||
refreshButton.addClickHandler(new ClickHandler() {
|
||||
@Override
|
||||
@@ -90,7 +99,7 @@ public class MediaPanel extends FlowPanel {
|
||||
}
|
||||
|
||||
});
|
||||
add(refreshButton);
|
||||
buttonAndFilterPanel.add(refreshButton);
|
||||
Button addUrlButton = new Button(stringMessages.addMediaTrack());
|
||||
addUrlButton.addClickHandler(new ClickHandler() {
|
||||
@Override
|
||||
@@ -98,9 +107,25 @@ public class MediaPanel extends FlowPanel {
|
||||
addUrlMediaTrack();
|
||||
}
|
||||
});
|
||||
add(addUrlButton);
|
||||
|
||||
buttonAndFilterPanel.add(addUrlButton);
|
||||
add(buttonAndFilterPanel);
|
||||
createMediaTracksTable();
|
||||
Label lblFilterRaces = new Label(stringMessages.filterMediaByName() + ":");
|
||||
lblFilterRaces.setWordWrap(false);
|
||||
buttonAndFilterPanel.setSpacing(5);
|
||||
buttonAndFilterPanel.add(lblFilterRaces);
|
||||
buttonAndFilterPanel.setCellVerticalAlignment(lblFilterRaces, HasVerticalAlignment.ALIGN_MIDDLE);
|
||||
this.filterableMediaTracks = new LabeledAbstractFilterablePanel<MediaTrack>(lblFilterRaces, allMediaTracks, mediaTracksTable, mediaTrackListDataProvider) {
|
||||
@Override
|
||||
public List<String> getSearchableStrings(MediaTrack t) {
|
||||
List<String> strings = new ArrayList<String>();
|
||||
strings.add(t.title);
|
||||
strings.add(t.startTime.toString());
|
||||
return strings;
|
||||
}
|
||||
};
|
||||
filterableMediaTracks.getTextBox().ensureDebugId("MediaTracksFilterTextBox");
|
||||
buttonAndFilterPanel.add(filterableMediaTracks);
|
||||
}
|
||||
|
||||
protected void loadMediaTracks() {
|
||||
@@ -114,9 +139,13 @@ public class MediaPanel extends FlowPanel {
|
||||
@Override
|
||||
public void onSuccess(Collection<MediaTrack> allMediaTracks) {
|
||||
mediaTrackListDataProvider.getList().addAll(allMediaTracks);
|
||||
allMediaTracks.clear();
|
||||
allMediaTracks.addAll(mediaTrackListDataProvider.getList());
|
||||
filterableMediaTracks.updateAll(allMediaTracks);
|
||||
mediaTrackListDataProvider.refresh();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -144,6 +173,8 @@ public class MediaPanel extends FlowPanel {
|
||||
|
||||
mediaTrackListDataProvider.addDataDisplay(mediaTracksTable);
|
||||
add(mediaTracksTable);
|
||||
allMediaTracks.clear();
|
||||
allMediaTracks.addAll(mediaTrackListDataProvider.getList());
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+1
@@ -183,6 +183,7 @@ public interface StringMessages extends Messages {
|
||||
String otherManeuver();
|
||||
String douglasPeuckerPoints();
|
||||
String filterRacesByName();
|
||||
String filterMediaByName();
|
||||
String actionEdit();
|
||||
String actionEditScores();
|
||||
String actionEditCompetitors();
|
||||
|
||||
+1
@@ -198,6 +198,7 @@ mark=Mark
|
||||
otherManeuver=Unknown maneuver
|
||||
douglasPeuckerPoints=Douglas peucker points
|
||||
filterRacesByName=Filter races by name
|
||||
filterMediaByName=Filter media by name
|
||||
trackSettings=Track settings
|
||||
actionEdit=Edit
|
||||
actionEditCompetitors=Edit competitors
|
||||
|
||||
+1
@@ -200,6 +200,7 @@ mark=Tonne
|
||||
otherManeuver=Manövertyp unbekannt
|
||||
douglasPeuckerPoints=Douglas-Peucker-Punkte
|
||||
filterRacesByName=Rennen nach Name filtern
|
||||
filterMediaByName=Medien nach Name filtern
|
||||
actionEdit=Ändern
|
||||
actionEditCompetitors=Teilnehmer ändern
|
||||
actionEditScores=Punkte ändern
|
||||
|
||||
-1
@@ -234,7 +234,6 @@ public class MediaMultiSelectionControl extends AbstractMediaSelectionControl im
|
||||
|
||||
private Button createDeleteButton(final MediaTrack videoTrack) {
|
||||
Button deleteButton = new Button("X", new ClickHandler() {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
if (mediaPlayerManager.deleteMediaTrack(videoTrack)) {
|
||||
|
||||
-1
@@ -1,7 +1,6 @@
|
||||
package com.sap.sailing.gwt.ui.client.media;
|
||||
|
||||
import com.google.gwt.i18n.client.DateTimeFormat;
|
||||
import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat;
|
||||
import com.google.gwt.i18n.client.NumberFormat;
|
||||
import com.sap.sailing.domain.common.Duration;
|
||||
import com.sap.sailing.domain.common.impl.MillisecondsDurationImpl;
|
||||
|
||||
+1
-1
@@ -99,7 +99,7 @@ public class YoutubePopupWindow extends AbstractPopupWindow {
|
||||
|
||||
public native boolean isPaused() /*-{
|
||||
var player = this.@com.sap.sailing.gwt.ui.client.media.popup.YoutubePopupWindow::youtubePlayer;
|
||||
return player.getPlayerState() == $wnd.YT.PlayerState.PAUSED;
|
||||
return player.getPlayerState() != $wnd.YT.PlayerState.PLAYING;
|
||||
}-*/;
|
||||
|
||||
public native double getDuration() /*-{
|
||||
|
||||
Reference in new issue
Block a user