1 package lejos.pc.tools;
\r
3 import javax.swing.JFrame;
\r
4 import javax.swing.table.AbstractTableModel;
\r
6 import lejos.pc.comm.NXTCommFactory;
\r
7 import lejos.pc.comm.NXTInfo;
\r
9 public class NXTTableModel extends AbstractTableModel {
\r
10 private static final String[] columnNames = {"Name","Protocol", "Address"};
\r
11 private static final int NUM_COLUMNS = 3;
\r
17 public NXTTableModel(JFrame frame, NXTInfo[] nxts, int numNXTs) {
\r
19 setData(nxts, numNXTs);
\r
22 public void setData(NXTInfo[] nxts, int numNXTs) {
\r
23 this.numNXTs = numNXTs;
\r
24 nxtData = new Object[numNXTs][NUM_COLUMNS];
\r
26 for(int i=0;i<numNXTs;i++) {
\r
27 nxtData[i][0] = nxts[i].name;
\r
28 nxtData[i][1] = (nxts[i].protocol == NXTCommFactory.USB ? "USB" : "Bluetooth");
\r
29 nxtData[i][2] = (nxts[i].btDeviceAddress == null ? "" : nxts[i].btDeviceAddress);
\r
33 public int getRowCount() {
\r
37 public int getColumnCount() {
\r
41 public Object getValueAt(int row, int column) {
\r
42 return nxtData[row][column];
\r
45 public String getColumnName(int column) {
\r
46 return columnNames[column];
\r
49 public Class getColumnClass(int column) {
\r
50 return nxtData[0][column].getClass();
\r