1 package org.simantics.scl.ui.editor2;
\r
3 import org.eclipse.jface.resource.JFaceResources;
\r
4 import org.eclipse.jface.resource.LocalResourceManager;
\r
5 import org.eclipse.jface.resource.ResourceManager;
\r
6 import org.eclipse.jface.text.IDocument;
\r
7 import org.eclipse.swt.widgets.Composite;
\r
8 import org.eclipse.ui.IEditorInput;
\r
9 import org.eclipse.ui.IEditorSite;
\r
10 import org.eclipse.ui.PartInitException;
\r
11 import org.eclipse.ui.contexts.IContextService;
\r
12 import org.eclipse.ui.editors.text.TextEditor;
\r
13 import org.eclipse.ui.texteditor.ITextEditorActionConstants;
\r
14 import org.eclipse.ui.texteditor.StatusLineContributionItem;
\r
15 import org.simantics.scl.ui.editor.SCLSourceViewerConfigurationNew;
\r
16 import org.simantics.scl.ui.editor.completion.SCLTextEditorEnvironment;
\r
18 public class SCLModuleEditor2 extends TextEditor {
\r
19 private boolean disposed = false;
\r
20 ResourceManager resourceManager;
\r
22 public SCLModuleEditor2() {
\r
24 resourceManager = new LocalResourceManager(JFaceResources.getResources());
\r
25 SCLSourceViewerConfigurationNew sourceViewerConfiguration = new SCLSourceViewerConfigurationNew(resourceManager);
\r
26 setDocumentProvider(new SCLModuleEditor2DocumentProvider(sourceViewerConfiguration));
\r
27 setSourceViewerConfiguration(sourceViewerConfiguration);
\r
31 public boolean isTabsToSpacesConversionEnabled() {
\r
36 public void init(IEditorSite site, IEditorInput input)
\r
37 throws PartInitException {
\r
38 super.init(site, input);
\r
42 public void createPartControl(Composite parent) {
\r
43 super.createPartControl(parent);
\r
44 StatusLineContributionItem statusLineContribution = new StatusLineContributionItem(
\r
45 ITextEditorActionConstants.STATUS_CATEGORY_INPUT_POSITION,
\r
47 setStatusField(statusLineContribution,
\r
48 ITextEditorActionConstants.STATUS_CATEGORY_INPUT_POSITION);
\r
49 getEditorSite().getActionBars().getStatusLineManager().add(statusLineContribution);
\r
50 getEditorSite().getActionBars().updateActionBars();
\r
51 getEditorSite().getService(IContextService.class).activateContext("org.simantics.scl.ui.editor");
\r
55 protected void updatePartName() {
\r
56 setPartName(getEditorInput().getName());
\r
60 public void dispose() {
\r
63 resourceManager.dispose();
\r
66 public boolean isDisposed() {
\r
70 public SCLTextEditorEnvironment getSCLTextEditorEnvironment() {
\r
71 return ((SCLSourceViewerConfigurationNew)getSourceViewerConfiguration())
\r
72 .getSclTextEditorEnvironment();
\r
75 public IDocument getDocument() {
\r
76 return getSourceViewer().getDocument();
\r