Tk_DoWhenIdle
Tk_CancelIdleCall
invoke a procedure when there are no pending events