diff options
| author | Florian Barbin | 2016-11-24 17:01:57 +0000 |
|---|---|---|
| committer | Florian Barbin | 2016-11-24 17:24:44 +0000 |
| commit | 605dee44afab884e9cf545138edf99b976cfbb00 (patch) | |
| tree | 568ba88a944bd1b90e3c2ef0bd71b19b5b9774e3 | |
| parent | 3003c5b7b7ea0628ce2a01f94a63f28f49ab0962 (diff) | |
| download | org.eclipse.sirius-605dee44afab884e9cf545138edf99b976cfbb00.tar.gz org.eclipse.sirius-605dee44afab884e9cf545138edf99b976cfbb00.tar.xz org.eclipse.sirius-605dee44afab884e9cf545138edf99b976cfbb00.zip | |
[508135] Attach DEdge after creation to record feature modifications.
Bug: 508135
cherry-picked-from: 1353d01ae1997a7f814c9f8c464835a47dcf44e2
Change-Id: I5a4801cb298d7c199d68e063b7b45aca63583722
Signed-off-by: Florian Barbin <florian.barbin@obeo.fr>
| -rw-r--r-- | plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/experimental/sync/DDiagramElementSynchronizer.java | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/experimental/sync/DDiagramElementSynchronizer.java b/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/experimental/sync/DDiagramElementSynchronizer.java index bb8fd4cad6..7b3cea3279 100644 --- a/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/experimental/sync/DDiagramElementSynchronizer.java +++ b/plugins/org.eclipse.sirius.diagram/src-core/org/eclipse/sirius/diagram/business/internal/experimental/sync/DDiagramElementSynchronizer.java @@ -305,8 +305,7 @@ public class DDiagramElementSynchronizer { final Map<EdgeMapping, Collection<MappingBasedDecoration>> edgeToMappingBasedDecoration, final Map<String, Collection<SemanticBasedDecoration>> edgeToSemanticBasedDecoration) { DslCommonPlugin.PROFILER.startWork(SiriusTasksKey.CREATE_MISSING_EDGES_KEY); - DEdge newEdge = createEdge(candidate); - diagram.getOwnedDiagramElements().add(newEdge); + DEdge newEdge = createAndAttachEdge(candidate); Option<EdgeMapping> edgeMapping = new IEdgeMappingQuery(candidate.getMapping()).getEdgeMapping(); if (edgeMapping.some()) { @@ -331,8 +330,9 @@ public class DDiagramElementSynchronizer { * semantic target (among other things). * @return the newly created edge. */ - private DEdge createEdge(final DEdgeCandidate candidate) { + private DEdge createAndAttachEdge(final DEdgeCandidate candidate) { final DEdge newEdge = DiagramFactory.eINSTANCE.createDEdge(); + diagram.getOwnedDiagramElements().add(newEdge); newEdge.setTarget(candidate.getSemantic()); newEdge.setActualMapping(candidate.getMapping()); newEdge.setSourceNode(candidate.getSourceView()); |
