sdeboy 2003/06/03 07:48:43
Modified: src/java/org/apache/log4j/chainsaw
TableColorizingRenderer.java LogUI.java
JSortTable.java
Log:
corrected sorted column-drag issue
modified colorized rendering code to colorize level column
updating L&F in swing thread
Revision Changes Path
1.10 +2 -3
jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/TableColorizingRenderer.java
Index: TableColorizingRenderer.java
===================================================================
RCS file:
/home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/TableColorizingRenderer.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- TableColorizingRenderer.java 3 Jun 2003 06:32:57 -0000 1.9
+++ TableColorizingRenderer.java 3 Jun 2003 14:48:43 -0000 1.10
@@ -181,7 +181,7 @@
value = formatField(value);
Color color = null;
-
+
Component c =
super.getTableCellRendererComponent(
table, value, isSelected, hasFocus, row, col);
@@ -208,9 +208,8 @@
levelComponent.setIcon(null);
levelComponent.setText(value.toString());
}
-
+ levelComponent.setBackground(c.getBackground());
levelComponent.setForeground(c.getForeground());
- color = isSelected ? c.getBackground() : null;
c = levelComponent;
break;
1.85 +46 -36
jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/LogUI.java
Index: LogUI.java
===================================================================
RCS file:
/home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/LogUI.java,v
retrieving revision 1.84
retrieving revision 1.85
diff -u -r1.84 -r1.85
--- LogUI.java 3 Jun 2003 06:32:57 -0000 1.84
+++ LogUI.java 3 Jun 2003 14:48:43 -0000 1.85
@@ -166,7 +166,6 @@
private static final String LOOK_AND_FEEL = "LookAndFeel";
private static final String STATUS_BAR = "StatusBar";
private static final String COLUMNS_EXTENSION = ".columns";
-
private static ChainsawSplash splash = null;
ChainsawTabbledPane tabbedPane;
JToolBar toolbar;
@@ -268,10 +267,15 @@
* etc etc.
*/
public void loadSettings(LoadSettingsEvent event) {
- String lookAndFeel = event.getSetting(LogUI.LOOK_AND_FEEL);
+ final String lookAndFeel = event.getSetting(LogUI.LOOK_AND_FEEL);
if (lookAndFeel != null) {
- changeLookAndFeel(lookAndFeel);
+ SwingUtilities.invokeLater(
+ new Runnable() {
+ public void run() {
+ changeLookAndFeel(lookAndFeel);
+ }
+ });
}
if (event.asBoolean(LogUI.STATUS_BAR)) {
@@ -464,13 +468,17 @@
void exit() {
// TODO Ask the user if they want to save the settings via a dialog.
sm.saveSettings();
+
int tabCount = tabbedPane.getTabCount();
- for (int i=0;i<tabCount;i++) {
- Component c = tabbedPane.getComponentAt(i);
- if (c instanceof LogPanel) {
- ((LogPanel)c).saveSettings();
- }
+
+ for (int i = 0; i < tabCount; i++) {
+ Component c = tabbedPane.getComponentAt(i);
+
+ if (c instanceof LogPanel) {
+ ((LogPanel) c).saveSettings();
+ }
}
+
System.exit(0);
}
@@ -698,7 +706,7 @@
/**
* Regurgitates a DisplayFilter for a specific machine identifier
- * by deserializing the settings from a file.
+ * by deserializing the settings from a file.
* DisplayFilter serializes tool tip fields and enabled flag.
* @param ident
* @return
@@ -706,15 +714,14 @@
private DisplayFilter loadDisplayFilter(String ident) {
DisplayFilter d = null;
ObjectInputStream s = null;
- File f = new File(
- SettingsManager.getInstance().getSettingsDirectory()
- + File.separator + ident
- + ChainsawConstants.SETTINGS_EXTENSION);
+ File f =
+ new File(
+ SettingsManager.getInstance().getSettingsDirectory() + File.separator
+ + ident + ChainsawConstants.SETTINGS_EXTENSION);
+
try {
s = new ObjectInputStream(
- new BufferedInputStream(
- new FileInputStream(f
- )));
+ new BufferedInputStream(new FileInputStream(f)));
d = (DisplayFilter) s.readObject();
} catch (IOException ioe) {
} catch (ClassNotFoundException cnfe) {
@@ -787,7 +794,8 @@
map = new HashMap();
table = new JSortTable(tableModel);
- table.getColumnModel().addColumnModelListener(new
ChainsawTableColumnModelListener(table));
+ table.getColumnModel().addColumnModelListener(
+ new ChainsawTableColumnModelListener(table));
table.setAutoCreateColumnsFromModel(false);
@@ -1005,12 +1013,13 @@
table.setDefaultRenderer(Object.class, renderer);
final DetailFieldSelector detailFieldSelector =
- new DetailFieldSelector(ident,
- new Vector(ChainsawColumns.getColumnsNames()), displayFilter);
+ new DetailFieldSelector(
+ ident, new Vector(ChainsawColumns.getColumnsNames()), displayFilter);
final ColumnSelector columnSelector =
- new ColumnSelector(ident,
- new Vector(ChainsawColumns.getColumnsNames()), table, displayFilter);
+ new ColumnSelector(
+ ident, new Vector(ChainsawColumns.getColumnsNames()), table,
+ displayFilter);
table.getColumnModel().addColumnModelListener(columnSelector);
columnSelector.setIconImage(getIconImage());
detailFieldSelector.setIconImage(getIconImage());
@@ -1680,6 +1689,7 @@
new BufferedOutputStream(new FileOutputStream(f)));
Enumeration e = model.getColumns();
+
while (e.hasMoreElements()) {
TableColumn c = (TableColumn) e.nextElement();
o.writeObject(
@@ -1718,7 +1728,6 @@
}
void loadDefaultColumnSettings(LoadSettingsEvent event) {
-
String columnOrder = event.getSetting(TABLE_COLUMN_ORDER);
TableColumnModel columnModel = table.getColumnModel();
@@ -1797,10 +1806,9 @@
+ File.separator + ident + COLUMNS_EXTENSION);
if (f.exists()) {
-
//remove columns from model - will be re-added in the correct order
- for (int i=model.getColumnCount() - 1; i > -1; i--) {
- model.removeColumn(model.getColumn(i));
+ for (int i = model.getColumnCount() - 1; i > -1; i--) {
+ model.removeColumn(model.getColumn(i));
}
TableColumnData temp = null;
@@ -2018,25 +2026,27 @@
//if columnmoved or columnremoved callback received, re-apply table's sort index
based
//sort column name
class ChainsawTableColumnModelListener implements TableColumnModelListener {
- private JSortTable table;
+ private JSortTable table;
+
+ public ChainsawTableColumnModelListener(JSortTable table) {
+ this.table = table;
+ }
- public ChainsawTableColumnModelListener(JSortTable table) {
- this.table = table;
- }
-
- public void columnAdded(TableColumnModelEvent e) {}
+ public void columnAdded(TableColumnModelEvent e) {
+ }
public void columnRemoved(TableColumnModelEvent e) {
- table.updateSortedColumn();
+ table.updateSortedColumn();
}
public void columnMoved(TableColumnModelEvent e) {
- table.updateSortedColumn();
+ table.updateSortedColumn();
}
- public void columnMarginChanged(ChangeEvent e) {}
+ public void columnMarginChanged(ChangeEvent e) {
+ }
- public void columnSelectionChanged(ListSelectionEvent e) {}
-
+ public void columnSelectionChanged(ListSelectionEvent e) {
+ }
}
}
1.8 +1 -1
jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/JSortTable.java
Index: JSortTable.java
===================================================================
RCS file:
/home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/JSortTable.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- JSortTable.java 2 Jun 2003 04:23:08 -0000 1.7
+++ JSortTable.java 3 Jun 2003 14:48:43 -0000 1.8
@@ -104,7 +104,7 @@
public void updateSortedColumn() {
if (sortedColumn != null) {
try {
- setSortedColumnIndex(columnModel.getColumnIndex(sortedColumn));
+ sortedColumnIndex = columnModel.getColumnIndex(sortedColumn);
} catch (IllegalArgumentException ie) {//nothing...column is not in
the model
setSortedColumnIndex(-1);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]