Imported upstream version 1.5
[manpages-zh.git] / src / mann / loadTk.n
blob5bd74586ba44fb1848d23b6a222ace49ef5e482e
1 '\"
2 '\" Copyright (c) 1995-1996 Sun Microsystems, Inc.
3 '\"
4 '\" See the file "license.terms" for information on usage and redistribution
5 '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
6 '\"
7 '\" RCS: @(#) $Id: loadTk.n,v 1.2 2003/11/24 05:09:59 bbbush Exp $
8 '\"
9 '\" The definitions below are for supplemental macros used in Tcl/Tk
10 '\" manual entries.
11 '\"
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)
18 '\"
19 '\" .AS ?type? ?name?
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.
23 '\"
24 '\" .BS
25 '\" Start box enclosure. From here until next .BE, everything will be
26 '\" enclosed in one large box.
27 '\"
28 '\" .BE
29 '\" End of box enclosure.
30 '\"
31 '\" .CS
32 '\" Begin code excerpt.
33 '\"
34 '\" .CE
35 '\" End code excerpt.
36 '\"
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.
43 '\"
44 '\" .VE
45 '\" End of vertical sidebar.
46 '\"
47 '\" .DS
48 '\" Begin an indented unfilled display.
49 '\"
50 '\" .DE
51 '\" End of indented unfilled display.
52 '\"
53 '\" .SO
54 '\" Start of list of standard options for a Tk widget. The
55 '\" options follow on successive lines, in four columns separated
56 '\" by tabs.
57 '\"
58 '\" .SE
59 '\" End of list of standard options for a Tk widget.
60 '\"
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.
66 '\"
67 '\" .UL arg1 arg2
68 '\" Print arg1 underlined, then print arg2 normally.
69 '\"
70 '\" RCS: @(#) $Id: loadTk.n,v 1.2 2003/11/24 05:09:59 bbbush Exp $
71 '\"
72 '\" # Set up traps and other miscellaneous stuff for Tcl/Tk man pages.
73 .if t .wh -1.3i ^B
74 .nr ^l \n(.l
75 .ad b
76 '\" # Start an argument description
77 .de AP
78 .ie !"\\$4"" .TP \\$4
79 .el \{\
80 . ie !"\\$2"" .TP \\n()Cu
81 . el .TP 15
82 .\}
83 .ta \\n()Au \\n()Bu
84 .ie !"\\$3"" \{\
85 \&\\$1 \\fI\\$2\\fP (\\$3)
86 .\".b
87 .\}
88 .el \{\
89 .br
90 .ie !"\\$2"" \{\
91 \&\\$1 \\fI\\$2\\fP
92 .\}
93 .el \{\
94 \&\\fI\\$1\\fP
95 .\}
96 .\}
98 '\" # define tabbing values for .AP
99 .de AS
100 .nr )A 10n
101 .if !"\\$1"" .nr )A \\w'\\$1'u+3n
102 .nr )B \\n()Au+15n
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
110 '\" # ^b = 1
111 .de BS
113 .mk ^y
114 .nr ^b 1u
115 .if n .nf
116 .if n .ti 0
117 .if n \l'\\n(.lu\(ul'
118 .if n .fi
120 '\" # BE - end boxed text (draw box now)
121 .de BE
123 .ti 0
124 .mk ^t
125 .ie n \l'\\n(^lu\(ul'
126 .el \{\
127 .\" Draw four-sided box normally, but don't draw top of
128 .\" box if the box started on an earlier page.
129 .ie !\\n(^b-1 \{\
130 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
132 .el \}\
133 \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
138 .nr ^b 0
140 '\" # VS - start vertical sidebar
141 '\" # ^Y = starting y location
142 '\" # ^v = 1 (for troff; for nroff this doesn't matter)
143 .de VS
144 .if !"\\$2"" .br
145 .mk ^Y
146 .ie n 'mc \s12\(br\s0
147 .el .nr ^v 1u
149 '\" # VE - end of vertical sidebar
150 .de VE
151 .ie n 'mc
152 .el \{\
153 .ev 2
155 .ti 0
156 .mk ^t
157 \h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
158 .sp -1
162 .nr ^v 0
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.
167 .de ^B
168 .ev 2
169 'ti 0
171 .mk ^t
172 .if \\n(^b \{\
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
178 .if \\n(^v \{\
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
185 .if \\n(^b \{\
186 .mk ^y
187 .nr ^b 2
189 .if \\n(^v \{\
190 .mk ^Y
193 '\" # DS - begin display
194 .de DS
199 '\" # DE - end display
200 .de DE
205 '\" # SO - start of list of standard options
206 .de SO
207 .SH "STANDARD OPTIONS"
210 .ta 5.5c 11c
211 .ft B
213 '\" # SE - end of list of standard options
214 .de SE
216 .ft R
218 See the \\fBoptions\\fR manual entry for details on the standard options.
220 '\" # OP - start of full description for a single option
221 .de OP
224 .ta 4c
225 Command-Line Name: \\fB\\$1\\fR
226 Database Name: \\fB\\$2\\fR
227 Database Class: \\fB\\$3\\fR
231 '\" # CS - begin code excerpt
232 .de CS
235 .ta .25i .5i .75i 1i
237 '\" # CE - end code excerpt
238 .de CE
242 .de UL
243 \\$1\l'|0\(ul'\\$2
245 .TH "Safe Tk" n 8.0 Tk "Tk Built-In Commands"
247 '\" Note: do not modify the .SH NAME line immediately below!
248 .SH NAME
249 loadTk \- 把 Tk 装载到一个安全解释器中。
250 .SH "总览 SYNOPSIS"
251 \fB::safe::loadTk \fIslave\fR ?\fB\-use\fR \fIwindowId\fR? ?\fB\-display\fR \fIdisplayName\fR?
254 Safe Tk 基于 Safe Tcl 之上,它提供一种机制,允许对自动装载和安全解释器的包的受限制和有中介的访问。Safe Tk 增加为安全 Tk 操作配置解释器和把 Tk 装载到安全解释器的功能。
256 .SH "描述 DESCRIPTION"
258 \fB::safe::loadTk\fR 命令在指明的解释器中初始化需要的数据结构并把 Tk 装载到其中。这个命令返回这个安全解释器的名字。如果指定了 \fB\-use\fR,使用由指定的系统决定的标识符 \fIwindowId\fR 所标识的窗口来包含这个解释器的 ``.'' 窗口;它可以是任何有效的 id,最终引用属于另一个应用的一个窗口。出于方便,如果你想要使用的窗口是应用的一个 Tk 窗口,则你可以使用这个窗口的名字(比如: \fB.x.y\fR)来替代它的窗口 Id (\fB[winfo id .x.y]\fR)。在未指定 \fB-use\fR 的时候,为这个安全解释器的 ``.'' 窗口建立一个新的顶层窗口。在 X11 上如果你想让嵌入的窗口使用其他的显示器而不是缺省的那个,可以用 \fB\-display\fR 指定它。实现的细节请参见下面的安全要点 (\fBSECURITY ISSUES\fR) 章节。
260 .SH "安全要点 SECURITY ISSUES"
262 请阅读 Tcl 的 \fBsafe\fR 手册页来获悉对 Safe Tcl 做的基本安全考虑。
264 \fB::safe::loadTk\fR 把从解释器接受的 \fBtk_library\fR 的值增加到安全解释器的虚拟路径上,这样自动装载就能在安全解释器中工作了。
267 就不信任从解释器对启动的陈述而论,Tk 初始化现在是安全的。\fB::safe::loadTk\fR 注册从解释器的名字,这样在调用 Tk 初始化(\fBTk_SafeInit\fR)和依次调用主解释器的 \fB::safe::InitTk\fR 的时候,它将返回想要的 \fBargv\fR 等价物(\fB\-use\fR \fIwindowId\fR,正确的 \fB\-display \fR等等...)。
269 在未使用 \fB\-use\fR 的时候,对新建立的顶层窗口进行特殊装饰,这样用户总能意识到呈现的用户界面来自潜在不安全的代码并可以轻易的删除相应的解释器。
271 在 X11 上,有冲突的 \fB\-use\fR 和 \fB\-display\fR 将生成一个致命的 X 错误。
273 .SH "参见 SEE ALSO"
274 safe(n), interp(n), library(n), load(n), package(n), source(n), unknown(n)
276 .SH "关键字 KEYWORDS"
277 alias, auto\-loading, auto_mkindex, load, master interpreter, safe
278 interpreter, slave interpreter, source
280 .SH "[中文版维护人]"
281 .B 寒蝉退士
282 .SH "[中文版最新更新]"
283 .B 2002/05/15
284 .SH "《中国 Linux 论坛 man 手册页翻译计划》:"
285 .BI http://cmpp.linuxforum.net