From ee458f82b8502e238a96e6582e910cb366059ead Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 07 Nov 2011 22:12:38 -0500
Subject: [PATCH] Log feature based on Search dialog. Renamed some classes.

---
 src/com/gitblit/client/RepositoriesPanel.java |   28 ++++++++++++++++++++--------
 1 files changed, 20 insertions(+), 8 deletions(-)

diff --git a/src/com/gitblit/client/RepositoriesPanel.java b/src/com/gitblit/client/RepositoriesPanel.java
index 3e156e9..70ff6cf 100644
--- a/src/com/gitblit/client/RepositoriesPanel.java
+++ b/src/com/gitblit/client/RepositoriesPanel.java
@@ -134,12 +134,21 @@
 			}
 		});
 
+		final JButton logRepository = new JButton(Translation.get("gb.log") + "...");
+		logRepository.setEnabled(false);
+		logRepository.addActionListener(new ActionListener() {
+			public void actionPerformed(ActionEvent e) {
+				RepositoryModel model = getSelectedRepositories().get(0);
+				showSearchDialog(false, model);
+			}
+		});
+
 		final JButton searchRepository = new JButton(Translation.get("gb.search") + "...");
 		searchRepository.setEnabled(false);
 		searchRepository.addActionListener(new ActionListener() {
 			public void actionPerformed(ActionEvent e) {
 				RepositoryModel model = getSelectedRepositories().get(0);
-				searchRepository(model);
+				showSearchDialog(true, model);
 			}
 		});
 
@@ -173,18 +182,20 @@
 					return;
 				}
 				boolean singleSelection = table.getSelectedRowCount() == 1;
-				boolean selected = table.getSelectedRow() > -1;				
+				boolean selected = table.getSelectedRow() > -1;
 				if (singleSelection) {
 					RepositoryModel repository = getSelectedRepositories().get(0);
 					browseRepository.setEnabled(repository.hasCommits);
+					logRepository.setEnabled(repository.hasCommits);
 					searchRepository.setEnabled(repository.hasCommits);
 					subscribeRepository.setEnabled(repository.hasCommits);
 				} else {
 					browseRepository.setEnabled(false);
+					logRepository.setEnabled(false);
 					searchRepository.setEnabled(false);
 					subscribeRepository.setEnabled(false);
 				}
-				delRepository.setEnabled(selected);				
+				delRepository.setEnabled(selected);
 				if (selected) {
 					int viewRow = table.getSelectedRow();
 					int modelRow = table.convertRowIndexToModel(viewRow);
@@ -233,6 +244,7 @@
 		repositoryControls.add(editRepository);
 		repositoryControls.add(delRepository);
 		repositoryControls.add(subscribeRepository);
+		repositoryControls.add(logRepository);
 		repositoryControls.add(searchRepository);
 
 		setLayout(new BorderLayout(Utils.MARGIN, Utils.MARGIN));
@@ -467,12 +479,12 @@
 		}
 	}
 
-	protected void searchRepository(final RepositoryModel repository) {
-		SearchDialog searchDialog = new SearchDialog(gitblit);
+	private void showSearchDialog(boolean isSearch, final RepositoryModel repository) {
+		final SearchDialog dialog = new SearchDialog(gitblit, isSearch);
 		if (repository != null) {
-			searchDialog.selectRepository(repository);
+			dialog.selectRepository(repository);
 		}
-		searchDialog.setLocationRelativeTo(this);
-		searchDialog.setVisible(true);
+		dialog.setLocationRelativeTo(this);
+		dialog.setVisible(true);
 	}
 }

--
Gitblit v1.9.1