NAME
Tk_Grab, Tk_Ungrab - manipulate grab state in an applica
tion
SYNOPSIS
#include <tk.h>
int
Tk_Grab(interp, tkwin, grabGlobal)
void
Tk_Ungrab(tkwin)
ARGUMENTS
Tcl_Interp *interp (in) Interpreter to
use for error
reporting
Tk_Window tkwin (in) Window on whose
behalf the
pointer is to be
grabbed or
released
int grabGlobal (in) Boolean indicat
ing whether the
grab is global
or application
local
_________________________________________________________________
DESCRIPTION
These functions are used to set or release a global or
application local grab. When a grab is set on a particu
lar window in a Tk application, mouse and keyboard events
can only be received by that window and its descendants.
Mouse and keyboard events for windows outside the tree
rooted at tkwin will be redirected to tkwin. If the grab
is global, then all mouse and keyboard events for windows
outside the tree rooted at tkwin (even those intended for
windows in other applications) will be redirected to
tkwin. If the grab is application local, only mouse and
keyboard events intended for a windows within the same
application (but outside the tree rooted at tkwin) will be
redirected.
Tk_Grab sets a grab on a particular window. Tkwin speci
fies the window on whose behalf the pointer is to be
grabbed. GrabGlobal indicates whether the grab should be
the grab should be global. Normally, Tk_Grab returns
TCL_OK; if an error occurs and the grab cannot be set,
TCL_ERROR is returned and an error message is left if
interp's result. Once this call completes successfully,
no window outside the tree rooted at tkwin will receive
pointer- or keyboard-related events until the next call to
Tk_Ungrab. If a previous grab was in effect within the
application, then it is replaced with a new one.
Tcl_Ungrab releases a grab on the mouse pointer and key
board, if there is one set on the window given by tkwin.
Once a grab is released, pointer and keyboard events will
start being delivered to other windows again.
KEYWORDS
grab, window
Man(1) output converted with
man2html