1 package org.simantics.browsing.ui.nattable;
\r
3 import org.eclipse.nebula.widgets.nattable.data.IColumnPropertyAccessor;
\r
4 import org.simantics.browsing.ui.Column;
\r
5 import org.simantics.browsing.ui.content.Labeler.Modifier;
\r
8 public class GEColumnAccessor implements IColumnPropertyAccessor<TreeNode> {
\r
9 NatTableGraphExplorer ge;
\r
11 public GEColumnAccessor(NatTableGraphExplorer ge) {
\r
16 public int getColumnCount() {
\r
17 return ge.getColumns().length;
\r
21 public Object getDataValue(TreeNode rowObject, int columnIndex) {
\r
23 if (columnIndex > 0)
\r
24 return rowObject.getValueString(columnIndex);
\r
27 for (int i = 0 ; i <rowObject.getDepth(); i++)
\r
29 return val + rowObject.getValueString(columnIndex);
\r
37 public void setDataValue(TreeNode rowObject, int columnIndex, Object newValue) {
\r
38 Modifier modifier = ge.getModifier(rowObject, columnIndex);
\r
39 if (modifier == null)
\r
40 throw new IllegalArgumentException("Items is not modifiable");
\r
41 modifier.modify(newValue.toString());
\r
46 public String getColumnProperty(int columnIndex) {
\r
47 return ge.getColumns()[columnIndex].getKey();
\r
51 public int getColumnIndex(String propertyName) {
\r
52 Column columns[] = ge.getColumns();
\r
53 for (int i = 0; i < columns.length; i++) {
\r
54 if (columns[i].getKey().equals(propertyName))
\r