]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.views.swt/src/org/simantics/views/swt/loader/TabFolderLoader.java.keep
Support also Resource inputs in standardIssueContexts property function
[simantics/platform.git] / bundles / org.simantics.views.swt / src / org / simantics / views / swt / loader / TabFolderLoader.java.keep
index d82c0feebd3678eba87521224053cbe18a638862..4c6cdf0599a94723e1561425f7a779e1d9fc7ee4 100644 (file)
@@ -1,75 +1,75 @@
-package org.simantics.views.swt.loader;\r
-\r
-import java.util.Collection;\r
-import java.util.HashSet;\r
-import java.util.Set;\r
-\r
-import org.eclipse.swt.custom.CTabItem;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.simantics.db.ReadGraph;\r
-import org.simantics.db.Resource;\r
-import org.simantics.db.common.request.UniqueRead;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.db.layer0.util.Simantics;\r
-import org.simantics.db.layer0.variable.Variable;\r
-import org.simantics.db.layer0.variable.Variables;\r
-import org.simantics.scenegraph.ParentNode;\r
-import org.simantics.scenegraph.loader.ScenegraphLoader;\r
-import org.simantics.views.swt.client.base.ISWTViewNode;\r
-import org.simantics.views.swt.client.impl.SWTTabFolder;\r
-\r
-public class TabFolderLoader implements ScenegraphLoader {\r
-\r
-       final private Resource configuration;\r
-       \r
-       public TabFolderLoader(Resource configuration) {\r
-               this.configuration = configuration;\r
-       }\r
-       \r
-       @Override\r
-       public ISWTViewNode create(ParentNode<ISWTViewNode> parent, Variable context) throws DatabaseException {\r
-               \r
-               SWTTabFolder node = parent.addNode(SWTTabFolder.class);\r
-               \r
-               final Collection<Variable> children = LoaderUtils.getChildren(configuration);\r
-\r
-               String[] names = Simantics.getSession().sync(new UniqueRead<String[]>() {\r
-\r
-                       @Override\r
-                       public String[] perform(ReadGraph graph) throws DatabaseException {\r
-                               \r
-                               String[] result = new String[children.size()];\r
-\r
-                               int index = 0;\r
-                               for(Variable child : children) {\r
-                                       result[index++] = child.getPropertyValue(graph, Variables.LABEL);\r
-                               }\r
-                               \r
-                               return result;\r
-                               \r
-                       }\r
-                       \r
-               });\r
-               \r
-               node.setTabNames(names);\r
-               \r
-               return node;\r
-               \r
-       }\r
-\r
-       Set<Control> getControls(CTabItem item) {\r
-               HashSet<Control> result = new HashSet<Control>();\r
-               forControl(item.getControl(), result);\r
-               return result;\r
-       }\r
-       \r
-       void forControl(Control control, HashSet<Control> controls) {\r
-               controls.add(control);\r
-               if(control instanceof Composite) {\r
-                       Composite composite = (Composite)control;\r
-                       for(Control child : composite.getChildren()) forControl(child, controls);\r
-               }\r
-       }\r
-       \r
-}\r
+package org.simantics.views.swt.loader;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+
+import org.eclipse.swt.custom.CTabItem;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.simantics.db.ReadGraph;
+import org.simantics.db.Resource;
+import org.simantics.db.common.request.UniqueRead;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.layer0.util.Simantics;
+import org.simantics.db.layer0.variable.Variable;
+import org.simantics.db.layer0.variable.Variables;
+import org.simantics.scenegraph.ParentNode;
+import org.simantics.scenegraph.loader.ScenegraphLoader;
+import org.simantics.views.swt.client.base.ISWTViewNode;
+import org.simantics.views.swt.client.impl.SWTTabFolder;
+
+public class TabFolderLoader implements ScenegraphLoader {
+
+       final private Resource configuration;
+       
+       public TabFolderLoader(Resource configuration) {
+               this.configuration = configuration;
+       }
+       
+       @Override
+       public ISWTViewNode create(ParentNode<ISWTViewNode> parent, Variable context) throws DatabaseException {
+               
+               SWTTabFolder node = parent.addNode(SWTTabFolder.class);
+               
+               final Collection<Variable> children = LoaderUtils.getChildren(configuration);
+
+               String[] names = Simantics.getSession().sync(new UniqueRead<String[]>() {
+
+                       @Override
+                       public String[] perform(ReadGraph graph) throws DatabaseException {
+                               
+                               String[] result = new String[children.size()];
+
+                               int index = 0;
+                               for(Variable child : children) {
+                                       result[index++] = child.getPropertyValue(graph, Variables.LABEL);
+                               }
+                               
+                               return result;
+                               
+                       }
+                       
+               });
+               
+               node.setTabNames(names);
+               
+               return node;
+               
+       }
+
+       Set<Control> getControls(CTabItem item) {
+               HashSet<Control> result = new HashSet<Control>();
+               forControl(item.getControl(), result);
+               return result;
+       }
+       
+       void forControl(Control control, HashSet<Control> controls) {
+               controls.add(control);
+               if(control instanceof Composite) {
+                       Composite composite = (Composite)control;
+                       for(Control child : composite.getChildren()) forControl(child, controls);
+               }
+       }
+       
+}