From 3dec957f01b1e6b0af31476361efbb5767d0303d Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Thu, 01 Nov 2012 09:13:16 -0400 Subject: [PATCH] Centralize Manager row height setting --- src/com/gitblit/client/RegistrantPermissionsPanel.java | 34 +++++++++++++++++++++++++++------- 1 files changed, 27 insertions(+), 7 deletions(-) diff --git a/src/com/gitblit/client/RegistrantPermissionsPanel.java b/src/com/gitblit/client/RegistrantPermissionsPanel.java index b8ab939..ef04a87 100644 --- a/src/com/gitblit/client/RegistrantPermissionsPanel.java +++ b/src/com/gitblit/client/RegistrantPermissionsPanel.java @@ -19,6 +19,7 @@ import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.text.MessageFormat; import java.util.ArrayList; import java.util.List; @@ -132,9 +133,15 @@ permissions = new ArrayList<RegistrantAccessPermission>(); } for (RegistrantAccessPermission rp : permissions) { - if (rp.isEditable) { + if (rp.mutable) { // only remove editable duplicates // this allows for specifying an explicit permission + filtered.remove(rp.registrant); + } else if (rp.isAdmin()) { + // administrators can not have their permission changed + filtered.remove(rp.registrant); + } else if (rp.isOwner()) { + // owners can not have their permission changed filtered.remove(rp.registrant); } } @@ -172,19 +179,32 @@ @Override protected void setValue(Object value) { - PermissionType pType = (PermissionType) value; - switch (pType) { + RegistrantAccessPermission ap = (RegistrantAccessPermission) value; + switch (ap.permissionType) { + case ADMINISTRATOR: + setText(ap.source == null ? Translation.get("gb.administrator") : ap.source); + setToolTipText(Translation.get("gb.administratorPermission")); + break; case OWNER: - setText("owner"); + setText(Translation.get("gb.owner")); setToolTipText(Translation.get("gb.ownerPermission")); + break; + case TEAM: + setText(ap.source == null ? Translation.get("gb.team") : ap.source); + setToolTipText(MessageFormat.format(Translation.get("gb.teamPermission"), ap.source)); break; case REGEX: setText("regex"); - setToolTipText(Translation.get("gb.regexPermission")); + setToolTipText(MessageFormat.format(Translation.get("gb.regexPermission"), ap.source)); break; default: - setText(""); - setToolTipText(null); + if (ap.isMissing()) { + setText(Translation.get("gb.missing")); + setToolTipText(Translation.get("gb.missingPermission")); + } else { + setText(""); + setToolTipText(null); + } break; } } -- Gitblit v1.9.1