Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
Tk_CreateEventHandler(3)     Tk	Library	Procedures    Tk_CreateEventHandler(3)


       Tk_CreateEventHandler,	Tk_DeleteEventHandler  -  associate  procedure
       callback	with an	X event

       #include	<tk.h>

       Tk_CreateEventHandler(tkwin, mask, proc,	clientData)

       Tk_DeleteEventHandler(tkwin, mask, proc,	clientData)

       Tk_Window tkwin (in)		      Token for	window in which	events
					      may occur.

       unsigned	long mask (in)		      Bit-mask of events (such as But-
					      tonPressMask)  for  which	  proc
					      should be	called.

       Tk_EventProc *proc (in)		      Procedure	 to invoke whenever an
					      event in mask occurs in the win-
					      dow given	by tkwin.

       ClientData clientData (in)	      Arbitrary	one-word value to pass
					      to proc.

       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	callback to  proc  will	 be  made  by  Tk_Han-
       dleEvent;  this	mechanism  only	works in programs that dispatch	events
       through Tk_HandleEvent  (or  through  other  Tk	procedures  that  call
       Tk_HandleEvent, such as Tcl_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 clientData argument
       given to	Tk_CreateEventHandler when the callback	 was  created.	 Typi-
       cally,  clientData  points  to a	data structure containing application-
       specific	information about the window  in  which	 the  event  occurred.
       EventPtr	 is  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  previously-created
       event  handler:	 it deletes the	first handler it finds that is associ-
       ated with tkwin and matches the mask, proc, and	clientData  arguments.
       If  no  such  handler exists, then Tk_HandleEvent returns without doing
       anything.  Although Tk supports it, it's	probably a bad	idea  to  have
       more  than  one callback	with the same mask, proc, and clientData argu-
       ments.  When a window is	deleted	all of its handlers  will  be  deleted
       automatically;	in  this  case there is	no need	to call	Tk_DeleteEven-

       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

       bind, callback, event, handler

Tk						      Tk_CreateEventHandler(3)


Want to link to this manual page? Use this URL:

home | help