Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Tk_Init(3)		      Tk Library Procedures		      Tk_Init(3)

________________________________________________________________________________

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

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 in-
     voked by the Tcl_AppInit procedure for an application or by the  load  com-
     mand.  Tk_Init adds all of Tk's commands to interp and creates a new Tk ap-
     plication,  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 interpreter interp's re-
     sult.

     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  ex-
     clusion 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 applica-
	    tions.

     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)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=Tk_Init.tk86&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help