mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-15 16:51:07 +00:00
applied selection checkbox also for other competitor tables
This commit is contained in:
1 parent
791f985d13
commit
d70c11c0dd
6 files changed
+55
-13
No files matched your search
+4
-2
@@ -61,8 +61,10 @@ public class CompetitorPanel extends SimplePanel {
|
|||||||
this.stringMessages = stringMessages;
|
this.stringMessages = stringMessages;
|
||||||
this.errorReporter = errorReporter;
|
this.errorReporter = errorReporter;
|
||||||
this.leaderboardName = leaderboardName;
|
this.leaderboardName = leaderboardName;
|
||||||
this.competitorTable = new CompetitorTableWrapper<>(sailingService, stringMessages, errorReporter,
|
final Class<?> selectionModelType = MultiSelectionModel.class;
|
||||||
new MultiSelectionModel<CompetitorDTO>(), false);
|
@SuppressWarnings("unchecked")
|
||||||
|
final Class<MultiSelectionModel<CompetitorDTO>> multiSelectionType = (Class<MultiSelectionModel<CompetitorDTO>>) selectionModelType;
|
||||||
|
this.competitorTable = new CompetitorTableWrapper<>(sailingService, stringMessages, errorReporter, multiSelectionType, false);
|
||||||
this.competitorSelectionModel = competitorTable.getSelectionModel();
|
this.competitorSelectionModel = competitorTable.getSelectionModel();
|
||||||
VerticalPanel mainPanel = new VerticalPanel();
|
VerticalPanel mainPanel = new VerticalPanel();
|
||||||
this.setWidget(mainPanel);
|
this.setWidget(mainPanel);
|
||||||
|
|||||||
+37
-2
@@ -6,6 +6,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import com.google.gwt.cell.client.SafeHtmlCell;
|
import com.google.gwt.cell.client.SafeHtmlCell;
|
||||||
import com.google.gwt.core.client.Callback;
|
import com.google.gwt.core.client.Callback;
|
||||||
|
import com.google.gwt.core.client.GWT;
|
||||||
import com.google.gwt.resources.client.ImageResource;
|
import com.google.gwt.resources.client.ImageResource;
|
||||||
import com.google.gwt.safehtml.shared.SafeHtml;
|
import com.google.gwt.safehtml.shared.SafeHtml;
|
||||||
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
|
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
|
||||||
@@ -15,23 +16,32 @@ import com.google.gwt.user.cellview.client.TextColumn;
|
|||||||
import com.google.gwt.user.client.rpc.AsyncCallback;
|
import com.google.gwt.user.client.rpc.AsyncCallback;
|
||||||
import com.google.gwt.user.client.ui.ImageResourceRenderer;
|
import com.google.gwt.user.client.ui.ImageResourceRenderer;
|
||||||
import com.google.gwt.user.client.ui.Label;
|
import com.google.gwt.user.client.ui.Label;
|
||||||
|
import com.google.gwt.view.client.ListDataProvider;
|
||||||
import com.google.gwt.view.client.SelectionModel;
|
import com.google.gwt.view.client.SelectionModel;
|
||||||
|
import com.google.gwt.view.client.SingleSelectionModel;
|
||||||
import com.sap.sailing.domain.common.dto.CompetitorDTO;
|
import com.sap.sailing.domain.common.dto.CompetitorDTO;
|
||||||
import com.sap.sailing.domain.common.impl.NaturalComparator;
|
import com.sap.sailing.domain.common.impl.NaturalComparator;
|
||||||
|
import com.sap.sailing.gwt.ui.adminconsole.AdminConsoleTableResources.AdminConsoleTableStyle;
|
||||||
import com.sap.sailing.gwt.ui.adminconsole.ColorColumn.ColorRetriever;
|
import com.sap.sailing.gwt.ui.adminconsole.ColorColumn.ColorRetriever;
|
||||||
import com.sap.sailing.gwt.ui.client.FlagImageResolver;
|
import com.sap.sailing.gwt.ui.client.FlagImageResolver;
|
||||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||||
|
import com.sap.sailing.gwt.ui.client.shared.controls.SelectionCheckboxColumn;
|
||||||
import com.sap.sse.common.Color;
|
import com.sap.sse.common.Color;
|
||||||
import com.sap.sse.gwt.client.ErrorReporter;
|
import com.sap.sse.gwt.client.ErrorReporter;
|
||||||
import com.sap.sse.gwt.client.panels.LabeledAbstractFilterablePanel;
|
import com.sap.sse.gwt.client.panels.LabeledAbstractFilterablePanel;
|
||||||
|
|
||||||
public class CompetitorTableWrapper<S extends SelectionModel<CompetitorDTO>> extends TableWrapper<CompetitorDTO, S> {
|
public class CompetitorTableWrapper<S extends SelectionModel<CompetitorDTO>> extends TableWrapper<CompetitorDTO, S> {
|
||||||
|
private static final AdminConsoleTableResources tableResources = GWT.create(AdminConsoleTableResources.class);
|
||||||
|
private static final AdminConsoleTableStyle tableSTyle = tableResources.cellTableStyle();
|
||||||
|
|
||||||
private final LabeledAbstractFilterablePanel<CompetitorDTO> filterField;
|
private final LabeledAbstractFilterablePanel<CompetitorDTO> filterField;
|
||||||
|
|
||||||
|
private final S selectionModel;
|
||||||
|
|
||||||
public CompetitorTableWrapper(SailingServiceAsync sailingService, StringMessages stringMessages,ErrorReporter errorReporter,
|
public CompetitorTableWrapper(SailingServiceAsync sailingService, StringMessages stringMessages,ErrorReporter errorReporter,
|
||||||
S selectionModel, boolean enablePager) {
|
Class<S> selectionModelType, boolean enablePager) {
|
||||||
super(sailingService, stringMessages, errorReporter, selectionModel, enablePager);
|
super(sailingService, stringMessages, errorReporter, /* selectionModel will be set later below */ null, enablePager);
|
||||||
|
|
||||||
ListHandler<CompetitorDTO> competitorColumnListHandler = new ListHandler<CompetitorDTO>(dataProvider.getList());
|
ListHandler<CompetitorDTO> competitorColumnListHandler = new ListHandler<CompetitorDTO>(dataProvider.getList());
|
||||||
|
|
||||||
@@ -131,6 +141,26 @@ public class CompetitorTableWrapper<S extends SelectionModel<CompetitorDTO>> ext
|
|||||||
};
|
};
|
||||||
|
|
||||||
mainPanel.insert(filterField, 0);
|
mainPanel.insert(filterField, 0);
|
||||||
|
if (selectionModelType.getName().contains("Multi")) {
|
||||||
|
// add a selection checkbox column
|
||||||
|
SelectionCheckboxColumn<CompetitorDTO> selectionCheckboxColumn = new SelectionCheckboxColumn<CompetitorDTO>(
|
||||||
|
tableSTyle.cellTableCheckboxSelected(), tableSTyle.cellTableCheckboxDeselected(), tableSTyle.cellTableCheckboxColumnCell()) {
|
||||||
|
@Override
|
||||||
|
protected ListDataProvider<CompetitorDTO> getListDataProvider() {
|
||||||
|
return dataProvider;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
S mySelectionModel = (S) selectionCheckboxColumn.getSelectionModel();
|
||||||
|
selectionModel = mySelectionModel;
|
||||||
|
table.setSelectionModel(selectionModel, selectionCheckboxColumn.getSelectionManager());
|
||||||
|
table.addColumn(selectionCheckboxColumn, selectionCheckboxColumn.getHeader());
|
||||||
|
} else {
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
S mySelectionModel = (S) new SingleSelectionModel<CompetitorDTO>();
|
||||||
|
selectionModel = mySelectionModel;
|
||||||
|
table.setSelectionModel(selectionModel);
|
||||||
|
}
|
||||||
table.addColumnSortHandler(competitorColumnListHandler);
|
table.addColumnSortHandler(competitorColumnListHandler);
|
||||||
table.addColumn(sailIdColumn, stringMessages.sailNumber());
|
table.addColumn(sailIdColumn, stringMessages.sailNumber());
|
||||||
table.addColumn(competitorNameColumn, stringMessages.name());
|
table.addColumn(competitorNameColumn, stringMessages.name());
|
||||||
@@ -139,6 +169,11 @@ public class CompetitorTableWrapper<S extends SelectionModel<CompetitorDTO>> ext
|
|||||||
table.addColumn(competitorIdColumn, stringMessages.id());
|
table.addColumn(competitorIdColumn, stringMessages.id());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public S getSelectionModel() {
|
||||||
|
return selectionModel;
|
||||||
|
}
|
||||||
|
|
||||||
public Iterable<CompetitorDTO> getAllCompetitors() {
|
public Iterable<CompetitorDTO> getAllCompetitors() {
|
||||||
return filterField.getAll();
|
return filterField.getAll();
|
||||||
}
|
}
|
||||||
|
|||||||
+4
-2
@@ -60,8 +60,10 @@ public class ImportFixesAndAddMappingsDialog extends DataEntryDialog<Collection<
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
competitorTable = new CompetitorTableWrapper<>(sailingService, stringMessages, errorReporter,
|
final Class<?> selectionModelType = SingleSelectionModel.class;
|
||||||
new SingleSelectionModel<CompetitorDTO>(), true);
|
@SuppressWarnings("unchecked")
|
||||||
|
final Class<SingleSelectionModel<CompetitorDTO>> singleSelectionType = (Class<SingleSelectionModel<CompetitorDTO>>) selectionModelType;
|
||||||
|
competitorTable = new CompetitorTableWrapper<>(sailingService, stringMessages, errorReporter, singleSelectionType, true);
|
||||||
markTable = new MarkTableWrapper<SingleSelectionModel<MarkDTO>>(
|
markTable = new MarkTableWrapper<SingleSelectionModel<MarkDTO>>(
|
||||||
new SingleSelectionModel<MarkDTO>(), sailingService, stringMessages, errorReporter);
|
new SingleSelectionModel<MarkDTO>(), sailingService, stringMessages, errorReporter);
|
||||||
|
|
||||||
|
|||||||
+4
-2
@@ -35,9 +35,11 @@ public class ItemToMapToDeviceSelectionPanel implements IsWidget {
|
|||||||
this.selected = selected;
|
this.selected = selected;
|
||||||
this.errorReporter = errorReporter;
|
this.errorReporter = errorReporter;
|
||||||
|
|
||||||
|
final Class<?> selectionModelType = SingleSelectionModel.class;
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
final Class<SingleSelectionModel<CompetitorDTO>> singleSelectionType = (Class<SingleSelectionModel<CompetitorDTO>>) selectionModelType;
|
||||||
|
competitorTable = new CompetitorTableWrapper<>(sailingService, stringMessages, errorReporter, singleSelectionType, true);
|
||||||
final SingleSelectionModel<MarkDTO> markSelectionModel = new SingleSelectionModel<MarkDTO>();
|
final SingleSelectionModel<MarkDTO> markSelectionModel = new SingleSelectionModel<MarkDTO>();
|
||||||
competitorTable = new CompetitorTableWrapper<>(sailingService, stringMessages, errorReporter,
|
|
||||||
new SingleSelectionModel<CompetitorDTO>(), true);
|
|
||||||
markTable = new MarkTableWrapper<SingleSelectionModel<MarkDTO>>(markSelectionModel, sailingService,
|
markTable = new MarkTableWrapper<SingleSelectionModel<MarkDTO>>(markSelectionModel, sailingService,
|
||||||
stringMessages, errorReporter);
|
stringMessages, errorReporter);
|
||||||
|
|
||||||
|
|||||||
+5
-4
@@ -88,10 +88,11 @@ public class RaceLogTrackingCompetitorRegistrationsDialog extends AbstractSaveDi
|
|||||||
mainPanel.add(panel);
|
mainPanel.add(panel);
|
||||||
CaptionPanel allCompetitorsPanel = new CaptionPanel(stringMessages.competitorPool());
|
CaptionPanel allCompetitorsPanel = new CaptionPanel(stringMessages.competitorPool());
|
||||||
CaptionPanel registeredCompetitorsPanel = new CaptionPanel(stringMessages.registeredCompetitors());
|
CaptionPanel registeredCompetitorsPanel = new CaptionPanel(stringMessages.registeredCompetitors());
|
||||||
allCompetitorsTable = new CompetitorTableWrapper<>(sailingService, stringMessages, errorReporter,
|
final Class<?> selectionModelType = MultiSelectionModel.class;
|
||||||
new MultiSelectionModel<CompetitorDTO>(), true);
|
@SuppressWarnings("unchecked")
|
||||||
registeredCompetitorsTable = new CompetitorTableWrapper<>(sailingService, stringMessages, errorReporter,
|
final Class<MultiSelectionModel<CompetitorDTO>> multiSelectionType = (Class<MultiSelectionModel<CompetitorDTO>>) selectionModelType;
|
||||||
new MultiSelectionModel<CompetitorDTO>(), true);
|
allCompetitorsTable = new CompetitorTableWrapper<>(sailingService, stringMessages, errorReporter, multiSelectionType, true);
|
||||||
|
registeredCompetitorsTable = new CompetitorTableWrapper<>(sailingService, stringMessages, errorReporter, multiSelectionType, true);
|
||||||
allCompetitorsPanel.add(allCompetitorsTable);
|
allCompetitorsPanel.add(allCompetitorsTable);
|
||||||
registeredCompetitorsPanel.add(registeredCompetitorsTable);
|
registeredCompetitorsPanel.add(registeredCompetitorsTable);
|
||||||
VerticalPanel movePanel = new VerticalPanel();
|
VerticalPanel movePanel = new VerticalPanel();
|
||||||
|
|||||||
+1
-1
@@ -19,7 +19,7 @@ import com.sap.sse.gwt.client.ErrorReporter;
|
|||||||
*/
|
*/
|
||||||
public abstract class TableWrapper<T, S extends SelectionModel<T>> implements IsWidget {
|
public abstract class TableWrapper<T, S extends SelectionModel<T>> implements IsWidget {
|
||||||
protected final CellTable<T> table;
|
protected final CellTable<T> table;
|
||||||
protected final S selectionModel;
|
private final S selectionModel;
|
||||||
protected final ListDataProvider<T> dataProvider;
|
protected final ListDataProvider<T> dataProvider;
|
||||||
protected VerticalPanel mainPanel;
|
protected VerticalPanel mainPanel;
|
||||||
protected final SailingServiceAsync sailingService;
|
protected final SailingServiceAsync sailingService;
|
||||||
|
|||||||
Reference in new issue
Block a user