62 lines
2.3 KiB
C#
62 lines
2.3 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
using UnityEditor;
|
|
using UnityEditorInternal;
|
|
|
|
|
|
namespace SuperTreeView
|
|
{
|
|
|
|
[CustomEditor(typeof(TreeViewItem))]
|
|
public class TreeViewItemEditor : Editor
|
|
{
|
|
|
|
SerializedProperty mUseOverridedConfig;
|
|
SerializedProperty mOverridedChildTreeItemPadding;
|
|
SerializedProperty mOverridedChildTreeIndent;
|
|
SerializedProperty mOverridedChildTreeListPadding;
|
|
|
|
protected virtual void OnEnable()
|
|
{
|
|
mUseOverridedConfig = serializedObject.FindProperty("mUseOverridedConfig");
|
|
mOverridedChildTreeItemPadding = serializedObject.FindProperty("mOverridedChildTreeItemPadding");
|
|
mOverridedChildTreeIndent = serializedObject.FindProperty("mOverridedChildTreeIndent");
|
|
mOverridedChildTreeListPadding = serializedObject.FindProperty("mOverridedChildTreeListPadding");
|
|
|
|
}
|
|
|
|
|
|
public override void OnInspectorGUI()
|
|
{
|
|
serializedObject.Update();
|
|
TreeViewItem tTreeViewItem = serializedObject.targetObject as TreeViewItem;
|
|
if (tTreeViewItem == null)
|
|
{
|
|
return;
|
|
}
|
|
bool useOverridedConfig = mUseOverridedConfig.boolValue;
|
|
EditorGUILayout.PropertyField(mUseOverridedConfig, new GUIContent("UseOverridedConfig"));
|
|
|
|
if (mUseOverridedConfig.boolValue)
|
|
{
|
|
EditorGUI.BeginChangeCheck();
|
|
EditorGUILayout.PropertyField(mOverridedChildTreeItemPadding, new GUIContent("OverridedChildTreeItemPadding"));
|
|
EditorGUILayout.PropertyField(mOverridedChildTreeIndent, new GUIContent("OverridedChildTreeIndent"));
|
|
EditorGUILayout.PropertyField(mOverridedChildTreeListPadding, new GUIContent("OverridedChildTreeListPadding"));
|
|
if (EditorGUI.EndChangeCheck())
|
|
{
|
|
tTreeViewItem.RootTreeView.NeedRepositionAll = true;
|
|
}
|
|
|
|
}
|
|
if (useOverridedConfig != mUseOverridedConfig.boolValue)
|
|
{
|
|
tTreeViewItem.RootTreeView.NeedRepositionAll = true;
|
|
}
|
|
serializedObject.ApplyModifiedProperties();
|
|
}
|
|
}
|
|
}
|