コード例 #1
0
ファイル: Main.cs プロジェクト: Chenguang-Zhu/ICE-C5
        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;
        }
コード例 #2
0
        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;
        }