Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnsgar Radermacher2014-03-03 14:47:27 +0000
committerAnsgar Radermacher2014-03-03 14:51:10 +0000
commit1c33f80f4c00d6c657b913743eecb42959141b3e (patch)
tree40728f437d737294def00b040d9c09da15a3dad1 /plugins/uml/textedit
parenta179dc12d1daa0f046fcefd37f63d38ba83bad21 (diff)
downloadorg.eclipse.papyrus-1c33f80f4c00d6c657b913743eecb42959141b3e.tar.gz
org.eclipse.papyrus-1c33f80f4c00d6c657b913743eecb42959141b3e.tar.xz
org.eclipse.papyrus-1c33f80f4c00d6c657b913743eecb42959141b3e.zip
Bug 427025 - [OCL For Papyrus] Cannot create OCL constraints in Luna
- set context element, in case of OCL editor - assure that objectToEdit is not null, when selected via the model explorer - fix NPE in decoration service
Diffstat (limited to 'plugins/uml/textedit')
-rw-r--r--plugins/uml/textedit/org.eclipse.papyrus.uml.textedit.constraintwithessentialocl.xtext/src/org/eclipse/papyrus/uml/textedit/constraintwithessentialocl/xtext/EssentialOCLEditorConfiguration.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/plugins/uml/textedit/org.eclipse.papyrus.uml.textedit.constraintwithessentialocl.xtext/src/org/eclipse/papyrus/uml/textedit/constraintwithessentialocl/xtext/EssentialOCLEditorConfiguration.java b/plugins/uml/textedit/org.eclipse.papyrus.uml.textedit.constraintwithessentialocl.xtext/src/org/eclipse/papyrus/uml/textedit/constraintwithessentialocl/xtext/EssentialOCLEditorConfiguration.java
index 7ddf06b123b..d89e2415436 100644
--- a/plugins/uml/textedit/org.eclipse.papyrus.uml.textedit.constraintwithessentialocl.xtext/src/org/eclipse/papyrus/uml/textedit/constraintwithessentialocl/xtext/EssentialOCLEditorConfiguration.java
+++ b/plugins/uml/textedit/org.eclipse.papyrus.uml.textedit.constraintwithessentialocl.xtext/src/org/eclipse/papyrus/uml/textedit/constraintwithessentialocl/xtext/EssentialOCLEditorConfiguration.java
@@ -44,6 +44,7 @@ import org.eclipse.swt.SWT;
import org.eclipse.uml2.uml.Constraint;
import org.eclipse.uml2.uml.Element;
import org.eclipse.uml2.uml.LiteralString;
+import org.eclipse.uml2.uml.Namespace;
import org.eclipse.uml2.uml.UMLFactory;
import org.eclipse.xtext.resource.XtextResource;
@@ -109,6 +110,12 @@ public class EssentialOCLEditorConfiguration extends DefaultXtextDirectEditorCon
opaqueExpression.getBodies().add(indexOfOCLBody, newTextualRepresentation);
}
constraint.setSpecification(opaqueExpression);
+
+ // update context object, if null (TODO: clarify, if responsibility of textual editor).
+ EObject context = getContextProvider().getContextObject();
+ if ((constraint.getContext() == null) && (context instanceof Namespace)) {
+ constraint.setContext((Namespace) context);
+ }
return CommandResult.newOKCommandResult(constraint);
}
}
@@ -169,6 +176,9 @@ public class EssentialOCLEditorConfiguration extends DefaultXtextDirectEditorCon
@Override
public IParser createParser(final EObject semanticObject) {
+ if (objectToEdit == null) {
+ objectToEdit = semanticObject;
+ }
final IParser defaultParser = super.createParser(semanticObject);
return new IParser() {

Back to the top