]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.views.swt/src/org/simantics/views/swt/loader/CComboLoader.java.keep
Make Write-interfaces as @FunctionalInterface for lambdas
[simantics/platform.git] / bundles / org.simantics.views.swt / src / org / simantics / views / swt / loader / CComboLoader.java.keep
1 package org.simantics.views.swt.loader;
2
3 import org.simantics.db.Resource;
4 import org.simantics.db.exception.DatabaseException;
5 import org.simantics.db.layer0.variable.Variable;
6 import org.simantics.scenegraph.ParentNode;
7 import org.simantics.scenegraph.loader.ScenegraphLoader;
8 import org.simantics.views.ontology.ViewsResources;
9 import org.simantics.views.swt.client.base.ISWTViewNode;
10 import org.simantics.views.swt.client.impl.SWTCCombo;
11
12 public class CComboLoader implements ScenegraphLoader {
13
14         final private Resource configuration;
15         
16         public CComboLoader(Resource configuration) {
17                 this.configuration = configuration;
18         }
19         
20         @Override
21         public ISWTViewNode create(ParentNode<ISWTViewNode> parent, Variable context) throws DatabaseException {
22                 
23                 SWTCCombo node = parent.addNode(SWTCCombo.class);
24                 
25         node.setLayoutData(LoaderUtils.getGridData(configuration));
26         node.setStyle(LoaderUtils.getStyle(configuration));
27         
28                 LoaderUtils.listen(configuration, context, ViewsResources.URIs.Combo_AvailableItems, node.getAvailableFunction());
29                 LoaderUtils.listen(configuration, context, ViewsResources.URIs.Combo_SelectedItem, node.getSelectionFunction());
30                 LoaderUtils.listen(configuration, context, ViewsResources.URIs.Combo_Modifier, node.getModifierFunction());
31         
32                 return node;
33                 
34         }
35         
36 }