FTrackEditorInspector.cs 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. using UnityEngine;
  2. using UnityEditor;
  3. using System;
  4. using System.Collections.Generic;
  5. using Flux;
  6. namespace FluxEditor
  7. {
  8. [Serializable]
  9. public class FTrackEditorInspector : FEditorInspector<FTrackEditor, FTrack> {
  10. public override string Title {
  11. get {
  12. if( _editors.Count == 1 )
  13. return "Track:";
  14. return "Tracks:";
  15. }
  16. }
  17. public FTrackEditorInspector()
  18. {
  19. }
  20. protected override FMultiTypeInspector<FTrack> CreateMultiTypeInspector()
  21. {
  22. FMultiTypeInspector<FTrack> multiTypeInspector = FMultiTrackInspector.CreateInstance<FMultiTrackInspector>();
  23. multiTypeInspector.SetObjects( _objects.ToArray() );
  24. return multiTypeInspector;
  25. }
  26. public override void OnInspectorGUI( float contentWidth )
  27. {
  28. base.OnInspectorGUI(contentWidth);
  29. if( _editors.Count == 1 && _editors[0].HasTools() )
  30. {
  31. GUILayout.Space( 10 );
  32. EditorGUILayout.BeginVertical(EditorStyles.textArea, GUILayout.Width(contentWidth));
  33. EditorGUILayout.LabelField("Track Tools:", EditorStyles.boldLabel);
  34. _editors[0].OnToolsGUI();
  35. EditorGUILayout.EndVertical();
  36. }
  37. }
  38. public override void Refresh()
  39. {
  40. base.Refresh();
  41. if( _inspector != null && _inspector is FTrackInspector )
  42. {
  43. ((FTrackInspector)_inspector).ShowEvents = false;
  44. }
  45. }
  46. }
  47. }