From 11c14e192b907acd3fdc2d6a9bcf4faafc593afe Mon Sep 17 00:00:00 2001
From: Rafael Cavazin <rafaelcavazin@gmail.com>
Date: Sun, 27 Jan 2013 11:13:06 -0500
Subject: [PATCH] updating latest props, and some pt-br fixing
---
src/com/gitblit/client/RegistrantPermissionsPanel.java | 34 +++++++++++++++++++++++++++++++---
1 files changed, 31 insertions(+), 3 deletions(-)
diff --git a/src/com/gitblit/client/RegistrantPermissionsPanel.java b/src/com/gitblit/client/RegistrantPermissionsPanel.java
index c28724c..98dbfb7 100644
--- a/src/com/gitblit/client/RegistrantPermissionsPanel.java
+++ b/src/com/gitblit/client/RegistrantPermissionsPanel.java
@@ -16,11 +16,14 @@
package com.gitblit.client;
import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.Component;
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.Collections;
import java.util.List;
import javax.swing.DefaultCellEditor;
@@ -36,6 +39,7 @@
import com.gitblit.Constants.AccessPermission;
import com.gitblit.Constants.PermissionType;
import com.gitblit.Constants.RegistrantType;
+import com.gitblit.client.Utils.RowRenderer;
import com.gitblit.models.RegistrantAccessPermission;
import com.gitblit.utils.StringUtils;
@@ -60,7 +64,23 @@
public RegistrantPermissionsPanel(final RegistrantType registrantType) {
super(new BorderLayout(5, 5));
tableModel = new RegistrantPermissionsTableModel();
- permissionsTable = Utils.newTable(tableModel, Utils.DATE_FORMAT);
+ permissionsTable = Utils.newTable(tableModel, Utils.DATE_FORMAT, new RowRenderer() {
+ Color clear = new Color(0, 0, 0, 0);
+ Color iceGray = new Color(0xf0, 0xf0, 0xf0);
+
+ @Override
+ public void prepareRow(Component c, boolean isSelected, int row, int column) {
+ if (isSelected) {
+ c.setBackground(permissionsTable.getSelectionBackground());
+ } else {
+ if (tableModel.permissions.get(row).mutable) {
+ c.setBackground(clear);
+ } else {
+ c.setBackground(iceGray);
+ }
+ }
+ }
+ });
permissionsTable.setModel(tableModel);
permissionsTable.setPreferredScrollableViewportSize(new Dimension(400, 150));
JScrollPane jsp = new JScrollPane(permissionsTable);
@@ -91,11 +111,14 @@
rp.permission = (AccessPermission) permissionSelector.getSelectedItem();
if (StringUtils.findInvalidCharacter(rp.registrant) != null) {
rp.permissionType = PermissionType.REGEX;
+ rp.source = rp.registrant;
} else {
rp.permissionType = PermissionType.EXPLICIT;
}
tableModel.permissions.add(rp);
+ // resort permissions after insert to convey idea of eval order
+ Collections.sort(tableModel.permissions);
registrantModel.removeElement(rp.registrant);
registrantSelector.setSelectedIndex(-1);
@@ -198,8 +221,13 @@
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