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 struc-
ture 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;
events, the fifth member always is a window, which has been carefully
selected to be useful to toolkit dispatchers. To avoid breaking tool-
kits, 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(3X11), XCreateWindowEvent(3X11), XCirculateEvent(3X11),
XCirculateRequestEvent(3X11), XColormapEvent(3X11), XConfig-
ureEvent(3X11), XConfigureRequestEvent(3X11), XCrossingEvent(3X11),
XDestroyWindowEvent(3X11), XErrorEvent(3X11), XExposeEvent(3X11), XFo-
cusChangeEvent(3X11), XGraphicsExposeEvent(3X11), XGravityEvent(3X11),
XKeymapEvent(3X11), XMapEvent(3X11), XMapRequestEvent(3X11), XProper-
tyEvent(3X11), XReparentEvent(3X11), XResizeRequestEvent(3X11), XSelec-
tionClearEvent(3X11), XSelectionEvent(3X11), XSelectionRe-
questEvent(3X11), XUnmapEvent(3X11), XVisibilityEvent(3X11)
Xlib - C Language X Interface
X Version 11 Release 6.6 XAnyEvent(3X11)
Man(1) output converted with
man2html
|