[prev in list] [next in list] [prev in thread] [next in thread] 

List:       apache-logging-general
Subject:    svn commit: r825384 - in /logging/chainsaw/trunk/src/main:
From:       sdeboy () apache ! org
Date:       2009-10-15 3:55:45
Message-ID: 20091015035545.E22CB238888F () eris ! apache ! org
[Download RAW message or body]

Author: sdeboy
Date: Thu Oct 15 03:55:45 2009
New Revision: 825384

URL: http://svn.apache.org/viewvc?rev=825384&view=rev
Log:
Make sure all default columns are added to the 'columns' of the preferencemodel (so \
defaults can be re-enabled if previously disabled)

Modified:
    logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanel.java
    logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanelPreferenceModel.java
  logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanelPreferencePanel.java
  logging/chainsaw/trunk/src/main/resources/org/apache/log4j/chainsaw/prefs/default.properties


Modified: logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanel.java
                
URL: http://svn.apache.org/viewvc/logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanel.java?rev=825384&r1=825383&r2=825384&view=diff
 ==============================================================================
--- logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanel.java \
                (original)
+++ logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanel.java Thu \
Oct 15 03:55:45 2009 @@ -1547,7 +1547,19 @@
             	in = stream.createObjectInputStream(r);
             	
                 LogPanelPreferenceModel storedPrefs = \
(LogPanelPreferenceModel)in.readObject(); +                String columnOrder = \
event.getSetting(TABLE_COLUMN_ORDER);  preferenceModel.apply(storedPrefs);
+
+                //update prefModel columns to include defaults
+                int index = 0;
+                StringTokenizer tok = new StringTokenizer(columnOrder, ",");
+                while (tok.hasMoreElements()) {
+                  String element = tok.nextElement().toString().trim();
+                  TableColumn column = new TableColumn(index++);
+                  column.setHeaderValue(element);
+                  preferenceModel.addColumn(column);
+                }
+
                 TableColumnModel columnModel = table.getColumnModel();
                 //remove previous columns
                 while (columnModel.getColumnCount() > 0) {

Modified: logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanelPreferenceModel.java
                
URL: http://svn.apache.org/viewvc/logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanelPreferenceModel.java?rev=825384&r1=825383&r2=825384&view=diff
 ==============================================================================
--- logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanelPreferenceModel.java \
                (original)
+++ logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanelPreferenceModel.java \
Thu Oct 15 03:55:45 2009 @@ -134,7 +134,7 @@
 	  if (findColumnByHeader(allColumns, column.getHeaderValue().toString()) != null) {
 		  return false;
 	  }
-	  
+
       Object oldValue = allColumns;
       allColumns = new ArrayList(allColumns);
       allColumns.add(column);
@@ -276,11 +276,11 @@
   /**
    * Returns true if the named column should be made visible otherwise
    * false.
-   * @param columnName
+   * @param column
    * @return column visible flag
    */
   public boolean isColumnVisible(TableColumn column) {
-	  return (visibleColumns.contains(column));
+	  return (findColumnByHeader(visibleColumns, column.getHeaderValue().toString()) != \
null);  }
 
   private void setVisibleColumns(List visibleColumns) {
@@ -292,20 +292,19 @@
 
   public void setColumnVisible(String columnName, boolean isVisible) {
     boolean wasVisible = findColumnByHeader(visibleColumns, columnName) != null;
-    boolean newVisible = isVisible;
 
-    //because we're a list and not a set, ensure we keep at most
+      //because we're a list and not a set, ensure we keep at most
     //one entry for a tablecolumn
     Object col = findColumnByHeader(allColumns, columnName);
-    if (newVisible && !wasVisible) {
+    if (isVisible && !wasVisible) {
 		visibleColumns.add(col);
 		visibleColumnOrder.add(col);
-	    propertySupport.firePropertyChange("visibleColumns", new Boolean(newVisible), \
new Boolean(wasVisible));       +	    \
propertySupport.firePropertyChange("visibleColumns", new Boolean(isVisible), new \
Boolean(wasVisible));  }
-    if (!newVisible && wasVisible) {
+    if (!isVisible && wasVisible) {
 		visibleColumns.remove(col);
 		visibleColumnOrder.remove(col);
-	    propertySupport.firePropertyChange("visibleColumns", new Boolean(newVisible), \
new Boolean(wasVisible));       +	    \
propertySupport.firePropertyChange("visibleColumns", new Boolean(isVisible), new \
Boolean(wasVisible));  }
   }
   

Modified: logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanelPreferencePanel.java
                
URL: http://svn.apache.org/viewvc/logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanelPreferencePanel.java?rev=825384&r1=825383&r2=825384&view=diff
 ==============================================================================
--- logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanelPreferencePanel.java \
                (original)
+++ logging/chainsaw/trunk/src/main/java/org/apache/log4j/chainsaw/LogPanelPreferencePanel.java \
Thu Oct 15 03:55:45 2009 @@ -25,6 +25,7 @@
 import java.awt.event.MouseEvent;
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
+import java.util.Enumeration;
 import java.util.Iterator;
 import java.util.List;
 
@@ -174,7 +175,18 @@
         Iterator iter = preferenceModel.getColumns().iterator();
           iter.hasNext();)
       {
-        columnListModel.addElement(iter.next());
+          TableColumn col = (TableColumn)iter.next();
+          Enumeration enumeration = columnListModel.elements();
+          boolean found = false;
+          while (enumeration.hasMoreElements()) {
+              TableColumn thisCol = (TableColumn) enumeration.nextElement();
+              if (thisCol.getHeaderValue().equals(col.getHeaderValue())) {
+                  found = true;
+              }
+          }
+            if (!found) {
+              columnListModel.addElement(col);
+            }
       }
 
       columnList.setModel(columnListModel);
@@ -643,7 +655,15 @@
           	          iter.hasNext();)
           	      {
           	        TableColumn col = (TableColumn) iter.next();
-          	        if (!columnListModel.contains(col)) {
+                    Enumeration enumeration = columnListModel.elements();
+                    boolean found = false;
+                    while (enumeration.hasMoreElements()) {
+                        TableColumn thisCol = (TableColumn) \
enumeration.nextElement(); +                        if \
(thisCol.getHeaderValue().equals(col.getHeaderValue())) { +                           \
found = true; +                        }
+                    }
+          	        if (!found) {
           	        	columnListModel.addElement(col);
           	            columnListModel.fireContentsChanged();
           	        }
@@ -658,7 +678,6 @@
                     columnListModel.fireContentsChanged();
                   }
                 });
-
     }
   }
 }

Modified: logging/chainsaw/trunk/src/main/resources/org/apache/log4j/chainsaw/prefs/default.properties
                
URL: http://svn.apache.org/viewvc/logging/chainsaw/trunk/src/main/resources/org/apache \
/log4j/chainsaw/prefs/default.properties?rev=825384&r1=825383&r2=825384&view=diff \
                ==============================================================================
                
--- logging/chainsaw/trunk/src/main/resources/org/apache/log4j/chainsaw/prefs/default.properties \
                (original)
+++ logging/chainsaw/trunk/src/main/resources/org/apache/log4j/chainsaw/prefs/default.properties \
Thu Oct 15 03:55:45 2009 @@ -9,7 +9,8 @@
 main.window.width=640
 main.window.height=480
 
-table.columns.order=ID,Timestamp,Level,Logger,Message,Throwable,Thread,NDC,Class,Method,File,Line
 +#entries need to have 1st char uppercase, remaining lowercase
+table.columns.order=Id,Timestamp,Level,Logger,Message,Throwable,Thread,Ndc,Class,Method,File,Line
  table.columns.widths=50,150,50,100,300,100,150,150,300,150,100,100
 
 SavedConfigs.Size=0


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic