diff --git a/java/com.sap.sailing.gwt.ui/Leaderboard.css b/java/com.sap.sailing.gwt.ui/Leaderboard.css index 92570065c13..4943a62edf7 100755 --- a/java/com.sap.sailing.gwt.ui/Leaderboard.css +++ b/java/com.sap.sailing.gwt.ui/Leaderboard.css @@ -190,11 +190,15 @@ table.editableLeaderboardTable tr td:first-child { display: none; } /* edit button of editable leaderboard table */ .editableLeaderboardTable .editButton { - border: none; /* Remove borders */ - color: white; /* White text */ padding: 0; + margin-left: 3px; cursor: pointer; /* Mouse pointer on hover */ - background: url(images/edit.png) left center no-repeat; + width: 20px; + height: 20px; + display: flex; +} +.editableLeaderboardTable .editButton span { + background: url(images/edit.png) center center no-repeat; width: 16px; height: 16px; } @@ -202,6 +206,38 @@ table.editableLeaderboardTable tr td:first-child { display: none; } .editableLeaderboardTable .suppressButton, .suppressedCompetitorsTable .suppressButton { padding: 0 2px; cursor: pointer; /* Mouse pointer on hover */ - height: 18px; + height: 20px; font-size: 10px; -} \ No newline at end of file +} + +.editableLeaderboardTable .raceCell div { + white-space: nowrap; +} + +.editableLeaderboardTable .raceCell span { + display: inline-block; + vertical-align: middle; +} + +.editableLeaderboardTable .accumulatedCell div { + white-space: nowrap; +} + +.editableLeaderboardTable .accumulatedCell span { + display: inline-block; + vertical-align: middle; +} + +.editableLeaderboardTable .competitorNameCell div { + white-space: nowrap; + display: flex; +} + +.editableLeaderboardTable .competitorNameCell div span { + display: inline-block; + vertical-align: middle; +} + +.editableLeaderboardTable .competitorNameCell div span:first-child { + width: 100%; +} diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboardedit/EditableLeaderboardPanel.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboardedit/EditableLeaderboardPanel.java index 0620fa5d58b..af2cb947b42 100755 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboardedit/EditableLeaderboardPanel.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/leaderboardedit/EditableLeaderboardPanel.java @@ -112,12 +112,14 @@ public class EditableLeaderboardPanel extends MultiRaceLeaderboardPanel { private class EditableCarryColumn extends CarryColumn { public EditableCarryColumn() { super(new CompositeCell(getCellListForEditableCarryColumn())); + this.setCellStyleNames("accumulatedCell"); } } private class EditableCompetitorColumn extends CompetitorColumn { public EditableCompetitorColumn(List> cells, CompetitorColumnBase base) { super(new CompositeCell(cells), base); + this.setCellStyleNames("competitorNameCell"); } @Override @@ -135,6 +137,7 @@ public class EditableLeaderboardPanel extends MultiRaceLeaderboardPanel { private class SuppressedShortInfoColumn extends LeaderboardSortableColumnWithMinMax { protected SuppressedShortInfoColumn() { super(new TextCell(), SortingOrder.ASCENDING, EditableLeaderboardPanel.this); + this.setCellStyleNames("competitorInfoCell"); } /** @@ -190,6 +193,7 @@ public class EditableLeaderboardPanel extends MultiRaceLeaderboardPanel { protected SuppressedCompetitorColumn(CompetitorColumnBase base) { super(base.getCell(getLeaderboard()), SortingOrder.ASCENDING, EditableLeaderboardPanel.this); + this.setCellStyleNames("suppressedCompetitorCell"); this.base = base; } @@ -279,6 +283,7 @@ public class EditableLeaderboardPanel extends MultiRaceLeaderboardPanel { /* expandable */ false, // we don't want leg expansion when editing scores new CompositeCellRememberingRenderingContextAndObject(cellList), SortingOrder.NONE, RACE_COLUMN_HEADER_STYLE, RACE_COLUMN_STYLE); + this.setCellStyleNames("raceCell"); for (RowUpdateWhiteboardProducer rowUpdateWhiteboardProducer : cellList) { rowUpdateWhiteboardProducer.setWhiteboardOwner(this); } @@ -850,8 +855,10 @@ public class EditableLeaderboardPanel extends MultiRaceLeaderboardPanel { @Override public void render(Context context, String value, SafeHtmlBuilder sb) { renderer.setCurrentRow((LeaderboardRowDTO) context.getKey()); - super.render(context, value, sb); + super.render(context, value, sb); + } + }; result.add(new HasCell() { @Override @@ -869,6 +876,43 @@ public class EditableLeaderboardPanel extends MultiRaceLeaderboardPanel { return getLeaderboard().getDisplayName(row.competitor); } }); + result.add(new HasCell() { + private final ButtonCell cell = new SuppressButtonCell(); + @Override + public Cell getCell() { + + return cell; + } + + @Override + public FieldUpdater getFieldUpdater() { + return new FieldUpdater() { + @Override + public void update(int index, final LeaderboardRowDTO row, String value) { + getSailingService().suppressCompetitorInLeaderboard(getLeaderboardName(), row.competitor.getIdAsString(), + /* suppressed */ true, + new AsyncCallback() { + @Override + public void onFailure(Throwable caught) { + getErrorReporter().reportError("Error trying to suppress competitor "+row.competitor.getName()+ + " in leaderboard "+getLeaderboardName()); + } + + @Override + public void onSuccess(Void result) { + // force a reload of the entire editable leaderboard to hide the now suppressed competitor + loadCompleteLeaderboard(/* showProgress */ true); + } + }); + } + }; + } + + @Override + public String getValue(LeaderboardRowDTO object) { + return stringMessages.suppress(); + } + }); result.add(new HasCell() { private final ButtonCell cell = new EditButtonCell(stringMessages.edit()); @Override @@ -919,43 +963,6 @@ public class EditableLeaderboardPanel extends MultiRaceLeaderboardPanel { return "";//stringMessages.edit(); } }); - result.add(new HasCell() { - private final ButtonCell cell = new SuppressButtonCell(); - @Override - public Cell getCell() { - - return cell; - } - - @Override - public FieldUpdater getFieldUpdater() { - return new FieldUpdater() { - @Override - public void update(int index, final LeaderboardRowDTO row, String value) { - getSailingService().suppressCompetitorInLeaderboard(getLeaderboardName(), row.competitor.getIdAsString(), - /* suppressed */ true, - new AsyncCallback() { - @Override - public void onFailure(Throwable caught) { - getErrorReporter().reportError("Error trying to suppress competitor "+row.competitor.getName()+ - " in leaderboard "+getLeaderboardName()); - } - - @Override - public void onSuccess(Void result) { - // force a reload of the entire editable leaderboard to hide the now suppressed competitor - loadCompleteLeaderboard(/* showProgress */ true); - } - }); - } - }; - } - - @Override - public String getValue(LeaderboardRowDTO object) { - return stringMessages.suppress(); - } - }); return result; } @@ -1108,11 +1115,11 @@ public class EditableLeaderboardPanel extends MultiRaceLeaderboardPanel { public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) { sb.appendHtmlConstant(""); + sb.appendHtmlConstant(""); } }