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 ap-
       plication.

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	inter-
       preter interp's 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 op-
       tions 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  com-
       mands  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 con-
	      tents 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 com-
	      mands.

       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 decora-
	      tions, 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_SafeInit.tk86&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help