@Override
  public Component getTableCellEditorComponent(
      JTable table, Object value, boolean isSelected, int row, int column) {
    JComboBox box =
        (JComboBox) super.getTableCellEditorComponent(table, value, isSelected, row, column);

    // set the correct selected value...
    Misc.setComboBoxTag(true, value, box);

    return box;
  }
  public Component getTableCellRendererComponent(
      JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
    if (isSelected) {
      setForeground(table.getSelectionForeground());
      super.setBackground(table.getSelectionBackground());
    } else {
      setForeground(table.getForeground());
      setBackground(table.getBackground());
    }

    // Select the current value

    // set the correct selected value...
    Misc.setComboBoxTag(true, value, this);

    return this;
  }