private async Task ShowEntitiesAsync( [NotNull] IReadOnlyCollection <ModelNodeId> modelEntities, CancellationToken cancellationToken, IIncrementalProgress progress) { await Task.Run( () => DiagramService.AddNodes(modelEntities, cancellationToken, progress), cancellationToken); }
private IEnumerable <ModelNodeId> ShowModelNodeWithHierarchy( ModelNodeId nodeId, CancellationToken cancellationToken, IIncrementalProgress progress) { var model = RoslynBasedModelService.LatestModel; var baseTypeIds = model.GetRelatedNodes(nodeId, DirectedModelRelationshipTypes.BaseType, recursive: true).Select(i => i.Id); var subtypeIds = model.GetRelatedNodes(nodeId, DirectedModelRelationshipTypes.Subtype, recursive: true).Select(i => i.Id); var nodeIds = new[] { nodeId }.Union(baseTypeIds).Union(subtypeIds).ToList(); DiagramService.AddNodes(nodeIds, cancellationToken, progress); return(nodeIds); }