Provided by: tk8.4-doc_8.4.20-7_all bug

NAME

       loadTk - Load Tk into a safe interpreter.

SYNOPSIS

       ::safe::loadTk slave ?-use windowId? ?-display displayName?
_________________________________________________________________

       Safe  Tk  is  based on Safe Tcl, which provides a mechanism that allows restricted and mediated access to
       auto-loading and packages for safe interpreters.  Safe Tk adds the ability to configure  the  interpreter
       for safe Tk operations and load Tk into safe interpreters.

DESCRIPTION

       The  ::safe::loadTk  command  initializes  the required data structures in the named safe interpreter and
       then loads Tk into it.  The interpreter must have been created with  ::safe::interpCreate  or  have  been
       initialized  with  ::safe::interpInit.  The command returns the name of the safe interpreter.  If -use is
       specified, the window identified by the specified system dependent identifier windowId is used to contain
       the ``.''  window of the safe interpreter; it can be  any  valid  id,  eventually  referencing  a  window
       belonging  to  another application. As a convenience, if the window you plan to use is a Tk Window of the
       application you can use the window name (e.g. .x.y) instead of its window Id  ([winfo  id  .x.y]).   When
       -use  is not specified, a new toplevel window is created for the ``.'' window of the safe interpreter. On
       X11 if you want the embedded window to use  another  display  than  the  default  one,  specify  it  with
       -display.  See the SECURITY ISSUES section below for implementation details.

SECURITY ISSUES

       Please read the safe manual page for Tcl to learn about the basic security considerations for Safe Tcl.

       ::safe::loadTk  adds the value of tk_library taken from the master interpreter to the virtual access path
       of the safe interpreter so that auto-loading will work in the safe interpreter.

       Tk initialization is now safe with respect to not trusting the slave's state for startup.  ::safe::loadTk
       registers  the  slave's  name so when the Tk initialization (Tk_SafeInit) is called and in turn calls the
       master's ::safe::InitTk it will return the desired argv  equivalent  (-use  windowId,  correct  -display,
       etc.)

       When  -use  is not used, the new toplevel created is specially decorated so the user is always aware that
       the user interface presented comes from a potentially unsafe code and can easily delete the corresponding
       interpreter.

       On X11, conflicting -use and -display are likely to generate a fatal X error.

SEE ALSO

       safe(3tcl), interp(3tcl), library(3tcl), load(3tcl), package(3tcl), source(3tcl), unknown(3tcl)

KEYWORDS

       alias, auto-loading, auto_mkindex, load, master interpreter, safe interpreter, slave interpreter, source

Tk                                                     8.0                                          Safe Tk(3tk)