1 18 19 package swingwtx.swing.table; 20 21 import java.util.Vector ; 22 23 import swingwtx.swing.event.TableModelEvent; 24 import swingwtx.swing.event.TableModelListener; 25 26 27 public abstract class AbstractTableModel implements TableModel 28 { 29 30 protected Vector listenerList = new Vector (); 31 32 33 public String getColumnName(int column) { return null; } 34 35 public int findColumn(String columnName) { 36 for (int i = 0; i < getColumnCount(); i++) { 37 if (columnName.equals(getColumnName(i))) { 38 return i; 39 } 40 } 41 return -1; 42 } 43 44 45 public int getColumnCount() { return 0; } 46 47 public Class getColumnClass(int columnIndex) { 48 return Object .class; 49 } 50 51 public boolean isCellEditable(int rowIndex, int columnIndex) { 52 return false; 53 } 54 55 public void setValueAt(Object aValue, int rowIndex, int columnIndex) { 56 } 57 58 public void addTableModelListener(TableModelListener l) { 59 listenerList.add(l); 60 } 61 62 public void removeTableModelListener(TableModelListener l) { 63 listenerList.remove(l); 64 } 65 66 public Object [] getTableModelListeners() { 67 return listenerList.toArray(); 68 } 69 70 public void fireTableDataChanged() { 71 fireTableChanged(new TableModelEvent(this)); 72 } 73 74 public void fireTableStructureChanged() { 75 fireTableChanged(new TableModelEvent(this, TableModelEvent.HEADER_ROW)); 76 } 77 78 public void fireTableRowsInserted(int firstRow, int lastRow) { 79 fireTableChanged(new TableModelEvent(this, firstRow, lastRow, TableModelEvent.ALL_COLUMNS, TableModelEvent.INSERT)); 80 } 81 82 public void fireTableRowsUpdated(int firstRow, int lastRow) { 83 fireTableChanged(new TableModelEvent(this, firstRow, lastRow, TableModelEvent.ALL_COLUMNS, TableModelEvent.UPDATE)); 84 } 85 86 public void fireTableRowsDeleted(int firstRow, int lastRow) { 87 fireTableChanged(new TableModelEvent(this, firstRow, lastRow, TableModelEvent.ALL_COLUMNS, TableModelEvent.DELETE)); 88 } 89 90 public void fireTableCellUpdated(int row, int column) { 91 fireTableChanged(new TableModelEvent(this, row, row, column)); 92 } 93 94 public void fireTableChanged(TableModelEvent e) { 95 Object [] listeners = listenerList.toArray(); 96 for (int i = 0; i < listeners.length; i++) { 97 ((TableModelListener) listeners[i]).tableChanged(e); 98 } 99 } 100 101 public Object [] getListeners(Class listenerType) { 102 return listenerList.toArray(); 103 } 104 } 105 | Popular Tags |