ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



Tk_Init(3)                                  Tk Library Procedures                                 Tk_Init(3)



____________________________________________________________________________________________________________

NAME
       Tk_Init, Tk_SafeInit - add Tk to an interpreter and make a new Tk application.

SYNOPSIS
       #include <tk.h>

       int
       Tk_Init(interp)

       int
       Tk_SafeInit(interp)

ARGUMENTS
       Tcl_Interp   *interp            (in)      Interpreter  in which to load Tk.  Tk should not already be
                                                 loaded in this interpreter.
____________________________________________________________________________________________________________


DESCRIPTION
       Tk_Init is the package initialization procedure for Tk.  It is normally invoked  by  the  Tcl_AppInit
       procedure for an application or by the load command.  Tk_Init adds all of Tk's commands to interp and
       creates a new Tk application, including its main window.  If the initialization is successful Tk_Init
       returns  TCL_OK;   if  there is an error it returns TCL_ERROR.  Tk_Init also leaves a result or error
       message in interp->result.

       If there is a variable argv in interp, Tk_Init treats the contents of this  variable  as  a  list  of
       options  for  the  new Tk application.  The options may have any of the forms documented for the wish
       application (in fact, wish uses Tk_Init to process its command-line arguments).

       Tk_SafeInit is identical to Tk_Init except that it  removes  all  Tk  commands  that  are  considered
       unsafe.  Those commands and the reasons for their exclusion are:

       bell   Continuous ringing of the bell is a nuisance.

       clipboard
              A  malicious  script could replace the contents of the clipboard with the string "rm -r *" and
              lead to surprises when the contents of the clipboard are pasted.

       grab   Grab can be used to block the user from using any other applications.

       menu   Menus can be used to cover the entire screen and to steal input from the user.

       selection
              See clipboard.

       send   Send can be used to cause unsafe interpreters to execute commands.

       tk     The tk command recreates the send command, which is unsafe.

       tkwait Tkwait can block the containing process forever

       toplevel
              Toplevels can be used to cover the entire screen and to steal input from the user.

       wm     If toplevels are ever allowed, wm can be used to remove decorations, move windows around, etc.


KEYWORDS
       safe, application, initialization, load, main window



Tk                                                   8.0                                          Tk_Init(3)

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.