| using System; |
| using System.Collections.Generic; |
| using UnityEditor.ShortcutManagement; |
| using UnityEditor.Timeline.Actions; |
| using UnityEngine; |
| using UnityEngine.Timeline; |
|
|
| namespace DocCodeExamples |
| { |
| class ActionExamples_HideAPI |
| { |
| #region declare-sampleClipAction |
|
|
| [MenuEntry("Custom Actions/Sample clip Action")] |
| public class SampleClipAction : ClipAction |
| { |
| public override ActionValidity Validate(IEnumerable<TimelineClip> clip) |
| { |
| return ActionValidity.Valid; |
| } |
|
|
| public override bool Execute(IEnumerable<TimelineClip> items) |
| { |
| Debug.Log("Test Action"); |
| return true; |
| } |
|
|
| [TimelineShortcut("SampleClipAction", KeyCode.K)] |
| public static void HandleShortCut(ShortcutArguments args) |
| { |
| Invoker.InvokeWithSelectedClips<SampleClipAction>(); |
| } |
| } |
|
|
| #endregion |
|
|
| #region declare-sampleMarkerAction |
|
|
| [MenuEntry("Custom Actions/Sample marker Action")] |
| public class SampleMarkerAction : MarkerAction |
| { |
| public override ActionValidity Validate(IEnumerable<IMarker> markers) |
| { |
| return ActionValidity.Valid; |
| } |
|
|
| public override bool Execute(IEnumerable<IMarker> items) |
| { |
| Debug.Log("Test Action"); |
| return true; |
| } |
|
|
| [TimelineShortcut("SampleMarkerAction", KeyCode.L)] |
| public static void HandleShortCut(ShortcutArguments args) |
| { |
| Invoker.InvokeWithSelectedMarkers<SampleMarkerAction>(); |
| } |
| } |
|
|
| #endregion |
|
|
| #region declare-sampleTrackAction |
|
|
| [MenuEntry("Custom Actions/Sample track Action")] |
| public class SampleTrackAction : TrackAction |
| { |
| public override ActionValidity Validate(IEnumerable<TrackAsset> tracks) |
| { |
| return ActionValidity.Valid; |
| } |
|
|
| public override bool Execute(IEnumerable<TrackAsset> tracks) |
| { |
| Debug.Log("Test Action"); |
| return true; |
| } |
|
|
| [TimelineShortcut("SampleTrackAction", KeyCode.H)] |
| public static void HandleShortCut(ShortcutArguments args) |
| { |
| Invoker.InvokeWithSelectedTracks<SampleTrackAction>(); |
| } |
| } |
|
|
| #endregion |
|
|
| #region declare-sampleTimelineAction |
|
|
| [MenuEntry("Custom Actions/Sample Timeline Action")] |
| public class SampleTimelineAction : TimelineAction |
| { |
| public override ActionValidity Validate(ActionContext context) |
| { |
| return ActionValidity.Valid; |
| } |
|
|
| public override bool Execute(ActionContext context) |
| { |
| Debug.Log("Test Action"); |
| return true; |
| } |
|
|
| [TimelineShortcut("SampleTimelineAction", KeyCode.Q)] |
| public static void HandleShortCut(ShortcutArguments args) |
| { |
| Invoker.InvokeWithSelected<SampleTimelineAction>(); |
| } |
| } |
|
|
| #endregion |
| } |
| } |
|
|