From 2a99c31201b7002e4dd827b226cf2112d17ca1e1 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 24 Oct 2011 22:45:37 -0400
Subject: [PATCH] Functional edit setting feature for Manager. Wrote stacktrace viewer.

---
 src/com/gitblit/client/Utils.java |   21 +++++++++++++++++++--
 1 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/src/com/gitblit/client/Utils.java b/src/com/gitblit/client/Utils.java
index c837579..ae81e7f 100644
--- a/src/com/gitblit/client/Utils.java
+++ b/src/com/gitblit/client/Utils.java
@@ -17,11 +17,17 @@
 
 import java.awt.Color;
 import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.io.PrintWriter;
+import java.io.StringWriter;
 import java.text.MessageFormat;
 import java.util.Date;
 
 import javax.swing.JOptionPane;
+import javax.swing.JScrollPane;
 import javax.swing.JTable;
+import javax.swing.JTextArea;
 import javax.swing.table.DefaultTableColumnModel;
 import javax.swing.table.TableCellRenderer;
 import javax.swing.table.TableColumn;
@@ -55,8 +61,19 @@
 	}
 
 	public static void showException(Component c, Throwable t) {
-		// TODO show the unexpected exception
-		t.printStackTrace();
+		StringWriter writer = new StringWriter();
+		t.printStackTrace(new PrintWriter(writer));
+		String stacktrace = writer.toString();
+		try {
+			writer.close();
+		} catch (Throwable x) {
+		}
+		JTextArea textArea = new JTextArea(stacktrace);
+		textArea.setFont(new Font("monospaced", Font.PLAIN, 11));
+		JScrollPane jsp = new JScrollPane(textArea);
+		jsp.setPreferredSize(new Dimension(800, 400));
+		JOptionPane.showMessageDialog(c, jsp, Translation.get("gb.error"),
+				JOptionPane.ERROR_MESSAGE);
 	}
 
 	public static void packColumns(JTable table, int margin) {

--
Gitblit v1.9.1