docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class TrackAction

    Base class for a track action. Inherit from this class to make an action that would react on selected tracks after a menu click and/or a key shortcut.

    Inheritance
    object
    TrackAction
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: UnityEditor.Timeline.Actions
    Assembly: Unity.Timeline.Editor.dll
    Syntax
    [ActiveInMode(TimelineModes.Default)]
    public abstract class TrackAction
    Remarks

    To add an action as a menu item in the Timeline context menu, add MenuEntryAttribute on the action class. To make an action to react to a shortcut, use the Shortcut Manager API with TimelineShortcutAttribute. ShortcutAttribute

    Examples

    Simple track Action example (with context menu and shortcut support).

    [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>();
        }
    }

    Methods

    Execute(IEnumerable<TrackAsset>)

    Execute the action.

    Declaration
    public abstract bool Execute(IEnumerable<TrackAsset> tracks)
    Parameters
    Type Name Description
    IEnumerable<TrackAsset> tracks

    Tracks that will be used for the action.

    Returns
    Type Description
    bool

    true if the action has been executed. false otherwise

    Validate(IEnumerable<TrackAsset>)

    Defines the validity of an Action for a given set of tracks.

    Declaration
    public abstract ActionValidity Validate(IEnumerable<TrackAsset> tracks)
    Parameters
    Type Name Description
    IEnumerable<TrackAsset> tracks

    tracks that the action would act on.

    Returns
    Type Description
    ActionValidity

    The validity of the set of tracks.

    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)