]> git.ipfire.org Git - thirdparty/cups.git/blob - scripting/java/example/GLPjobTableModel.java
Load cups into easysw/current.
[thirdparty/cups.git] / scripting / java / example / GLPjobTableModel.java
1
2 import javax.swing.table.*;
3 import javax.swing.event.TableModelListener;
4 import javax.swing.event.TableModelEvent;
5 import com.easysw.cups.*;
6
7 public class GLPjobTableModel extends AbstractTableModel
8 implements TableModelListener
9 {
10 protected TableModel model;
11 private final Object[][] rowData;
12 private final String[] colNames;
13 private int rowCount = 0;
14 private int colCount = 0;
15
16 public GLPjobTableModel( int num_rows, int num_cols )
17 {
18 rowData = new Object[num_rows][num_cols];
19 colNames = new String[num_cols];
20 rowCount = num_rows;
21 colCount = num_cols;
22 }
23
24 public TableModel getModel()
25 {
26 return model;
27 }
28
29 public void setModel(TableModel model)
30 {
31 this.model = model;
32 model.addTableModelListener(this);
33 }
34
35 // By default, implement TableModel by forwarding all messages
36 // to the model.
37
38 public Object getValueAt(int aRow, int aColumn)
39 {
40 if (rowCount >= aRow && colCount >= aColumn)
41 return (rowData[aRow][aColumn]);
42 else
43 return(null);
44 }
45
46 public void setValueAt(Object aValue, int aRow, int aColumn)
47 {
48 if (rowCount >= aRow && colCount >= aColumn)
49 rowData[aRow][aColumn] = aValue;
50 }
51
52 public int getRowCount()
53 {
54 return (rowCount);
55 }
56
57 public int getColumnCount()
58 {
59 return (colCount);
60 }
61
62 public void setColumnName(int aColumn, String aName)
63 {
64 if (colCount >= aColumn)
65 {
66 colNames[aColumn] = aName;
67 }
68 }
69
70 public String getColumnName(int aColumn)
71 {
72 if (colCount >= aColumn)
73 return (colNames[aColumn]);
74 else
75 return("");
76 }
77
78 public Class getColumnClass(int aColumn)
79 {
80 if (colCount >= aColumn)
81 {
82 if (rowData[0][aColumn] != null)
83 return (rowData[0][aColumn].getClass());
84 else
85 return( null );
86 }
87 else return(null);
88 }
89
90 public boolean isCellEditable(int row, int column)
91 {
92 return(false);
93 }
94
95
96 //
97 // Implementation of the TableModelListener interface,
98 //
99 // By default forward all events to all the listeners.
100 public void tableChanged(TableModelEvent e)
101 {
102 fireTableChanged(e);
103 }
104 }