File: Main.tex

package info (click to toggle)
roleplaying 2.0-8
  • links: PTS
  • area: main
  • in suites: woody
  • size: 16,620 kB
  • ctags: 1,039
  • sloc: tcl: 7,155; cpp: 2,709; ansic: 2,227; makefile: 559; sh: 330; csh: 3
file content (269 lines) | stat: -rw-r--r-- 8,454 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
% Begin of input file ../../Scripts/Main.tcl
\chapter{Main.tcl -- Main window and common GUI procedures}
\label{Main.tcl}
\typeout{Generated from $Id: Main.tcl,v 1.7 1999/07/13 01:30:12 heller Rel1 $}



\noindent\rule{\textwidth}{0.4pt}
\section{global tcl\_rcFileName}

This is the name of the file containing general Tcl/Tk preferences.
\index{tcl\_rcFileName!global variable}


\noindent\rule{\textwidth}{0.4pt}
\section{global LibDir}

This is the path to the script library directory.  It is computed from
the directory name of the script.
\index{LibDir!global variable}


\noindent\rule{\textwidth}{0.4pt}
\section{global CopyBuffer}

Buffer for selection copying.
\index{CopyBuffer!global variable}


\noindent\rule{\textwidth}{0.4pt}
\section{image photo DeepwoodsBanner}

Deepwoods banner image.  Used in the splash screen.
\index{DeepwoodsBanner!image}


\noindent\rule{\textwidth}{0.4pt}
\section{global GenSym}

Global variable used to hold symbol sequence counter used for generating
unique symbols used for toplevel window names.
\index{GenSym!global variable}


\noindent\rule{\textwidth}{0.4pt}
\section[proc SplashScreen]{proc SplashScreen \emph{}}

Build the ``Splash Screen'' -- A popup window that tells the user what
we are all about.  It gives the version and brief copyright information.

The upper part of the splash screen gives the brief information, with
directions on how to get detailed information.  The lower part contains
an image banner for Deepwoods Software.
\index{SplashScreen!procedure}


\noindent\rule{\textwidth}{0.4pt}
\section[proc GenerateToplevelName]{proc GenerateToplevelName \emph{base}}

Procedure to generate a unique toplevel window name.
\begin{description}
\item [in]  base -- this is the base name to be used for the name.  A sequence
number is appended to this name to form a unique name.
\index{GenerateToplevelName!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc GetTopLevelOfFocus]{proc GetTopLevelOfFocus \emph{menu}}

Procedure to get the toplevel that presently has focus.  This is used when
generic pulldown menus are activated to determine which object the menu
refers to.
\begin{description}
\item [in]  menu -- this is the menu that was selected.  This is used to select
which display to search on.
\index{GetTopLevelOfFocus!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc RPGMenuBar]{proc RPGMenuBar \emph{\{toplevel .\}}}

Procedure to generate a menu bar for RPG toplevels.
This procedure is used to create uniform menubars for all first-class
toplevels used in the RPG DB package.
\begin{description}
\item [in]  toplevel -- the toplevel to attach the menu to.
\index{RPGMenuBar!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc RPGDestroyToplevel]{proc RPGDestroyToplevel \emph{tname}}

This procedure destroys a selected RPG DB toplevel. The data object
associated with the toplevel is checked to see if it is ``dirty'' (modified)
and if so, the user is given a chance to save the data object to disk.
The memory used by the data object is also freed.
\begin{description}
\item [in]  tname -- the name of the toplevel.
\index{RPGDestroyToplevel!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc NoOperation args]{proc NoOperation args \emph{}}

Dummy procedure to be used as a place holder where a procedure is needed, but
there is no operation to perform.
\begin{description}
\item [in]  args -- random unused arguments.
\index{NoOperation!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc RPGDestroyToplevelEvent]{proc RPGDestroyToplevelEvent \emph{tl}}

This procedure is bound to the Destroy event of RPG DB toplevels.  If ever
the toplevel is destroyed via an event, this procedure catches the event
and does the needed cleanup.  See RPGDestroyToplevel.
\begin{description}
\item [in]  tl -- the name of the toplevel.
\index{RPGDestroyToplevelEvent!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc RPGToplevel]{proc RPGToplevel \emph{tname title class}}

Procedure to create a proper RPG DB toplevel.  This procedure creates a
toplevel window to edit an object of the specified class.
\begin{description}
\item [in]  tname -- The name to use for the toplevel window.
\item [in]  title -- The string to place in the title of the toplevel window.
\item [in]  class -- The class of object the toplevel will edit.
\index{RPGToplevel!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc SetDirty]{proc SetDirty \emph{tl}}

Procedure to set the dirty flag for a toplevel's data object.
\begin{description}
\item [in]  tl -- The name of the toplevel.
\index{SetDirty!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc CloseWindow]{proc CloseWindow \emph{toplevel}}

Procedure to close a toplevel (bound to the ``Close'' button under the
``File'' menu).  This procedure closes a named toplevel window.  Proper
cleanup operations are performed.
\begin{description}
\item [in]  toplevel -- The name of the toplevel.
\index{CloseWindow!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc ExitRPG]{proc ExitRPG \emph{}}

Exit procedure for the RPG DB system.  This procedure cleans up all
outstanding toplevels and also confirms the exit with a dialog box.
\index{ExitRPG!procedure}


\noindent\rule{\textwidth}{0.4pt}
\section[proc OpenWindow]{proc OpenWindow \emph{tl}}

Procedure bound to the ``Open...'' menu item under the ``File'' menu.
This procedure opens up a new window with old data (loaded from disk).
If the current toplevel is of a particular class, a data object of the
same class is opened.  Otherwise a menu listing a selection of object
classes is presented to the user to choose from.
\begin{description}
\item [in]  tl -- The toplevel with the focus.
\index{OpenWindow!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc OpenWhat]{proc OpenWhat \emph{}}

This procedure presents the user with a selection of object classes to
open.
\index{OpenWhat!procedure}


\noindent\rule{\textwidth}{0.4pt}
\section[proc SaveWindow]{proc SaveWindow \emph{tl}}

Procedure bound to the ``Save'' menu item on the ``File'' menu.
Saves the selected object in its current file name.  If no file is
associated with the object, the user is prompted for a new file name.
\begin{description}
\item [in]  tl - The toplevel which has the focus.
\index{SaveWindow!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc SaveAsWindow]{proc SaveAsWindow \emph{tl}}

Procedure bound to the ``SaveAs...'' menu item on the ``File'' menu.
Saves the selected object in a new file name.
\begin{description}
\item [in]  tl - The toplevel which has the focus.
\index{SaveAsWindow!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc PrintWindow]{proc PrintWindow \emph{tl}}

Procedure bound to the ``Print...'' menu item on the ``File'' menu.
Prints the selected object.
\begin{description}
\item [in]  tl - The toplevel which has the focus.
\index{PrintWindow!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc MainWindow]{proc MainWindow \emph{}}

Procedure to create the main window.  This window consists of a collection
of buttons to open various other toplevel windows to edit various data
objects.
\index{MainWindow!procedure}


\noindent\rule{\textwidth}{0.4pt}
\section[proc CheckInt]{proc CheckInt \emph{E}}

Procedure to check for legal integer entries.  This procedure is bound to
the KeyPress event.
\begin{description}
\item [in]  E -- the entry widget to check.
\index{CheckInt!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc CheckFloat]{proc CheckFloat \emph{E}}

Procedure to check for legal floating point entries.  This procedure is
bound to the KeyPress event.
\begin{description}
\item [in]  E -- the entry widget to check.
\index{CheckFloat!procedure}
\end{description}


\noindent\rule{\textwidth}{0.4pt}
\section[proc UpdateComments]{proc UpdateComments \emph{text field}}

Procedure to update text fields.  This procedure is bound to
the KeyPress event.
\begin{description}
\item [in]  text -- the Text widget to check.
\item [in]  field -- the data field associated with this text widget.
\index{UpdateComments!procedure}
\end{description}
% End of input file ../../Scripts/Main.tcl