internal override void SetWidget(DebugUI.Widget widget) { base.SetWidget(widget); m_Field = CastWidget <DebugUI.BitField>(); m_Container = GetComponent <DebugUIHandlerContainer>(); nameLabel.text = m_Field.displayName; int toggleIndex = 0; foreach (var enumName in m_Field.enumNames) { if (toggleIndex >= toggles.Count) { continue; } var toggle = toggles[toggleIndex]; toggle.getter = GetValue; toggle.setter = SetValue; toggle.nextUIHandler = toggleIndex < (m_Field.enumNames.Length - 1) ? toggles[toggleIndex + 1] : null; toggle.previousUIHandler = toggleIndex > 0 ? toggles[toggleIndex - 1] : null; toggle.parentUIHandler = this; toggle.index = toggleIndex; toggle.nameLabel.text = enumName.text; toggle.Init(); toggleIndex++; } ; for (; toggleIndex < toggles.Count; ++toggleIndex) { toggles[toggleIndex].transform.SetParent(null); } }
internal override void SetWidget(DebugUI.Widget widget) { base.SetWidget(widget); m_Field = CastWidget <DebugUI.BitField>(); m_Container = GetComponent <DebugUIHandlerContainer>(); nameLabel.text = m_Field.displayName; int toggleIndex = 0; foreach (var enumName in m_Field.enumNames) { if (toggleIndex >= toggles.Count) { continue; } var toggle = toggles[toggleIndex]; toggle.getter = GetValue; toggle.setter = SetValue; toggle.nextUIHandler = toggleIndex < (m_Field.enumNames.Length - 1) ? toggles[toggleIndex + 1] : null; toggle.previousUIHandler = toggleIndex > 0 ? toggles[toggleIndex - 1] : null; toggle.parentUIHandler = this; toggle.index = toggleIndex; toggle.nameLabel.text = enumName.text; toggle.Init(); toggleIndex++; } // Destroy the remaining toggles outside of the range of the displayed enum. for (; toggleIndex < toggles.Count; ++toggleIndex) { CoreUtils.Destroy(toggles[toggleIndex].gameObject); toggles[toggleIndex] = null; } }