diff options
author | Bob Brodt | 2015-09-16 16:20:37 +0000 |
---|---|---|
committer | Bob Brodt | 2015-09-16 16:20:37 +0000 |
commit | 6ea87597f5459ddda4219a98f985f5d1b82336d6 (patch) | |
tree | d871134ef4335dc7a587794d82687b36772a9391 | |
parent | 00317cd75220ef89ad91565eef7e05f1f4fdc086 (diff) | |
download | org.eclipse.bpmn2-modeler-6ea87597f5459ddda4219a98f985f5d1b82336d6.tar.gz org.eclipse.bpmn2-modeler-6ea87597f5459ddda4219a98f985f5d1b82336d6.tar.xz org.eclipse.bpmn2-modeler-6ea87597f5459ddda4219a98f985f5d1b82336d6.zip |
https://bugzilla.redhat.com/show_bug.cgi?id=1263526 - Conditional
boundary event can't be edited. Caused by a regression during
TargetRuntime refactoring.
2 files changed, 7 insertions, 2 deletions
diff --git a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/merrimac/clad/ListAndDetailCompositeBase.java b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/merrimac/clad/ListAndDetailCompositeBase.java index ef096d71..14bd6786 100644 --- a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/merrimac/clad/ListAndDetailCompositeBase.java +++ b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/merrimac/clad/ListAndDetailCompositeBase.java @@ -37,6 +37,7 @@ import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.resource.Resource; import org.eclipse.emf.ecore.xml.type.XMLTypePackage; import org.eclipse.emf.edit.provider.INotifyChangedListener; import org.eclipse.emf.transaction.NotificationFilter; @@ -231,11 +232,12 @@ public class ListAndDetailCompositeBase extends Composite implements ResourceSet protected <T extends EObject> T createModelObject(Class clazz) { EClass eClass = (EClass) Bpmn2Package.eINSTANCE.getEClassifier(clazz.getSimpleName()); + Resource resource = ObjectPropertyProvider.getResource(businessObject); EFactory factory = eClass.getEPackage().getEFactoryInstance(); - ObjectPropertyProvider.adapt(factory, businessObject.eResource()); + ObjectPropertyProvider.adapt(factory, resource); T object = getBusinessObjectDelegate().createObject(clazz); - ModelUtil.setID(object, ObjectPropertyProvider.getResource(businessObject)); + ModelUtil.setID(object, resource); return object; } diff --git a/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/property/events/ConditionalEventDefinitionDetailComposite.java b/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/property/events/ConditionalEventDefinitionDetailComposite.java index 24afabf2..e20c6d9b 100644 --- a/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/property/events/ConditionalEventDefinitionDetailComposite.java +++ b/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/property/events/ConditionalEventDefinitionDetailComposite.java @@ -37,6 +37,9 @@ public class ConditionalEventDefinitionDetailComposite extends ExpressionDetailC @Override public void setBusinessObject(EObject object) { if (object instanceof ConditionalEventDefinition) { + // The businessObject is used to fetch the Resource during + // construction of new objects - make sure this is set first. + this.businessObject = object; getDiagramEditor(); addDomainListener(); |