 |
Index for Section 3X11 |
|
 |
Alphabetical listing for X |
|
 |
Bottom of page |
|
XAnyEvent(3X11)
X11R6
NAME
XAnyEvent, XEvent - generic X event structures
DESCRIPTION
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(3X11), XCreateWindowEvent(3X11), XCirculateEvent(3X11),
XCirculateRequestEvent(3X11), XColormapEvent(3X11), XConfigureEvent(3X11),
XConfigureRequestEvent(3X11), XCrossingEvent(3X11),
XDestroyWindowEvent(3X11), XErrorEvent(3X11), XExposeEvent(3X11),
XFocusChangeEvent(3X11), XGraphicsExposeEvent(3X11), XGravityEvent(3X11),
XKeymapEvent(3X11), XMapEvent(3X11), XMapRequestEvent(3X11),
XPropertyEvent(3X11), XReparentEvent(3X11), XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11), XSelectionEvent(3X11),
XSelectionRequestEvent(3X11), XUnmapEvent(3X11), XVisibilityEvent(3X11)
Xlib -- C Language X Interface
 |
Index for Section 3X11 |
|
 |
Alphabetical listing for X |
|
 |
Top of page |
|