Name
XtRemoveEventHandler — remove a previously registered event handler.
Synopsis
void XtRemoveEventHandler(w, event_mask, nonmaskable, proc,
client_data)
Widget w;
EventMask event_mask;
Boolean nonmaskable;
XtEventHandler proc;
XtPointer client_data;
Arguments
wSpecifies the widget for which this handler is registered.
event_mask
Specifies the events for which to unregister this handler.
nonmaskable
Specifies a Boolean value that indicates whether this handler should be unregistered for nonmaskable events (GraphicsExpose, NoExpose, SelectionClear, SelectionRequest, SelectionNotify, ClientMessage, and MappingNotify).
procSpecifies the handler procedure to be removed.
client_data
Specifies the client data to match on the registered handler.
Description
XtRemoveEventHandler stops the specified procedure from being called in response to the specified events.
A handler is removed only if both the procedure proc and client_data match a previously registered handler/data pair. If a handler to be removed fails to match a procedure, or if it has been registered with a different value of client_data, XtRemoveEventHandler returns without reporting an error.
If the widget is realized, XtRemoveEventHandler calls XSelectInput, if necessary, to prevent the client from receiving further events of that type.
To keep an event handler from being called at all, call XtRemoveEventHandler with an event_mask of XtAllEvents with nonmaskable True, and the client_data registered in a previous call to XtAddEventHandler.
Structures
The event_mask is formed by combining the event mask symbols listed in the first column of the table below using the bitwise OR operator (|). Each mask symbol sets a bit in the event_mask.
The table also describes briefly the circumstances under which you would want to specify each symbol.
| Event Mask Symbol | Circumstances | |
| NoEventMask | No events | |
| KeyPressMask | Keyboard down events | |
| KeyReleaseMask | Keyboard up events | |
| ButtonPressMask | Pointer button down events | |
| ButtonReleaseMask | Pointer button up events | |
| EnterWindowMask | Pointer window entry events | |
| LeaveWindowMask | Pointer window leave events | |
| PointerMotionMask | All pointer motion events | |
| PointerMotionHintMask | Fewer pointer motion events | |
| Button1MotionMask | Pointer motion while button 1 down | |
| Button2MotionMask | Pointer motion while button 2 down | |
| Button3MotionMask | Pointer motion while button 3 down | |
| Button4MotionMask | Pointer motion while button 4 down | |
| Button5MotionMask | Pointer motion while button 5 down | |
| ButtonMotionMask | Pointer motion while any button down | |
| KeymapStateMask | Any keyboard state change on EnterNotify, | |
| LeaveNotify, FocusIn or FocusOut | ||
| ExposureMask | Any exposure (except GraphicsExpose and | |
| NoExpose) | ||
| VisibilityChangeMask | Any change in visibility | |
| StructureNotifyMask | Any change in window configuration. | |
| ResizeRedirectMask | Redirect resize of this window | |
| SubstructureNotifyMask | Notify about reconfiguration of children | |
| SubstructureRedirectMask | Redirect reconfiguration of children | |
| FocusChangeMask | Any change in keyboard focus | |
| PropertyChangeMask | Any change in property | |
| ColormapChangeMask | Any change in colormap | |
| OwnerGrabButtonMask | Modifies handling of pointer events |
See Appendix C, Event Reference, for more information on event types and masks.
See Also
XtAddEventHandler(1), XtRemoveRawEventHandler(1),
XtEventHandler(2).