private TreelistView.Node FindNode(TreelistView.NodeCollection nodes, string filter, UInt32 after) { foreach (var n in nodes) { if (n.Tag is DeferredEvent) { if (GetNodeEventID(n) > after && n["Name"].ToString().ToUpperInvariant().Contains(filter)) { return(n); } } if (n.Nodes.Count > 0) { TreelistView.Node found = FindNode(n.Nodes, filter, after); if (found != null) { return(found); } } } return(null); }
private int SetFindIcons(TreelistView.NodeCollection nodes, string filter) { int results = 0; foreach (var n in nodes) { if (n.Tag is DeferredEvent) { if (n["Name"].ToString().ToUpperInvariant().Contains(filter)) { if (!IsBookmarked(GetNodeEventID(n))) { n.Image = global::renderdocui.Properties.Resources.find; } results++; } } if (n.Nodes.Count > 0) { results += SetFindIcons(n.Nodes, filter); } } return(results); }
private bool FindEventNode(ref TreelistView.Node found, TreelistView.NodeCollection nodes, UInt32 eventID) { foreach (var n in nodes) { DeferredEvent ndef = n.Tag is DeferredEvent ? n.Tag as DeferredEvent : null; DeferredEvent fdef = found != null && found.Tag is DeferredEvent ? found.Tag as DeferredEvent : null; if (ndef != null) { if (ndef.eventID >= eventID && (found == null || ndef.eventID <= fdef.eventID)) { found = n; } if (ndef.eventID == eventID && n.Nodes.Count == 0) { return(true); } } if (n.Nodes.Count > 0) { bool exact = FindEventNode(ref found, n.Nodes, eventID); if (exact) { return(true); } } } return(false); }
private void ClearFindIcons(TreelistView.NodeCollection nodes) { foreach (var n in nodes) { n.Image = null; if (n.Nodes.Count > 0) { ClearFindIcons(n.Nodes); } } }
private void ExportCSV(StreamWriter sw, string prefix, TreelistView.NodeCollection nodes) { foreach (var n in nodes) { if (n.Nodes.IsEmpty()) { sw.WriteLine(prefix + n[0].ToString() + ",\"" + n[1].ToString() + "\"," + n[2].ToString()); } else { sw.WriteLine(prefix + n[0].ToString() + ",," + n[2].ToString()); ExportCSV(sw, n[0].ToString() + ".", n.Nodes); } } }
private void ClearFindIcons(TreelistView.NodeCollection nodes) { foreach (var n in nodes) { if (!IsBookmarked(GetNodeEventID(n))) { n.Image = null; } if (n.Nodes.Count > 0) { ClearFindIcons(n.Nodes); } } }
private void ClearFindIcons(TreelistView.NodeCollection nodes) { foreach (var n in nodes) { if (!IsBookmarked((UInt32)n["EID"])) { n.Image = null; } if (n.Nodes.Count > 0) { ClearFindIcons(n.Nodes); } } }
private void AddVariables(TreelistView.NodeCollection root, ShaderVariable[] vars) { foreach (var v in vars) { TreelistView.Node n = root.Add(new TreelistView.Node(new object[] { v.name, v, v.TypeString() })); if (v.rows > 1) { for (int i = 0; i < v.rows; i++) { n.Nodes.Add(new TreelistView.Node(new object[] { String.Format("{0}.row{1}", v.name, i), v.Row(i), v.RowTypeString() })); } } if (v.members.Length > 0) { AddVariables(n.Nodes, v.members); } } }
private int FindEvent(TreelistView.NodeCollection nodes, string filter, UInt32 after, bool forward) { if (nodes == null) { return(-1); } for (int i = forward ? 0 : nodes.Count - 1; i >= 0 && i < nodes.Count; i += forward ? 1 : -1) { var n = nodes[i]; if (n.Tag is DeferredEvent) { DeferredEvent def = n.Tag as DeferredEvent; bool matchesAfter = (forward && def.eventID > after) || (!forward && def.eventID < after); if (matchesAfter && n["Name"].ToString().ToUpperInvariant().Contains(filter)) { return((int)def.eventID); } } if (n.Nodes.Count > 0) { int found = FindEvent(n.Nodes, filter, after, forward); if (found > 0) { return(found); } } } return(-1); }