summaryrefslogtreecommitdiff
path: root/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Items/ClipItem.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Library/PackageCache/com.unity.timeline@1.2.13/Editor/Items/ClipItem.cs')
-rw-r--r--Library/PackageCache/com.unity.timeline@1.2.13/Editor/Items/ClipItem.cs143
1 files changed, 143 insertions, 0 deletions
diff --git a/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Items/ClipItem.cs b/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Items/ClipItem.cs
new file mode 100644
index 0000000..d500257
--- /dev/null
+++ b/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Items/ClipItem.cs
@@ -0,0 +1,143 @@
+using System;
+using UnityEngine.Timeline;
+
+namespace UnityEditor.Timeline
+{
+ class ClipItem : IBlendable, ITrimmable
+ {
+ readonly TimelineClip m_Clip;
+
+ public TimelineClip clip
+ {
+ get { return m_Clip; }
+ }
+
+ public ClipItem(TimelineClip clip)
+ {
+ m_Clip = clip;
+ }
+
+ public TrackAsset parentTrack
+ {
+ get { return m_Clip.parentTrack; }
+ set { m_Clip.parentTrack = value; }
+ }
+
+ public double start
+ {
+ get { return m_Clip.start; }
+ set { m_Clip.start = value; }
+ }
+
+ public double end
+ {
+ get { return m_Clip.end; }
+ }
+
+ public double duration
+ {
+ get { return m_Clip.duration; }
+ }
+
+ public bool IsCompatibleWithTrack(TrackAsset track)
+ {
+ return track.IsCompatibleWithClip(m_Clip);
+ }
+
+ public void PushUndo(string operation)
+ {
+ TimelineUndo.PushUndo(m_Clip.parentTrack, operation);
+ }
+
+ public TimelineItemGUI gui
+ {
+ get { return ItemToItemGui.GetGuiForClip(m_Clip); }
+ }
+
+ public bool supportsBlending
+ {
+ get { return m_Clip.SupportsBlending(); }
+ }
+
+ public bool hasLeftBlend
+ {
+ get { return m_Clip.hasBlendIn; }
+ }
+
+ public bool hasRightBlend
+ {
+ get { return m_Clip.hasBlendOut; }
+ }
+
+ public double leftBlendDuration
+ {
+ get { return m_Clip.hasBlendIn ? m_Clip.blendInDuration : m_Clip.easeInDuration; }
+ }
+
+ public double rightBlendDuration
+ {
+ get { return m_Clip.hasBlendOut ? m_Clip.blendOutDuration : m_Clip.easeOutDuration; }
+ }
+
+ public void SetStart(double time)
+ {
+ ClipModifier.SetStart(m_Clip, time);
+ }
+
+ public void SetEnd(double time, bool affectTimeScale)
+ {
+ ClipModifier.SetEnd(m_Clip, time, affectTimeScale);
+ }
+
+ public void Delete()
+ {
+ EditorClipFactory.RemoveEditorClip(m_Clip);
+ ClipModifier.Delete(m_Clip.parentTrack.timelineAsset, m_Clip);
+ }
+
+ public void TrimStart(double time)
+ {
+ ClipModifier.TrimStart(m_Clip, time);
+ }
+
+ public void TrimEnd(double time)
+ {
+ ClipModifier.TrimEnd(m_Clip, time);
+ }
+
+ public ITimelineItem CloneTo(TrackAsset parent, double time)
+ {
+ return new ClipItem(TimelineHelpers.Clone(m_Clip, TimelineEditor.inspectedDirector, TimelineEditor.inspectedDirector, time, parent));
+ }
+
+ public override string ToString()
+ {
+ return m_Clip.ToString();
+ }
+
+ public bool Equals(ClipItem otherClip)
+ {
+ if (ReferenceEquals(null, otherClip)) return false;
+ if (ReferenceEquals(this, otherClip)) return true;
+ return Equals(m_Clip, otherClip.m_Clip);
+ }
+
+ public override int GetHashCode()
+ {
+ return (m_Clip != null ? m_Clip.GetHashCode() : 0);
+ }
+
+ public bool Equals(ITimelineItem other)
+ {
+ return Equals((object)other);
+ }
+
+ public override bool Equals(object obj)
+ {
+ if (ReferenceEquals(null, obj)) return false;
+ if (ReferenceEquals(this, obj)) return true;
+ var other = obj as ClipItem;
+ return other != null && Equals(other);
+ }
+ }
+}