public void ApplyLabel(ILabeledObject graphElement, DebuggerOperations debuggerOperations, Identifier identifier) { var label = Regex.Replace(LabelTextExpression, @"{.*?}", delegate(Match match) { ThreadHelper.ThrowIfNotOnUIThread(); string v = match.ToString(); return(debuggerOperations.GetExpressionForIdentifier(v.Substring(1, v.Length - 2), identifier).Value); }); if (FontSize.HasValue) { graphElement.Label.FontSize = FontSize.Value; } if (label.Equals(graphElement.Label.Text)) { return; } graphElement.Label.Text = label; if (HighlightIfChanged) { graphElement.Label.FontColor = ColorToHighLight ?? Color.Red; } }
public void Apply(Edge edge, DebuggerOperations debuggerOperations, Identifier identifier) { if (edge.Label == null) { edge.LabelText = ""; } ApplyLabel(edge, debuggerOperations, identifier); }
private void InitializeDebuggerOperations() { Dispatcher.CurrentDispatcher.VerifyAccess(); var dte = (DTE)Microsoft.VisualStudio.Shell.Package.GetGlobalService(typeof(DTE)); _debugEvents = dte.Events.DebuggerEvents; _debugEvents.OnContextChanged += Update; var debugger = dte.Debugger; EnvDTE.Window w = dte.Windows.Item(EnvDTE.Constants.vsWindowKindOutput); w.Visible = true; OutputWindow ow = (OutputWindow)w.Object; var outputWindowPane = ow.OutputWindowPanes.Add("Graph Visualization"); outputWindowPane.Activate(); _debuggerOperations = new DebuggerOperations(debugger, outputWindowPane); }
public void Apply(Node node, DebuggerOperations debuggerOperations, Identifier identifier) { node.Attr.LineWidth = LineWidth; }
public void Apply(Node node, DebuggerOperations debuggerOperations, Identifier identifier) { ApplyLabel(node, debuggerOperations, identifier); }
public void Apply(Node node, DebuggerOperations debuggerOperations, Identifier identifier) { node.Attr.Shape = Shape; }
public void Apply(Node node, DebuggerOperations debuggerOperations, Identifier identifier) { node.Attr.FillColor = Color; }
public void Apply(Node node, DebuggerOperations debuggerOperations, Identifier identifier) { node.Attr.AddStyle(Style); }
public void Apply(Edge edge, DebuggerOperations debuggerOperations, Identifier identifier) { edge.Attr.Color = Color; }
public void Apply(Edge edge, DebuggerOperations debuggerOperations, Identifier identifier) { edge.Attr.LineWidth = LineWidth; }
public void Apply(Edge edge, DebuggerOperations debuggerOperations, Identifier identifier) { edge.Attr.ArrowheadAtTarget = ArrowAtTarget ? ArrowStyle.Normal : ArrowStyle.None; edge.Attr.ArrowheadAtSource = ArrowAtSource ? ArrowStyle.Normal : ArrowStyle.None; }
public void Apply(Edge edge, DebuggerOperations debuggerOperations, Identifier identifier) { edge.Attr.AddStyle(Style); }