sdeboy 2004/07/22 23:43:29
Modified: src/java/org/apache/log4j/chainsaw LogPanel.java LogUI.java
src/java/org/apache/log4j/chainsaw/help release-notes.html
Log:
- corrected 'show all hidden' bug when undocked panels exist
- corrected throwable popup not displaying when undocked
- undocked logger tree toggle toolbar button now an icon and stays in sync with
logger tree visibility state
Revision Changes Path
1.82 +23 -12 logging-log4j/src/java/org/apache/log4j/chainsaw/LogPanel.java
Index: LogPanel.java
===================================================================
RCS file: /home/cvs/logging-log4j/src/java/org/apache/log4j/chainsaw/LogPanel.java,v
retrieving revision 1.81
retrieving revision 1.82
diff -u -r1.81 -r1.82
--- LogPanel.java 20 Jul 2004 22:22:11 -0000 1.81
+++ LogPanel.java 23 Jul 2004 06:43:28 -0000 1.82
@@ -788,9 +788,13 @@
throwableRenderPanel.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
- Object o =
- table.getValueAt(
- table.getSelectedRow(), table.getSelectedColumn());
+ Object o = table.getValueAt(
+ table.getSelectedRow(), table.getSelectedColumn());
+ if (o == null) {
+ //no row selected - ignore
+ LogLog.debug("no row selected - unable to display throwable popup");
+ return;
+ }
detailDialog.setTitle(
table.getColumnName(table.getSelectedColumn()) + " detail...");
@@ -808,7 +812,7 @@
detailArea.setText((o == null) ? "" : o.toString());
}
- detailDialog.setLocation(LogPanel.this.getLocationOnScreen());
+ detailDialog.setLocation(lowerPanel.getLocationOnScreen());
SwingUtilities.invokeLater(
new Runnable() {
public void run() {
@@ -1739,18 +1743,25 @@
}
};
- dockToggleLogTreeAction.putValue(Action.SMALL_ICON, null);
-
- dockToggleLogTreeAction.putValue(Action.NAME, "Logger Tree");
-
- dockToggleLogTreeAction.putValue(
- Action.SHORT_DESCRIPTION, "Toggles the Log Tree panel");
- dockToggleLogTreeAction.putValue(Action.SMALL_ICON, null);
+ dockToggleLogTreeAction.putValue(Action.SHORT_DESCRIPTION, "Toggles the
Logger Tree Pane");
+ dockToggleLogTreeAction.putValue("enabled", Boolean.TRUE);
+ dockToggleLogTreeAction.putValue(Action.MNEMONIC_KEY, new
Integer(KeyEvent.VK_T));
+ dockToggleLogTreeAction.putValue(
+ Action.ACCELERATOR_KEY,
+ KeyStroke.getKeyStroke(KeyEvent.VK_T, InputEvent.ALT_MASK));
+ dockToggleLogTreeAction.putValue(
+ Action.SMALL_ICON, new ImageIcon(ChainsawIcons.WINDOW_ICON));
toolbar.add(new SmallButton(dockShowPrefsAction));
- SmallToggleButton toggleLogTreeButton =
+ final SmallToggleButton toggleLogTreeButton =
new SmallToggleButton(dockToggleLogTreeAction);
+ preferenceModel.addPropertyChangeListener("logTreePanelVisible", new
PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ toggleLogTreeButton.setSelected(preferenceModel.isLogTreePanelVisible());
+ }
+ });
+
toggleLogTreeButton.setSelected(isLogTreeVisible());
toolbar.add(toggleLogTreeButton);
toolbar.addSeparator();
1.101 +53 -56 logging-log4j/src/java/org/apache/log4j/chainsaw/LogUI.java
Index: LogUI.java
===================================================================
RCS file: /home/cvs/logging-log4j/src/java/org/apache/log4j/chainsaw/LogUI.java,v
retrieving revision 1.100
retrieving revision 1.101
diff -u -r1.100 -r1.101
--- LogUI.java 22 Jun 2004 07:14:48 -0000 1.100
+++ LogUI.java 23 Jul 2004 06:43:29 -0000 1.101
@@ -16,37 +16,6 @@
package org.apache.log4j.chainsaw;
-import org.apache.log4j.AppenderSkeleton;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
-import org.apache.log4j.chainsaw.help.HelpManager;
-import org.apache.log4j.chainsaw.help.Tutorial;
-import org.apache.log4j.chainsaw.helper.SwingHelper;
-import org.apache.log4j.chainsaw.icons.ChainsawIcons;
-import org.apache.log4j.chainsaw.icons.LineIconFactory;
-import org.apache.log4j.chainsaw.messages.MessageCenter;
-import org.apache.log4j.chainsaw.plugins.ChainsawCentral;
-import org.apache.log4j.chainsaw.plugins.PluginClassLoaderFactory;
-import org.apache.log4j.chainsaw.prefs.LoadSettingsEvent;
-import org.apache.log4j.chainsaw.prefs.SaveSettingsEvent;
-import org.apache.log4j.chainsaw.prefs.SettingsListener;
-import org.apache.log4j.chainsaw.prefs.SettingsManager;
-import org.apache.log4j.chainsaw.receivers.ReceiversPanel;
-import org.apache.log4j.chainsaw.version.VersionManager;
-import org.apache.log4j.helpers.LogLog;
-import org.apache.log4j.helpers.OptionConverter;
-import org.apache.log4j.joran.JoranConfigurator;
-import org.apache.log4j.net.SocketNodeEventListener;
-import org.apache.log4j.plugins.Plugin;
-import org.apache.log4j.plugins.PluginEvent;
-import org.apache.log4j.plugins.PluginListener;
-import org.apache.log4j.plugins.PluginRegistry;
-import org.apache.log4j.plugins.Receiver;
-import org.apache.log4j.rule.ExpressionRule;
-import org.apache.log4j.rule.Rule;
-import org.apache.log4j.spi.LoggingEvent;
-
-
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Container;
@@ -65,18 +34,12 @@
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
-
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
-
-import java.io.File;
import java.io.IOException;
-
import java.lang.reflect.Method;
-
import java.net.MalformedURLException;
import java.net.URL;
-
import java.security.AllPermission;
import java.security.CodeSource;
import java.security.PermissionCollection;
@@ -119,6 +82,36 @@
import javax.swing.event.HyperlinkEvent;
import javax.swing.event.HyperlinkListener;
+import org.apache.log4j.AppenderSkeleton;
+import org.apache.log4j.Level;
+import org.apache.log4j.LogManager;
+import org.apache.log4j.chainsaw.help.HelpManager;
+import org.apache.log4j.chainsaw.help.Tutorial;
+import org.apache.log4j.chainsaw.helper.SwingHelper;
+import org.apache.log4j.chainsaw.icons.ChainsawIcons;
+import org.apache.log4j.chainsaw.icons.LineIconFactory;
+import org.apache.log4j.chainsaw.messages.MessageCenter;
+import org.apache.log4j.chainsaw.plugins.ChainsawCentral;
+import org.apache.log4j.chainsaw.plugins.PluginClassLoaderFactory;
+import org.apache.log4j.chainsaw.prefs.LoadSettingsEvent;
+import org.apache.log4j.chainsaw.prefs.SaveSettingsEvent;
+import org.apache.log4j.chainsaw.prefs.SettingsListener;
+import org.apache.log4j.chainsaw.prefs.SettingsManager;
+import org.apache.log4j.chainsaw.receivers.ReceiversPanel;
+import org.apache.log4j.chainsaw.version.VersionManager;
+import org.apache.log4j.helpers.LogLog;
+import org.apache.log4j.helpers.OptionConverter;
+import org.apache.log4j.joran.JoranConfigurator;
+import org.apache.log4j.net.SocketNodeEventListener;
+import org.apache.log4j.plugins.Plugin;
+import org.apache.log4j.plugins.PluginEvent;
+import org.apache.log4j.plugins.PluginListener;
+import org.apache.log4j.plugins.PluginRegistry;
+import org.apache.log4j.plugins.Receiver;
+import org.apache.log4j.rule.ExpressionRule;
+import org.apache.log4j.rule.Rule;
+import org.apache.log4j.spi.LoggingEvent;
+
/**
* The main entry point for Chainsaw, this class represents the first frame
@@ -779,26 +772,30 @@
Action showHiddenTabsAction =
new AbstractAction("Show All Hidden") {
public void actionPerformed(ActionEvent e) {
- for (Iterator iter = getPanels().keySet().iterator();
+ for (Iterator iter = getPanels().entrySet().iterator();
iter.hasNext();) {
- String identifier = (String) iter.next();
- int count = getTabbedPane().getTabCount();
- boolean found = false;
-
- for (int i = 0; i < count; i++) {
- String name = getTabbedPane().getTitleAt(i);
-
- if (name.equals(identifier)) {
- found = true;
-
- break;
- }
- }
-
- if (!found) {
- displayPanel(identifier, true);
- tbms.stateChange();
- }
+ Map.Entry entry = (Map.Entry)iter.next();
+ Boolean docked = (Boolean)entry.getValue();
+ if (docked.booleanValue()) {
+ String identifier = (String) entry.getKey();
+ int count = getTabbedPane().getTabCount();
+ boolean found = false;
+
+ for (int i = 0; i < count; i++) {
+ String name = getTabbedPane().getTitleAt(i);
+
+ if (name.equals(identifier)) {
+ found = true;
+
+ break;
+ }
+ }
+
+ if (!found) {
+ displayPanel(identifier, true);
+ tbms.stateChange();
+ }
+ }
}
}
};
1.32 +7 -0
logging-log4j/src/java/org/apache/log4j/chainsaw/help/release-notes.html
Index: release-notes.html
===================================================================
RCS file:
/home/cvs/logging-log4j/src/java/org/apache/log4j/chainsaw/help/release-notes.html,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- release-notes.html 22 Jul 2004 06:27:40 -0000 1.31
+++ release-notes.html 23 Jul 2004 06:43:29 -0000 1.32
@@ -9,6 +9,13 @@
<h1>1.99.99</h2>
+<h2>22 July 2004</h2>
+<ul>
+ <li>Corrected 'show all hidden' bug when undocked panels exist.</li>
+ <li>Corrected throwable popup not displaying when undocked.</li>
+ <li>Undocked logger tree toggle toolbar button now an icon and stays in sync with
logger tree visibility state.</li>
+</ul>
+
<h2>21 July 2004</h2>
<ul>
<li>Added support for shortcutting MSG ~= expressions by using a single word or a
single-quote delimited phrase as the expression (see tutorial for more
information).</li>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]