using System; using System.Collections; using System.Collections.Generic; using UnityEditor; using UnityEditor.UIElements; using UnityEngine; using UnityEngine.UIElements; namespace UIKit { [CustomEditor (typeof (UIView))] [CanEditMultipleObjects] public class UIViewInspector : UnityEditor.Editor { UIView m_Target; protected void OnEnable () { m_Target = target as UIView; } public override VisualElement CreateInspectorGUI () { var rootElement = new VisualElement (); var objectField = new ObjectField ("UI View"); objectField.value = m_Target; rootElement.Add (objectField); var styleField = new EnumField ("Style"); styleField.Init (m_Target.StyleId); styleField.value = m_Target.StyleId; styleField.RegisterCallback<ChangeEvent<Enum>> (evt => { m_Target.StyleId = (UIStyleId) evt.newValue; }); rootElement.Add (styleField); var colorField = new EnumField ("Color"); colorField.Init (m_Target.ColorId); colorField.value = m_Target.ColorId; colorField.RegisterCallback<ChangeEvent<Enum>> (evt => { m_Target.ColorId = (UIColorId) evt.newValue; }); rootElement.Add (colorField); var elementField = new ObjectField ("UI Element"); elementField.SetEnabled (false); elementField.value = m_Target.Element; rootElement.Add (elementField); return rootElement; } } }