1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- using System;
- using UnityEngine;
- using UnityEngine.Timeline;
- namespace UnityEditor.Timeline
- {
- class TrackDrawer : GUIDrawer
- {
- internal WindowState sequencerState { get; set; }
- public static TrackDrawer CreateInstance(TrackAsset trackAsset)
- {
- if (trackAsset == null)
- return Activator.CreateInstance<TrackDrawer>();
- TrackDrawer drawer;
- try
- {
- drawer = (TrackDrawer)Activator.CreateInstance(TimelineHelpers.GetCustomDrawer(trackAsset.GetType()));
- }
- catch (Exception)
- {
- drawer = Activator.CreateInstance<TrackDrawer>();
- }
- drawer.track = trackAsset;
- return drawer;
- }
- protected TrackAsset track { get; private set; }
- public virtual bool HasCustomTrackHeaderButton()
- {
- return false;
- }
- public virtual void DrawTrackHeaderButton(Rect rect, WindowState state) { }
- public virtual bool DrawTrack(Rect trackRect, TrackAsset trackAsset, Vector2 visibleTime, WindowState state)
- {
- return false;
- }
- public virtual void DrawRecordingBackground(Rect trackRect, TrackAsset trackAsset, Vector2 visibleTime, WindowState state)
- {
- EditorGUI.DrawRect(trackRect, DirectorStyles.Instance.customSkin.colorTrackBackgroundRecording);
- }
- }
- }
|