package org.limewire.ui.swing.table; import java.util.Comparator; import ca.odell.glazedlists.gui.WritableTableFormat; /** * Generic table model for Single column tables (list views). Eliminates lots of boilerplate code. */ public class LimeSingleColumnTableFormat<T> extends AbstractAdvancedTableFormat<T> implements WritableTableFormat<T> { private Class clazz; public LimeSingleColumnTableFormat(Class clazz) { super(""); this.clazz = clazz; } @Override public Object getColumnValue(T baseObject, int column) { if (column == 0) return baseObject; throw new IllegalStateException("Column "+ column + " out of bounds"); } @Override public Class getColumnClass(int column) { return clazz; } @Override public Comparator getColumnComparator(int column) { return null; } @Override public boolean isEditable(T baseObject, int column) { if (column == 0) return true; throw new IllegalStateException("Column "+ column + " out of bounds"); } @Override public T setColumnValue(T baseObject, Object editedValue, int column) { if (column == 0) return baseObject; throw new IllegalStateException("Column "+ column + " out of bounds"); } }