-package org.simantics.spreadsheet.ui.editor;\r
-\r
-import org.eclipse.jface.layout.GridDataFactory;\r
-import org.eclipse.jface.layout.GridLayoutFactory;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.ui.IWorkbenchSite;\r
-import org.simantics.browsing.ui.swt.widgets.Label;\r
-import org.simantics.browsing.ui.swt.widgets.TrackedText;\r
-import org.simantics.browsing.ui.swt.widgets.impl.TextModifyListenerImpl;\r
-import org.simantics.browsing.ui.swt.widgets.impl.WidgetSupport;\r
-import org.simantics.db.WriteGraph;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.db.layer0.variable.Variable;\r
-import org.simantics.db.layer0.variable.VariableSpaceManipulator;\r
-import org.simantics.db.layer0.variable.VariableSpaceManipulator.ChildCreationData;\r
-import org.simantics.db.layer0.variable.Variables;\r
-import org.simantics.db.layer0.variable.VariableSpaceManipulator.Modification;\r
-import org.simantics.db.layer0.variable.VariableSpaceManipulator.PropertyCreationData;\r
-import org.simantics.db.management.ISessionContext;\r
-import org.simantics.selectionview.PropertyTabContributorImpl;\r
-\r
-public class NoCellTab extends PropertyTabContributorImpl {\r
-\r
- static class NoCellInput {\r
- \r
- public Variable sheet;\r
- public String location;\r
- \r
- public NoCellInput(Variable sheet, String location) {\r
- this.sheet = sheet;\r
- this.location = location;\r
- }\r
- \r
- }\r
- \r
- public void createControls(Composite body, IWorkbenchSite site, final ISessionContext context, WidgetSupport support) {\r
-\r
- Display display = body.getDisplay();\r
- Font font = new Font(display, "Arial", 12, SWT.NONE); \r
-\r
- Composite composite = new Composite(body, SWT.NONE);\r
- composite.setBackground(display.getSystemColor(SWT.COLOR_WHITE));\r
- GridDataFactory.fillDefaults().grab(true, true).applyTo(composite);\r
- GridLayoutFactory.fillDefaults().equalWidth(false).numColumns(2).applyTo(composite);\r
- \r
- Composite headerComposite = new Composite(composite, 0);\r
- headerComposite.setBackground(display.getSystemColor(SWT.COLOR_BLACK));\r
- GridDataFactory.fillDefaults().span(2, 1).grab(true, false).applyTo(headerComposite);\r
- GridLayoutFactory.fillDefaults().equalWidth(false).numColumns(1).extendedMargins(2,2,2,2).applyTo(headerComposite);\r
-\r
- Composite headerComposite2 = new Composite(headerComposite, 0);\r
- headerComposite2.setBackground(display.getSystemColor(SWT.COLOR_WHITE));\r
- GridDataFactory.fillDefaults().span(2, 1).grab(true, false).applyTo(headerComposite2);\r
- GridLayoutFactory.fillDefaults().equalWidth(false).numColumns(1).extendedMargins(3,3,3,3).applyTo(headerComposite2);\r
-\r
- Label header = new Label(headerComposite2, support, 0);\r
- header.setText("Create new cell");\r
- header.setFont(font);\r
- header.setBackground(display.getSystemColor(SWT.COLOR_WHITE));\r
- GridDataFactory.fillDefaults().grab(true, false).span(2, 1).align(SWT.CENTER, SWT.CENTER).applyTo(header.getWidget());\r
- \r
- Label label = new Label(composite, support, SWT.NONE);\r
- label.setText("Expression: ");\r
- label.setBackground(display.getSystemColor(SWT.COLOR_WHITE));\r
- GridDataFactory.fillDefaults().grab(false, false).applyTo(label.getWidget());\r
- \r
- TrackedText name = new TrackedText(composite, support, SWT.BORDER);\r
- name.setText("");\r
- GridDataFactory.fillDefaults().grab(true, false).applyTo(name.getWidget());\r
- name.addModifyListener(new TextModifyListenerImpl<NoCellInput>() {\r
-\r
- @Override\r
- public void applyText(WriteGraph graph, NoCellInput input, String text) throws DatabaseException {\r
-// System.out.println("create variable for " + input);\r
- VariableSpaceManipulator manipulator = input.sheet.adapt(graph, VariableSpaceManipulator.class);\r
- manipulator.apply(graph, Modification.addChild(ChildCreationData.build(input.location, "", PropertyCreationData.build(Variables.NAME, text))));\r
- }\r
- \r
- });\r
- \r
- }\r
- \r
-}\r
+package org.simantics.spreadsheet.ui.editor;
+
+import org.eclipse.jface.layout.GridDataFactory;
+import org.eclipse.jface.layout.GridLayoutFactory;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.IWorkbenchSite;
+import org.simantics.browsing.ui.swt.widgets.Label;
+import org.simantics.browsing.ui.swt.widgets.TrackedText;
+import org.simantics.browsing.ui.swt.widgets.impl.TextModifyListenerImpl;
+import org.simantics.browsing.ui.swt.widgets.impl.WidgetSupport;
+import org.simantics.db.WriteGraph;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.layer0.variable.Variable;
+import org.simantics.db.layer0.variable.VariableSpaceManipulator;
+import org.simantics.db.layer0.variable.VariableSpaceManipulator.ChildCreationData;
+import org.simantics.db.layer0.variable.Variables;
+import org.simantics.db.layer0.variable.VariableSpaceManipulator.Modification;
+import org.simantics.db.layer0.variable.VariableSpaceManipulator.PropertyCreationData;
+import org.simantics.db.management.ISessionContext;
+import org.simantics.selectionview.PropertyTabContributorImpl;
+
+public class NoCellTab extends PropertyTabContributorImpl {
+
+ static class NoCellInput {
+
+ public Variable sheet;
+ public String location;
+
+ public NoCellInput(Variable sheet, String location) {
+ this.sheet = sheet;
+ this.location = location;
+ }
+
+ }
+
+ public void createControls(Composite body, IWorkbenchSite site, final ISessionContext context, WidgetSupport support) {
+
+ Display display = body.getDisplay();
+ Font font = new Font(display, "Arial", 12, SWT.NONE);
+
+ Composite composite = new Composite(body, SWT.NONE);
+ composite.setBackground(display.getSystemColor(SWT.COLOR_WHITE));
+ GridDataFactory.fillDefaults().grab(true, true).applyTo(composite);
+ GridLayoutFactory.fillDefaults().equalWidth(false).numColumns(2).applyTo(composite);
+
+ Composite headerComposite = new Composite(composite, 0);
+ headerComposite.setBackground(display.getSystemColor(SWT.COLOR_BLACK));
+ GridDataFactory.fillDefaults().span(2, 1).grab(true, false).applyTo(headerComposite);
+ GridLayoutFactory.fillDefaults().equalWidth(false).numColumns(1).extendedMargins(2,2,2,2).applyTo(headerComposite);
+
+ Composite headerComposite2 = new Composite(headerComposite, 0);
+ headerComposite2.setBackground(display.getSystemColor(SWT.COLOR_WHITE));
+ GridDataFactory.fillDefaults().span(2, 1).grab(true, false).applyTo(headerComposite2);
+ GridLayoutFactory.fillDefaults().equalWidth(false).numColumns(1).extendedMargins(3,3,3,3).applyTo(headerComposite2);
+
+ Label header = new Label(headerComposite2, support, 0);
+ header.setText("Create new cell");
+ header.setFont(font);
+ header.setBackground(display.getSystemColor(SWT.COLOR_WHITE));
+ GridDataFactory.fillDefaults().grab(true, false).span(2, 1).align(SWT.CENTER, SWT.CENTER).applyTo(header.getWidget());
+
+ Label label = new Label(composite, support, SWT.NONE);
+ label.setText("Expression: ");
+ label.setBackground(display.getSystemColor(SWT.COLOR_WHITE));
+ GridDataFactory.fillDefaults().grab(false, false).applyTo(label.getWidget());
+
+ TrackedText name = new TrackedText(composite, support, SWT.BORDER);
+ name.setText("");
+ GridDataFactory.fillDefaults().grab(true, false).applyTo(name.getWidget());
+ name.addModifyListener(new TextModifyListenerImpl<NoCellInput>() {
+
+ @Override
+ public void applyText(WriteGraph graph, NoCellInput input, String text) throws DatabaseException {
+// System.out.println("create variable for " + input);
+ VariableSpaceManipulator manipulator = input.sheet.adapt(graph, VariableSpaceManipulator.class);
+ manipulator.apply(graph, Modification.addChild(ChildCreationData.build(input.location, "", PropertyCreationData.build(Variables.NAME, text))));
+ }
+
+ });
+
+ }
+
+}