]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.browsing.ui.swt/src/org/simantics/browsing/ui/swt/widgets/GraphExplorerComposite.java
Sync git svn branch with SVN repository r33144.
[simantics/platform.git] / bundles / org.simantics.browsing.ui.swt / src / org / simantics / browsing / ui / swt / widgets / GraphExplorerComposite.java
index 5e324fa760d25fea3e0e8a298299806f7d337d0c..a83c44ab1a3d39daa6573ae55bb0079fb775b4ec 100644 (file)
@@ -363,6 +363,8 @@ public class GraphExplorerComposite extends Composite implements Widget, IAdapta
 \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
@@ -418,7 +420,7 @@ public class GraphExplorerComposite extends Composite implements Widget, IAdapta
     }\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
@@ -529,6 +531,7 @@ public class GraphExplorerComposite extends Composite implements Widget, IAdapta
 \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
@@ -570,6 +573,7 @@ public class GraphExplorerComposite extends Composite implements Widget, IAdapta
             }\r
 \r
         });\r
+        }\r
 \r
         // Add workbench listeners and make sure they are cleaned up\r
         setWorkbenchListeners();\r
@@ -1049,6 +1053,19 @@ public class GraphExplorerComposite extends Composite implements Widget, IAdapta
 \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