package com.towel.swing.table.adapter; import javax.swing.table.TableCellRenderer; /** * @author Vinicius Godoy */ public abstract class AbstractColumn<C> implements Column<C> { private static final int DEFAULT_WIDTH = 20; private int width; private int index; private TableCellRenderer renderer; private String name; private Class< ? > columnClass; public AbstractColumn(String name, int index) { this(name, index, Object.class, DEFAULT_WIDTH, null); } public AbstractColumn(String name, int index, Class< ? > columnClass) { this(name, index, columnClass, DEFAULT_WIDTH, null); } public AbstractColumn(String name, int index, int width) { this(name, index, Object.class, width, null); } public AbstractColumn(String name, int index, Class< ? > columnClass, int width) { this(name, index, columnClass, width, null); } public AbstractColumn(String name, int index, Class< ? > columnClass, int width, TableCellRenderer renderer) { this.width = width; this.index = index; this.renderer = renderer; this.name = name; this.columnClass = columnClass; } public Class< ? > getColumnClass() { return columnClass; } public String getName() { return name; } public TableCellRenderer getRenderer() { return renderer; } public int getModelIndex() { return index; } public int getWidth() { return width; } }