Resize rows when editing so you can see what you're typing (#7)

diff --git a/src/main/java/org/apache/log4j/chainsaw/receivers/PluginPropertyEditorPanel.java b/src/main/java/org/apache/log4j/chainsaw/receivers/PluginPropertyEditorPanel.java
index 12153ce..eac5750 100644
--- a/src/main/java/org/apache/log4j/chainsaw/receivers/PluginPropertyEditorPanel.java
+++ b/src/main/java/org/apache/log4j/chainsaw/receivers/PluginPropertyEditorPanel.java
@@ -38,6 +38,8 @@
 import java.beans.PropertyDescriptor;
 import java.util.*;
 import java.util.List;
+import javax.swing.event.CellEditorListener;
+import javax.swing.table.TableCellRenderer;
 
 
 /**
@@ -175,8 +177,10 @@
             logger.debug("Cell value class " + valueClass +
                 " not know, using default editor");
 
-            return defaultEditor.getTableCellEditorComponent(table, value,
+            Component c = defaultEditor.getTableCellEditorComponent(table, value,
                 isSelected, row, column);
+            table.setRowHeight( row, c.getPreferredSize().height );
+            return c;
         }
 
         /* (non-Javadoc)
@@ -189,7 +193,7 @@
 
     }
 
-    private static class PluginPropertyTableModel extends AbstractTableModel {
+    private class PluginPropertyTableModel extends AbstractTableModel {
 
         private final PropertyDescriptor[] descriptors;
         private final Plugin plugin;
@@ -314,6 +318,9 @@
             } else {
                 super.setValueAt(aValue, rowIndex, columnIndex);
             }
+
+            // Since the value has been set, resize all of the rows(if required)
+            propertyTable.setRowHeight(ChainsawConstants.DEFAULT_ROW_HEIGHT);
         }
 
         /**