# ShortcutAttribute

> Registers a static method as the action for an action shortcut.

## Definition

* **Type:** Class
* **Namespace:** [UnityEditor.ShortcutManagement](/engine/6000.3/script-reference/unityeditor/shortcutmanagement.md)
* **Assembly:** UnityEditor
* **Inherits from:** [ShortcutBaseAttribute](/engine/6000.3/script-reference/unityeditor/shortcutmanagement/shortcutbaseattribute.md)

```csharp
[AttributeUsage(AttributeTargets.Method, AllowMultiple = true)]
public class ShortcutAttribute : ShortcutBaseAttribute
```

## Remarks

An action shortcut triggers when the binding for the shortcut is pressed down. The method that this attribute is placed on must either take no arguments or take a single argument of type [ShortcutArguments](/engine/6000.3/script-reference/unityeditor/shortcutmanagement/shortcutarguments.md).

You can bind a [ClutchShortcutAttribute](/engine/6000.3/script-reference/unityeditor/shortcutmanagement/clutchshortcutattribute.md) and a [ShortcutAttribute](/engine/6000.3/script-reference/unityeditor/shortcutmanagement/shortcutattribute.md) to the same mouse button. In this case, the action shortcut triggers when the mouse button is released.

## Constructors

| Constructor                                                                                                                                                                                                                                                                                                    | Description                                                                                               |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| [ShortcutAttribute(System.String,System.Type)](/engine/6000.3/script-reference/unityeditor/shortcutmanagement/shortcutattribute/ctor.md#shortcutattribute\(string-type\))                                                                                                                                      | Creates an attribute for an *action shortcut* with an ID, optional context, and optional default binding. |
| [ShortcutAttribute(System.String,System.Type,System.String,UnityEngine.KeyCode,UnityEditor.ShortcutManagement.ShortcutModifiers)](/engine/6000.3/script-reference/unityeditor/shortcutmanagement/shortcutattribute/ctor.md#shortcutattribute\(string-type-string-keycode-shortcutmodifiers\))                  | Creates an attribute for an *action shortcut* with an ID, optional context, and optional default binding. |
| [ShortcutAttribute(System.String,System.Type,System.String,UnityEngine.KeyCode,UnityEditor.ShortcutManagement.ShortcutModifiers,System.Int32)](/engine/6000.3/script-reference/unityeditor/shortcutmanagement/shortcutattribute/ctor.md#shortcutattribute\(string-type-string-keycode-shortcutmodifiers-int\)) | Creates an attribute for an *action shortcut* with an ID, optional context, and optional default binding. |
| [ShortcutAttribute(System.String,System.Type,UnityEngine.KeyCode,UnityEditor.ShortcutManagement.ShortcutModifiers)](/engine/6000.3/script-reference/unityeditor/shortcutmanagement/shortcutattribute/ctor.md#shortcutattribute\(string-type-keycode-shortcutmodifiers\))                                       | Creates an attribute for an *action shortcut* with an ID, optional context, and optional default binding. |
| [ShortcutAttribute(System.String,UnityEngine.KeyCode,UnityEditor.ShortcutManagement.ShortcutModifiers)](/engine/6000.3/script-reference/unityeditor/shortcutmanagement/shortcutattribute/ctor.md#shortcutattribute\(string-keycode-shortcutmodifiers\))                                                        | Creates an attribute for an *action shortcut* with an ID, optional context, and optional default binding. |

## Properties

| Property                                                                                                       | Description                                                                                    |
| -------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| [displayName](/engine/6000.3/script-reference/unityeditor/shortcutmanagement/shortcutattribute/displayname.md) | Optional override of the Shortcut ID when listing the Shortcut in the configuration interface. |

## Inheritance

**Inherited Members:**

* [Attribute.GetCustomAttributes(MemberInfo, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-memberinfo-system-type\))
* [Attribute.GetCustomAttributes(MemberInfo, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-memberinfo-system-type-system-boolean\))
* [Attribute.GetCustomAttributes(MemberInfo)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-memberinfo\))
* [Attribute.GetCustomAttributes(MemberInfo, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-memberinfo-system-boolean\))
* [Attribute.IsDefined(MemberInfo, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.isdefined#system-attribute-isdefined\(system-reflection-memberinfo-system-type\))
* [Attribute.IsDefined(MemberInfo, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.isdefined#system-attribute-isdefined\(system-reflection-memberinfo-system-type-system-boolean\))
* [Attribute.GetCustomAttribute(MemberInfo, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattribute#system-attribute-getcustomattribute\(system-reflection-memberinfo-system-type\))
* [Attribute.GetCustomAttribute(MemberInfo, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattribute#system-attribute-getcustomattribute\(system-reflection-memberinfo-system-type-system-boolean\))
* [Attribute.GetCustomAttributes(ParameterInfo)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-parameterinfo\))
* [Attribute.GetCustomAttributes(ParameterInfo, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-parameterinfo-system-type\))
* [Attribute.GetCustomAttributes(ParameterInfo, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-parameterinfo-system-type-system-boolean\))
* [Attribute.GetCustomAttributes(ParameterInfo, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-parameterinfo-system-boolean\))
* [Attribute.IsDefined(ParameterInfo, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.isdefined#system-attribute-isdefined\(system-reflection-parameterinfo-system-type\))
* [Attribute.IsDefined(ParameterInfo, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.isdefined#system-attribute-isdefined\(system-reflection-parameterinfo-system-type-system-boolean\))
* [Attribute.GetCustomAttribute(ParameterInfo, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattribute#system-attribute-getcustomattribute\(system-reflection-parameterinfo-system-type\))
* [Attribute.GetCustomAttribute(ParameterInfo, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattribute#system-attribute-getcustomattribute\(system-reflection-parameterinfo-system-type-system-boolean\))
* [Attribute.GetCustomAttributes(Module, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-module-system-type\))
* [Attribute.GetCustomAttributes(Module)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-module\))
* [Attribute.GetCustomAttributes(Module, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-module-system-boolean\))
* [Attribute.GetCustomAttributes(Module, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-module-system-type-system-boolean\))
* [Attribute.IsDefined(Module, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.isdefined#system-attribute-isdefined\(system-reflection-module-system-type\))
* [Attribute.IsDefined(Module, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.isdefined#system-attribute-isdefined\(system-reflection-module-system-type-system-boolean\))
* [Attribute.GetCustomAttribute(Module, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattribute#system-attribute-getcustomattribute\(system-reflection-module-system-type\))
* [Attribute.GetCustomAttribute(Module, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattribute#system-attribute-getcustomattribute\(system-reflection-module-system-type-system-boolean\))
* [Attribute.GetCustomAttributes(Assembly, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-assembly-system-type\))
* [Attribute.GetCustomAttributes(Assembly, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-assembly-system-type-system-boolean\))
* [Attribute.GetCustomAttributes(Assembly)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-assembly\))
* [Attribute.GetCustomAttributes(Assembly, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattributes#system-attribute-getcustomattributes\(system-reflection-assembly-system-boolean\))
* [Attribute.IsDefined(Assembly, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.isdefined#system-attribute-isdefined\(system-reflection-assembly-system-type\))
* [Attribute.IsDefined(Assembly, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.isdefined#system-attribute-isdefined\(system-reflection-assembly-system-type-system-boolean\))
* [Attribute.GetCustomAttribute(Assembly, Type)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattribute#system-attribute-getcustomattribute\(system-reflection-assembly-system-type\))
* [Attribute.GetCustomAttribute(Assembly, Type, bool)](https://learn.microsoft.com/dotnet/api/system.attribute.getcustomattribute#system-attribute-getcustomattribute\(system-reflection-assembly-system-type-system-boolean\))
* [Attribute.Equals(Object)](https://learn.microsoft.com/dotnet/api/system.attribute.equals)
* [Attribute.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.attribute.gethashcode)
* [Attribute.Match(Object)](https://learn.microsoft.com/dotnet/api/system.attribute.match)
* [Attribute.IsDefaultAttribute()](https://learn.microsoft.com/dotnet/api/system.attribute.isdefaultattribute)
* [Attribute.TypeId()](https://learn.microsoft.com/dotnet/api/system.attribute.typeid)
