A game about forced loneliness, made by TACStudios
1using System;
2using System.Collections.Generic;
3using UnityEditor.ShortcutManagement;
4using UnityEditor.Timeline.Actions;
5using UnityEngine;
6using UnityEngine.Timeline;
7
8namespace DocCodeExamples
9{
10 class ActionExamples_HideAPI
11 {
12 #region declare-sampleClipAction
13
14 [MenuEntry("Custom Actions/Sample clip Action")]
15 public class SampleClipAction : ClipAction
16 {
17 public override ActionValidity Validate(IEnumerable<TimelineClip> clip)
18 {
19 return ActionValidity.Valid;
20 }
21
22 public override bool Execute(IEnumerable<TimelineClip> items)
23 {
24 Debug.Log("Test Action");
25 return true;
26 }
27
28 [TimelineShortcut("SampleClipAction", KeyCode.K)]
29 public static void HandleShortCut(ShortcutArguments args)
30 {
31 Invoker.InvokeWithSelectedClips<SampleClipAction>();
32 }
33 }
34
35 #endregion
36
37 #region declare-sampleMarkerAction
38
39 [MenuEntry("Custom Actions/Sample marker Action")]
40 public class SampleMarkerAction : MarkerAction
41 {
42 public override ActionValidity Validate(IEnumerable<IMarker> markers)
43 {
44 return ActionValidity.Valid;
45 }
46
47 public override bool Execute(IEnumerable<IMarker> items)
48 {
49 Debug.Log("Test Action");
50 return true;
51 }
52
53 [TimelineShortcut("SampleMarkerAction", KeyCode.L)]
54 public static void HandleShortCut(ShortcutArguments args)
55 {
56 Invoker.InvokeWithSelectedMarkers<SampleMarkerAction>();
57 }
58 }
59
60 #endregion
61
62 #region declare-sampleTrackAction
63
64 [MenuEntry("Custom Actions/Sample track Action")]
65 public class SampleTrackAction : TrackAction
66 {
67 public override ActionValidity Validate(IEnumerable<TrackAsset> tracks)
68 {
69 return ActionValidity.Valid;
70 }
71
72 public override bool Execute(IEnumerable<TrackAsset> tracks)
73 {
74 Debug.Log("Test Action");
75 return true;
76 }
77
78 [TimelineShortcut("SampleTrackAction", KeyCode.H)]
79 public static void HandleShortCut(ShortcutArguments args)
80 {
81 Invoker.InvokeWithSelectedTracks<SampleTrackAction>();
82 }
83 }
84
85 #endregion
86
87 #region declare-sampleTimelineAction
88
89 [MenuEntry("Custom Actions/Sample Timeline Action")]
90 public class SampleTimelineAction : TimelineAction
91 {
92 public override ActionValidity Validate(ActionContext context)
93 {
94 return ActionValidity.Valid;
95 }
96
97 public override bool Execute(ActionContext context)
98 {
99 Debug.Log("Test Action");
100 return true;
101 }
102
103 [TimelineShortcut("SampleTimelineAction", KeyCode.Q)]
104 public static void HandleShortCut(ShortcutArguments args)
105 {
106 Invoker.InvokeWithSelected<SampleTimelineAction>();
107 }
108 }
109
110 #endregion
111 }
112}