From c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78 Mon Sep 17 00:00:00 2001 From: Andrew Lee Date: Sun, 19 Apr 2020 17:19:32 -0400 Subject: Inital commit --- .../Editor/Signals/SignalEventDrawer.cs | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 Library/PackageCache/com.unity.timeline@1.2.13/Editor/Signals/SignalEventDrawer.cs (limited to 'Library/PackageCache/com.unity.timeline@1.2.13/Editor/Signals/SignalEventDrawer.cs') diff --git a/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Signals/SignalEventDrawer.cs b/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Signals/SignalEventDrawer.cs new file mode 100644 index 0000000..021c6c7 --- /dev/null +++ b/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Signals/SignalEventDrawer.cs @@ -0,0 +1,39 @@ +using System; +using JetBrains.Annotations; +using UnityEditorInternal; +using UnityEngine; +using UnityEngine.Timeline; + +namespace UnityEditor.Timeline.Signals +{ + [CustomPropertyDrawer(typeof(CustomSignalEventDrawer))] + [UsedImplicitly] + class SignalEventDrawer : UnityEventDrawer + { + static GameObject FindBoundObject(SerializedProperty property) + { + var component = property.serializedObject.targetObject as Component; + return component != null ? component.gameObject : null; + } + + protected override void OnAddEvent(ReorderableList list) + { + base.OnAddEvent(list); + var listProperty = list.serializedProperty; + if (listProperty.arraySize > 0) + { + var lastCall = list.serializedProperty.GetArrayElementAtIndex(listProperty.arraySize - 1); + var targetProperty = lastCall.FindPropertyRelative(kInstancePath); + targetProperty.objectReferenceValue = FindBoundObject(listProperty); + } + } + + protected override void DrawEventHeader(Rect headerRect) {} + + protected override void SetupReorderableList(ReorderableList list) + { + base.SetupReorderableList(list); + list.headerHeight = 4; + } + } +} -- cgit v1.2.3