SignalAssetInspector.cs 1008 B

12345678910111213141516171819202122232425262728
  1. using JetBrains.Annotations;
  2. using UnityEngine;
  3. using UnityEngine.Timeline;
  4. namespace UnityEditor.Timeline.Signals
  5. {
  6. [CustomEditor(typeof(SignalAsset))]
  7. class SignalAssetInspector : Editor
  8. {
  9. [MenuItem("Assets/Create/Signal", false, 451)]
  10. [UsedImplicitly]
  11. public static void CreateNewSignal()
  12. {
  13. var icon = EditorGUIUtility.IconContent("SignalAsset Icon").image as Texture2D;
  14. ProjectWindowUtil.StartNameEditingIfProjectWindowExists(0, CreateInstance<DoCreateSignalAsset>(), "New Signal.signal", icon, null);
  15. }
  16. class DoCreateSignalAsset : ProjectWindowCallback.EndNameEditAction
  17. {
  18. public override void Action(int instanceId, string pathName, string resourceFile)
  19. {
  20. var signalAsset = CreateInstance<SignalAsset>();
  21. AssetDatabase.CreateAsset(signalAsset, pathName);
  22. ProjectWindowUtil.ShowCreatedAsset(signalAsset);
  23. }
  24. }
  25. }
  26. }