private GraphRender GetRender(IServiceProvider provider, EnvDTE.DTE dte,
                                      GraphPart part, string path, IEnumerable <string> nodeTypes, IEnumerable <string> linkTypes)
        {
            var serializer = new GraphSerializer();

            serializer.GenerateDGML(path, part, nodeTypes, linkTypes);

            var window     = dte.ItemOperations.OpenFile(path);
            var automation = window.Object as GraphControlAutomationObject;

            if (automation == null)
            {
                throw new ApplicationException("Missing graph control automation.");
            }

            try
            {
                File.Delete(path);
            }
            catch (Exception ex)
            {
                OutputWindowHelper.OutputString(provider, ex.Message);
            }

            var graph = automation.Graph;

            return(new GraphRender(graph));
        }
Exemplo n.º 2
0
        protected override void Initialize()
        {
            base.Initialize();

            var context = ((ITeamFoundationContextManager)GetService(typeof(ITeamFoundationContextManager))).CurrentContext;

            _model       = new TimelineModel(new TimelineService(context, (message) => OutputWindowHelper.OutputString(this, message)));
            base.Content = new TimelineWrapper(_model,
                                               (message) => OutputWindowHelper.OutputString(this, message),
                                               (id) => {
                var dte = (EnvDTE.DTE)GetService(typeof(EnvDTE.DTE));
                SourceControlHelper.ShowChangeset(dte, id);
            });
        }