A game about forced loneliness, made by TACStudios
1using UnityEngine;
2using UnityEngine.UI;
3using UnityEditorInternal;
4using UnityEditor.AnimatedValues;
5
6namespace UnityEditor.UI
7{
8 [CustomEditor(typeof(GridLayoutGroup), true)]
9 [CanEditMultipleObjects]
10 /// <summary>
11 /// Custom Editor for the GridLayout Component.
12 /// Extend this class to write a custom editor for a component derived from GridLayout.
13 /// </summary>
14 public class GridLayoutGroupEditor : Editor
15 {
16 SerializedProperty m_Padding;
17 SerializedProperty m_CellSize;
18 SerializedProperty m_Spacing;
19 SerializedProperty m_StartCorner;
20 SerializedProperty m_StartAxis;
21 SerializedProperty m_ChildAlignment;
22 SerializedProperty m_Constraint;
23 SerializedProperty m_ConstraintCount;
24
25 protected virtual void OnEnable()
26 {
27 m_Padding = serializedObject.FindProperty("m_Padding");
28 m_CellSize = serializedObject.FindProperty("m_CellSize");
29 m_Spacing = serializedObject.FindProperty("m_Spacing");
30 m_StartCorner = serializedObject.FindProperty("m_StartCorner");
31 m_StartAxis = serializedObject.FindProperty("m_StartAxis");
32 m_ChildAlignment = serializedObject.FindProperty("m_ChildAlignment");
33 m_Constraint = serializedObject.FindProperty("m_Constraint");
34 m_ConstraintCount = serializedObject.FindProperty("m_ConstraintCount");
35 }
36
37 public override void OnInspectorGUI()
38 {
39 serializedObject.Update();
40 EditorGUILayout.PropertyField(m_Padding, true);
41 EditorGUILayout.PropertyField(m_CellSize, true);
42 EditorGUILayout.PropertyField(m_Spacing, true);
43 EditorGUILayout.PropertyField(m_StartCorner, true);
44 EditorGUILayout.PropertyField(m_StartAxis, true);
45 EditorGUILayout.PropertyField(m_ChildAlignment, true);
46 EditorGUILayout.PropertyField(m_Constraint, true);
47 if (m_Constraint.enumValueIndex > 0)
48 {
49 EditorGUI.indentLevel++;
50 EditorGUILayout.PropertyField(m_ConstraintCount, true);
51 EditorGUI.indentLevel--;
52 }
53 serializedObject.ApplyModifiedProperties();
54 }
55 }
56}