]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.views.swt/src/org/simantics/views/swt/loader/TextLoader.java.keep
Support also Resource inputs in standardIssueContexts property function
[simantics/platform.git] / bundles / org.simantics.views.swt / src / org / simantics / views / swt / loader / TextLoader.java.keep
1 package org.simantics.views.swt.loader;
2
3 import org.simantics.datatypes.literal.Font;
4 import org.simantics.datatypes.literal.RGB;
5 import org.simantics.db.Resource;
6 import org.simantics.db.exception.DatabaseException;
7 import org.simantics.db.layer0.variable.Variable;
8 import org.simantics.scenegraph.ParentNode;
9 import org.simantics.scenegraph.loader.ScenegraphLoader;
10 import org.simantics.views.ontology.ViewsResources;
11 import org.simantics.views.swt.client.base.ISWTViewNode;
12 import org.simantics.views.swt.client.impl.SWTText;
13
14 public class TextLoader implements ScenegraphLoader {
15
16         final private Resource configuration;
17         
18         public TextLoader(Resource configuration) {
19                 this.configuration = configuration;
20         }
21         
22         @Override
23         public ISWTViewNode create(ParentNode<ISWTViewNode> parent, Variable context) throws DatabaseException {
24                 
25                 SWTText node = parent.addNode(SWTText.class);
26                 
27                 node.setLayoutData(LoaderUtils.getGridData(configuration));
28                 node.setStyle(LoaderUtils.getStyle(configuration));
29                 
30                 LoaderUtils.listen(configuration, context, ViewsResources.URIs.TextContainer_HasText, node.getTextFunction());
31                 LoaderUtils.listen(configuration, context, ViewsResources.URIs.Control_HasBackground, RGB.Integer.BINDING, node.getBackgroundFunction());
32                 LoaderUtils.listen(configuration, context, ViewsResources.URIs.Control_HasForeground, RGB.Integer.BINDING, node.getForegroundFunction());
33                 LoaderUtils.listen(configuration, context, ViewsResources.URIs.Control_HasFont, Font.BINDING, node.getFontFunction());
34         
35                 return node;
36                 
37         }
38         
39 }