using UnityEngine.Playables;
using UnityEngine.Timeline;
namespace UnityEditor.Timeline
{
///
/// Base class of the TimelineWindow.
///
public abstract class TimelineEditorWindow : EditorWindow
{
///
/// Interface used to navigate between Timelines and SubTimelines. (RO)
///
public abstract TimelineNavigator navigator { get; }
///
/// Allows retrieving and and setting the Timeline Window lock state. When the lock is off, the window focus follows the Unity selection.
///
/// When lock transitions from true to false, the focused timeline will be synchronized with the Unity selection.>
public abstract bool locked { get; set; }
///
/// Allows setting which TimelineAsset is shown in the TimelineWindow.
///
/// The asset to show.
/// Calling this method will put the window in asset edit mode and certain features might be missing (eg: timeline cannot be evaluated, bindings will not be available, etc).
/// Ignores window lock mode. Calling with null, will clear the displayed timeline.
public abstract void SetTimeline(TimelineAsset sequence);
///
/// Allows setting which TimelineAsset is shown in the TimelineWindow and which PlayableDirector is used to evaluate it.
///
/// The PlayableDirector who's timeline should be shown.
/// Ignores window lock mode. Calling with null, will clear the displayed timeline.
public abstract void SetTimeline(PlayableDirector director);
///
/// Allows clearing the TimelineAsset that is shown in the TimelineWindow.
///
/// Ignores window lock mode.>
public abstract void ClearTimeline();
}
}