Browse Source

#896 moved the Context Element Adapter to Sgraph plugin.
Context Element Adapter removed from XtextStyledEditor and
XTextDirectEditmanager, it is set from the calling EditPart.

Andreas Muelder 9 years ago
parent
commit
dea5d60f75
20 changed files with 60 additions and 54 deletions
  1. 12 1
      plugins/org.yakindu.base.xtext.utils.gmf/src/org/yakindu/base/xtext/utils/gmf/directedit/ExternalXtextLabelEditPart.java
  2. 0 12
      plugins/org.yakindu.base.xtext.utils.gmf/src/org/yakindu/base/xtext/utils/gmf/directedit/XtextDirectEditManager.java
  3. 16 4
      plugins/org.yakindu.base.xtext.utils.gmf/src/org/yakindu/base/xtext/utils/gmf/directedit/XtextLabelEditPart.java
  4. 0 6
      plugins/org.yakindu.base.xtext.utils.gmf/src/org/yakindu/base/xtext/utils/gmf/viewers/XtextStyledTextCellEditorEx.java
  5. 0 1
      plugins/org.yakindu.base.xtext.utils.jface/src/org/yakindu/base/xtext/utils/jface/viewers/StyledTextXtextAdapter.java
  6. 0 12
      plugins/org.yakindu.base.xtext.utils.jface/src/org/yakindu/base/xtext/utils/jface/viewers/XtextStyledTextCellEditor.java
  7. 1 1
      plugins/org.yakindu.base.xtext.utils.jface/src/org/yakindu/base/xtext/utils/jface/viewers/ContextElementAdapter.java
  8. 0 1
      plugins/org.yakindu.sct.model.stext/META-INF/MANIFEST.MF
  9. 1 1
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/expressions/STextExpressionParser.java
  10. 1 1
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/scoping/STextGlobalScopeProvider.java
  11. 1 1
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/scoping/STextScopeProvider.java
  12. 1 1
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/scoping/StextImportAwareScopeProvider.java
  13. 1 1
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/validation/STextJavaValidator.java
  14. 1 1
      plugins/org.yakindu.sct.refactoring/src/org/yakindu/sct/refactoring/handlers/impl/RenameElementHandler.java
  15. 10 2
      plugins/org.yakindu.sct.ui.editor/src/org/yakindu/sct/ui/editor/editparts/PlugableExternalXtextLabelEditPart.java
  16. 10 2
      plugins/org.yakindu.sct.ui.editor/src/org/yakindu/sct/ui/editor/editparts/PlugableXtextLabelEditPart.java
  17. 2 2
      plugins/org.yakindu.sct.ui.editor/src/org/yakindu/sct/ui/editor/propertysheets/AbstractEditorPropertySection.java
  18. 1 1
      plugins/org.yakindu.sct.ui.editor/src/org/yakindu/sct/ui/editor/propertysheets/ValidatingEMFDatabindingContext.java
  19. 0 1
      test-plugins/org.yakindu.sct.model.stext.resource.test/META-INF/MANIFEST.MF
  20. 2 2
      test-plugins/org.yakindu.sct.model.stext.resource.test/src/org/yakindu/sct/model/stext/resource/test/SCTResourceTest.java

+ 12 - 1
plugins/org.yakindu.base.xtext.utils.gmf/src/org/yakindu/base/xtext/utils/gmf/directedit/ExternalXtextLabelEditPart.java

@@ -16,6 +16,7 @@ import static org.eclipse.gmf.runtime.diagram.ui.requests.RequestConstants.REQ_D
 import org.eclipse.draw2d.IFigure;
 import org.eclipse.draw2d.PositionConstants;
 import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.gef.DragTracker;
 import org.eclipse.gef.Request;
 import org.eclipse.gef.tools.DirectEditManager;
@@ -28,6 +29,7 @@ import org.eclipse.gmf.runtime.notation.ShapeStyle;
 import org.eclipse.gmf.runtime.notation.View;
 import org.eclipse.swt.graphics.Color;
 import org.yakindu.base.xtext.utils.gmf.figures.HighlightingWrappingLabel;
+import org.yakindu.base.xtext.utils.jface.viewers.XtextStyledTextCellEditor;
 
 /**
  * Abstract base implementation for all external {@link LabelEditPart} that use
@@ -40,6 +42,7 @@ import org.yakindu.base.xtext.utils.gmf.figures.HighlightingWrappingLabel;
 public abstract class ExternalXtextLabelEditPart extends LabelEditPart implements IXtextAwareEditPart {
 
 	protected abstract DirectEditManager createDirectEditManager();
+	protected abstract void setContext(Resource resource);
 
 	public ExternalXtextLabelEditPart(final View view) {
 		super(view);
@@ -116,17 +119,25 @@ public abstract class ExternalXtextLabelEditPart extends LabelEditPart implement
 
 				public void run() {
 					if (isActive()) {
+						
 						if (theRequest.getExtendedData().get(REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR) instanceof Character) {
 							final Character initialChar = (Character) theRequest.getExtendedData().get(
 									REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR);
 							if (manager instanceof XtextDirectEditManager) {
-								((XtextDirectEditManager) manager).show(initialChar);
+								XtextDirectEditManager xtextDirectEditManager = (XtextDirectEditManager) manager;
+								xtextDirectEditManager.show(initialChar);
 							} else if (manager instanceof TextDirectEditManager) {
 								((TextDirectEditManager) manager).show(initialChar);
 							}
 						} else {
 							manager.show();
 						}
+						if (manager instanceof XtextDirectEditManager) {
+							XtextDirectEditManager xtextDirectEditManager = (XtextDirectEditManager) manager;
+							XtextStyledTextCellEditor cellEditor = (XtextStyledTextCellEditor) xtextDirectEditManager
+									.getCellEditor();
+							setContext(cellEditor.getXtextAdapter().getFakeResourceContext().getFakeResource());
+						}
 					}
 				}
 			});

+ 0 - 12
plugins/org.yakindu.base.xtext.utils.gmf/src/org/yakindu/base/xtext/utils/gmf/directedit/XtextDirectEditManager.java

@@ -64,7 +64,6 @@ import org.eclipse.ui.PlatformUI;
 import org.eclipse.ui.actions.ActionFactory;
 import org.eclipse.ui.part.CellEditorActionHandler;
 import org.yakindu.base.xtext.utils.gmf.viewers.XtextStyledTextCellEditorEx;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter.IContextElementProvider;
 import org.yakindu.base.xtext.utils.jface.viewers.context.IXtextFakeContextResourcesProvider;
 
 import com.google.inject.Injector;
@@ -127,8 +126,6 @@ public class XtextDirectEditManager extends DirectEditManagerEx {
 
 	private IXtextFakeContextResourcesProvider fakeProvider;
 
-	private IContextElementProvider contextProvider;
-
 	private static final int LABEL_MIN_WIDTH = 75;
 
 	/**
@@ -149,12 +146,6 @@ public class XtextDirectEditManager extends DirectEditManagerEx {
 		this.fakeProvider = provider;
 	}
 
-	public XtextDirectEditManager(IXtextAwareEditPart source, Injector injector, int style,
-			IContextElementProvider provider) {
-		this(source, null, getTextCellEditorLocator(source), injector, style);
-		this.contextProvider = provider;
-	}
-
 	/**
 	 * @param source
 	 * @param editorType
@@ -290,9 +281,6 @@ public class XtextDirectEditManager extends DirectEditManagerEx {
 		if (fakeProvider != null) {
 			editor = new XtextStyledTextCellEditorEx(style, injector, fakeProvider);
 			editor.create(composite);
-		} else if (contextProvider != null) {
-			editor = new XtextStyledTextCellEditorEx(style, injector, contextProvider);
-			editor.create(composite);
 		} else {
 			editor = new XtextStyledTextCellEditorEx(style, injector);
 			editor.create(composite);

+ 16 - 4
plugins/org.yakindu.base.xtext.utils.gmf/src/org/yakindu/base/xtext/utils/gmf/directedit/XtextLabelEditPart.java

@@ -16,6 +16,7 @@ import static org.eclipse.gmf.runtime.diagram.ui.requests.RequestConstants.REQ_D
 import org.eclipse.draw2d.IFigure;
 import org.eclipse.draw2d.PositionConstants;
 import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.gef.DragTracker;
 import org.eclipse.gef.Request;
 import org.eclipse.gef.requests.SelectionRequest;
@@ -29,6 +30,7 @@ import org.eclipse.gmf.runtime.notation.View;
 import org.eclipse.swt.graphics.Color;
 import org.yakindu.base.xtext.utils.gmf.directedit.DoubleClickDirectEditDragTracker.IDoubleClickCallback;
 import org.yakindu.base.xtext.utils.gmf.figures.HighlightingWrappingLabel;
+import org.yakindu.base.xtext.utils.jface.viewers.XtextStyledTextCellEditor;
 
 /**
  * Abstract base implementation for all Labels that that use Xtext for direct
@@ -42,6 +44,8 @@ public abstract class XtextLabelEditPart extends CompartmentEditPart implements
 
 	protected abstract DirectEditManager createDirectEditManager();
 
+	protected abstract void setContext(Resource resource);
+
 	public XtextLabelEditPart(final View view) {
 		super(view);
 	}
@@ -115,17 +119,25 @@ public abstract class XtextLabelEditPart extends CompartmentEditPart implements
 
 				public void run() {
 					if (isActive()) {
-						if (theRequest.getExtendedData().get(REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR) instanceof Character) {
-							final Character initialChar = (Character) theRequest.getExtendedData().get(
-									REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR);
+						if (theRequest.getExtendedData()
+								.get(REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR) instanceof Character) {
+							final Character initialChar = (Character) theRequest.getExtendedData()
+									.get(REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR);
 							if (manager instanceof XtextDirectEditManager) {
-								((XtextDirectEditManager) manager).show(initialChar);
+								XtextDirectEditManager xtextDirectEditManager = (XtextDirectEditManager) manager;
+								xtextDirectEditManager.show(initialChar);
 							} else if (manager instanceof TextDirectEditManager) {
 								((TextDirectEditManager) manager).show(initialChar);
 							}
 						} else {
 							manager.show();
 						}
+						if (manager instanceof XtextDirectEditManager) {
+							XtextDirectEditManager xtextDirectEditManager = (XtextDirectEditManager) manager;
+							XtextStyledTextCellEditor cellEditor = (XtextStyledTextCellEditor) xtextDirectEditManager
+									.getCellEditor();
+							setContext(cellEditor.getXtextAdapter().getFakeResourceContext().getFakeResource());
+						}
 					}
 				}
 			});

+ 0 - 6
plugins/org.yakindu.base.xtext.utils.gmf/src/org/yakindu/base/xtext/utils/gmf/viewers/XtextStyledTextCellEditorEx.java

@@ -12,7 +12,6 @@
 package org.yakindu.base.xtext.utils.gmf.viewers;
 
 import org.yakindu.base.xtext.utils.jface.viewers.XtextStyledTextCellEditor;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter.IContextElementProvider;
 import org.yakindu.base.xtext.utils.jface.viewers.context.IXtextFakeContextResourcesProvider;
 
 import com.google.inject.Injector;
@@ -38,11 +37,6 @@ public class XtextStyledTextCellEditorEx extends XtextStyledTextCellEditor {
 		super(style, injector);
 	}
 
-	public XtextStyledTextCellEditorEx(int style, Injector injector,
-			IContextElementProvider provider) {
-		super(style, injector, provider);
-	}
-
 	/**
 	 * This will be used when an edit has occurred by a ModifyEvent has been
 	 * been send. Will call #setValue(Object) but will also call

+ 0 - 1
plugins/org.yakindu.base.xtext.utils.jface/src/org/yakindu/base/xtext/utils/jface/viewers/StyledTextXtextAdapter.java

@@ -244,7 +244,6 @@ public class StyledTextXtextAdapter {
 	 */
 	protected void configureSourceViewerDecorationSupport(SourceViewerDecorationSupport support) {
 		MarkerAnnotationPreferences annotationPreferences = new MarkerAnnotationPreferences();
-		@SuppressWarnings("unchecked")
 		List<AnnotationPreference> prefs = annotationPreferences.getAnnotationPreferences();
 		for (AnnotationPreference annotationPreference : prefs) {
 			support.setAnnotationPreference(annotationPreference);

+ 0 - 12
plugins/org.yakindu.base.xtext.utils.jface/src/org/yakindu/base/xtext/utils/jface/viewers/XtextStyledTextCellEditor.java

@@ -35,7 +35,6 @@ import org.eclipse.ui.PlatformUI;
 import org.eclipse.xtext.ui.editor.XtextEditor;
 import org.yakindu.base.utils.jface.viewers.StyledTextCellEditor;
 import org.yakindu.base.xtext.utils.jface.fieldassist.CompletionProposalAdapter;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter.IContextElementProvider;
 import org.yakindu.base.xtext.utils.jface.viewers.context.IXtextFakeContextResourcesProvider;
 
 import com.google.inject.Injector;
@@ -59,7 +58,6 @@ public class XtextStyledTextCellEditor extends StyledTextCellEditor {
 	private Injector injector;
 	private StyledTextXtextAdapter xtextAdapter;
 	private IXtextFakeContextResourcesProvider contextFakeResourceProvider;
-	private IContextElementProvider provider;
 	private final static String CONTEXTMENUID = "org.yakindu.base.xtext.utils.jface.viewers.StyledTextXtextAdapterContextMenu";
 
 	public XtextStyledTextCellEditor(int style, Injector injector,
@@ -73,12 +71,6 @@ public class XtextStyledTextCellEditor extends StyledTextCellEditor {
 		this.injector = injector;
 	}
 
-	public XtextStyledTextCellEditor(int style, Injector injector, IContextElementProvider provider) {
-		setStyle(style);
-		this.provider = provider;
-		this.injector = injector;
-	}
-
 	/**
 	 * Creates an {@link SourceViewer} and returns the {@link StyledText} widget
 	 * of the viewer as the cell editors control. Some code is copied from
@@ -98,10 +90,6 @@ public class XtextStyledTextCellEditor extends StyledTextCellEditor {
 				contextFakeResourceProvider == null ? IXtextFakeContextResourcesProvider.NULL_CONTEXT_PROVIDER
 						: contextFakeResourceProvider);
 		xtextAdapter.adapt(styledText);
-		if (provider != null) {
-			xtextAdapter.getFakeResourceContext().getFakeResource().eAdapters()
-					.add(new ContextElementAdapter(provider));
-		}
 
 		// configure content assist
 		final IContentAssistant contentAssistant = xtextAdapter.getContentAssistant();

+ 1 - 1
plugins/org.yakindu.base.xtext.utils.jface/src/org/yakindu/base/xtext/utils/jface/viewers/ContextElementAdapter.java

@@ -9,7 +9,7 @@
  * 	itemis AG - initial API and implementation
  * 
  */
-package org.yakindu.base.xtext.utils.jface.viewers;
+package org.yakindu.sct.model.sgraph.util;
 
 import org.eclipse.emf.common.notify.impl.AdapterImpl;
 import org.eclipse.emf.ecore.EObject;

+ 0 - 1
plugins/org.yakindu.sct.model.stext/META-INF/MANIFEST.MF

@@ -18,7 +18,6 @@ Require-Bundle: org.eclipse.xtext;visibility:=reexport,
  org.antlr.runtime,
  org.yakindu.sct.model.sgraph;visibility:=reexport,
  org.yakindu.base.types,
- org.yakindu.base.xtext.utils.jface,
  org.yakindu.base.expressions;visibility:=reexport,
  org.yakindu.sct.domain
 Import-Package: org.apache.commons.logging,

+ 1 - 1
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/expressions/STextExpressionParser.java

@@ -27,12 +27,12 @@ import org.eclipse.xtext.parser.IParseResult;
 import org.eclipse.xtext.parser.IParser;
 import org.eclipse.xtext.resource.impl.ListBasedDiagnosticConsumer;
 import org.eclipse.xtext.util.CancelIndicator;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter;
 import org.yakindu.sct.model.sgraph.SGraphFactory;
 import org.yakindu.sct.model.sgraph.SGraphPackage;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.SpecificationElement;
 import org.yakindu.sct.model.sgraph.Statechart;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
 import org.yakindu.sct.model.stext.resource.StextResource;
 import org.yakindu.sct.model.stext.stext.InterfaceScope;
 import org.yakindu.sct.model.stext.stext.InternalScope;

+ 1 - 1
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/scoping/STextGlobalScopeProvider.java

@@ -21,9 +21,9 @@ import org.eclipse.xtext.scoping.IScope;
 import org.eclipse.xtext.scoping.impl.DefaultGlobalScopeProvider;
 import org.eclipse.xtext.scoping.impl.FilteringScope;
 import org.yakindu.base.types.typesystem.ITypeSystem;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter;
 import org.yakindu.sct.model.sgraph.SGraphPackage;
 import org.yakindu.sct.model.sgraph.Statechart;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
 
 import com.google.common.base.Predicate;
 import com.google.inject.Inject;

+ 1 - 1
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/scoping/STextScopeProvider.java

@@ -34,10 +34,10 @@ import org.yakindu.base.types.ComplexType;
 import org.yakindu.base.types.EnumerationType;
 import org.yakindu.base.types.Type;
 import org.yakindu.base.types.inferrer.ITypeSystemInferrer;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter;
 import org.yakindu.sct.model.sgraph.SGraphPackage;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.Statechart;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
 import org.yakindu.sct.model.stext.scoping.ContextPredicateProvider.EmptyPredicate;
 import org.yakindu.sct.model.stext.stext.InterfaceScope;
 import org.yakindu.sct.model.stext.stext.InternalScope;

+ 1 - 1
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/scoping/StextImportAwareScopeProvider.java

@@ -17,10 +17,10 @@ import org.eclipse.xtext.EcoreUtil2;
 import org.eclipse.xtext.naming.QualifiedName;
 import org.eclipse.xtext.scoping.impl.ImportNormalizer;
 import org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter;
 import org.yakindu.sct.model.sgraph.SGraphPackage;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.Statechart;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
 import org.yakindu.sct.model.stext.stext.Import;
 import org.yakindu.sct.model.stext.stext.ImportScope;
 import org.yakindu.sct.model.stext.stext.StateSpecification;

+ 1 - 1
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/validation/STextJavaValidator.java

@@ -62,7 +62,6 @@ import org.yakindu.base.types.Property;
 import org.yakindu.base.types.TypesPackage;
 import org.yakindu.base.types.annotations.TypeAnnotations;
 import org.yakindu.base.types.inferrer.ITypeSystemInferrer;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter;
 import org.yakindu.sct.model.sgraph.Choice;
 import org.yakindu.sct.model.sgraph.Entry;
 import org.yakindu.sct.model.sgraph.Exit;
@@ -77,6 +76,7 @@ import org.yakindu.sct.model.sgraph.Transition;
 import org.yakindu.sct.model.sgraph.Trigger;
 import org.yakindu.sct.model.sgraph.Vertex;
 import org.yakindu.sct.model.sgraph.resource.AbstractSCTResource;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
 import org.yakindu.sct.model.sgraph.validation.SCTResourceValidator;
 import org.yakindu.sct.model.sgraph.validation.SGraphJavaValidator;
 import org.yakindu.sct.model.stext.services.STextGrammarAccess;

+ 1 - 1
plugins/org.yakindu.sct.refactoring/src/org/yakindu/sct/refactoring/handlers/impl/RenameElementHandler.java

@@ -33,9 +33,9 @@ import org.yakindu.base.base.NamedElement;
 import org.yakindu.base.expressions.expressions.ElementReferenceExpression;
 import org.yakindu.base.expressions.expressions.FeatureCall;
 import org.yakindu.base.types.Declaration;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.Statechart;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
 import org.yakindu.sct.refactoring.handlers.AbstractRefactoringHandler;
 import org.yakindu.sct.refactoring.refactor.AbstractRefactoring;
 import org.yakindu.sct.refactoring.refactor.impl.RenameRefactoring;

+ 10 - 2
plugins/org.yakindu.sct.ui.editor/src/org/yakindu/sct/ui/editor/editparts/PlugableExternalXtextLabelEditPart.java

@@ -12,6 +12,7 @@ package org.yakindu.sct.ui.editor.editparts;
 
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.gef.EditPolicy;
 import org.eclipse.gef.tools.DirectEditManager;
 import org.eclipse.gmf.runtime.common.ui.services.parser.IParser;
@@ -26,10 +27,11 @@ import org.yakindu.base.gmf.runtime.parsers.StringAttributeParser;
 import org.yakindu.base.xtext.utils.gmf.directedit.ExternalXtextLabelEditPart;
 import org.yakindu.base.xtext.utils.gmf.directedit.IEAttributeProvider;
 import org.yakindu.base.xtext.utils.gmf.directedit.XtextDirectEditManager;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter.IContextElementProvider;
 import org.yakindu.sct.domain.extension.DomainRegistry;
 import org.yakindu.sct.domain.extension.IDomainInjectorProvider;
 import org.yakindu.sct.model.sgraph.SpecificationElement;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter.IContextElementProvider;
 import org.yakindu.sct.ui.editor.DiagramActivator;
 import org.yakindu.sct.ui.editor.policies.EAttributeDirectEditPolicy;
 
@@ -81,7 +83,7 @@ public abstract class PlugableExternalXtextLabelEditPart extends ExternalXtextLa
 	@Override
 	protected DirectEditManager createDirectEditManager() {
 		if (injector != null) {
-			return new XtextDirectEditManager(this, injector, getEditorStyles(), this);
+			return new XtextDirectEditManager(this, injector, getEditorStyles());
 		} else {
 			return new TextDirectEditManager(this);
 		}
@@ -141,4 +143,10 @@ public abstract class PlugableExternalXtextLabelEditPart extends ExternalXtextLa
 		String label = (String) resolveSemanticElement().eGet(getAttribute());
 		getFigure().setText(label);
 	}
+	
+	@Override
+	protected void setContext(Resource resource) {
+		resource.eAdapters().add(new ContextElementAdapter(this));
+		
+	}
 }

+ 10 - 2
plugins/org.yakindu.sct.ui.editor/src/org/yakindu/sct/ui/editor/editparts/PlugableXtextLabelEditPart.java

@@ -12,6 +12,7 @@ package org.yakindu.sct.ui.editor.editparts;
 
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.gef.EditPolicy;
 import org.eclipse.gef.tools.DirectEditManager;
 import org.eclipse.gmf.runtime.common.ui.services.parser.IParser;
@@ -26,10 +27,11 @@ import org.yakindu.base.gmf.runtime.parsers.StringAttributeParser;
 import org.yakindu.base.xtext.utils.gmf.directedit.IEAttributeProvider;
 import org.yakindu.base.xtext.utils.gmf.directedit.XtextDirectEditManager;
 import org.yakindu.base.xtext.utils.gmf.directedit.XtextLabelEditPart;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter.IContextElementProvider;
 import org.yakindu.sct.domain.extension.DomainRegistry;
 import org.yakindu.sct.domain.extension.IDomainInjectorProvider;
 import org.yakindu.sct.model.sgraph.SpecificationElement;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter.IContextElementProvider;
 import org.yakindu.sct.ui.editor.DiagramActivator;
 import org.yakindu.sct.ui.editor.policies.EAttributeDirectEditPolicy;
 
@@ -81,7 +83,7 @@ public abstract class PlugableXtextLabelEditPart extends XtextLabelEditPart impl
 	@Override
 	protected DirectEditManager createDirectEditManager() {
 		if (injector != null) {
-			return new XtextDirectEditManager(this, injector, getEditorStyles(), this);
+			return new XtextDirectEditManager(this, injector, getEditorStyles());
 		} else {
 			return new TextDirectEditManager(this);
 		}
@@ -141,5 +143,11 @@ public abstract class PlugableXtextLabelEditPart extends XtextLabelEditPart impl
 		String label = (String) resolveSemanticElement().eGet(getAttribute());
 		getFigure().setText(label);
 	}
+	
+	@Override
+	protected void setContext(Resource resource) {
+		resource.eAdapters().add(new ContextElementAdapter(this));
+		
+	}
 
 }

+ 2 - 2
plugins/org.yakindu.sct.ui.editor/src/org/yakindu/sct/ui/editor/propertysheets/AbstractEditorPropertySection.java

@@ -48,8 +48,6 @@ import org.eclipse.ui.help.IWorkbenchHelpSystem;
 import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
 import org.yakindu.base.base.BasePackage;
 import org.yakindu.base.xtext.utils.jface.fieldassist.CompletionProposalAdapter;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter.IContextElementProvider;
 import org.yakindu.base.xtext.utils.jface.viewers.FilteringMenuManager;
 import org.yakindu.base.xtext.utils.jface.viewers.StyledTextXtextAdapter;
 import org.yakindu.base.xtext.utils.jface.viewers.util.ActiveEditorTracker;
@@ -58,6 +56,8 @@ import org.yakindu.sct.domain.extension.IDomainDescriptor;
 import org.yakindu.sct.domain.extension.IDomainInjectorProvider;
 import org.yakindu.sct.model.sgraph.SGraphPackage;
 import org.yakindu.sct.model.sgraph.Statechart;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter.IContextElementProvider;
 
 import com.google.inject.Injector;
 

+ 1 - 1
plugins/org.yakindu.sct.ui.editor/src/org/yakindu/sct/ui/editor/propertysheets/ValidatingEMFDatabindingContext.java

@@ -19,7 +19,7 @@ import org.eclipse.emf.databinding.EMFUpdateValueStrategy;
 import org.eclipse.emf.workspace.util.WorkspaceSynchronizer;
 import org.eclipse.gmf.runtime.common.ui.resources.FileModificationValidator;
 import org.eclipse.swt.widgets.Shell;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter.IContextElementProvider;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter.IContextElementProvider;
 
 /**
  * Checks the file modification flag before updating the model.

+ 0 - 1
test-plugins/org.yakindu.sct.model.stext.resource.test/META-INF/MANIFEST.MF

@@ -6,6 +6,5 @@ Bundle-Version: 2.7.1.qualifier
 Fragment-Host: org.yakindu.sct.model.resource
 Bundle-RequiredExecutionEnvironment: JavaSE-1.7
 Require-Bundle: org.junit,
- org.yakindu.base.xtext.utils.jface,
  org.yakindu.sct.test.models
 Bundle-Vendor: statecharts.org

+ 2 - 2
test-plugins/org.yakindu.sct.model.stext.resource.test/src/org/yakindu/sct/model/stext/resource/test/SCTResourceTest.java

@@ -39,13 +39,13 @@ import org.yakindu.base.expressions.expressions.IntLiteral;
 import org.yakindu.base.expressions.expressions.PrimitiveValueExpression;
 import org.yakindu.base.types.Declaration;
 import org.yakindu.base.types.Event;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter;
-import org.yakindu.base.xtext.utils.jface.viewers.ContextElementAdapter.IContextElementProvider;
 import org.yakindu.sct.model.sgraph.SGraphFactory;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.State;
 import org.yakindu.sct.model.sgraph.Statechart;
 import org.yakindu.sct.model.sgraph.Transition;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
+import org.yakindu.sct.model.sgraph.util.ContextElementAdapter.IContextElementProvider;
 import org.yakindu.sct.model.stext.resource.StextResource;
 import org.yakindu.sct.model.stext.stext.EventDefinition;
 import org.yakindu.sct.model.stext.stext.ExitEvent;