Tk_SetClassProcs - register widget specific procedures
#include <tk.h> Tk_SetClassProcs(tkwin, procs, instanceData)
Tk_SetClassProcs(3tk) Tk Library Procedures Tk_SetClassProcs(3tk)
______________________________________________________________________________
NAME
Tk_SetClassProcs - register widget specific procedures
SYNOPSIS
#include <tk.h>
Tk_SetClassProcs(tkwin, procs, instanceData)
ARGUMENTS
Tk_Window tkwin (in) Token for window to modify.
const Tk_ClassProcs *procs (in) Pointer to data structure con-
taining widget specific proce-
dures. The data structure
pointed to by procs must be
static: Tk keeps a reference to
it as long as the window
exists.
ClientData instanceData (in) Arbitrary one-word value to
pass to widget callbacks.
______________________________________________________________________________
DESCRIPTION
Tk_SetClassProcs is called to register a set of procedures that are
used as callbacks in different places.
The structure pointed to by procs contains the following:
typedef struct Tk_ClassProcs {
unsigned int size;
Tk_ClassWorldChangedProc *worldChangedProc;
Tk_ClassCreateProc *createProc;
Tk_ClassModalProc *modalProc;
} Tk_ClassProcs;
The size field is used to simplify future expansion of the structure.
It should always be set to (literally) sizeof(Tk_ClassProcs).
worldChangedProc is invoked when the system has altered in some way
that requires some reaction from the widget. For example, when a font
alias (see the font manual entry) is reconfigured, widgets configured
to use that font alias must update their display accordingly. world-
ChangedProc should have arguments and results that match the type
Tk_ClassWorldChangedProc:
typedef void Tk_ClassWorldChangedProc(
ClientData instanceData);
The instanceData parameter passed to the worldChangedProc will be iden-
tical to the instanceData parameter passed to Tk_SetClassProcs.
createProc is used to create platform-dependant windows. It is invoked
by Tk_MakeWindowExist. createProc should have arguments and results
that match the type Tk_ClassCreateProc:
typedef Window Tk_ClassCreateProc(
Tk_Window tkwin,
Window parent,
ClientData instanceData);
The tkwin and instanceData parameters will be identical to the tkwin
and instanceData parameters passed to Tk_SetClassProcs. The parent
parameter will be the parent of the window to be created. The cre-
ateProc should return the created window.
modalProc is invoked after all bindings on a widget have been triggered
in order to handle a modal loop. modalProc should have arguments and
results that match the type Tk_ClassModalProc:
typedef void Tk_ClassModalProc(
Tk_Window tkwin,
XEvent *eventPtr);
The tkwin parameter to modalProc will be identical to the tkwin parame-
ter passed to Tk_SetClassProcs. The eventPtr parameter will be a
pointer to an XEvent structure describing the event being processed.
KEYWORDS
callback, class
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+------------------+
|Availability | runtime/tk-8 |
+---------------+------------------+
|Stability | Uncommitted |
+---------------+------------------+
NOTES
Source code for open source software components in Oracle Solaris can
be found at https://www.oracle.com/downloads/opensource/solaris-source-
code-downloads.html.
This software was built from source available at
https://github.com/oracle/solaris-userland. The original community
source was downloaded from https://source-
forge.net/projects/tcl/files/Tcl/8.6.7/tk8.6.7-src.tar.gz/download.
Further information about this software can be found on the open source
community website at https://www.tcl.tk/.
Tk 8.4 Tk_SetClassProcs(3tk)