From 0e44acbb2fec928a1606dc60f427a148fff405c9 Mon Sep 17 00:00:00 2001
From: Mohamed Ragab <moragab@gmail.com>
Date: Wed, 02 May 2012 11:15:01 -0400
Subject: [PATCH] Added a script to facilitate setting the proxy host and port and no proxy hosts, and then it concatenates all the java system properties for setting the java proxy configurations and puts the resulting string in an environment variable JAVA_PROXY_CONFIG, modified the scirpts gitblit, gitblit-ubuntu, and gitblit-centos to source the java-proxy-config.sh script and then include the resulting java proxy configuration in the java command
---
src/com/gitblit/client/SearchDialog.java | 125 +++++++++++++++++++++++++++--------------
1 files changed, 82 insertions(+), 43 deletions(-)
diff --git a/src/com/gitblit/client/SearchDialog.java b/src/com/gitblit/client/SearchDialog.java
index 5dbea78..628a209 100644
--- a/src/com/gitblit/client/SearchDialog.java
+++ b/src/com/gitblit/client/SearchDialog.java
@@ -16,6 +16,7 @@
package com.gitblit.client;
import java.awt.BorderLayout;
+import java.awt.Cursor;
import java.awt.FlowLayout;
import java.awt.Insets;
import java.awt.Rectangle;
@@ -43,8 +44,8 @@
import javax.swing.event.ListSelectionListener;
import com.gitblit.Constants;
+import com.gitblit.models.FeedEntryModel;
import com.gitblit.models.RepositoryModel;
-import com.gitblit.models.SyndicatedEntryModel;
import com.gitblit.utils.StringUtils;
/**
@@ -58,9 +59,11 @@
private static final long serialVersionUID = 1L;
+ private final boolean isSearch;
+
private final GitblitClient gitblit;
- private SyndicatedEntryTableModel tableModel;
+ private FeedEntryTableModel tableModel;
private HeaderPanel header;
@@ -84,13 +87,14 @@
private JButton next;
- public SearchDialog(GitblitClient gitblit) {
+ public SearchDialog(GitblitClient gitblit, boolean isSearch) {
super();
this.gitblit = gitblit;
- setTitle(Translation.get("gb.search"));
+ this.isSearch = isSearch;
+ setTitle(Translation.get(isSearch ? "gb.search" : "gb.log"));
setIconImage(new ImageIcon(getClass().getResource("/gitblt-favicon.png")).getImage());
initialize();
- setSize(900, 400);
+ setSize(900, 550);
}
private void initialize() {
@@ -113,7 +117,7 @@
}
});
- final JButton search = new JButton(Translation.get("gb.search"));
+ final JButton search = new JButton(Translation.get(isSearch ? "gb.search" : "gb.refresh"));
search.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
search(0);
@@ -150,20 +154,21 @@
controls.add(viewTree);
NameRenderer nameRenderer = new NameRenderer();
- tableModel = new SyndicatedEntryTableModel();
- header = new HeaderPanel(Translation.get("gb.search"), "search-icon.png");
+ tableModel = new FeedEntryTableModel();
+ header = new HeaderPanel(Translation.get(isSearch ? "gb.search" : "gb.log"),
+ isSearch ? "search-icon.png" : "commit_changes_16x16.png");
table = Utils.newTable(tableModel, Utils.DATE_FORMAT);
- String name = table.getColumnName(SyndicatedEntryTableModel.Columns.Author.ordinal());
+ String name = table.getColumnName(FeedEntryTableModel.Columns.Author.ordinal());
table.setRowHeight(nameRenderer.getFont().getSize() + 8);
table.getColumn(name).setCellRenderer(nameRenderer);
- name = table.getColumnName(SyndicatedEntryTableModel.Columns.Repository.ordinal());
+ name = table.getColumnName(FeedEntryTableModel.Columns.Repository.ordinal());
table.getColumn(name).setCellRenderer(nameRenderer);
- name = table.getColumnName(SyndicatedEntryTableModel.Columns.Branch.ordinal());
+ name = table.getColumnName(FeedEntryTableModel.Columns.Branch.ordinal());
table.getColumn(name).setCellRenderer(new BranchRenderer());
- name = table.getColumnName(SyndicatedEntryTableModel.Columns.Message.ordinal());
+ name = table.getColumnName(FeedEntryTableModel.Columns.Message.ordinal());
table.getColumn(name).setCellRenderer(new MessageRenderer());
table.addMouseListener(new MouseAdapter() {
@@ -203,9 +208,16 @@
selectedBranch = branchSelector.getSelectedItem().toString();
}
updateBranches();
- if (selectedBranch != null) {
+ if (StringUtils.isEmpty(selectedBranch)) {
+ // do not select branch
+ branchSelector.setSelectedIndex(-1);
+ } else {
if (branchChoices.getIndexOf(selectedBranch) > -1) {
+ // select branch
branchChoices.setSelectedItem(selectedBranch);
+ } else {
+ // branch does not exist, do not select branch
+ branchSelector.setSelectedIndex(-1);
}
}
}
@@ -228,19 +240,29 @@
}
});
- JPanel northControls = new JPanel(new FlowLayout(FlowLayout.LEFT, Utils.MARGIN, 0));
- northControls.add(new JLabel(Translation.get("gb.repository")));
- northControls.add(repositorySelector);
- northControls.add(new JLabel(Translation.get("gb.branch")));
- northControls.add(branchSelector);
- northControls.add(new JLabel(Translation.get("gb.type")));
- northControls.add(searchTypeSelector);
- northControls.add(new JLabel(Translation.get("gb.maxHits")));
- northControls.add(maxHitsSelector);
- northControls.add(searchFragment);
- northControls.add(search);
- northControls.add(prev);
- northControls.add(next);
+ JPanel queryPanel = new JPanel(new FlowLayout(FlowLayout.LEFT, Utils.MARGIN, 0));
+ queryPanel.add(new JLabel(Translation.get("gb.repository")));
+ queryPanel.add(repositorySelector);
+ queryPanel.add(new JLabel(Translation.get("gb.branch")));
+ queryPanel.add(branchSelector);
+ if (isSearch) {
+ queryPanel.add(new JLabel(Translation.get("gb.type")));
+ queryPanel.add(searchTypeSelector);
+ }
+ queryPanel.add(new JLabel(Translation.get("gb.maxHits")));
+ queryPanel.add(maxHitsSelector);
+
+ JPanel actionsPanel = new JPanel(new FlowLayout(FlowLayout.LEFT, Utils.MARGIN, 0));
+ actionsPanel.add(search);
+ actionsPanel.add(prev);
+ actionsPanel.add(next);
+
+ JPanel northControls = new JPanel(new BorderLayout(Utils.MARGIN, Utils.MARGIN));
+ northControls.add(queryPanel, BorderLayout.WEST);
+ if (isSearch) {
+ northControls.add(searchFragment, BorderLayout.CENTER);
+ }
+ northControls.add(actionsPanel, BorderLayout.EAST);
JPanel northPanel = new JPanel(new BorderLayout(0, Utils.MARGIN));
northPanel.add(header, BorderLayout.NORTH);
@@ -264,12 +286,18 @@
addWindowListener(new WindowAdapter() {
@Override
public void windowOpened(WindowEvent event) {
- searchFragment.requestFocus();
+ if (isSearch) {
+ searchFragment.requestFocus();
+ } else {
+ search(0);
+ }
}
@Override
public void windowActivated(WindowEvent event) {
- searchFragment.requestFocus();
+ if (isSearch) {
+ searchFragment.requestFocus();
+ }
}
});
}
@@ -297,25 +325,35 @@
.getSelectedItem().toString() : null;
final Constants.SearchType searchType = (Constants.SearchType) searchTypeSelector
.getSelectedItem();
- final String fragment = searchFragment.getText();
+ final String fragment = isSearch ? searchFragment.getText() : null;
final int maxEntryCount = maxHitsSelector.getSelectedIndex() > -1 ? ((Integer) maxHitsSelector
.getSelectedItem()) : -1;
- if (StringUtils.isEmpty(fragment)) {
+ if (isSearch && StringUtils.isEmpty(fragment)) {
return;
}
- SwingWorker<List<SyndicatedEntryModel>, Void> worker = new SwingWorker<List<SyndicatedEntryModel>, Void>() {
+ setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
+ SwingWorker<List<FeedEntryModel>, Void> worker = new SwingWorker<List<FeedEntryModel>, Void>() {
@Override
- protected List<SyndicatedEntryModel> doInBackground() throws IOException {
- return gitblit
- .search(repository, branch, fragment, searchType, maxEntryCount, page);
+ protected List<FeedEntryModel> doInBackground() throws IOException {
+ if (isSearch) {
+ return gitblit.search(repository, branch, fragment, searchType, maxEntryCount,
+ page);
+ } else {
+ return gitblit.log(repository, branch, maxEntryCount, page);
+ }
}
@Override
protected void done() {
+ setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
try {
- List<SyndicatedEntryModel> results = get();
- updateTable(true, fragment, results);
+ List<FeedEntryModel> results = get();
+ if (isSearch) {
+ updateTable(true, fragment, results);
+ } else {
+ updateTable(true, branch == null ? "" : branch, results);
+ }
} catch (Throwable t) {
Utils.showException(SearchDialog.this, t);
}
@@ -324,11 +362,12 @@
worker.execute();
}
- protected void updateTable(boolean pack, String fragment, List<SyndicatedEntryModel> entries) {
+ protected void updateTable(boolean pack, String text, List<FeedEntryModel> entries) {
tableModel.entries.clear();
tableModel.entries.addAll(entries);
tableModel.fireTableDataChanged();
- setTitle(Translation.get("gb.search") + ": " + fragment + " (" + entries.size()
+ setTitle(Translation.get(isSearch ? "gb.search" : "gb.log")
+ + (StringUtils.isEmpty(text) ? "" : (": " + text)) + " (" + entries.size()
+ (page > 0 ? (", pg " + (page + 1)) : "") + ")");
header.setText(getTitle());
if (pack) {
@@ -342,25 +381,25 @@
prev.setEnabled(page > 0);
}
- protected SyndicatedEntryModel getSelectedSyndicatedEntry() {
+ protected FeedEntryModel getSelectedSyndicatedEntry() {
int viewRow = table.getSelectedRow();
int modelRow = table.convertRowIndexToModel(viewRow);
- SyndicatedEntryModel entry = tableModel.get(modelRow);
+ FeedEntryModel entry = tableModel.get(modelRow);
return entry;
}
protected void viewCommit() {
- SyndicatedEntryModel entry = getSelectedSyndicatedEntry();
+ FeedEntryModel entry = getSelectedSyndicatedEntry();
Utils.browse(entry.link);
}
protected void viewCommitDiff() {
- SyndicatedEntryModel entry = getSelectedSyndicatedEntry();
+ FeedEntryModel entry = getSelectedSyndicatedEntry();
Utils.browse(entry.link.replace("/commit/", "/commitdiff/"));
}
protected void viewTree() {
- SyndicatedEntryModel entry = getSelectedSyndicatedEntry();
+ FeedEntryModel entry = getSelectedSyndicatedEntry();
Utils.browse(entry.link.replace("/commit/", "/tree/"));
}
}
--
Gitblit v1.9.1