import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeColumn;
import org.eclipse.swt.widgets.TreeItem;
import org.simantics.browsing.ui.BuiltinKeys;
import org.simantics.browsing.ui.NodeContext;
TreeItem treeItem = parent.getItem(new Point(event.x, event.y));
if (treeItem == null)
return false;
+ // Locate the column, and add the column reference to Event object.
+ TreeColumn columns[] = parent.getColumns();
+ TreeColumn column = null;
+ int x = 0;
+ for (TreeColumn c : columns) {
+ int w = c.getWidth();
+ if (event.x >= x && event.x < (x+w)) {
+ column = c;
+ break;
+ }
+ x+=w;
+ }
+ if (column != null)
+ event.data = column.getData();
+
GENodeQueryManager manager = new GENodeQueryManager(explorerContext, null, null, TreeItemReference.create(treeItem.getParentItem()));
nodeContext = (NodeContext) treeItem.getData();
if (nodeContext != null)