AG_KeyMod
—
agar key modifier definitions
#include <agar/core.h>
#include <agar/gui.h>
The AG_KeyMod
type describes a modifier key (or the
state of all modifier keys); it is defined as:
typedef unsigned int AG_KeyMod;
#define AG_KEYMOD_NONE 0x0000
#define AG_KEYMOD_LSHIFT 0x0001
#define AG_KEYMOD_RSHIFT 0x0002
#define AG_KEYMOD_LCTRL 0x0040
#define AG_KEYMOD_RCTRL 0x0080
#define AG_KEYMOD_LALT 0x0100
#define AG_KEYMOD_RALT 0x0200
#define AG_KEYMOD_LMETA 0x0400
#define AG_KEYMOD_RMETA 0x0800
#define AG_KEYMOD_NUMLOCK 0x1000
#define AG_KEYMOD_CAPSLOCK 0x2000
#define AG_KEYMOD_MODE 0x4000
#define AG_KEYMOD_ANY 0xffff
#define AG_KEYMOD_CTRL (AG_KEYMOD_LCTRL|AG_KEYMOD_RCTRL)
#define AG_KEYMOD_SHIFT (AG_KEYMOD_LSHIFT|AG_KEYMOD_RSHIFT)
#define AG_KEYMOD_ALT (AG_KEYMOD_LALT|AG_KEYMOD_RALT)
#define AG_KEYMOD_META (AG_KEYMOD_LMETA|AG_KEYMOD_RMETA)
The method of accessing key modifier states (and the related
translation from native scancodes to AG_KeyMod
) is
driver-specific.
The AG_KeyMod
type first appeared in Agar 1.4. The
bitmasks match those of SDL-1.2
(https://libsdl.org/).