\r
if (args.containsKey("treeView") && Boolean.TRUE.equals(args.get("treeView"))) {\r
explorer = createExplorerControl2(explorerComposite, maxChildren);\r
+ } else if (args.containsKey("natTable") && Boolean.TRUE.equals(args.get("natTable"))) {\r
+ explorer = createExplorerControl3(explorerComposite, maxChildren);\r
} else {\r
explorer = createExplorerControl(explorerComposite, maxChildren);\r
}\r
}\r
\r
public void addListenerToControl(int eventType, Listener listener) {\r
- ((Tree)explorer.getControl()).addListener(eventType, listener);\r
+ ((Control)explorer.getControl()).addListener(eventType, listener);\r
}\r
\r
public void finish() {\r
\r
DropTarget target = new DropTarget(control, DND.DROP_COPY | DND.DROP_LINK);\r
target.setTransfer(getAcceptedDataTypes());\r
+ if (control instanceof Tree) {\r
target.addDropListener(new DropTargetListener() {\r
\r
Tree tree = (Tree)explorer.getControl();\r
}\r
\r
});\r
+ }\r
\r
// Add workbench listeners and make sure they are cleaned up\r
setWorkbenchListeners();\r
\r
return ge;\r
}\r
+ \r
+ protected GraphExplorer createExplorerControl3(Composite parent, Integer maxChildren) {\r
+ GraphExplorerFactory factory = GraphExplorerFactory.getInstance();\r
+ if(maxChildren != null) factory = factory.maxChildrenShown(maxChildren);\r
+\r
+ GraphExplorer ge = factory\r
+ .selectionDataResolver(new DefaultSelectionDataResolver())\r
+ .selectionTransformation(selectionTransformation)\r
+ .setServiceLocator(site)\r
+ .create3(parent, style);\r
+\r
+ return ge;\r
+ }\r
\r
protected void setupDragSource(Session session) {\r
if (dragSource instanceof SessionContainer) {\r