BUTTON%
Syntax |
BUTTON% (flag) |
Location |
KMOUSE, MOUSE (DIY Toolkit - Vol I), Amiga QDOS v3.20+ |
This function can be used to find out if any mouse buttons have been pressed and if so which ones. Unfortunately, you cannot use this to find out if a button has been pressed twice quickly in succession (known as double-clicking).
The value of flag is used to tell the function which buttons you wish to interrogate:
0 - Has any key been pressed ? If so, the value returned will be 0 plus the following numbers if the relevant key(s) has been pressed:
+1 - Button One Pressed
+2 - Button Two Pressed
+4 - Button Three Pressed
1 - Has Button One been pressed (this is the left hand mouse button)? If so 1 is returned, otherwise 0.
2 - Has Button Two been pressed (this is the right hand mouse button)? If so, 1 is returned, otherwise 0.
3 - Has Button Three been pressed (this is the middle mouse button)? If so, 1 is returned, otherwise 0.
Example
A routine to wait for the user to press the right and left mouse button at the same time:
100 DEFine PROCedure WAIT_MOUSE
110 REPeat mloop
120 IF BUTTON%(0)=1+2:RETurn
130 END REPeat mloop
140 END DEFine
CROSS-REFERENCE
X_PTR%, Y_PTR% and PTR_FN% can also be used to interrogate the mouse.