/// <summary> /// Called whenever a relationship of type EmbeddingDiagramNodeHasEmbeddingDiagramNodes is deleted and /// the element hosted by this model is the source. /// </summary> /// <param name="args"></param> private void OnEmbeddingDiagramNodeRemoved(ElementDeletedEventArgs args) { EmbeddingDiagramNodeHasEmbeddingDiagramNodes con = args.ModelElement as EmbeddingDiagramNodeHasEmbeddingDiagramNodes; if (con != null) { DeleteEmbeddingDiagramNode(con.TargetEmbeddingDiagramNode); } }
/// <summary> /// Called whenever a relationship of type EmbeddingDiagramNodeHasEmbeddingDiagramNodes is added and /// the element hosted by this model is the source. /// </summary> /// <param name="args"></param> private void OnEmbeddingDiagramNodeAdded(ElementAddedEventArgs args) { EmbeddingDiagramNodeHasEmbeddingDiagramNodes con = args.ModelElement as EmbeddingDiagramNodeHasEmbeddingDiagramNodes; if (con != null) { AddEmbeddingDiagramNode(con.TargetEmbeddingDiagramNode); } }
/// <summary> /// Called on a role player changing. /// </summary> /// <param name="args"></param> private void OnEmbeddingDiagramNodeChanged(RolePlayerChangedEventArgs args) { EmbeddingDiagramNodeHasEmbeddingDiagramNodes con = args.ElementLink as EmbeddingDiagramNodeHasEmbeddingDiagramNodes; if (con != null) { if (args.DomainRole.Id == EmbeddingDiagramNodeHasEmbeddingDiagramNodes.SourceEmbeddingDiagramNodeDomainRoleId) { if (args.OldRolePlayerId == this.EmbeddingDiagramNode.Id) { DeleteEmbeddingDiagramNode(con.TargetEmbeddingDiagramNode); } if (args.NewRolePlayerId == this.EmbeddingDiagramNode.Id) { AddEmbeddingDiagramNode(con.TargetEmbeddingDiagramNode); } } } }