summaryrefslogtreecommitdiff
path: root/Library/PackageCache/com.unity.timeline@1.2.13/Editor/treeview/TimelineClipHandle.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Library/PackageCache/com.unity.timeline@1.2.13/Editor/treeview/TimelineClipHandle.cs')
-rw-r--r--Library/PackageCache/com.unity.timeline@1.2.13/Editor/treeview/TimelineClipHandle.cs53
1 files changed, 53 insertions, 0 deletions
diff --git a/Library/PackageCache/com.unity.timeline@1.2.13/Editor/treeview/TimelineClipHandle.cs b/Library/PackageCache/com.unity.timeline@1.2.13/Editor/treeview/TimelineClipHandle.cs
new file mode 100644
index 0000000..6bd2238
--- /dev/null
+++ b/Library/PackageCache/com.unity.timeline@1.2.13/Editor/treeview/TimelineClipHandle.cs
@@ -0,0 +1,53 @@
+using UnityEngine;
+
+namespace UnityEditor.Timeline
+{
+ class TimelineClipHandle : ILayerable
+ {
+ Rect m_Rect;
+ readonly TimelineClipGUI m_ClipGUI;
+ readonly TrimEdge m_TrimDirection;
+ readonly LayerZOrder m_ZOrder;
+
+ public Rect boundingRect
+ {
+ get { return m_ClipGUI.parent.ToWindowSpace(m_Rect); }
+ }
+
+ public TrimEdge trimDirection
+ {
+ get { return m_TrimDirection; }
+ }
+
+ public TimelineClipGUI clipGUI
+ {
+ get { return m_ClipGUI; }
+ }
+
+ public LayerZOrder zOrder
+ {
+ get { return m_ZOrder; }
+ }
+
+ public TimelineClipHandle(TimelineClipGUI theClipGUI, TrimEdge trimDirection)
+ {
+ m_TrimDirection = trimDirection;
+ m_ClipGUI = theClipGUI;
+ m_ZOrder = theClipGUI.zOrder.ChangeLayer(Layer.ClipHandles);
+ }
+
+ public void Draw(Rect clientRect, float width, WindowState state)
+ {
+ var handleRect = clientRect;
+ handleRect.width = width;
+
+ if (m_TrimDirection == TrimEdge.End)
+ handleRect.x = clientRect.xMax - width;
+
+ m_Rect = handleRect;
+ if (!TimelineWindow.instance.state.editSequence.isReadOnly)
+ EditorGUIUtility.AddCursorRect(handleRect, MouseCursor.SplitResizeLeftRight);
+ state.spacePartitioner.AddBounds(this, boundingRect);
+ }
+ }
+}