]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.views.swt/src/org/simantics/views/swt/loader/ButtonLoader.java.keep
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.views.swt / src / org / simantics / views / swt / loader / ButtonLoader.java.keep
1 package org.simantics.views.swt.loader;\r
2 \r
3 import org.simantics.db.Resource;\r
4 import org.simantics.db.exception.DatabaseException;\r
5 import org.simantics.db.layer0.variable.Variable;\r
6 import org.simantics.scenegraph.ParentNode;\r
7 import org.simantics.scenegraph.loader.ScenegraphLoader;\r
8 import org.simantics.views.ontology.ViewsResources;\r
9 import org.simantics.views.swt.client.base.ISWTViewNode;\r
10 import org.simantics.views.swt.client.impl.SWTButton;\r
11 \r
12 public class ButtonLoader implements ScenegraphLoader {\r
13 \r
14         final private Resource configuration;\r
15         \r
16         public ButtonLoader(Resource configuration) {\r
17                 this.configuration = configuration;\r
18         }\r
19         \r
20         @Override\r
21         public ISWTViewNode create(ParentNode<ISWTViewNode> parent, Variable context) throws DatabaseException {\r
22                 \r
23                 SWTButton node = parent.addNode(SWTButton.class);\r
24                 \r
25                 node.setLayoutData(LoaderUtils.getGridData(configuration));\r
26                 node.setStyle(LoaderUtils.getStyle(configuration));\r
27                 \r
28                 LoaderUtils.listen(configuration, context, ViewsResources.URIs.TextContainer_HasText, node.getTextFunction());\r
29                 LoaderUtils.listen(configuration, context, ViewsResources.URIs.Button_Modifier, node.getModifierFunction());\r
30                 LoaderUtils.listen(configuration, context, ViewsResources.URIs.Button_HasImage, node.getImageFunction());\r
31                 \r
32                 return node;\r
33                 \r
34         }\r
35         \r
36 }\r