the first mouse button.
the second mouse button.
the third mouse button.
the fourth mouse button.
the fifth mouse button.
the Control key.
the Hyper modifier. Since 2.10
a Lock key (depending on the modifier mapping of the X server this may either be CapsLock or ShiftLock).
the Meta modifier. Since 2.10
the fourth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier, but normally it is the Alt key).
the fifth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).
the sixth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).
the seventh modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).
the eighth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).
a mask covering all modifier types.
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
A reserved bit flag; do not use in your own code
not used in GDK itself. GTK+ uses it to differentiate between (keyval, modifiers) pairs from key press and release events.
the Shift key.
the Super modifier. Since 2.10
A set of bit-flags to indicate the state of modifier keys and mouse buttons in various event types. Typical modifier keys are Shift, Control, Meta, Super, Hyper, Alt, Compose, Apple, CapsLock or ShiftLock.
Like the X Window System, GDK supports 8 modifier keys and 5 mouse buttons.
Since 2.10, GDK recognizes which of the Meta, Super or Hyper keys are mapped to Mod2 - Mod5, and indicates this by setting %GDK_SUPER_MASK, %GDK_HYPER_MASK or %GDK_META_MASK in the state field of key events.
Note that GDK may add internal values to events which include reserved values such as %GDK_MODIFIER_RESERVED_13_MASK. Your code should preserve and ignore them. You can use %GDK_MODIFIER_MASK to remove all reserved values.
Also note that the GDK X backend interprets button press events for button 4-7 as scroll events, so %GDK_BUTTON4_MASK and %GDK_BUTTON5_MASK will never be set.