Trigger Variants — Multiple Actions Per Button¶
Trigger Variants let you assign different actions to the same button depending on how the user interacts with it.
Instead of two buttons ("Shade Smooth" and "Shade Flat"), you can have one button that does both: - Normal click → Shade Smooth - Shift + click → Shade Flat
How to Add a Trigger Variant¶
- Select a button.
- In the button editor, find Trigger Variants and click +.
- Set the Trigger type.
- Configure the action for that trigger (same fields as a normal button — Type, Operator, etc.).
You can add multiple variants to the same button.
Available Triggers¶
Modifier Key Triggers¶
| Trigger | Activated by |
|---|---|
NONE |
Normal click (the default action) |
SHIFT_CLICK |
Shift + click |
CTRL_CLICK |
Ctrl + click |
ALT_CLICK |
Alt + click |
SHIFT_CTRL_CLICK |
Shift + Ctrl + click |
SHIFT_ALT_CLICK |
Shift + Alt + click |
CTRL_ALT_CLICK |
Ctrl + Alt + click |
Key Hold Trigger¶
| Trigger | Activated by |
|---|---|
KEY_HOLD |
While the shortcut key is held down (spring-loaded mode) |
Drag Triggers¶
| Trigger | Activated by |
|---|---|
DRAG_UP |
Drag mouse upward on the button |
DRAG_DOWN |
Drag mouse downward |
DRAG_LEFT |
Drag mouse left |
DRAG_RIGHT |
Drag mouse right |
CTRL_DRAG_UP |
Ctrl + drag up |
CTRL_DRAG_DOWN |
Ctrl + drag down |
CTRL_DRAG_LEFT |
Ctrl + drag left |
CTRL_DRAG_RIGHT |
Ctrl + drag right |
SHIFT_DRAG_UP |
Shift + drag up |
SHIFT_DRAG_DOWN |
Shift + drag down |
| (40+ combinations) |
Practical Examples¶
Shade Smooth / Shade Flat on one button¶
Button label: Shading
Default (NONE): OPERATOR object.shade_smooth
SHIFT_CLICK variant: OPERATOR object.shade_flat
Extrude with modifier options¶
Button label: Extrude
Default (NONE): OPERATOR mesh.extrude_region_move
SHIFT_CLICK variant: OPERATOR mesh.extrude_faces_indiv
CTRL_CLICK variant: OPERATOR mesh.extrude_edges_indiv
Drag to change a value¶
Button label: Brush Size
Default (NONE): PROPERTY context.tool_settings.sculpt.brush.size
DRAG_UP variant: OPERATOR brush.set_size (larger)
DRAG_DOWN variant: OPERATOR brush.set_size (smaller)
Tip
Triggers are especially useful in Pie Menus where you want to pack maximum functionality into a small number of buttons. One button with 4 drag variants effectively gives you 5 actions in the space of 1.