Annotation of capa/capa51/GUITools/quizzer.init.c, revision 1.3
1.2 albertel 1: /* initialization routines for Quizzer
2: Copyright (C) 1992-2000 Michigan State University
3:
4: The CAPA system is free software; you can redistribute it and/or
5: modify it under the terms of the GNU Library General Public License as
6: published by the Free Software Foundation; either version 2 of the
7: License, or (at your option) any later version.
8:
9: The CAPA system is distributed in the hope that it will be useful,
10: but WITHOUT ANY WARRANTY; without even the implied warranty of
11: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12: Library General Public License for more details.
13:
14: You should have received a copy of the GNU Library General Public
15: License along with the CAPA system; see the file COPYING. If not,
16: write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17: Boston, MA 02111-1307, USA.
18:
19: As a special exception, you have permission to link this program
20: with the TtH/TtM library and distribute executables, as long as you
21: follow the requirements of the GNU GPL in regard to all of the
22: software in the executable aside from TtH/TtM.
23: */
24:
1.1 albertel 25: /*
1.2 albertel 26: * quizzer.init.c
27: * Guy Albertelli II 1996
1.1 albertel 28: */
29: #include <stdio.h>
30: #include <sys/file.h>
31: #include <tk.h>
32: #include <stdlib.h>
1.3 ! albertel 33: #include <pProj/capaCommon.h>
1.1 albertel 34: #include <signal.h>
35: #include <quizzer.h>
36: #include <common.h>
37:
38: Tcl_Interp * gInterp;
39:
40: int Quizzer_Init(Tcl_Interp *interp)
41: {
42: char buf[BUFFER_SIZE],*argv;
43:
44: signal(SIGSEGV,signalHandler);
45: signal(SIGILL,signalHandler);
46: signal(SIGFPE,signalHandler);
47: signal(SIGBUS,signalHandler);
48:
49: gInterp=interp;
50: Tcl_CreateCommand( interp, "enscriptParse", capaTclParse, (ClientData)NULL,
51: (Tcl_CmdDeleteProc *)NULL);
52: Tcl_CreateCommand( interp, "texParse", capaTclParse, (ClientData)NULL,
53: (Tcl_CmdDeleteProc *)NULL);
54: Tcl_CreateCommand( interp, "webParse", capaTclParse, (ClientData)NULL,
55: (Tcl_CmdDeleteProc *)NULL);
56: Tcl_CreateCommand( interp, "capaGetStudent", capaGetStudent, (ClientData)NULL,
57: (Tcl_CmdDeleteProc *)NULL);
58: Tcl_CreateCommand( interp, "dateUpdate", capaDateUpdate, (ClientData)NULL,
59: (Tcl_CmdDeleteProc *)NULL);
60: Tcl_CreateCommand( interp, "runLatex", capaRunLatex, (ClientData)NULL,
61: (Tcl_CmdDeleteProc *)NULL);
62: Tcl_CreateCommand( interp, "getParseErrors", capaGetParseErrors, (ClientData)NULL,
63: (Tcl_CmdDeleteProc *)NULL);
64: Tcl_CreateCommand( interp, "getHeaderInfo", capaGetHeaderInfo, (ClientData)NULL,
65: (Tcl_CmdDeleteProc *)NULL);
66: Tcl_CreateCommand( interp, "updateHeader", capaUpdateHeader, (ClientData)NULL,
67: (Tcl_CmdDeleteProc *)NULL);
68: Tcl_CreateCommand( interp, "checkHeader", capaCheckHeader, (ClientData)NULL,
69: (Tcl_CmdDeleteProc *)NULL);
70: Tcl_CreateCommand( interp, "getExistingSections", capaGetExistingSections,
71: (ClientData)NULL, (Tcl_CmdDeleteProc *)NULL);
72: Tcl_CreateCommand( interp, "getStudentNumbers", capaGetStudentNumbers,
73: (ClientData)NULL, (Tcl_CmdDeleteProc *)NULL);
74: Tcl_CreateCommand( interp, "stopParser", capaStopParser,
75: (ClientData)NULL, (Tcl_CmdDeleteProc *)NULL);
76:
77: Tcl_LinkVar(interp,"gFasterParsing",(char *)&gFasterParsing,TCL_LINK_INT);
78:
79: sprintf(buf,"%s.%s",MAJORVER,QUIZZERMINORVER);
80: Tcl_SetVar(interp,"gVer",buf,TCL_GLOBAL_ONLY);
81: sprintf(buf,"Compiled on %s",COMPILE_DATE);
82: Tcl_SetVar(interp,"gCompileDate",buf,TCL_GLOBAL_ONLY);
83:
84: argv=Tcl_GetVar(interp,"argv", TCL_GLOBAL_ONLY);
85: if (argv!=NULL && strlen(argv) > 9 &&
86: argv[0]=='-' &&
87: argv[1]=='c' &&
88: argv[2]=='o' &&
89: argv[3]=='p' &&
90: argv[4]=='y' &&
91: argv[5]=='r' &&
92: argv[6]=='i' &&
93: argv[7]=='g' &&
94: argv[8]=='h' &&
95: argv[9]=='t' ) message();
96:
97: return TCL_OK;
98: }
99:
100: int Quizzer_InitStandAlone(Tcl_Interp *interp)
101: {
102: return Quizzer_Init(interp);
103: }
104:
105: int Quizzer_SafeInit(Tcl_Interp *interp)
106: {
107: return Quizzer_Init(interp);
108: }
109:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>