From 357109c5a5518db5925f49a6700a87e7ed30ca14 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 28 Dec 2011 16:19:29 -0500
Subject: [PATCH] Unit testing. Documentation.
---
src/com/gitblit/client/GitblitPanel.java | 55 ++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 48 insertions(+), 7 deletions(-)
diff --git a/src/com/gitblit/client/GitblitPanel.java b/src/com/gitblit/client/GitblitPanel.java
index 6c65328..f14ce79 100644
--- a/src/com/gitblit/client/GitblitPanel.java
+++ b/src/com/gitblit/client/GitblitPanel.java
@@ -30,8 +30,7 @@
import com.gitblit.models.FeedModel;
/**
- * GitblitPanel performs the login, all business logic, and contains all widgets
- * to represent the state of a repository for the given account credentials.
+ * GitblitPanel is a container for the repository, users, settings, etc panels.
*
* @author James Moger
*
@@ -51,6 +50,8 @@
private FeedsPanel feedsPanel;
private UsersPanel usersPanel;
+
+ private TeamsPanel teamsPanel;
private SettingsPanel settingsPanel;
@@ -62,15 +63,16 @@
tabs = new JTabbedPane(JTabbedPane.BOTTOM);
tabs.addTab(Translation.get("gb.repositories"), createRepositoriesPanel());
- tabs.addTab(Translation.get("gb.recentActivity"), createFeedsPanel());
+ tabs.addTab(Translation.get("gb.activity"), createFeedsPanel());
+ tabs.addTab(Translation.get("gb.teams"), createTeamsPanel());
tabs.addTab(Translation.get("gb.users"), createUsersPanel());
tabs.addTab(Translation.get("gb.settings"), createSettingsPanel());
tabs.addTab(Translation.get("gb.status"), createStatusPanel());
tabs.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
- tabs.getSelectedComponent().requestFocus();
+ tabs.getSelectedComponent().requestFocus();
}
- });
+ });
setLayout(new BorderLayout());
add(tabs, BorderLayout.CENTER);
@@ -90,6 +92,11 @@
protected void updateUsersTable() {
usersPanel.updateTable(false);
}
+
+ @Override
+ protected void updateTeamsTable() {
+ teamsPanel.updateTable(false);
+ }
};
return repositoriesPanel;
@@ -108,9 +115,30 @@
}
private JPanel createUsersPanel() {
- usersPanel = new UsersPanel(gitblit);
+ usersPanel = new UsersPanel(gitblit) {
+
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected void updateTeamsTable() {
+ teamsPanel.updateTable(false);
+ }
+ };
return usersPanel;
}
+
+ private JPanel createTeamsPanel() {
+ teamsPanel = new TeamsPanel(gitblit) {
+
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected void updateUsersTable() {
+ usersPanel.updateTable(false);
+ }
+ };
+ return teamsPanel;
+ }
private JPanel createSettingsPanel() {
settingsPanel = new SettingsPanel(gitblit);
@@ -129,6 +157,19 @@
feedsPanel.updateTable(true);
if (gitblit.allowManagement()) {
+ if (gitblit.getProtocolVersion() >= 2) {
+ // refresh teams panel
+ teamsPanel.updateTable(false);
+ } else {
+ // remove teams panel
+ String teams = Translation.get("gb.teams");
+ for (int i = 0; i < tabs.getTabCount(); i++) {
+ if (teams.equals(tabs.getTitleAt(i))) {
+ tabs.removeTabAt(i);
+ break;
+ }
+ }
+ }
usersPanel.updateTable(false);
} else {
// user does not have administrator privileges
@@ -145,7 +186,7 @@
settingsPanel.updateTable(true);
statusPanel.updateTable(false);
} else {
- // remove the settings tab
+ // remove the settings and status tab
String[] titles = { Translation.get("gb.settings"), Translation.get("gb.status") };
for (String title : titles) {
for (int i = 0; i < tabs.getTabCount(); i++) {
--
Gitblit v1.9.1