Example #1
0
 private async Task ShowEntitiesAsync(
     [NotNull] IReadOnlyCollection <ModelNodeId> modelEntities,
     CancellationToken cancellationToken,
     IIncrementalProgress progress)
 {
     await Task.Run(
         () => DiagramService.AddNodes(modelEntities, cancellationToken, progress),
         cancellationToken);
 }
Example #2
0
        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);
        }