public void Inspect(ObjectValue value) { if (ReplaceExistingNode(value)) { return; } var node = new DebuggerObjectValueNode(value); controller.AddValue(node); }
bool ReplaceExistingNode(ObjectValue value) { int index = FindExistingNodeIndex(value); if (index < 0) { return(false); } var existingNode = controller.Root.Children [index]; var node = new DebuggerObjectValueNode(value); controller.Root.ReplaceValueAt(index, node); treeView.LoadEvaluatedNode(existingNode, new[] { node }); return(true); }