]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/componentTypeEditor/SCLQueryEditor.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.modeling.ui / src / org / simantics / modeling / ui / componentTypeEditor / SCLQueryEditor.java
index 48da008c014a569f652f77632f5bcb0b9a4d9bb5..44ceec1a65ff8ab9ec44da426c92fa82e945409a 100644 (file)
-/*******************************************************************************\r
- * Copyright (c) 2012 Association for Decentralized Information Management in\r
- * Industry THTH ry.\r
- * All rights reserved. This program and the accompanying materials\r
- * are made available under the terms of the Eclipse Public License v1.0\r
- * which accompanies this distribution, and is available at\r
- * http://www.eclipse.org/legal/epl-v10.html\r
- *\r
- * Contributors:\r
- *     VTT Technical Research Centre of Finland - initial API and implementation\r
- *******************************************************************************/\r
-package org.simantics.modeling.ui.componentTypeEditor;\r
-\r
-import java.util.function.Supplier;\r
-\r
-import org.eclipse.jface.resource.JFaceResources;\r
-import org.eclipse.jface.resource.LocalResourceManager;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.editors.text.TextEditor;\r
-import org.eclipse.ui.texteditor.ITextEditorActionConstants;\r
-import org.eclipse.ui.texteditor.StatusLineContributionItem;\r
-import org.simantics.Simantics;\r
-import org.simantics.db.Session;\r
-import org.simantics.db.common.request.ParametrizedRead;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.db.layer0.request.combinations.Combinators;\r
-import org.simantics.scl.ui.editor.SCLSourceViewerConfigurationNew;\r
-import org.simantics.ui.workbench.IResourceEditorInput;\r
-import org.simantics.ui.workbench.ResourceEditorSupport;\r
-import org.simantics.ui.workbench.TitleUpdater;\r
-import org.simantics.ui.workbench.TitleWithParentNameRequest;\r
-import org.simantics.ui.workbench.ToolTipRequest;\r
-import org.simantics.ui.workbench.editor.input.InputValidationCombinators;\r
-\r
-\r
-/**\r
- * @author Antti Villberg;\r
- * @author Hannu Niemistö\r
- */\r
-// FIXME: SCLQueryEditor should extend SCLModuleEditor\r
-public class SCLQueryEditor extends TextEditor {\r
-\r
-    private boolean disposed = false;\r
-\r
-    private ParametrizedRead<IResourceEditorInput, Boolean> INPUT_VALIDATOR =\r
-            Combinators.compose(\r
-                    InputValidationCombinators.hasURI(),\r
-                    InputValidationCombinators.extractInputResource()\r
-            );\r
-\r
-    private ResourceEditorSupport support;\r
-    protected LocalResourceManager resourceManager;\r
-    \r
-    public SCLQueryEditor() {\r
-        super();\r
-        //showOverviewRuler();\r
-        setDocumentProvider(new SCLQueryEditorDocumentProvider(this));\r
-        resourceManager = new LocalResourceManager(JFaceResources.getResources());\r
-        SCLSourceViewerConfigurationNew sourceViewerConfiguration = new SCLSourceViewerConfigurationNew(resourceManager);\r
-        setSourceViewerConfiguration(sourceViewerConfiguration);\r
-    }\r
-\r
-    @Override\r
-    public boolean isTabsToSpacesConversionEnabled() {\r
-       return true;\r
-    }    \r
-    \r
-    @Override\r
-    public void init(IEditorSite site, IEditorInput input)\r
-            throws PartInitException {\r
-        super.init(site, input);\r
-\r
-        support = new ResourceEditorSupport(this, INPUT_VALIDATOR);\r
-        support.activateValidation();\r
-        try {\r
-            getResourceInput().init(null);\r
-        } catch (DatabaseException e) {\r
-            throw new PartInitException("Failed to initialize " + input, e);\r
-        }\r
-    }\r
-\r
-    protected IResourceEditorInput getResourceInput() {\r
-        return (IResourceEditorInput) getEditorInput();\r
-    }\r
-\r
-    @Override\r
-    public void createPartControl(Composite parent) {\r
-        super.createPartControl(parent);\r
-        StatusLineContributionItem statusLineContribution = new StatusLineContributionItem(\r
-                ITextEditorActionConstants.STATUS_CATEGORY_INPUT_POSITION,\r
-                true, 14);\r
-        setStatusField(statusLineContribution,\r
-                ITextEditorActionConstants.STATUS_CATEGORY_INPUT_POSITION);\r
-        getEditorSite().getActionBars().getStatusLineManager().add(statusLineContribution);\r
-        getEditorSite().getActionBars().updateActionBars();\r
-        updatePartName();\r
-    }\r
-\r
-    private void updatePartName() {\r
-        setPartName(getEditorInput().getName());\r
-\r
-        Session session = Simantics.peekSession();\r
-        if (session != null) {\r
-            Supplier<Boolean> disposedCallback = () -> disposed;\r
-            session.asyncRequest(\r
-                    new TitleWithParentNameRequest(getResourceInput()),\r
-                    new TitleUpdater(getSite().getShell().getDisplay(), this::setPartName, disposedCallback));\r
-            session.asyncRequest(\r
-                    new ToolTipRequest(getSite().getId(), getResourceInput()),\r
-                    new TitleUpdater(getSite().getShell().getDisplay(), this::setTitleToolTip, disposedCallback));\r
-        }\r
-    }\r
-\r
-    @Override\r
-    public void dispose() {\r
-        disposed = true;\r
-        if (support != null) {\r
-            support.dispose();\r
-            support = null;\r
-        }\r
-        super.dispose();\r
-        resourceManager.dispose();\r
-    }\r
-\r
+/*******************************************************************************
+ * Copyright (c) 2012 Association for Decentralized Information Management in
+ * Industry THTH ry.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     VTT Technical Research Centre of Finland - initial API and implementation
+ *******************************************************************************/
+package org.simantics.modeling.ui.componentTypeEditor;
+
+import java.util.function.Supplier;
+
+import org.eclipse.jface.resource.JFaceResources;
+import org.eclipse.jface.resource.LocalResourceManager;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorSite;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.editors.text.TextEditor;
+import org.eclipse.ui.texteditor.ITextEditorActionConstants;
+import org.eclipse.ui.texteditor.StatusLineContributionItem;
+import org.simantics.Simantics;
+import org.simantics.db.Session;
+import org.simantics.db.common.request.ParametrizedRead;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.layer0.request.combinations.Combinators;
+import org.simantics.scl.ui.editor.SCLSourceViewerConfigurationNew;
+import org.simantics.ui.workbench.IResourceEditorInput;
+import org.simantics.ui.workbench.ResourceEditorSupport;
+import org.simantics.ui.workbench.TitleUpdater;
+import org.simantics.ui.workbench.TitleWithParentNameRequest;
+import org.simantics.ui.workbench.ToolTipRequest;
+import org.simantics.ui.workbench.editor.input.InputValidationCombinators;
+
+
+/**
+ * @author Antti Villberg;
+ * @author Hannu Niemist&ouml;
+ */
+// FIXME: SCLQueryEditor should extend SCLModuleEditor
+public class SCLQueryEditor extends TextEditor {
+
+    private boolean disposed = false;
+
+    private ParametrizedRead<IResourceEditorInput, Boolean> INPUT_VALIDATOR =
+            Combinators.compose(
+                    InputValidationCombinators.hasURI(),
+                    InputValidationCombinators.extractInputResource()
+            );
+
+    private ResourceEditorSupport support;
+    protected LocalResourceManager resourceManager;
+    
+    public SCLQueryEditor() {
+        super();
+        //showOverviewRuler();
+        setDocumentProvider(new SCLQueryEditorDocumentProvider(this));
+        resourceManager = new LocalResourceManager(JFaceResources.getResources());
+        SCLSourceViewerConfigurationNew sourceViewerConfiguration = new SCLSourceViewerConfigurationNew(resourceManager);
+        setSourceViewerConfiguration(sourceViewerConfiguration);
+    }
+
+    @Override
+    public boolean isTabsToSpacesConversionEnabled() {
+       return true;
+    }    
+    
+    @Override
+    public void init(IEditorSite site, IEditorInput input)
+            throws PartInitException {
+        super.init(site, input);
+
+        support = new ResourceEditorSupport(this, INPUT_VALIDATOR);
+        support.activateValidation();
+        try {
+            getResourceInput().init(null);
+        } catch (DatabaseException e) {
+            throw new PartInitException("Failed to initialize " + input, e);
+        }
+    }
+
+    protected IResourceEditorInput getResourceInput() {
+        return (IResourceEditorInput) getEditorInput();
+    }
+
+    @Override
+    public void createPartControl(Composite parent) {
+        super.createPartControl(parent);
+        StatusLineContributionItem statusLineContribution = new StatusLineContributionItem(
+                ITextEditorActionConstants.STATUS_CATEGORY_INPUT_POSITION,
+                true, 14);
+        setStatusField(statusLineContribution,
+                ITextEditorActionConstants.STATUS_CATEGORY_INPUT_POSITION);
+        getEditorSite().getActionBars().getStatusLineManager().add(statusLineContribution);
+        getEditorSite().getActionBars().updateActionBars();
+        updatePartName();
+    }
+
+    private void updatePartName() {
+        setPartName(getEditorInput().getName());
+
+        Session session = Simantics.peekSession();
+        if (session != null) {
+            Supplier<Boolean> disposedCallback = () -> disposed;
+            session.asyncRequest(
+                    new TitleWithParentNameRequest(getResourceInput()),
+                    new TitleUpdater(getSite().getShell().getDisplay(), this::setPartName, disposedCallback));
+            session.asyncRequest(
+                    new ToolTipRequest(getSite().getId(), getResourceInput()),
+                    new TitleUpdater(getSite().getShell().getDisplay(), this::setTitleToolTip, disposedCallback));
+        }
+    }
+
+    @Override
+    public void dispose() {
+        disposed = true;
+        if (support != null) {
+            support.dispose();
+            support = null;
+        }
+        super.dispose();
+        resourceManager.dispose();
+    }
+
 }
\ No newline at end of file