Previous: , Up: General   [Contents]


1.8 tkconnect

tkconnect &key host display can-rsh gcltksrv

This function provides a connection to a graphics server process, which in turn connects to possibly several graphics display screens. The graphics server process, called gcltksrv may or may not run on the same machine as the lisp to which it is attached. display indicates the name of the default display to connect to, and this in turn defaults to the value of the environment variable DISPLAY.

When tkconnect is invoked, a socket is opened and it waits for a graphics process to connect to it. If the host argument is not supplied, then a process will be spawned which will connect back to the lisp process. The name of the command for invoking the process is the value of the gcltksrv argument, which defaults to the value of the environment variable GCL_TK_SERVER. If that variable is not set, then the lisp *lib-directory* is searched for an entry gcl-tk/gcltksrv.

If host is supplied, then a command to run on the remote machine will be printed on standard output. If can-rsh is not nil, then the command will not be printed, but rather an attempt will be made to rsh to the machine, and to run the command.

Thus

(tkconnect)

would start the process on the local machine, and use for display the value of the environment variable DISPLAY.

(tkconnect :host "max.ma.utexas.edu" :can-rsh t)

would cause an attempt to rsh to max and to run the command there, to connect back to the appropriate port on the localhost.

You may indicate that different toplevel windows be on different displays, by using the :display argument when creating the window, See toplevel.

Clearly you must have a copy of the program gcltksrv and TK libraries installed on the machine where you wish to run the server.


Previous: , Up: General   [Contents]