# ClutchShortcutAttribute

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

## Definition

* **Type:** Class
* **Namespace:** [UnityEditor.ShortcutManagement](/engine/6000.7/script-reference/unityeditor/shortcutmanagement.md)
* **Assembly:** UnityEditor.CoreModule
* **Inherits from:** [ShortcutAttribute](/engine/6000.7/script-reference/unityeditor/shortcutmanagement/shortcutattribute.md)

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

## Remarks

A clutch shortcut is triggered when the user presses the key binding for the shortcut and also when the user releases the key. The method on which this attribute is placed must take a single argument of type [ShortcutArguments](/engine/6000.7/script-reference/unityeditor/shortcutmanagement/shortcutarguments.md).

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

## Constructors

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

## Inheritance

**Inherited Members:**

* [ShortcutAttribute.displayName](/engine/6000.7/script-reference/unityeditor/shortcutmanagement/shortcutattribute/displayname.md)
* [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)
