summaryrefslogtreecommitdiffstats
path: root/doc/HandleEvent.3
blob: 8f1b319ea76b9235ff43f0e80958f6a772ef1ca0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
'\"
'\" Copyright (c) 1990-1992 The Regents of the University of California.
'\" Copyright (c) 1994-1996 Sun Microsystems, Inc.
'\"
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\" 
'\" RCS: @(#) $Id: HandleEvent.3,v 1.6 2008/07/08 22:40:51 patthoyts Exp $
'\" 
.so man.macros
.TH Tk_HandleEvent 3 "" Tk "Tk Library Procedures"
.BS
.SH NAME
Tk_HandleEvent \- invoke event handlers for window system events
.SH SYNOPSIS
.nf
\fB#include <tk.h>\fR
.sp
\fBTk_HandleEvent\fR(\fIeventPtr\fR)
.SH ARGUMENTS
.AS XEvent *eventPtr
.AP XEvent *eventPtr in
Pointer to X event to dispatch to relevant handler(s).
.BE
.SH DESCRIPTION
.PP
\fBTk_HandleEvent\fR is a lower-level procedure that deals with window
events.  It is called by \fBTcl_ServiceEvent\fR (and indirectly by
\fBTk_DoOneEvent\fR), and in a few other cases within Tk.
It makes callbacks to any window event
handlers (created by calls to \fBTk_CreateEventHandler\fR)
that match \fIeventPtr\fR and then returns.  In some cases
it may be useful for an application to bypass the Tk event
queue and call \fBTk_HandleEvent\fR directly instead of
calling \fBTcl_QueueEvent\fR followed by
\fBTcl_ServiceEvent\fR.
.PP
This procedure may be invoked recursively.  For example,
it is possible to invoke \fBTk_HandleEvent\fR recursively
from a handler called by \fBTk_HandleEvent\fR.  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.
.SH KEYWORDS
callback, event, handler, window