#if UNITY_EDITOR
using UnityEditor;
namespace ToolsBox.Collider.Editors
{ 
    [CustomEditor(typeof(TriggerZone2D))]
    public class TriggerZone2DEditor : Editor
    {
        private string[] availableTypes;

        private void OnEnable()
        {
            availableTypes = PopUpTypeEditor.GetMonoBehaviorTypes();
        }

        public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUI.BeginDisabledGroup(true);
            EditorGUILayout.PropertyField(serializedObject.FindProperty("m_Script"));
            EditorGUI.EndDisabledGroup();

            TriggerZone2D script = (TriggerZone2D)target;

            EditorGUILayout.Space();

            PopUpTypeEditor.PopUp(availableTypes, "_targetTypeName", serializedObject);

            DrawPropertiesExcluding(serializedObject, "m_Script", "_targetTypeName");
            serializedObject.ApplyModifiedProperties();
        }
    }
}
#endif