Provided by: libx11-doc_1.8.1-2_all bug

NAME

       XAnyEvent, XEvent - generic X event structures

STRUCTURES

       All the event structures declared in <X11/Xlib.h> have the following common members:
       typedef struct {
               int type;
               unsigned long serial;   /* # of last request processed by server */
               Bool send_event;        /* true if this came from a SendEvent request */
               Display *display;       /* Display the event was read from */
               Window window;
       } XAnyEvent;

       The  type  member is set to the event type constant name that uniquely identifies it.  For
       example, when the X server reports a GraphicsExpose event  to  a  client  application,  it
       sends  an  XGraphicsExposeEvent structure with the type member set to GraphicsExpose.  The
       display member is set to a pointer to the display the event was read on.   The  send_event
       member  is  set  to  True if the event came from a SendEvent protocol request.  The serial
       member is set from the serial number reported in the protocol but expanded from the 16-bit
       least-significant  bits  to  a  full 32-bit value.  The window member is set to the window
       that is most useful to toolkit dispatchers.

       The XEvent structure is a union of the individual structures declared for each event type:
       typedef union _XEvent {
               int type;       /* must not be changed */
               XAnyEvent xany;
               XKeyEvent xkey;
               XButtonEvent xbutton;
               XMotionEvent xmotion;
               XCrossingEvent xcrossing;
               XFocusChangeEvent xfocus;
               XExposeEvent xexpose;
               XGraphicsExposeEvent xgraphicsexpose;
               XNoExposeEvent xnoexpose;
               XVisibilityEvent xvisibility;
               XCreateWindowEvent xcreatewindow;
               XDestroyWindowEvent xdestroywindow;
               XUnmapEvent xunmap;
               XMapEvent xmap;
               XMapRequestEvent xmaprequest;
               XReparentEvent xreparent;
               XConfigureEvent xconfigure;
               XGravityEvent xgravity;
               XResizeRequestEvent xresizerequest;
               XConfigureRequestEvent xconfigurerequest;
               XCirculateEvent xcirculate;
               XCirculateRequestEvent xcirculaterequest;
               XPropertyEvent xproperty;
               XSelectionClearEvent xselectionclear;
               XSelectionRequestEvent xselectionrequest;
               XSelectionEvent xselection;
               XColormapEvent xcolormap;
               XClientMessageEvent xclient;
               XMappingEvent xmapping;
               XErrorEvent xerror;
               XKeymapEvent xkeymap;
               long pad[24];
       } XEvent;

       An XEvent structure's first entry always is the type member, which is  set  to  the  event
       type.   The  second  member  always  is  the  serial  number  of the protocol request that
       generated the event.  The third  member  always  is  send_event,  which  is  a  Bool  that
       indicates  if  the  event  was  sent by a different client.  The fourth member always is a
       display, which is the display that the event was read from.  Except for keymap events, the
       fifth member always is a window, which has been carefully selected to be useful to toolkit
       dispatchers.  To avoid breaking toolkits, the order of these first five entries is not  to
       change.   Most  events  also  contain  a  time member, which is the time at which an event
       occurred.  In addition, a pointer to the generic event must be cast before it is  used  to
       access any other information in the structure.

SEE ALSO

       XButtonEvent(3),   XCreateWindowEvent(3),  XCirculateEvent(3),  XCirculateRequestEvent(3),
       XColormapEvent(3),   XConfigureEvent(3),   XConfigureRequestEvent(3),   XCrossingEvent(3),
       XDestroyWindowEvent(3),     XErrorEvent(3),     XExposeEvent(3),     XFocusChangeEvent(3),
       XGraphicsExposeEvent(3),      XGravityEvent(3),       XKeymapEvent(3),       XMapEvent(3),
       XMapRequestEvent(3),    XPropertyEvent(3),    XReparentEvent(3),   XResizeRequestEvent(3),
       XSelectionClearEvent(3),  XSelectionEvent(3),  XSelectionRequestEvent(3),  XUnmapEvent(3),
       XVisibilityEvent(3)
       Xlib - C Language X Interface