Ejemplo n.º 1
0
        public virtual DebugMenuItemUI BuildGUI(GameObject parent, DebugMenuItem menuItem)
        {
            DebugMenuItemUI newItemUI = null;

            if (menuItem.GetItemType() == typeof(bool))
            {
                newItemUI = new DebugMenuBoolItemUI(parent, menuItem, m_Label.text);
            }
            else if (menuItem.GetItemType() == typeof(int))
            {
                newItemUI = new DebugMenuIntItemUI(parent, menuItem, m_Label.text);
            }
            else if (menuItem.GetItemType() == typeof(uint))
            {
                newItemUI = new DebugMenuUIntItemUI(parent, menuItem, m_Label.text);
            }
            else if (menuItem.GetItemType() == typeof(float))
            {
                newItemUI = new DebugMenuFloatItemUI(parent, menuItem, m_Label.text);
            }
            else if (menuItem.GetItemType() == typeof(Color))
            {
                newItemUI = new DebugMenuColorItemUI(parent, menuItem, m_Label.text);
            }
            else if (m_MenuItem.GetItemType().BaseType == typeof(System.Enum))
            {
                newItemUI = new DebugMenuEnumItemUI(parent, menuItem, m_Label.text, m_EnumStrings.ToArray(), m_EnumValues.ToArray());
            }

            return(newItemUI);
        }
Ejemplo n.º 2
0
        public void SetDebugItem(DebugMenuItem item)
        {
            m_MenuItem = item;

            m_Label = new GUIContent(m_MenuItem.name);
            Type itemType = m_MenuItem.GetItemType();

            if (itemType.BaseType == typeof(System.Enum))
            {
                Array arr = Enum.GetValues(itemType);
                m_EnumStrings = new List <GUIContent>(arr.Length);
                m_EnumValues  = new List <int>(arr.Length);

                foreach (var value in arr)
                {
                    m_EnumStrings.Add(new GUIContent(value.ToString()));
                    m_EnumValues.Add((int)value);
                }
            }
        }