31 lines
1.2 KiB
C#
31 lines
1.2 KiB
C#
|
using UnityEditor;
|
||
|
using UnityEngine;
|
||
|
using UnityEngine.Playables;
|
||
|
using UnityEngine.UI;
|
||
|
|
||
|
[CustomPropertyDrawer(typeof(TextSwitcherBehaviour))]
|
||
|
public class TextSwitcherDrawer : PropertyDrawer
|
||
|
{
|
||
|
public override float GetPropertyHeight (SerializedProperty property, GUIContent label)
|
||
|
{
|
||
|
int fieldCount = 3;
|
||
|
return fieldCount * EditorGUIUtility.singleLineHeight;
|
||
|
}
|
||
|
|
||
|
public override void OnGUI (Rect position, SerializedProperty property, GUIContent label)
|
||
|
{
|
||
|
SerializedProperty colorProp = property.FindPropertyRelative("color");
|
||
|
SerializedProperty fontSizeProp = property.FindPropertyRelative("fontSize");
|
||
|
SerializedProperty textProp = property.FindPropertyRelative("text");
|
||
|
|
||
|
Rect singleFieldRect = new Rect(position.x, position.y, position.width, EditorGUIUtility.singleLineHeight);
|
||
|
EditorGUI.PropertyField(singleFieldRect, colorProp);
|
||
|
|
||
|
singleFieldRect.y += EditorGUIUtility.singleLineHeight;
|
||
|
EditorGUI.PropertyField(singleFieldRect, fontSizeProp);
|
||
|
|
||
|
singleFieldRect.y += EditorGUIUtility.singleLineHeight;
|
||
|
EditorGUI.PropertyField(singleFieldRect, textProp);
|
||
|
}
|
||
|
}
|