4
* Provides a default version of the Tcl_AppInit procedure for
5
* use in wish and similar Tk-based applications.
7
* Copyright (c) 1993 The Regents of the University of California.
10
* Permission is hereby granted, without written agreement and without
11
* license or royalty fees, to use, copy, modify, and distribute this
12
* software and its documentation for any purpose, provided that the
13
* above copyright notice and the following two paragraphs appear in
14
* all copies of this software.
16
* IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
17
* DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
18
* OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
19
* CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
21
* THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
22
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
23
* AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
24
* ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO
25
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
29
/* static char rcsid[] = "/usr/home/gah/repository/blt/tkAppInit.c,v 1.3 1994/04/02 04:37:26 gah Exp SPRITE (Berkeley) $Revision"; */
35
* The following variable is a special hack that allows applications
36
* to be linked using the procedure "main" from the Tk library. The
37
* variable generates a reference to "main", which causes main to
38
* be brought in from the library (and all of Tk and Tcl with it).
42
int *tclDummyMainPtr = (int *) main;
45
*----------------------------------------------------------------------
49
* This procedure performs application-specific initialization.
50
* Most applications, especially those that incorporate additional
51
* packages, will have their own version of this procedure.
54
* Returns a standard Tcl completion code, and leaves an error
55
* message in interp->result if an error occurs.
58
* Depends on the startup script.
60
*----------------------------------------------------------------------
65
Tcl_Interp *interp; /* Interpreter for application. */
69
extern int Blt_Init _ANSI_ARGS_((Tcl_Interp *interp));
71
mmain = Tk_MainWindow(interp);
74
* Call the init procedures for included packages. Each call should
77
* if (Mod_Init(interp) == TCL_ERROR) {
81
* where "Mod" is the name of the module.
84
if (Blt_Init(interp) == TCL_ERROR) {
88
if (Tcl_Init(interp) == TCL_ERROR) {
91
if (Tk_Init(interp) == TCL_ERROR) {
96
* Call Tcl_CreateCommand for application-specific commands, if
97
* they weren't already created by the init procedures called above.
101
* Specify a user-specific startup file to invoke if the application
102
* is run interactively. Typically the startup file is "~/.apprc"
103
* where "app" is the name of the application. If this line is deleted
104
* then no user-specific startup file will be run under any conditions.
107
/* for version tk 3.5:
108
tcl_RcFileName = "~/.wishrc";
110
Tcl_SetVar(interp, "tcl_rcFileName", "~/.wishrc", TCL_GLOBAL_ONLY);