Tk_HandleEvent is a lower-level procedure that deals with window events.
It is called by Tk_ServiceEvent (and indirectly by Tk_DoOneEvent),
and in a few other cases within Tk.
It makes callbacks to any window event handlers (created by calls to Tk_CreateEventHandler) that match eventPtr and then returns.
In some cases it may be useful for an application to bypass the Tk event queue and call Tk_HandleEvent directly instead of calling Tk_QueueEvent followed by Tk_ServiceEvent.

This procedure may be invoked recursively.
For example,
it is possible to invoke Tk_HandleEvent recursively from a handler called by Tk_HandleEvent.
This sort of operation is useful in some modal situations,
such as when a notifier has been popped up and an application wishes to wait for the user to click a button in the notifier before doing anything else.