bea2dce063
test
72 lines
2.0 KiB
C#
72 lines
2.0 KiB
C#
using System;
|
|
using UnityEngine;
|
|
|
|
namespace UnityEditor.Timeline
|
|
{
|
|
enum TimelineModeGUIState
|
|
{
|
|
Disabled,
|
|
Hidden,
|
|
Enabled
|
|
}
|
|
|
|
abstract class TimelineMode
|
|
{
|
|
public struct HeaderState
|
|
{
|
|
public TimelineModeGUIState breadCrumb;
|
|
public TimelineModeGUIState sequenceSelector;
|
|
public TimelineModeGUIState options;
|
|
}
|
|
|
|
public struct TrackOptionsState
|
|
{
|
|
public TimelineModeGUIState newButton;
|
|
public TimelineModeGUIState editAsAssetButton;
|
|
}
|
|
|
|
public HeaderState headerState { get; protected set; }
|
|
public TrackOptionsState trackOptionsState { get; protected set; }
|
|
public TimelineModes mode { get; protected set; }
|
|
|
|
public abstract bool ShouldShowPlayRange(WindowState state);
|
|
public abstract bool ShouldShowTimeCursor(WindowState state);
|
|
|
|
public virtual bool ShouldShowTrackBindings(WindowState state)
|
|
{
|
|
return ShouldShowTimeCursor(state);
|
|
}
|
|
|
|
public virtual bool ShouldShowTimeArea(WindowState state)
|
|
{
|
|
return !state.IsEditingAnEmptyTimeline();
|
|
}
|
|
|
|
public abstract TimelineModeGUIState TrackState(WindowState state);
|
|
public abstract TimelineModeGUIState ToolbarState(WindowState state);
|
|
|
|
public virtual TimelineModeGUIState PreviewState(WindowState state)
|
|
{
|
|
return Application.isPlaying ? TimelineModeGUIState.Disabled : TimelineModeGUIState.Enabled;
|
|
}
|
|
|
|
public virtual TimelineModeGUIState EditModeButtonsState(WindowState state)
|
|
{
|
|
return TimelineModeGUIState.Enabled;
|
|
}
|
|
}
|
|
|
|
[Flags]
|
|
internal enum TimelineModes
|
|
{
|
|
None = 0,
|
|
Active = 1,
|
|
ReadOnly = 2,
|
|
Inactive = 4,
|
|
Disabled = 8,
|
|
AssetEdition = 16,
|
|
All = Active | ReadOnly | Inactive | Disabled,
|
|
Default = Active | AssetEdition
|
|
}
|
|
}
|