package de.hameister.treetable;
import java.util.Date;
public class MyDataModel extends MyAbstractTreeTableModel {
// Spalten Name.
static protected String[] columnNames = {"Knotentext", "String", "Datum", "Integer"};
// Spalten Typen.
static protected Class<?>[] columnTypes = {MyTreeTableModel.class, String.class, Date.class, Integer.class};
public MyDataModel(MyDataNode rootNode) {
super(rootNode);
root = rootNode;
}
public Object getChild(Object parent, int index) {
return ((MyDataNode) parent).getChildren().get(index);
}
public int getChildCount(Object parent) {
return ((MyDataNode) parent).getChildren().size();
}
public int getColumnCount() {
return columnNames.length;
}
public String getColumnName(int column) {
return columnNames[column];
}
public Class<?> getColumnClass(int column) {
return columnTypes[column];
}
public Object getValueAt(Object node, int column) {
switch (column) {
case 0:
return ((MyDataNode) node).getName();
case 1:
return ((MyDataNode) node).getCapital();
case 2:
return ((MyDataNode) node).getDeclared();
case 3:
return ((MyDataNode) node).getArea();
default:
break;
}
return null;
}
public boolean isCellEditable(Object node, int column) {
return true; // Important to activate TreeExpandListener
}
public void setValueAt(Object aValue, Object node, int column) {
}
}