DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

Tk_Init(3tk)




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   inter-
                                               preter.
_________________________________________________________________


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  suc-
     cessful  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 docu-
     mented  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.

Tk                      Last change: 8.0                        1

Tk_Init(3)            Tk Library Procedures            Tk_Init(3)

     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  exe-
          cute 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                      Last change: 8.0                        2


Man(1) output converted with man2html