/**
  * @see javax.swing.table.TableCellRenderer#getTableCellRendererComponent(javax.swing.JTable,
  *     java.lang.Object, boolean, boolean, int, int)
  */
 public Component getTableCellRendererComponent(
     JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
   InstancePropertyDescriptor v = (InstancePropertyDescriptor) value;
   try {
     lastEditor = v.getRenderer(props.getObject(), props.getPrefs().getCore());
     return lastEditor;
   } catch (PreferenceException e) {
     e.printStackTrace();
     return null;
   }
 }
 /**
  * @see javax.swing.table.TableCellEditor#getTableCellEditorComponent(javax.swing.JTable,
  *     java.lang.Object, boolean, int, int)
  */
 public Component getTableCellEditorComponent(
     JTable table, Object value, boolean isSelected, int row, int column) {
   InstancePropertyDescriptor v = (InstancePropertyDescriptor) value;
   JComponent c;
   try {
     c = v.getEditor(props.getObject(), props.getPrefs().getCore());
     lastEditor = (CellEditor) c;
     return c;
   } catch (PreferenceException e) {
     e.printStackTrace();
     return null;
   }
 }