Bug 4104: Fixed default visibility state for new tags (+ code formatting)

This commit is contained in:
Henri Kohlberg committed 2018-09-17 16:04:07 +02:00
1 parent 4bf6f65085
commit 0209c08743
2 files changed
+21 -19

No files matched your search

@@ -28,9 +28,9 @@ public class TagInputPanel extends FlowPanel {
private final SimplePanel checkboxWrapper;
private final CheckBox visibleForPublicCheckBox;
private final Label noPermissionForPublicTagsLabel;
private final TaggingPanel taggingPanel;
private final StringMessages stringMessages;
private final StringMessages stringMessages;
/**
* Creates view allowing users to input values for tags and {@link TagButton tag-buttons}.
@@ -62,14 +62,14 @@ public class TagInputPanel extends FlowPanel {
add(commentTextArea);
checkboxWrapper = new SimplePanel();
checkboxWrapper.setStyleName(style.tagInputPanelIsVisibleForPublic());
checkboxWrapper.setStyleName(style.tagInputPanelIsVisibleForPublic());
visibleForPublicCheckBox = new CheckBox(stringMessages.tagVisibleForPublicCheckBox());
visibleForPublicCheckBox.setValue(DEFAULT_VISIBLE_FOR_PUBLIC);
visibleForPublicCheckBox.setValue(DEFAULT_VISIBLE_FOR_PUBLIC);
checkboxWrapper.setWidget(visibleForPublicCheckBox);
add(checkboxWrapper);
noPermissionForPublicTagsLabel = new Label(stringMessages.tagPublicModificationPermissionMissing());
noPermissionForPublicTagsLabel.setStyleName(style.tagInputPanelNoPermissionLabel());
noPermissionForPublicTagsLabel = new Label(stringMessages.tagPublicModificationPermissionMissing());
noPermissionForPublicTagsLabel.setStyleName(style.tagInputPanelNoPermissionLabel());
add(noPermissionForPublicTagsLabel);
clearAllValues();
}
@@ -78,9 +78,10 @@ public class TagInputPanel extends FlowPanel {
* Clears all input fields.
*/
protected void clearAllValues() {
tagTextBox.setText(DEFAULT_TAG);
imageURLTextBox.setText(DEFAULT_COMMENT);
commentTextArea.setText(DEFAULT_IMAGE_URL);
setTag(DEFAULT_TAG);
setComment(DEFAULT_COMMENT);
setImageURL(DEFAULT_IMAGE_URL);
setVisibleForPublic(DEFAULT_VISIBLE_FOR_PUBLIC);
setCurrentStatus();
}
@@ -187,7 +188,8 @@ public class TagInputPanel extends FlowPanel {
if (taggingPanel.hasPermissionToModifyPublicTags()) {
checkboxWrapper.setVisible(true);
noPermissionForPublicTagsLabel.setVisible(false);
} else {;
setVisibleForPublic(true);
} else {
checkboxWrapper.setVisible(false);
noPermissionForPublicTagsLabel.setVisible(true);
setVisibleForPublic(false);
@@ -21,15 +21,15 @@ import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
import com.sap.sailing.domain.common.dto.FleetDTO;
import com.sap.sailing.domain.common.dto.RaceColumnDTO;
import com.sap.sailing.domain.common.dto.TagDTO;
import com.sap.sailing.domain.common.security.Permission;
import com.sap.sailing.domain.common.security.Permission.Mode;
import com.sap.sailing.domain.common.security.SailingPermissionsForRoleProvider;
import com.sap.sailing.gwt.ui.client.RaceTimesInfoProvider;
import com.sap.sailing.gwt.ui.client.RaceTimesInfoProviderListener;
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
import com.sap.sailing.gwt.ui.client.StringMessages;
import com.sap.sailing.gwt.ui.raceboard.tagging.TagPanelResources.TagPanelStyle;
import com.sap.sailing.gwt.ui.shared.RaceTimesInfoDTO;
import com.sap.sailing.domain.common.security.Permission;
import com.sap.sailing.domain.common.security.Permission.Mode;
import com.sap.sailing.domain.common.security.SailingPermissionsForRoleProvider;
import com.sap.sse.common.TimePoint;
import com.sap.sse.common.impl.MillisecondsTimePoint;
import com.sap.sse.gwt.client.Notification;
@@ -52,9 +52,8 @@ import com.sap.sse.security.ui.shared.UserDTO;
* <br/>
* The TaggingPanel is also used as a data provider for all of its subcomponents like header, footer and content
* section. Therefor the TaggingPanel provides references to important services, string messages, its current state ando
* so on.
* Best practise: The constructor of subcomponents of the TaggingPanel contains only the TaggingPanel as a parameter.
* Every other required shared resource (string messages, service references, ...) can be requested from the
* so on. Best practise: The constructor of subcomponents of the TaggingPanel contains only the TaggingPanel as a
* parameter. Every other required shared resource (string messages, service references, ...) can be requested from the
* TaggingPanel itself.
*/
public class TaggingPanel extends ComponentWithoutSettings
@@ -65,7 +64,8 @@ public class TaggingPanel extends ComponentWithoutSettings
*/
protected enum State {
VIEW, // default
CREATE_TAG, EDIT_TAG
CREATE_TAG,
EDIT_TAG
}
// styling
@@ -572,7 +572,7 @@ public class TaggingPanel extends ComponentWithoutSettings
});
}
}
protected boolean hasPermissionToModifyPublicTags() {
boolean hasPermission = false;
if (leaderboardName != null && userService.getCurrentUser().hasPermission(