made list of swiss timing races also sortable by race status

This commit is contained in:
fmittag committed 2014-04-25 13:00:43 +02:00
1 parent 1abb9cf876
commit c19016ebe5
1 file changed
+9 -2
@@ -239,6 +239,7 @@ public class SwissTimingEventManagementPanel extends AbstractEventManagementPane
boatClassColumn.setSortable(true); boatClassColumn.setSortable(true);
raceIdColumn.setSortable(true); raceIdColumn.setSortable(true);
genderColumn.setSortable(true); genderColumn.setSortable(true);
raceStatusColumn.setSortable(true);
AdminConsoleTableResources tableRes = GWT.create(AdminConsoleTableResources.class); AdminConsoleTableResources tableRes = GWT.create(AdminConsoleTableResources.class);
raceTable = new CellTable<SwissTimingRaceRecordDTO>(/* pageSize */ 10000, tableRes); raceTable = new CellTable<SwissTimingRaceRecordDTO>(/* pageSize */ 10000, tableRes);
@@ -258,7 +259,7 @@ public class SwissTimingEventManagementPanel extends AbstractEventManagementPane
raceList = new ListDataProvider<SwissTimingRaceRecordDTO>(); raceList = new ListDataProvider<SwissTimingRaceRecordDTO>();
raceList.addDataDisplay(raceTable); raceList.addDataDisplay(raceTable);
Handler columnSortHandler = getRaceTableColumnSortHandler(raceList.getList(), regattaNameColumn, seriesNameColumn, Handler columnSortHandler = getRaceTableColumnSortHandler(raceList.getList(), regattaNameColumn, seriesNameColumn,
raceNameColumn, raceStartTimeColumn, raceIdColumn, boatClassColumn, genderColumn); raceNameColumn, raceStartTimeColumn, raceIdColumn, boatClassColumn, genderColumn, raceStatusColumn);
raceTable.addColumnSortHandler(columnSortHandler); raceTable.addColumnSortHandler(columnSortHandler);
trackedRacesPanel.add(trackedRacesListComposite); trackedRacesPanel.add(trackedRacesListComposite);
@@ -293,7 +294,7 @@ public class SwissTimingEventManagementPanel extends AbstractEventManagementPane
Column<SwissTimingRaceRecordDTO, ?> regattaNameColumn, Column<SwissTimingRaceRecordDTO, ?> seriesNameColumn, Column<SwissTimingRaceRecordDTO, ?> regattaNameColumn, Column<SwissTimingRaceRecordDTO, ?> seriesNameColumn,
Column<SwissTimingRaceRecordDTO, ?> nameColumn, Column<SwissTimingRaceRecordDTO, ?> trackingStartColumn, Column<SwissTimingRaceRecordDTO, ?> nameColumn, Column<SwissTimingRaceRecordDTO, ?> trackingStartColumn,
Column<SwissTimingRaceRecordDTO, ?> raceIdColumn, Column<SwissTimingRaceRecordDTO, ?> boatClassColumn, Column<SwissTimingRaceRecordDTO, ?> raceIdColumn, Column<SwissTimingRaceRecordDTO, ?> boatClassColumn,
final Column<SwissTimingRaceRecordDTO, ?> genderColumn) { Column<SwissTimingRaceRecordDTO, ?> genderColumn, Column<SwissTimingRaceRecordDTO, ?> statusColumn) {
ListHandler<SwissTimingRaceRecordDTO> result = new ListHandler<SwissTimingRaceRecordDTO>(raceRecords); ListHandler<SwissTimingRaceRecordDTO> result = new ListHandler<SwissTimingRaceRecordDTO>(raceRecords);
result.setComparator(regattaNameColumn, new Comparator<SwissTimingRaceRecordDTO>() { result.setComparator(regattaNameColumn, new Comparator<SwissTimingRaceRecordDTO>() {
@@ -340,6 +341,12 @@ public class SwissTimingEventManagementPanel extends AbstractEventManagementPane
return o1.gender == null ? -1 : o2.gender == null ? 1 : new NaturalComparator(false).compare(o1.gender, o2.gender); return o1.gender == null ? -1 : o2.gender == null ? 1 : new NaturalComparator(false).compare(o1.gender, o2.gender);
} }
}); });
result.setComparator(statusColumn, new Comparator<SwissTimingRaceRecordDTO>() {
@Override
public int compare(SwissTimingRaceRecordDTO o1, SwissTimingRaceRecordDTO o2) {
return new NaturalComparator().compare(o1.raceStatus, o2.raceStatus);
}
});
return result; return result;
} }