AppInit.3
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:3k
- '"
- '" Copyright (c) 1993 The Regents of the University of California.
- '" Copyright (c) 1994-1996 Sun Microsystems, Inc.
- '"
- '" See the file "license.terms" for information on usage and redistribution
- '" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
- '"
- '" RCS: @(#) $Id: AppInit.3,v 1.3.24.1 2006/07/30 16:18:41 jenglish Exp $
- '"
- .so man.macros
- .TH Tcl_AppInit 3 7.0 Tcl "Tcl Library Procedures"
- .BS
- .SH NAME
- Tcl_AppInit - perform application-specific initialization
- .SH SYNOPSIS
- .nf
- fB#include <tcl.h>fR
- .sp
- int
- fBTcl_AppInitfR(fIinterpfR)
- .SH ARGUMENTS
- .AS Tcl_Interp *interp
- .AP Tcl_Interp *interp in
- Interpreter for the application.
- .BE
- .SH DESCRIPTION
- .PP
- fBTcl_AppInitfR is a ``hook'' procedure that is invoked by
- the main programs for Tcl applications such as fBtclshfR and fBwishfR.
- Its purpose is to allow new Tcl applications to be created without
- modifying the main programs provided as part of Tcl and Tk.
- To create a new application you write a new version of
- fBTcl_AppInitfR to replace the default version provided by Tcl,
- then link your new fBTcl_AppInitfR with the Tcl library.
- .PP
- fBTcl_AppInitfR is invoked by fBTcl_MainfR and fBTk_MainfR
- after their own initialization and before entering the main loop
- to process commands.
- Here are some examples of things that fBTcl_AppInitfR might do:
- .IP [1]
- Call initialization procedures for various packages used by
- the application.
- Each initialization procedure adds new commands to fIinterpfR
- for its package and performs other package-specific initialization.
- .IP [2]
- Process command-line arguments, which can be accessed from the
- Tcl variables fBargvfR and fBargv0fR in fIinterpfR.
- .IP [3]
- Invoke a startup script to initialize the application.
- .LP
- fBTcl_AppInitfR returns TCL_OK or TCL_ERROR.
- If it returns TCL_ERROR then it must leave an error message in
- for the interpreter's result; otherwise the result is ignored.
- .PP
- In addition to fBTcl_AppInitfR, your application should also contain
- a procedure fBmainfR that calls fBTcl_MainfR as follows:
- .CS
- Tcl_Main(argc, argv, Tcl_AppInit);
- .CE
- The third argument to fBTcl_MainfR gives the address of the
- application-specific initialization procedure to invoke.
- This means that you don't have to use the name fBTcl_AppInitfR
- for the procedure, but in practice the name is nearly always
- fBTcl_AppInitfR (in versions before Tcl 7.4 the name fBTcl_AppInitfR
- was implicit; there was no way to specify the procedure explicitly).
- The best way to get started is to make a copy of the file
- fBtclAppInit.cfR from the Tcl library or source directory.
- It already contains a fBmainfR procedure and a template for
- fBTcl_AppInitfR that you can modify for your application.
- .SH KEYWORDS
- application, argument, command, initialization, interpreter