NAME
Tk_CreateEventHandler, Tk_DeleteEventHandler - associate
procedure callback with an X event
SYNOPSIS
#include <tk.h>
Tk_CreateEventHandler(tkwin, mask, proc, clientData)
Tk_DeleteEventHandler(tkwin, mask, proc, clientData)
ARGUMENTS
Tk_Window tkwin (in) Token for window in
which events may
occur.
unsigned long mask (in) Bit-mask of events
(such as Button
PressMask) for
which proc should
be called.
Tk_EventProc *proc (in) Procedure to invoke
whenever an event
in mask occurs in
the window given by
tkwin.
ClientData clientData (in) Arbitrary one-word
value to pass to
proc.
_________________________________________________________________
DESCRIPTION
Tk_CreateEventHandler arranges for proc to be invoked in
the future whenever one of the event types specified by
mask occurs in the window specified by tkwin. The call
back to proc will be made by Tk_HandleEvent; this mecha
nism only works in programs that dispatch events through
Tk_HandleEvent (or through other Tk procedures that call
Tk_HandleEvent, such as Tk_DoOneEvent or Tk_MainLoop).
Proc should have arguments and result that match the type
Tk_EventProc:
typedef void Tk_EventProc(
ClientData clientData,
XEvent *eventPtr);
The clientData parameter to proc is a copy of the client
Data argument given to Tk_CreateEventHandler when the
callback was created. Typically, clientData points to a
data structure containing application-specific information
a pointer to the X event, which will be one of the ones
specified in the mask argument to Tk_CreateEventHandler.
Tk_DeleteEventHandler may be called to delete a previ
ously-created event handler: it deletes the first handler
it finds that is associated with tkwin and matches the
mask, proc, and clientData arguments. If no such handler
exists, then Tk_HandleEvent returns without doing any
thing. Although Tk supports it, it's probably a bad idea
to have more than one callback with the same mask, proc,
and clientData arguments. When a window is deleted all of
its handlers will be deleted automatically; in this case
there is no need to call Tk_DeleteEventHandler.
If multiple handlers are declared for the same type of X
event on the same window, then the handlers will be
invoked in the order they were created.
KEYWORDS
bind, callback, event, handler
Man(1) output converted with
man2html