Index of Section 3 Manual Pages
| Interix / SUA | CrtCmHdlr.3 | Interix / SUA |
Tk_CreateClientMessageTknLibrary Tk_CreateClientMessageHandler(3)
_________________________________________________________________
NAME
Tk_CreateClientMessageHandler, Tk_DeleteClientMessageHan-
dler - associate procedure callback with ClientMessage
type X events
SYNOPSIS
#include
Tk_CreateClientMessageHandler(proc)
Tk_DeleteClientMessageHandler(proc)
ARGUMENTS
Tk_ClientMessageProc *proc(in) Procedure to
invoke whenever
a ClientMessage
X event occurs
on any display.
_________________________________________________________________
DESCRIPTION
Tk_CreateClientMessageHandler arranges for proc to be
invoked in the future whenever a ClientMessage X event
occurs that isn't handled by WM_PROTOCOL. Tk_Create-
ClientMessageHandler is intended for use by applications
which need to watch X ClientMessage events, such as drag
and drop applications.
The callback to proc will be made by Tk_HandleEvent; this
mechanism 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_ClientMessageProc:
typedef int Tk_ClientMessageProc(
Tk_Window tkwin,
XEvent *eventPtr);
The tkwin parameter to proc is the Tk window which is
associated with this event. EventPtr is a pointer to the
X event.
Whenever an X ClientMessage event is processed by Tk_Han-
dleEvent, the proc is called if it wasn't handled as a
WM_PROTOCOL. The return value from proc is normally 0. A
non-zero return value indicates that the event is not to
be handled further; that is, proc has done all processing
that is to be allowed for the event.
If there are multiple ClientMessage event handlers, each
one is called for each event, in the order in which they
were established.
Tk_DeleteClientMessageHandler may be called to delete a
previously-created ClientMessage event handler: it deletes
each handler it finds that matches the proc argument. If
no such handler exists, then Tk_DeleteClientMessageHandler
returns without doing anything. Although Tk supports it,
it's probably a bad idea to have more than one callback
with the same proc argument.
KEYWORDS
bind, callback, event, handler
Tk 8.Tk_CreateClientMessageHandler(3)