示例#1
0
        private void RemoveDiagramNode(IModelEntity modelEntity)
        {
            var result = _graph.RemoveVertex(i => i.ModelEntity == modelEntity);

            var surroundingNodes = result.RemovedEdges.EmptyIfNull()
                                   .Select(i => i.GetOtherEnd(result.RemovedVertex)).Distinct();

            foreach (var diagramNode in surroundingNodes)
            {
                ShowModelRelationshipsIfBothEndsAreVisible(diagramNode.ModelEntity);
            }
        }
示例#2
0
 public IDiagram RemoveNode(ModelNodeId nodeId)
 {
     // TODO: if it's a child node then remove from parent instead of removing from graph
     return(CreateInstance(_graph.RemoveVertex(nodeId)));
 }