GNU Info

Info Node: (gpm.info)Event Types

(gpm.info)Event Types


Next: Connection Details Prev: Margins Up: Gpm Internals
Enter node , (file) or (file)node

Event Types
===========

   The `type' field in `Gpm_Event' is made up of bit-wide flags. The
existing bit masks belong to two groups: bare events and cooked events.
The bit-mask `GPM_BARE_EVENTS' is provided to extract bare events, by
and-ing (`&') it with the `type' field.  For any event, exactly one bit
will be set in the resulting bitmask.

   Bare events are the following:

`GPM_MOVE'
     A motion event, with all buttons up.

`GPM_DRAG'
     A motion event, but one or more buttons are kept pressed.

`GPM_DOWN'
     A button press event. The `buttons' field will report which
     buttons are pressed after the event.

`GPM_UP'
     A button release event. The `buttons' field will report which
     buttons are being released. Note that this is different from the
     previous case.

`GPM_ENTER'
     This means "enter in the current Region of Interest", and such
     event can only happen if the high-level library is used.  When the
     type is `GPM_ENTER', all the other fields are undefined.  Note:
     High Level Lib.

`GPM_LEAVE'
     This is only delivered by the high level library, too. Events of
     type `GPM_LEAVE' have all other fields undefined.

   Cooked events are the following:

`GPM_SINGLE'
     This bit may be set at button-press, drag and button release
     events, and can be used to identify a single press. The time
     interval used to choose a double click from two single clicks is
     set by a parameter in the daemon (configurable at daemon
     invocation).

`GPM_DOUBLE'
     Used to identify a double click (press, drag, release)

`GPM_TRIPLE'
     Used to identify a triple click (press, drag, release)

`GPM_MFLAG'
     The "motion flag" is true if some dragging happened between
     button-press and button-release. It can be used by those
     applications which respond to events at button release.  It is
     available at drag and release.


automatically generated by info2www version 1.2.2.9