Geen omschrijving
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

TrackDrawer.cs 1.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. using System;
  2. using UnityEngine;
  3. using UnityEngine.Timeline;
  4. namespace UnityEditor.Timeline
  5. {
  6. class TrackDrawer : GUIDrawer
  7. {
  8. internal WindowState sequencerState { get; set; }
  9. public static TrackDrawer CreateInstance(TrackAsset trackAsset)
  10. {
  11. if (trackAsset == null)
  12. return Activator.CreateInstance<TrackDrawer>();
  13. TrackDrawer drawer;
  14. try
  15. {
  16. drawer = (TrackDrawer)Activator.CreateInstance(TimelineHelpers.GetCustomDrawer(trackAsset.GetType()));
  17. }
  18. catch (Exception)
  19. {
  20. drawer = Activator.CreateInstance<TrackDrawer>();
  21. }
  22. drawer.track = trackAsset;
  23. return drawer;
  24. }
  25. protected TrackAsset track { get; private set; }
  26. public virtual bool HasCustomTrackHeaderButton()
  27. {
  28. return false;
  29. }
  30. public virtual void DrawTrackHeaderButton(Rect rect, WindowState state) { }
  31. public virtual bool DrawTrack(Rect trackRect, TrackAsset trackAsset, Vector2 visibleTime, WindowState state)
  32. {
  33. return false;
  34. }
  35. public virtual void DrawRecordingBackground(Rect trackRect, TrackAsset trackAsset, Vector2 visibleTime, WindowState state)
  36. {
  37. EditorGUI.DrawRect(trackRect, DirectorStyles.Instance.customSkin.colorTrackBackgroundRecording);
  38. }
  39. }
  40. }