Shift-click buttons


Is there a way to create a UI button that will recognize if ‘shift’ or ‘ctrl’ is pressed when it is clicked, then executes a different command than if the button is just clicked?



No, but you can use the middle mouse button, on its own or combined with shift, control and shift/control.

Use the -dragCallback flag (available with mostly all ui controls) and define a procedure that will be the -dragCallback command

the proc has to have the following arguments: (string $drag, int $x, int $y, int $mods)

$drag is path to ui element, $x and $y are mouse position, and $mods is whether control and shift are pressed. You dont need to worry about any of these inside the actual proc

So for example

button -dragCallback mmbCommand;

global proc mmbCommand(string $drag, int $x, int $y, int $mods)
{print "hello";}


This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.