internal void Set(SkeletonItem s, int id, int prevId) { if (skel == s && stateId == id) return; skel = s; stateId = id; dispNode = skel.displayNodes[stateId]; active = dispNode != null; var closeStateId = stateId; if (dispNode == null) { while (closeStateId < skel.displayNodes.Length && skel.displayNodes[closeStateId] == null) closeStateId++; if (closeStateId >= skel.displayNodes.Length) { closeStateId = stateId; while (closeStateId >= 0 && skel.displayNodes[closeStateId] == null) closeStateId--; } dispNode = skel.displayNodes[closeStateId]; } var fullName = skel.LongName(closeStateId); var tooltip = dispNode.ToolTip; if (tooltip == null) tooltip = ""; if(tooltip.Length > 0 && tooltip[tooltip.Length - 1] != '\n') tooltip += "\n"; tooltip += "Full name: " + fullName; if (tooltip != null) { this.ToolTipText = tooltip; } var name = dispNode.Name; if (name != dispNode.ShortName) { name = dispNode.ShortName; } if (IsMatchListItem) { Util.Assert(active); name = fullName; } this.SubItems[0].Text = name; this.SubItems[1].Text = active ? dispNode.Value : ""; var prev = ""; if (!IsMatchListItem && prevId >= 0 && skel.displayNodes[prevId] != null) { prev = skel.displayNodes[prevId].Value; } this.SubItems[2].Text = prev; }
internal void Set(SkeletonItem s, int id, int prevId) { if (skel == s && stateId == id) { return; } skel = s; stateId = id; dispNode = skel.displayNodes[stateId]; active = dispNode != null; var closeStateId = stateId; if (dispNode == null) { while (closeStateId < skel.displayNodes.Length && skel.displayNodes[closeStateId] == null) { closeStateId++; } if (closeStateId >= skel.displayNodes.Length) { closeStateId = stateId; while (closeStateId >= 0 && skel.displayNodes[closeStateId] == null) { closeStateId--; } } dispNode = skel.displayNodes[closeStateId]; } var fullName = skel.LongName(closeStateId); var tooltip = dispNode.ToolTip; if (tooltip == null) { tooltip = ""; } if (tooltip.Length > 0 && tooltip[tooltip.Length - 1] != '\n') { tooltip += "\n"; } tooltip += "Full name: " + fullName; if (tooltip != null) { this.ToolTipText = tooltip; } var name = dispNode.Name; if (name != dispNode.ShortName) { name = dispNode.ShortName; } if (IsMatchListItem) { Util.Assert(active); name = fullName; } this.SubItems[0].Text = name; this.SubItems[1].Text = active ? dispNode.Value : ""; var prev = ""; if (!IsMatchListItem && prevId >= 0 && skel.displayNodes[prevId] != null) { prev = skel.displayNodes[prevId].Value; } this.SubItems[2].Text = prev; }