1 package at.ac.tuwien.sbc.valesriegler.common;
3 import java.util.ArrayList;
6 import javax.swing.table.AbstractTableModel;
9 * Common base class of table models used in Group GUI and Pizzeria GUI.
11 * @author Gregor Riegler <gregor DOT riegler AT gmail DOT com>
14 public abstract class TableModel<Item> extends AbstractTableModel {
15 protected static final String UNHANDLEDCOLUMN = "Unhandled column";
17 protected final List<Item> items = new ArrayList<Item>();
19 public void addItems(List<Item> newItems) {
20 items.addAll(newItems);
22 fireTableDataChanged();
25 public void setItems(List<Item> newItems) {
31 public int getRowCount() {
36 public String getColumnName(int column) {
37 return getColumns()[column];
41 public int getColumnCount() {
42 return getColumns().length;
45 protected abstract String[] getColumns();