2 '\" Copyright (c) 1997-1998 Sun Microsystems, Inc.
4 '\" See the file "license.terms" for information on usage and redistribution
5 '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
7 '\" RCS: @(#) $Id: Macintosh.3,v 1.4.2.1 2003/07/18 16:56:24 dgp Exp $
9 '\" The definitions below are for supplemental macros used in Tcl/Tk
12 '\" .AP type name in/out ?indent?
13 '\" Start paragraph describing an argument to a library procedure.
14 '\" type is type of argument (int, etc.), in/out is either "in", "out",
15 '\" or "in/out" to describe whether procedure reads or modifies arg,
16 '\" and indent is equivalent to second arg of .IP (shouldn't ever be
17 '\" needed; use .AS below instead)
20 '\" Give maximum sizes of arguments for setting tab stops. Type and
21 '\" name are examples of largest possible arguments that will be passed
22 '\" to .AP later. If args are omitted, default tab stops are used.
25 '\" Start box enclosure. From here until next .BE, everything will be
26 '\" enclosed in one large box.
29 '\" End of box enclosure.
32 '\" Begin code excerpt.
37 '\" .VS ?version? ?br?
38 '\" Begin vertical sidebar, for use in marking newly-changed parts
39 '\" of man pages. The first argument is ignored and used for recording
40 '\" the version when the .VS was added, so that the sidebars can be
41 '\" found and removed when they reach a certain age. If another argument
42 '\" is present, then a line break is forced before starting the sidebar.
45 '\" End of vertical sidebar.
48 '\" Begin an indented unfilled display.
51 '\" End of indented unfilled display.
54 '\" Start of list of standard options for a Tk widget. The
55 '\" options follow on successive lines, in four columns separated
59 '\" End of list of standard options for a Tk widget.
61 '\" .OP cmdName dbName dbClass
62 '\" Start of description of a specific option. cmdName gives the
63 '\" option's name as specified in the class command, dbName gives
64 '\" the option's name in the option database, and dbClass gives
65 '\" the option's class in the option database.
68 '\" Print arg1 underlined, then print arg2 normally.
70 '\" RCS: @(#) $Id: man.macros,v 1.4 2000/08/25 06:18:32 ericm Exp $
72 '\" # Set up traps and other miscellaneous stuff for Tcl/Tk man pages.
76 '\" # Start an argument description
80 . ie !"\\$2"" .TP \\n()Cu
85 \&\\$1 \\fI\\$2\\fP (\\$3)
98 '\" # define tabbing values for .AP
101 .if !"\\$1"" .nr )A \\w'\\$1'u+3n
104 .if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
105 .nr )C \\n()Bu+\\w'(in/out)'u+2n
107 .AS Tcl_Interp Tcl_CreateInterp in/out
108 '\" # BS - start boxed text
109 '\" # ^y = starting y location
117 .if n \l'\\n(.lu\(ul'
120 '\" # BE - end boxed text (draw box now)
125 .ie n \l'\\n(^lu\(ul'
127 .\" Draw four-sided box normally, but don't draw top of
128 .\" box if the box started on an earlier page.
130 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
133 \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
140 '\" # VS - start vertical sidebar
141 '\" # ^Y = starting y location
142 '\" # ^v = 1 (for troff; for nroff this doesn't matter)
146 .ie n 'mc \s12\(br\s0
149 '\" # VE - end of vertical sidebar
157 \h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
164 '\" # Special macro to handle page bottom: finish off current
165 '\" # box/sidebar if in box/sidebar mode, then invoked standard
166 '\" # page bottom macro.
173 .\" Draw three-sided box if this is the box's first page,
174 .\" draw two sides but no top otherwise.
175 .ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
176 .el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
179 .nr ^x \\n(^tu+1v-\\n(^Yu
180 \kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
193 '\" # DS - begin display
199 '\" # DE - end display
205 '\" # SO - start of list of standard options
207 .SH "STANDARD OPTIONS"
213 '\" # SE - end of list of standard options
218 See the \\fBoptions\\fR manual entry for details on the standard options.
220 '\" # OP - start of full description for a single option
225 Command-Line Name: \\fB\\$1\\fR
226 Database Name: \\fB\\$2\\fR
227 Database Class: \\fB\\$3\\fR
231 '\" # CS - begin code excerpt
237 '\" # CE - end code excerpt
245 .TH Tcl_MacSetEventProc 3 "8.1" Tcl "Tcl Library Procedures"
248 Tcl_MacSetEventProc, Tcl_MacConvertTextResource, Tcl_MacEvalResource, Tcl_MacFindResource, Tcl_GetOSTypeFromObj, Tcl_SetOSTypeObj, Tcl_NewOSTypeObj \- procedures to handle Macintosh resources and other Macintosh specifics
251 \fB#include <tcl.h>\fR
254 \fBTcl_MacEvalResource\fR(\fIinterp, resourceName, resourceNumber, fileName\fR)
257 \fBTcl_MacConvertTextResource\fR(\fIresource\fR)
260 \fBTcl_MacFindResource\fR(\fIinterp, resourceType, resourceName, resourceNumber, resFileRef, releaseIt\fR)
263 \fBTcl_NewOSTypeObj\fR(\fInewOSType\fR)
266 \fBTcl_SetOSTypeObj\fR(\fIobjPtr, newOSType\fR)
269 \fBTcl_GetOSTypeFromObj\fR(\fIinterp, objPtr, osTypePtr\fR)
272 \fBTcl_MacSetEventProc\fR(\fIprocPtr\fR)
274 .AP Tcl_Interp *interp in
275 Interpreter to use for error reporting, or NULL if no error reporting is
277 .AP "CONST char" *resourceName in
278 Name of TEXT resource to source, NULL if number should be used.
279 .AP int resourceNumber in
280 Resource id of source.
281 .AP "CONST char" *fileName in
282 Name of file to process. NULL if application resource.
283 .AP Handle resource in
284 Handle to TEXT resource.
285 .AP long resourceType in
286 Type of resource to load.
287 .AP "CONST char" *resFileRef in
288 Registered resource file reference, NULL if searching all open resource files.
289 .AP int *releaseIt out
290 Should we release this resource when done.
292 Int used to initialize the new object or set the object's value.
293 .AP Tcl_Obj *objPtr in
294 Object whose internal representation is to be set or retrieved.
296 Place to store the resulting integer.
297 .AP Tcl_MacConvertEventPtr procPtr in
298 Reference to the new function to handle all incoming Mac events.
303 The described routines are used to implement the Macintosh specific
304 \fBresource\fR command and the Mac specific notifier.. They manipulate
305 or use Macintosh resources and provide administration for open
306 resource file references.
310 \fBTcl_MacEvalResource\fR extends the \fBsource\fR command to
311 Macintosh resources. It sources Tcl code from a Text resource.
312 Currently only sources the resource by name, file IDs may be supported
315 \fBTcl_MacConvertTextResource\fR converts a TEXT resource into a Tcl
316 suitable string. It mallocs the returned memory, converts ``\\r'' to
317 ``\\n'', and appends a null. The caller has the responsibility for
320 \fBTcl_MacFindResource\fR provides a higher level interface for
321 loading resources. It is used by \fBresource read\fR.
323 \fBTcl_NewOSTypeObj\fR is used to create a new resource name type
324 object. The object type is "ostype".
326 \fBTcl_SetOSTypeObj\fR modifies an object to be a resource type and to
327 have the specified long value.
329 \fBTcl_GetOSTypeFromObj\fR attempts to return an int from the Tcl
330 object "objPtr". If the object is not already an int, an attempt will
331 be made to convert it to one.
333 \fBTcl_MacSetEventProc\fR sets the event handling procedure for the
334 application. This function will be passed all incoming Mac events.
335 This function usually controls the console or some other entity like
340 Resource types are 4-byte values used by the macintosh resource
341 facility to tag parts of the resource fork in a file so that the OS
342 knows how to handle them. As all 4 bytes are restricted to printable
343 characters such a type can be interpreted as a 4 character string too.
346 macintosh, mac, resource, notifier