1 14 package org.compiere.report.core; 15 16 import java.util.*; 17 import javax.swing.event.*; 18 import javax.swing.table.*; 19 20 26 class ResultTableModel implements TableModel 27 { 28 32 public ResultTableModel (RModel reportModel) 33 { 34 m_model = reportModel; 35 } 37 38 private RModel m_model; 39 40 44 public int getRowCount() 45 { 46 return m_model.getRowCount(); 47 } 49 53 public int getColumnCount() 54 { 55 return m_model.getColumnCount(); 56 } 58 63 public String getColumnName(int columnIndex) 64 { 65 return m_model.getColumnName(columnIndex); 66 } 68 73 public Class getColumnClass(int columnIndex) 74 { 75 return m_model.getColumnClass(columnIndex); 76 } 78 84 public boolean isCellEditable(int rowIndex, int columnIndex) 85 { 86 return false; 87 } 89 95 public Object getValueAt(int row, int col) 96 { 97 return m_model.getValueAt(row, col); 98 } 100 106 public void setValueAt(Object aValue, int row, int col) 107 { 108 m_model.setValueAt(aValue, row, col); 109 fireTableChanged(new TableModelEvent (this, row, row, col, TableModelEvent.UPDATE)); 110 } 112 117 public void moveRow (int from, int to) 118 { 119 m_model.moveRow (from, to); 120 } 122 123 124 transient private Vector tableModelListeners; 125 126 public synchronized void removeTableModelListener(TableModelListener l) 127 { 128 if (tableModelListeners != null && tableModelListeners.contains(l)) 129 { 130 Vector v = (Vector) tableModelListeners.clone(); 131 v.removeElement(l); 132 tableModelListeners = v; 133 } 134 } 135 public synchronized void addTableModelListener(TableModelListener l) 136 { 137 Vector v = tableModelListeners == null ? new Vector(2) : (Vector) tableModelListeners.clone(); 138 if (!v.contains(l)) 139 { 140 v.addElement(l); 141 tableModelListeners = v; 142 } 143 } 144 protected void fireTableChanged(TableModelEvent e) 145 { 146 if (tableModelListeners != null) 147 { 148 Vector listeners = tableModelListeners; 149 int count = listeners.size(); 150 for (int i = 0; i < count; i++) 151 { 152 ((TableModelListener) listeners.elementAt(i)).tableChanged(e); 153 } 154 } 155 } 156 157 } | Popular Tags |