4603 lines
118 KiB
PostScript
4603 lines
118 KiB
PostScript
%!
|
|
%%BoundingBox: (atend)
|
|
%%Pages: (atend)
|
|
%%DocumentFonts: (atend)
|
|
%%EndComments
|
|
%%BeginProlog
|
|
%
|
|
% FrameMaker postscript_prolog 3.0, for use with FrameMaker 3.0
|
|
% This postscript_prolog file is Copyright (c) 1986-1991 Frame Technology
|
|
% Corporation. All rights reserved. This postscript_prolog file may be
|
|
% freely copied and distributed in conjunction with documents created using
|
|
% FrameMaker.
|
|
% NOTE
|
|
% This file fixes the problem with NeWS printers dithering color output.
|
|
% Any questions should be sent to mickey@magickingdom.eng.sun.com
|
|
%
|
|
% Known Problems:
|
|
% Due to bugs in Transcript, the 'PS-Adobe-' is omitted from line 1
|
|
/FMversion (3.0) def
|
|
% Set up Color vs. Black-and-White
|
|
|
|
/FMPrintInColor { % once-thru loop gimmick
|
|
% See if we're a NeWSprint printer
|
|
/currentcanvas where {
|
|
pop systemdict /separationdict known
|
|
exit
|
|
} if
|
|
% originally had the following, which should always be false:
|
|
% /currentcanvas where {
|
|
% pop currentcanvas /Color known {
|
|
% currentcanvas /Color get
|
|
% exit
|
|
% } if
|
|
% } if
|
|
systemdict /colorimage known
|
|
systemdict /currentcolortransfer known and
|
|
exit } loop def
|
|
|
|
% Uncomment the following line to force b&w on color printer
|
|
% /FMPrintInColor false def
|
|
/FrameDict 195 dict def
|
|
systemdict /errordict known not {/errordict 10 dict def
|
|
errordict /rangecheck {stop} put} if
|
|
% The readline in 23.0 doesn't recognize cr's as nl's on AppleTalk
|
|
FrameDict /tmprangecheck errordict /rangecheck get put
|
|
errordict /rangecheck {FrameDict /bug true put} put
|
|
FrameDict /bug false put
|
|
mark
|
|
% Some PS machines read past the CR, so keep the following 3 lines together!
|
|
currentfile 5 string readline
|
|
00
|
|
0000000000
|
|
cleartomark
|
|
errordict /rangecheck FrameDict /tmprangecheck get put
|
|
FrameDict /bug get {
|
|
/readline {
|
|
/gstring exch def
|
|
/gfile exch def
|
|
/gindex 0 def
|
|
{
|
|
gfile read pop
|
|
dup 10 eq {exit} if
|
|
dup 13 eq {exit} if
|
|
gstring exch gindex exch put
|
|
/gindex gindex 1 add def
|
|
} loop
|
|
pop
|
|
gstring 0 gindex getinterval true
|
|
} def
|
|
} if
|
|
/FMVERSION {
|
|
FMversion ne {
|
|
/Times-Roman findfont 18 scalefont setfont
|
|
100 100 moveto
|
|
(FrameMaker version does not match postscript_prolog!)
|
|
dup =
|
|
show showpage
|
|
} if
|
|
} def
|
|
/FMLOCAL {
|
|
FrameDict begin
|
|
0 def
|
|
end
|
|
} def
|
|
/gstring FMLOCAL
|
|
/gfile FMLOCAL
|
|
/gindex FMLOCAL
|
|
/orgxfer FMLOCAL
|
|
/orgproc FMLOCAL
|
|
/organgle FMLOCAL
|
|
/orgfreq FMLOCAL
|
|
/yscale FMLOCAL
|
|
/xscale FMLOCAL
|
|
/manualfeed FMLOCAL
|
|
/paperheight FMLOCAL
|
|
/paperwidth FMLOCAL
|
|
/FMDOCUMENT {
|
|
array /FMfonts exch def
|
|
/#copies exch def
|
|
FrameDict begin
|
|
0 ne dup {setmanualfeed} if
|
|
/manualfeed exch def
|
|
/paperheight exch def
|
|
/paperwidth exch def
|
|
/yscale exch def
|
|
/xscale exch def
|
|
currenttransfer cvlit /orgxfer exch def
|
|
currentscreen cvlit /orgproc exch def
|
|
/organgle exch def /orgfreq exch def
|
|
setpapername
|
|
manualfeed {true} {papersize} ifelse
|
|
{manualpapersize} {false} ifelse
|
|
{desperatepapersize} if
|
|
end
|
|
} def
|
|
/pagesave FMLOCAL
|
|
/orgmatrix FMLOCAL
|
|
/landscape FMLOCAL
|
|
/FMBEGINPAGE {
|
|
FrameDict begin
|
|
/pagesave save def
|
|
3.86 setmiterlimit
|
|
/landscape exch 0 ne def
|
|
landscape {
|
|
90 rotate 0 exch neg translate pop
|
|
}
|
|
{pop pop}
|
|
ifelse
|
|
xscale yscale scale
|
|
/orgmatrix matrix def
|
|
gsave
|
|
} def
|
|
/FMENDPAGE {
|
|
grestore
|
|
pagesave restore
|
|
end
|
|
showpage
|
|
} def
|
|
/FMFONTDEFINE {
|
|
FrameDict begin
|
|
findfont
|
|
ReEncode
|
|
1 index exch
|
|
definefont
|
|
FMfonts 3 1 roll
|
|
put
|
|
end
|
|
} def
|
|
/FMFILLS {
|
|
FrameDict begin
|
|
array /fillvals exch def
|
|
end
|
|
} def
|
|
/FMFILL {
|
|
FrameDict begin
|
|
fillvals 3 1 roll put
|
|
end
|
|
} def
|
|
/FMNORMALIZEGRAPHICS {
|
|
newpath
|
|
0.0 0.0 moveto
|
|
1 setlinewidth
|
|
0 setlinecap
|
|
0 0 0 sethsbcolor
|
|
0 setgray
|
|
} bind def
|
|
/fx FMLOCAL
|
|
/fy FMLOCAL
|
|
/fh FMLOCAL
|
|
/fw FMLOCAL
|
|
/llx FMLOCAL
|
|
/lly FMLOCAL
|
|
/urx FMLOCAL
|
|
/ury FMLOCAL
|
|
/FMBEGINEPSF {
|
|
end
|
|
/FMEPSF save def
|
|
/showpage {} def
|
|
FMNORMALIZEGRAPHICS
|
|
[/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall
|
|
fx fy translate
|
|
rotate
|
|
fw urx llx sub div fh ury lly sub div scale
|
|
llx neg lly neg translate
|
|
} bind def
|
|
/FMENDEPSF {
|
|
FMEPSF restore
|
|
FrameDict begin
|
|
} bind def
|
|
FrameDict begin
|
|
/setmanualfeed {
|
|
%%BeginFeature *ManualFeed True
|
|
statusdict /manualfeed true put
|
|
%%EndFeature
|
|
} def
|
|
/max {2 copy lt {exch} if pop} bind def
|
|
/min {2 copy gt {exch} if pop} bind def
|
|
/inch {72 mul} def
|
|
/pagedimen {
|
|
paperheight sub abs 16 lt exch
|
|
paperwidth sub abs 16 lt and
|
|
{/papername exch def} {pop} ifelse
|
|
} def
|
|
/papersizedict FMLOCAL
|
|
/setpapername {
|
|
/papersizedict 14 dict def
|
|
papersizedict begin
|
|
/papername /unknown def
|
|
/Letter 8.5 inch 11.0 inch pagedimen
|
|
/LetterSmall 7.68 inch 10.16 inch pagedimen
|
|
/Tabloid 11.0 inch 17.0 inch pagedimen
|
|
/Ledger 17.0 inch 11.0 inch pagedimen
|
|
/Legal 8.5 inch 14.0 inch pagedimen
|
|
/Statement 5.5 inch 8.5 inch pagedimen
|
|
/Executive 7.5 inch 10.0 inch pagedimen
|
|
/A3 11.69 inch 16.5 inch pagedimen
|
|
/A4 8.26 inch 11.69 inch pagedimen
|
|
/A4Small 7.47 inch 10.85 inch pagedimen
|
|
/B4 10.125 inch 14.33 inch pagedimen
|
|
/B5 7.16 inch 10.125 inch pagedimen
|
|
end
|
|
} def
|
|
/papersize {
|
|
papersizedict begin
|
|
/Letter {lettertray letter} def
|
|
/LetterSmall {lettertray lettersmall} def
|
|
/Tabloid {11x17tray 11x17} def
|
|
/Ledger {ledgertray ledger} def
|
|
/Legal {legaltray legal} def
|
|
/Statement {statementtray statement} def
|
|
/Executive {executivetray executive} def
|
|
/A3 {a3tray a3} def
|
|
/A4 {a4tray a4} def
|
|
/A4Small {a4tray a4small} def
|
|
/B4 {b4tray b4} def
|
|
/B5 {b5tray b5} def
|
|
/unknown {unknown} def
|
|
papersizedict dup papername known {papername} {/unknown} ifelse get
|
|
end
|
|
/FMdicttop countdictstack 1 add def
|
|
statusdict begin stopped end
|
|
countdictstack -1 FMdicttop {pop end} for
|
|
} def
|
|
/manualpapersize {
|
|
papersizedict begin
|
|
/Letter {letter} def
|
|
/LetterSmall {lettersmall} def
|
|
/Tabloid {11x17} def
|
|
/Ledger {ledger} def
|
|
/Legal {legal} def
|
|
/Statement {statement} def
|
|
/Executive {executive} def
|
|
/A3 {a3} def
|
|
/A4 {a4} def
|
|
/A4Small {a4small} def
|
|
/B4 {b4} def
|
|
/B5 {b5} def
|
|
/unknown {unknown} def
|
|
papersizedict dup papername known {papername} {/unknown} ifelse get
|
|
end
|
|
stopped
|
|
} def
|
|
/desperatepapersize {
|
|
statusdict /setpageparams known
|
|
{
|
|
paperwidth paperheight 0 1
|
|
statusdict begin
|
|
{setpageparams} stopped pop
|
|
end
|
|
} if
|
|
} def
|
|
/savematrix {
|
|
orgmatrix currentmatrix pop
|
|
} bind def
|
|
/restorematrix {
|
|
orgmatrix setmatrix
|
|
} bind def
|
|
/dmatrix matrix def
|
|
/dpi 72 0 dmatrix defaultmatrix dtransform
|
|
dup mul exch dup mul add sqrt def
|
|
/freq dpi 18.75 div 8 div round dup 0 eq {pop 1} if 8 mul dpi exch div def
|
|
/sangle 1 0 dmatrix defaultmatrix dtransform exch atan def
|
|
/DiacriticEncoding [
|
|
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
|
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
|
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
|
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
|
/.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl
|
|
/numbersign /dollar /percent /ampersand /quotesingle /parenleft
|
|
/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
|
|
/two /three /four /five /six /seven /eight /nine /colon /semicolon
|
|
/less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K
|
|
/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash
|
|
/bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h
|
|
/i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar
|
|
/braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute
|
|
/Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis
|
|
/atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis
|
|
/iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve
|
|
/ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex
|
|
/udieresis /dagger /.notdef /cent /sterling /section /bullet
|
|
/paragraph /germandbls /registered /copyright /trademark /acute
|
|
/dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef
|
|
/yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
|
/ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown
|
|
/exclamdown /logicalnot /.notdef /florin /.notdef /.notdef
|
|
/guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde
|
|
/Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright
|
|
/quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis
|
|
/fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl
|
|
/periodcentered /quotesinglbase /quotedblbase /perthousand
|
|
/Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute
|
|
/Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve
|
|
/Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron
|
|
/breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron
|
|
] def
|
|
/ReEncode {
|
|
dup
|
|
length
|
|
dict begin
|
|
{
|
|
1 index /FID ne
|
|
{def}
|
|
{pop pop} ifelse
|
|
} forall
|
|
0 eq {/Encoding DiacriticEncoding def} if
|
|
currentdict
|
|
end
|
|
} bind def
|
|
/graymode true def
|
|
/bwidth FMLOCAL
|
|
/bpside FMLOCAL
|
|
/bstring FMLOCAL
|
|
/onbits FMLOCAL
|
|
/offbits FMLOCAL
|
|
/xindex FMLOCAL
|
|
/yindex FMLOCAL
|
|
/x FMLOCAL
|
|
/y FMLOCAL
|
|
/setpattern {
|
|
/bwidth exch def
|
|
/bpside exch def
|
|
/bstring exch def
|
|
/onbits 0 def /offbits 0 def
|
|
freq sangle landscape {90 add} if
|
|
{/y exch def
|
|
/x exch def
|
|
/xindex x 1 add 2 div bpside mul cvi def
|
|
/yindex y 1 add 2 div bpside mul cvi def
|
|
bstring yindex bwidth mul xindex 8 idiv add get
|
|
1 7 xindex 8 mod sub bitshift and 0 ne
|
|
{/onbits onbits 1 add def 1}
|
|
{/offbits offbits 1 add def 0}
|
|
ifelse
|
|
}
|
|
setscreen
|
|
{} settransfer
|
|
offbits offbits onbits add div FMsetgray
|
|
/graymode false def
|
|
} bind def
|
|
/grayness {
|
|
FMsetgray
|
|
graymode not {
|
|
/graymode true def
|
|
orgxfer cvx settransfer
|
|
orgfreq organgle orgproc cvx setscreen
|
|
} if
|
|
} bind def
|
|
/HUE FMLOCAL
|
|
/SAT FMLOCAL
|
|
/BRIGHT FMLOCAL
|
|
/Colors FMLOCAL
|
|
FMPrintInColor
|
|
|
|
{
|
|
/HUE 0 def
|
|
/SAT 0 def
|
|
/BRIGHT 0 def
|
|
% array of arrays Hue and Sat values for the separations [HUE BRIGHT]
|
|
/Colors
|
|
[[0 0 ] % black
|
|
[0 0 ] % white
|
|
[0.00 1.0] % red
|
|
[0.37 1.0] % green
|
|
[0.60 1.0] % blue
|
|
[0.50 1.0] % cyan
|
|
[0.83 1.0] % magenta
|
|
[0.16 1.0] % comment / yellow
|
|
] def
|
|
|
|
/BEGINBITMAPCOLOR {
|
|
BITMAPCOLOR} def
|
|
/BEGINBITMAPCOLORc {
|
|
BITMAPCOLORc} def
|
|
/BEGINBITMAPTRUECOLOR {
|
|
BITMAPTRUECOLOR } def
|
|
/BEGINBITMAPTRUECOLORc {
|
|
BITMAPTRUECOLORc } def
|
|
/K {
|
|
Colors exch get dup
|
|
0 get /HUE exch store
|
|
1 get /BRIGHT exch store
|
|
HUE 0 eq BRIGHT 0 eq and
|
|
{1.0 SAT sub setgray}
|
|
{HUE SAT BRIGHT sethsbcolor}
|
|
ifelse
|
|
} def
|
|
/FMsetgray {
|
|
/SAT exch 1.0 exch sub store
|
|
HUE 0 eq BRIGHT 0 eq and
|
|
{1.0 SAT sub setgray}
|
|
{HUE SAT BRIGHT sethsbcolor}
|
|
ifelse
|
|
} bind def
|
|
}
|
|
|
|
{
|
|
/BEGINBITMAPCOLOR {
|
|
BITMAPGRAY} def
|
|
/BEGINBITMAPCOLORc {
|
|
BITMAPGRAYc} def
|
|
/BEGINBITMAPTRUECOLOR {
|
|
BITMAPTRUEGRAY } def
|
|
/BEGINBITMAPTRUECOLORc {
|
|
BITMAPTRUEGRAYc } def
|
|
/FMsetgray {setgray} bind def
|
|
/K {
|
|
pop
|
|
} def
|
|
}
|
|
ifelse
|
|
/normalize {
|
|
transform round exch round exch itransform
|
|
} bind def
|
|
/dnormalize {
|
|
dtransform round exch round exch idtransform
|
|
} bind def
|
|
/lnormalize {
|
|
0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop
|
|
} bind def
|
|
/H {
|
|
lnormalize setlinewidth
|
|
} bind def
|
|
/Z {
|
|
setlinecap
|
|
} bind def
|
|
/fillvals FMLOCAL
|
|
/X {
|
|
fillvals exch get
|
|
dup type /stringtype eq
|
|
{8 1 setpattern}
|
|
{grayness}
|
|
ifelse
|
|
} bind def
|
|
/V {
|
|
gsave eofill grestore
|
|
} bind def
|
|
/N {
|
|
stroke
|
|
} bind def
|
|
/M {newpath moveto} bind def
|
|
/E {lineto} bind def
|
|
/D {curveto} bind def
|
|
/O {closepath} bind def
|
|
/n FMLOCAL
|
|
/L {
|
|
/n exch def
|
|
newpath
|
|
normalize
|
|
moveto
|
|
2 1 n {pop normalize lineto} for
|
|
} bind def
|
|
/Y {
|
|
L
|
|
closepath
|
|
} bind def
|
|
/x1 FMLOCAL
|
|
/x2 FMLOCAL
|
|
/y1 FMLOCAL
|
|
/y2 FMLOCAL
|
|
/rad FMLOCAL
|
|
/R {
|
|
/y2 exch def
|
|
/x2 exch def
|
|
/y1 exch def
|
|
/x1 exch def
|
|
x1 y1
|
|
x2 y1
|
|
x2 y2
|
|
x1 y2
|
|
4 Y
|
|
} bind def
|
|
/RR {
|
|
/rad exch def
|
|
normalize
|
|
/y2 exch def
|
|
/x2 exch def
|
|
normalize
|
|
/y1 exch def
|
|
/x1 exch def
|
|
newpath
|
|
x1 y1 rad add moveto
|
|
x1 y2 x2 y2 rad arcto
|
|
x2 y2 x2 y1 rad arcto
|
|
x2 y1 x1 y1 rad arcto
|
|
x1 y1 x1 y2 rad arcto
|
|
closepath
|
|
16 {pop} repeat
|
|
} bind def
|
|
/C {
|
|
grestore
|
|
gsave
|
|
R
|
|
clip
|
|
} bind def
|
|
/FMpointsize FMLOCAL
|
|
/F {
|
|
FMfonts exch get
|
|
FMpointsize scalefont
|
|
setfont
|
|
} bind def
|
|
/Q {
|
|
/FMpointsize exch def
|
|
F
|
|
} bind def
|
|
/T {
|
|
moveto show
|
|
} bind def
|
|
/RF {
|
|
rotate
|
|
0 ne {-1 1 scale} if
|
|
} bind def
|
|
/TF {
|
|
gsave
|
|
moveto
|
|
RF
|
|
show
|
|
grestore
|
|
} bind def
|
|
/P {
|
|
moveto
|
|
0 32 3 2 roll widthshow
|
|
} bind def
|
|
/PF {
|
|
gsave
|
|
moveto
|
|
RF
|
|
0 32 3 2 roll widthshow
|
|
grestore
|
|
} bind def
|
|
/S {
|
|
moveto
|
|
0 exch ashow
|
|
} bind def
|
|
/SF {
|
|
gsave
|
|
moveto
|
|
RF
|
|
0 exch ashow
|
|
grestore
|
|
} bind def
|
|
/B {
|
|
moveto
|
|
0 32 4 2 roll 0 exch awidthshow
|
|
} bind def
|
|
/BF {
|
|
gsave
|
|
moveto
|
|
RF
|
|
0 32 4 2 roll 0 exch awidthshow
|
|
grestore
|
|
} bind def
|
|
/G {
|
|
gsave
|
|
newpath
|
|
normalize translate 0.0 0.0 moveto
|
|
dnormalize scale
|
|
0.0 0.0 1.0 5 3 roll arc
|
|
closepath fill
|
|
grestore
|
|
} bind def
|
|
/A {
|
|
gsave
|
|
savematrix
|
|
newpath
|
|
2 index 2 div add exch 3 index 2 div sub exch
|
|
normalize 2 index 2 div sub exch 3 index 2 div add exch
|
|
translate
|
|
scale
|
|
0.0 0.0 1.0 5 3 roll arc
|
|
restorematrix
|
|
stroke
|
|
grestore
|
|
} bind def
|
|
/x FMLOCAL
|
|
/y FMLOCAL
|
|
/w FMLOCAL
|
|
/h FMLOCAL
|
|
/xx FMLOCAL
|
|
/yy FMLOCAL
|
|
/ww FMLOCAL
|
|
/hh FMLOCAL
|
|
/FMsaveobject FMLOCAL
|
|
/FMoptop FMLOCAL
|
|
/FMdicttop FMLOCAL
|
|
/BEGINPRINTCODE {
|
|
/FMdicttop countdictstack 1 add def
|
|
/FMoptop count 4 sub def
|
|
/FMsaveobject save def
|
|
userdict begin
|
|
/showpage {} def
|
|
FMNORMALIZEGRAPHICS
|
|
3 index neg 3 index neg translate
|
|
} bind def
|
|
/ENDPRINTCODE {
|
|
count -1 FMoptop {pop pop} for
|
|
countdictstack -1 FMdicttop {pop end} for
|
|
FMsaveobject restore
|
|
} bind def
|
|
/gn {
|
|
0
|
|
{ 46 mul
|
|
cf read pop
|
|
32 sub
|
|
dup 46 lt {exit} if
|
|
46 sub add
|
|
} loop
|
|
add
|
|
} bind def
|
|
/str FMLOCAL
|
|
/cfs {
|
|
/str sl string def
|
|
0 1 sl 1 sub {str exch val put} for
|
|
str def
|
|
} bind def
|
|
/ic [
|
|
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223
|
|
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223
|
|
0
|
|
{0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx}
|
|
{10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx}
|
|
{19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12}
|
|
{13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh}
|
|
{4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh}
|
|
{13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl}
|
|
{7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl}
|
|
{0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl}
|
|
{10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl}
|
|
] def
|
|
/sl FMLOCAL
|
|
/val FMLOCAL
|
|
/ws FMLOCAL
|
|
/im FMLOCAL
|
|
/bs FMLOCAL
|
|
/cs FMLOCAL
|
|
/len FMLOCAL
|
|
/pos FMLOCAL
|
|
/ms {
|
|
/sl exch def
|
|
/val 255 def
|
|
/ws cfs
|
|
/im cfs
|
|
/val 0 def
|
|
/bs cfs
|
|
/cs cfs
|
|
} bind def
|
|
400 ms
|
|
/ip {
|
|
is
|
|
0
|
|
cf cs readline pop
|
|
{ ic exch get exec
|
|
add
|
|
} forall
|
|
pop
|
|
|
|
} bind def
|
|
/wh {
|
|
/len exch def
|
|
/pos exch def
|
|
ws 0 len getinterval im pos len getinterval copy pop
|
|
pos len
|
|
} bind def
|
|
/bl {
|
|
/len exch def
|
|
/pos exch def
|
|
bs 0 len getinterval im pos len getinterval copy pop
|
|
pos len
|
|
} bind def
|
|
/s1 1 string def
|
|
/fl {
|
|
/len exch def
|
|
/pos exch def
|
|
/val cf s1 readhexstring pop 0 get def
|
|
pos 1 pos len add 1 sub {im exch val put} for
|
|
pos len
|
|
} bind def
|
|
/hx {
|
|
3 copy getinterval
|
|
cf exch readhexstring pop pop
|
|
} bind def
|
|
/h FMLOCAL
|
|
/w FMLOCAL
|
|
/d FMLOCAL
|
|
/lb FMLOCAL
|
|
/bitmapsave FMLOCAL
|
|
/is FMLOCAL
|
|
/cf FMLOCAL
|
|
/wbytes {
|
|
dup
|
|
8 eq {pop} {1 eq {7 add 8 idiv} {3 add 4 idiv} ifelse} ifelse
|
|
} bind def
|
|
/BEGINBITMAPBWc {
|
|
1 {} COMMONBITMAPc
|
|
} bind def
|
|
/BEGINBITMAPGRAYc {
|
|
8 {} COMMONBITMAPc
|
|
} bind def
|
|
/BEGINBITMAP2BITc {
|
|
2 {} COMMONBITMAPc
|
|
} bind def
|
|
/COMMONBITMAPc {
|
|
/r exch def
|
|
/d exch def
|
|
gsave
|
|
translate rotate scale /h exch def /w exch def
|
|
/lb w d wbytes def
|
|
sl lb lt {lb ms} if
|
|
/bitmapsave save def
|
|
r
|
|
/is im 0 lb getinterval def
|
|
ws 0 lb getinterval is copy pop
|
|
/cf currentfile def
|
|
w h d [w 0 0 h neg 0 h]
|
|
{ip} image
|
|
bitmapsave restore
|
|
grestore
|
|
} bind def
|
|
/BEGINBITMAPBW {
|
|
1 {} COMMONBITMAP
|
|
} bind def
|
|
/BEGINBITMAPGRAY {
|
|
8 {} COMMONBITMAP
|
|
} bind def
|
|
/BEGINBITMAP2BIT {
|
|
2 {} COMMONBITMAP
|
|
} bind def
|
|
/COMMONBITMAP {
|
|
/r exch def
|
|
/d exch def
|
|
gsave
|
|
translate rotate scale /h exch def /w exch def
|
|
/bitmapsave save def
|
|
r
|
|
/is w d wbytes string def
|
|
/cf currentfile def
|
|
w h d [w 0 0 h neg 0 h]
|
|
{cf is readhexstring pop} image
|
|
bitmapsave restore
|
|
grestore
|
|
} bind def
|
|
/proc1 FMLOCAL
|
|
/proc2 FMLOCAL
|
|
/newproc FMLOCAL
|
|
/Fmcc {
|
|
/proc2 exch cvlit def
|
|
/proc1 exch cvlit def
|
|
/newproc proc1 length proc2 length add array def
|
|
newproc 0 proc1 putinterval
|
|
newproc proc1 length proc2 putinterval
|
|
newproc cvx
|
|
} bind def
|
|
/ngrayt 256 array def
|
|
/nredt 256 array def
|
|
/nbluet 256 array def
|
|
/ngreent 256 array def
|
|
/gryt FMLOCAL
|
|
/blut FMLOCAL
|
|
/grnt FMLOCAL
|
|
/redt FMLOCAL
|
|
/indx FMLOCAL
|
|
/cynu FMLOCAL
|
|
/magu FMLOCAL
|
|
/yelu FMLOCAL
|
|
/k FMLOCAL
|
|
/u FMLOCAL
|
|
/colorsetup {
|
|
currentcolortransfer
|
|
/gryt exch def
|
|
/blut exch def
|
|
/grnt exch def
|
|
/redt exch def
|
|
0 1 255 {
|
|
/indx exch def
|
|
/cynu 1 red indx get 255 div sub def
|
|
/magu 1 green indx get 255 div sub def
|
|
/yelu 1 blue indx get 255 div sub def
|
|
/k cynu magu min yelu min def
|
|
/u k currentundercolorremoval exec def
|
|
nredt indx 1 0 cynu u sub max sub redt exec put
|
|
ngreent indx 1 0 magu u sub max sub grnt exec put
|
|
nbluet indx 1 0 yelu u sub max sub blut exec put
|
|
ngrayt indx 1 k currentblackgeneration exec sub gryt exec put
|
|
} for
|
|
{255 mul cvi nredt exch get}
|
|
{255 mul cvi ngreent exch get}
|
|
{255 mul cvi nbluet exch get}
|
|
{255 mul cvi ngrayt exch get}
|
|
setcolortransfer
|
|
{pop 0} setundercolorremoval
|
|
{} setblackgeneration
|
|
} bind def
|
|
/tran FMLOCAL
|
|
/fakecolorsetup {
|
|
/tran 256 string def
|
|
0 1 255 {/indx exch def
|
|
tran indx
|
|
red indx get 77 mul
|
|
green indx get 151 mul
|
|
blue indx get 28 mul
|
|
add add 256 idiv put} for
|
|
currenttransfer
|
|
{255 mul cvi tran exch get 255.0 div}
|
|
exch Fmcc settransfer
|
|
} bind def
|
|
/BITMAPCOLOR {
|
|
/d 8 def
|
|
gsave
|
|
translate rotate scale /h exch def /w exch def
|
|
/bitmapsave save def
|
|
colorsetup
|
|
/is w d wbytes string def
|
|
/cf currentfile def
|
|
w h d [w 0 0 h neg 0 h]
|
|
{cf is readhexstring pop} {is} {is} true 3 colorimage
|
|
bitmapsave restore
|
|
grestore
|
|
} bind def
|
|
/BITMAPCOLORc {
|
|
/d 8 def
|
|
gsave
|
|
translate rotate scale /h exch def /w exch def
|
|
/lb w d wbytes def
|
|
sl lb lt {lb ms} if
|
|
/bitmapsave save def
|
|
colorsetup
|
|
/is im 0 lb getinterval def
|
|
ws 0 lb getinterval is copy pop
|
|
/cf currentfile def
|
|
w h d [w 0 0 h neg 0 h]
|
|
{ip} {is} {is} true 3 colorimage
|
|
bitmapsave restore
|
|
grestore
|
|
} bind def
|
|
/BITMAPTRUECOLORc {
|
|
gsave
|
|
translate rotate scale /h exch def /w exch def
|
|
/bitmapsave save def
|
|
|
|
/is w string def
|
|
|
|
ws 0 w getinterval is copy pop
|
|
/cf currentfile def
|
|
w h 8 [w 0 0 h neg 0 h]
|
|
{ip} {gip} {bip} true 3 colorimage
|
|
bitmapsave restore
|
|
grestore
|
|
} bind def
|
|
/BITMAPTRUECOLOR {
|
|
gsave
|
|
translate rotate scale /h exch def /w exch def
|
|
/bitmapsave save def
|
|
/is w string def
|
|
/gis w string def
|
|
/bis w string def
|
|
/cf currentfile def
|
|
w h 8 [w 0 0 h neg 0 h]
|
|
{ cf is readhexstring pop }
|
|
{ cf gis readhexstring pop }
|
|
{ cf bis readhexstring pop }
|
|
true 3 colorimage
|
|
bitmapsave restore
|
|
grestore
|
|
} bind def
|
|
/BITMAPTRUEGRAYc {
|
|
gsave
|
|
translate rotate scale /h exch def /w exch def
|
|
/bitmapsave save def
|
|
|
|
/is w string def
|
|
|
|
ws 0 w getinterval is copy pop
|
|
/cf currentfile def
|
|
w h 8 [w 0 0 h neg 0 h]
|
|
{ip gip bip w gray} image
|
|
bitmapsave restore
|
|
grestore
|
|
} bind def
|
|
/ww FMLOCAL
|
|
/r FMLOCAL
|
|
/g FMLOCAL
|
|
/b FMLOCAL
|
|
/i FMLOCAL
|
|
/gray {
|
|
/ww exch def
|
|
/b exch def
|
|
/g exch def
|
|
/r exch def
|
|
0 1 ww 1 sub { /i exch def r i get .299 mul g i get .587 mul
|
|
b i get .114 mul add add r i 3 -1 roll floor cvi put } for
|
|
r
|
|
} bind def
|
|
/BITMAPTRUEGRAY {
|
|
gsave
|
|
translate rotate scale /h exch def /w exch def
|
|
/bitmapsave save def
|
|
/is w string def
|
|
/gis w string def
|
|
/bis w string def
|
|
/cf currentfile def
|
|
w h 8 [w 0 0 h neg 0 h]
|
|
{ cf is readhexstring pop
|
|
cf gis readhexstring pop
|
|
cf bis readhexstring pop w gray} image
|
|
bitmapsave restore
|
|
grestore
|
|
} bind def
|
|
/BITMAPGRAY {
|
|
8 {fakecolorsetup} COMMONBITMAP
|
|
} bind def
|
|
/BITMAPGRAYc {
|
|
8 {fakecolorsetup} COMMONBITMAPc
|
|
} bind def
|
|
/ENDBITMAP {
|
|
} bind def
|
|
end
|
|
/ALDsave FMLOCAL
|
|
/ALDmatrix matrix def ALDmatrix currentmatrix pop
|
|
/StartALD {
|
|
/ALDsave save def
|
|
savematrix
|
|
ALDmatrix setmatrix
|
|
} bind def
|
|
/InALD {
|
|
restorematrix
|
|
} bind def
|
|
/DoneALD {
|
|
ALDsave restore
|
|
} bind def
|
|
%%EndProlog
|
|
%%BeginSetup
|
|
(3.0) FMVERSION
|
|
1 1 612 792 0 1 13 FMDOCUMENT
|
|
0 0 /Helvetica-Bold FMFONTDEFINE
|
|
1 0 /Times-Bold FMFONTDEFINE
|
|
2 0 /Times-Italic FMFONTDEFINE
|
|
3 0 /Times-Roman FMFONTDEFINE
|
|
4 0 /Helvetica FMFONTDEFINE
|
|
5 0 /Courier FMFONTDEFINE
|
|
6 0 /Courier-Oblique FMFONTDEFINE
|
|
32 FMFILLS
|
|
0 0 FMFILL
|
|
1 0.1 FMFILL
|
|
2 0.3 FMFILL
|
|
3 0.5 FMFILL
|
|
4 0.7 FMFILL
|
|
5 0.9 FMFILL
|
|
6 0.97 FMFILL
|
|
7 1 FMFILL
|
|
8 <0f1e3c78f0e1c387> FMFILL
|
|
9 <0f87c3e1f0783c1e> FMFILL
|
|
10 <cccccccccccccccc> FMFILL
|
|
11 <ffff0000ffff0000> FMFILL
|
|
12 <8142241818244281> FMFILL
|
|
13 <03060c183060c081> FMFILL
|
|
14 <8040201008040201> FMFILL
|
|
16 1 FMFILL
|
|
17 0.9 FMFILL
|
|
18 0.7 FMFILL
|
|
19 0.5 FMFILL
|
|
20 0.3 FMFILL
|
|
21 0.1 FMFILL
|
|
22 0.03 FMFILL
|
|
23 0 FMFILL
|
|
24 <f0e1c3870f1e3c78> FMFILL
|
|
25 <f0783c1e0f87c3e1> FMFILL
|
|
26 <3333333333333333> FMFILL
|
|
27 <0000ffff0000ffff> FMFILL
|
|
28 <7ebddbe7e7dbbd7e> FMFILL
|
|
29 <fcf9f3e7cf9f3f7e> FMFILL
|
|
30 <7fbfdfeff7fbfdfe> FMFILL
|
|
%%EndSetup
|
|
%%Page: "1" 1
|
|
%%BeginPaperSize: Letter
|
|
%%EndPaperSize
|
|
612 792 0 FMBEGINPAGE
|
|
98.1 675 512.1 675 2 L
|
|
7 X
|
|
0 K
|
|
V
|
|
2 H
|
|
0 Z
|
|
0 X
|
|
N
|
|
98.1 450 512.1 450 2 L
|
|
7 X
|
|
V
|
|
2 Z
|
|
0 X
|
|
N
|
|
98.1 108 512.1 126 R
|
|
7 X
|
|
V
|
|
0 10 Q
|
|
0 X
|
|
(1) 506.54 119.33 T
|
|
1 24 Q
|
|
-0.48 (Tk4.0 Overview and Porting Guide) 152.1 605 S
|
|
2 12 Q
|
|
(John Ouster) 152.1 563 T
|
|
(hout) 210.84 563 T
|
|
98.1 135 512.1 423 R
|
|
7 X
|
|
V
|
|
3 10 Q
|
|
0 X
|
|
(Tk version 4.0 is a major new release with many improvements, new features, and bug) 152.1 416.33 T
|
|
(\336xes. This document provides an introduction to the new features and describes the most) 152.1 404.33 T
|
|
-0.18 (common problems you are likely to encounter when porting scripts from Tk 3.6, the previ-) 152.1 392.33 P
|
|
(ous release. This is) 152.1 380.33 T
|
|
2 F
|
|
(not) 230.66 380.33 T
|
|
3 F
|
|
( an introduction to Tk: I assume that you are already familiar with) 243.43 380.33 T
|
|
(Tk 3.6 as described in the book) 152.1 368.33 T
|
|
2 F
|
|
(T) 279.79 368.33 T
|
|
(cl and the Tk T) 284.43 368.33 T
|
|
(oolkit) 343.48 368.33 T
|
|
3 F
|
|
(.) 366.24 368.33 T
|
|
-0.26 (The good news about Tk 4.0 is that it has many improvements over Tk 3.6. Here are a) 170.1 356.33 P
|
|
(few of the most important new features:) 152.1 344.33 T
|
|
3 12 Q
|
|
(\245) 152.1 329.33 T
|
|
3 10 Q
|
|
(Tk 4.0 includes a general-purpose mechanism for manipulating color images \050Tk 3.6) 162.9 329.33 T
|
|
(supports only monochrome images\051.) 162.9 317.33 T
|
|
3 12 Q
|
|
(\245) 152.1 302.33 T
|
|
3 10 Q
|
|
-0.17 (The text widget in Tk 4.0 includes many new features such as tab stops, embedded win-) 162.9 302.33 P
|
|
(dows, horizontal scrolling, and many new formatting options.) 162.9 290.33 T
|
|
3 12 Q
|
|
(\245) 152.1 275.33 T
|
|
3 10 Q
|
|
(The binding mechanism in Tk 4.0 is much more powerful in Tk 3.6.) 162.9 275.33 T
|
|
3 12 Q
|
|
(\245) 152.1 260.33 T
|
|
3 10 Q
|
|
(Motif compliance is much better) 162.9 260.33 T
|
|
(. For example, there is now support for keyboard tra-) 292.82 260.33 T
|
|
(versal and focus highlights.) 162.9 248.33 T
|
|
3 12 Q
|
|
(\245) 152.1 233.33 T
|
|
3 10 Q
|
|
(Many widgets have been improved. For example, buttons and labels can display multi-) 162.9 233.33 T
|
|
(line justi\336ed text, and scales can handle real values.) 162.9 221.33 T
|
|
(The bad news about Tk 4.0 is that it contains several incompatibilities with Tk 3.6.) 170.1 206.33 T
|
|
(Ever since the \336rst release of Tk I have assumed that there would eventually be a major) 152.1 194.33 T
|
|
(new release of Tk with substantial incompatibilities. I knew that I wouldn\325) 152.1 182.33 T
|
|
(t be able to get) 450.06 182.33 T
|
|
(all of the features of Tk right the \336rst time; rather than live forever with all of my early) 152.1 170.33 T
|
|
(mistakes, I wanted to have a chance to correct them. Tk 4.0 is that correction. I apologize) 152.1 158.33 T
|
|
-0.05 (for the incompatibilities, but I hope they improve Tk enough to justify the dif) 152.1 146.33 P
|
|
-0.05 (\336culties you) 460.55 146.33 P
|
|
44.1 351 98.1 423 C
|
|
35.1 360 197.1 414 R
|
|
7 X
|
|
0 K
|
|
V
|
|
1 9 Q
|
|
0 X
|
|
(FIGURE 1) 35.1 408 T
|
|
(T) 35.1 387 T
|
|
(ABLE 1) 40.43 387 T
|
|
26.1 351 125.1 423 R
|
|
7 X
|
|
V
|
|
40.5 63 571.5 729 C
|
|
FMENDPAGE
|
|
%%EndPage: "1" 2
|
|
%%Page: "2" 2
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(2) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 F
|
|
0 X
|
|
(encounter during porting. Tk 4.0 is a one-time correction: we will try very hard to avoid) 152.1 632.33 T
|
|
(substantial incompatibilities \050especially in Tk\325) 152.1 620.3 T
|
|
(s T) 337 620.3 T
|
|
(cl-level interfaces\051 in future releases.) 348.79 620.3 T
|
|
-0.4 (Sections 1-1) 170.1 608.3 P
|
|
-0.4 (1 cover the major areas of change in Tk 4.0: bindings, focus, text widgets,) 219.02 608.3 P
|
|
-0 (Motif compliance, other widget changes, images, color management, event handling, sup-) 152.1 596.26 P
|
|
(port for multiple displays, the) 152.1 584.23 T
|
|
5 F
|
|
(send) 273.14 584.23 T
|
|
3 F
|
|
( command, and the selection. Section 12 summarizes) 297.13 584.23 T
|
|
(several smaller changes. Section 13 lists all of the incompatibilities that af) 152.1 572.19 T
|
|
(fect T) 448.4 572.19 T
|
|
(cl scripts,) 471.29 572.19 T
|
|
-0.02 (along with suggestions for how to deal with them. The explanations here are not intended) 152.1 560.16 P
|
|
(to be comprehensive, but rather to introduce you to the issues; for complete information) 152.1 548.12 T
|
|
(on new or modi\336ed commands, refer to the reference documentation that comes with the) 152.1 536.09 T
|
|
(distribution.) 152.1 524.05 T
|
|
98.1 480.7 512.1 483.72 C
|
|
152.1 481.92 512.1 481.92 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 482.21 143.1 482.21 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(1) 134.63 487.72 T
|
|
(Bindings) 152.1 487.72 T
|
|
3 10 Q
|
|
-0.35 (The changes for Tk 4.0 that are most likely to af) 152.1 464.03 P
|
|
-0.35 (fect existing T) 341.31 464.03 P
|
|
-0.35 (cl scripts are those related to) 397.64 464.03 P
|
|
(bindings. The new binding mechanism in Tk 4.0 is much more powerful than that of Tk) 152.1 452 T
|
|
(3.6, particularly in the way it allows behaviors to be combined, but several incompatible) 152.1 439.96 T
|
|
(changes were required to implement the new features. These changes are likely to break) 152.1 427.93 T
|
|
(most Tk 3.6 scripts. Fortunately) 152.1 415.89 T
|
|
(, it is relatively easy to upgrade your bindings to work) 279.16 415.89 T
|
|
(under Tk 4.0.) 152.1 403.86 T
|
|
-0.27 (The basic mechanism for bindings is the same as in Tk 3.6. A binding associates a T) 170.1 391.86 P
|
|
-0.27 (cl) 502.65 391.86 P
|
|
(script with a particular event \050or sequence of events\051 occurring in one or more windows;) 152.1 379.82 T
|
|
-0.11 (the script will be invoked automatically whenever the event sequence occurs in any of the) 152.1 367.79 P
|
|
-0.13 (speci\336ed windows. The Tk 4.0 binding mechanism has three major feature changes. First,) 152.1 355.75 P
|
|
(there is a more general mechanism for specifying the relationship between windows and) 152.1 343.72 T
|
|
(bindings, called) 152.1 331.68 T
|
|
2 F
|
|
(binding tags) 217.89 331.68 T
|
|
3 F
|
|
(. Second, the con\337ict resolution mechanism \050which is) 267.6 331.68 T
|
|
(invoked when more than one binding matches an event\051 has been changed to allow more) 152.1 319.65 T
|
|
(than one binding script to execute for a single event. Third, the) 152.1 307.61 T
|
|
5 F
|
|
(Any) 405.81 307.61 T
|
|
3 F
|
|
( modi\336er is now) 423.8 307.61 T
|
|
(implicit in all binding patterns. These changes are discussed separately in the subsections) 152.1 295.58 T
|
|
(that follow) 152.1 283.54 T
|
|
(.) 195.04 283.54 T
|
|
-0.16 (Overall, the main ef) 170.1 271.54 P
|
|
-0.16 (fect of Tk 4.0\325) 249.37 271.54 P
|
|
-0.16 (s binding changes is that it allows more bindings to) 306.06 271.54 P
|
|
(trigger than Tk 3.6 does. Feedback from the T) 152.1 259.51 T
|
|
(cl/Tk community about the Tk 3.6 binding) 335.71 259.51 T
|
|
(mechanism indicated that it was too conservative about triggering bindings. This caused) 152.1 247.47 T
|
|
(the system to lose behaviors relatively easily and made the binding structure fragile. It) 152.1 235.44 T
|
|
-0.35 (appears to be easier to deal with too many binding invocations than too few) 152.1 223.4 P
|
|
-0.35 (, so Tk 4.0 tries) 449.17 223.4 P
|
|
(to err in this direction.) 152.1 211.37 T
|
|
0 F
|
|
(1.1) 127.41 181.37 T
|
|
(Binding tags) 152.1 181.37 T
|
|
3 F
|
|
(In Tk 3.6 you specify the window\050s\051 for a binding in one of three ways:) 152.1 165.37 T
|
|
3 12 Q
|
|
(\245) 152.1 150.37 T
|
|
3 10 Q
|
|
(Y) 162.9 150.37 T
|
|
(ou give the name of a window) 169.12 150.37 T
|
|
(, such as) 289.49 150.37 T
|
|
5 F
|
|
(.a.b.c) 326.13 150.37 T
|
|
3 F
|
|
(, in which case the binding applies) 362.11 150.37 T
|
|
(only to that window) 162.9 138.33 T
|
|
(.) 242.49 138.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "2" 3
|
|
%%Page: "3" 3
|
|
612 792 0 FMBEGINPAGE
|
|
4 10 Q
|
|
0 X
|
|
0 K
|
|
(1 Bindings) 98.1 668.33 T
|
|
0 F
|
|
(3) 506.54 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 12 Q
|
|
0 X
|
|
(\245) 152.1 632.33 T
|
|
3 10 Q
|
|
-0.06 (Y) 162.9 632.33 P
|
|
-0.06 (ou give the name of a class, such as) 169.12 632.33 P
|
|
5 F
|
|
-0.15 (Button) 313.45 632.33 P
|
|
3 F
|
|
-0.06 (, in which case the binding applies to all) 349.43 632.33 P
|
|
(the windows of that class.) 162.9 620.33 T
|
|
3 12 Q
|
|
(\245) 152.1 605.33 T
|
|
3 10 Q
|
|
(Y) 162.9 605.33 T
|
|
(ou specify) 169.12 605.33 T
|
|
5 F
|
|
(all) 212.97 605.33 T
|
|
3 F
|
|
(, in which case the binding applies to all windows.) 230.96 605.33 T
|
|
-0.3 (In Tk4.0 you specify the window\050s\051 using a more general mechanism called a) 170.1 590.33 P
|
|
2 F
|
|
-0.3 (binding) 479.35 590.33 P
|
|
(tag) 152.1 578.33 T
|
|
3 F
|
|
(. A binding tag may be an arbitrary string, but if it starts with a \322.\323 then it must be the) 164.87 578.33 T
|
|
(name of a window) 152.1 566.33 T
|
|
(. If you specify a class name or) 225.56 566.33 T
|
|
5 F
|
|
(all) 352.4 566.33 T
|
|
3 F
|
|
( as a binding tag, it will usually) 370.39 566.33 T
|
|
-0.1 (have the same ef) 152.1 554.33 P
|
|
-0.1 (fect as in Tk 3.6, but you may also specify other strings that were not per-) 218.51 554.33 P
|
|
(mitted in Tk 3.6.) 152.1 542.33 T
|
|
-0.07 (Each window in Tk 4.0 has a list of binding tags. When an event occurs in a window) 170.1 530.33 P
|
|
-0.07 (,) 507.17 530.33 P
|
|
-0.19 (Tk fetches the window\325) 152.1 518.33 P
|
|
-0.19 (s binding tags and matches the event against all of the bindings for) 245.62 518.33 P
|
|
-0.09 (any of the tags. By default, the binding tags for a window consist of the window name, its) 152.1 506.33 P
|
|
-0.14 (class name, the name of its nearest toplevel ancestor) 152.1 494.33 P
|
|
-0.14 (, and) 359.61 494.33 P
|
|
5 F
|
|
-0.33 (all) 381.26 494.33 P
|
|
3 F
|
|
-0.14 (. For example, a button win-) 399.25 494.33 P
|
|
(dow named) 152.1 482.33 T
|
|
5 F
|
|
(.b) 200.95 482.33 T
|
|
3 F
|
|
( will have the tags) 212.95 482.33 T
|
|
5 9 Q
|
|
(.b Button . all) 179.1 468 T
|
|
3 10 Q
|
|
(by default and all of the following bindings will apply to the window:) 152.1 454.33 T
|
|
5 9 Q
|
|
(bind .b <Enter> {identify "press here to exit"}) 179.1 440 T
|
|
(bind Button <Button-Release-1> {%W invoke}) 179.1 430 T
|
|
(bind all <Help> {help %W}) 179.1 420 T
|
|
3 10 Q
|
|
(So far) 152.1 406.33 T
|
|
(, this mechanism produces the same behavior as in Tk 3.6 except that bindings cre-) 175.85 406.33 T
|
|
(ated for a toplevel also apply to its descendants \050see Section 1.5 for more on this issue\051.) 152.1 394.33 T
|
|
(Y) 170.1 382.33 T
|
|
(ou can use the) 176.32 382.33 T
|
|
5 F
|
|
(bindtags) 235.71 382.33 T
|
|
3 F
|
|
( command to change the binding tags for a window or) 283.69 382.33 T
|
|
(their order) 152.1 370.33 T
|
|
(. For example, the command) 193.46 370.33 T
|
|
5 9 Q
|
|
(bindtags .b {.b MyButton all}) 179.1 356 T
|
|
3 10 Q
|
|
(will change the binding tags for) 152.1 342.33 T
|
|
5 F
|
|
(.b) 281.46 342.33 T
|
|
3 F
|
|
( to the three values in the list. This provides a simple) 293.45 342.33 T
|
|
(way to make radical changes the behavior of a window) 152.1 330.33 T
|
|
(. After the above command is) 371.55 330.33 T
|
|
(invoked none of the) 152.1 318.33 T
|
|
5 F
|
|
(Button) 234.26 318.33 T
|
|
3 F
|
|
( class bindings will apply to) 270.24 318.33 T
|
|
5 F
|
|
(.b) 384.63 318.33 T
|
|
3 F
|
|
(. Instead, bindings for) 396.63 318.33 T
|
|
5 F
|
|
-0.81 (MyButton) 152.1 306.33 P
|
|
3 F
|
|
-0.34 ( will apply; this might give the button a totally dif) 200.07 306.33 P
|
|
-0.34 (ferent set of behaviors than a) 395.88 306.33 P
|
|
(normal button. In addition, the) 152.1 294.33 T
|
|
5 F
|
|
(bindtags) 276.75 294.33 T
|
|
3 F
|
|
( command removes the \322.\323 tag, so bindings on) 324.72 294.33 T
|
|
(\322.\323 will not apply to) 152.1 282.33 T
|
|
5 F
|
|
(.b) 234.27 282.33 T
|
|
3 F
|
|
(.) 246.27 282.33 T
|
|
(Y) 170.1 270.33 T
|
|
(ou can also place additional tags on a window with the) 176.32 270.33 T
|
|
5 F
|
|
(bindtags) 397.55 270.33 T
|
|
3 F
|
|
( command to) 445.53 270.33 T
|
|
(combine a number of behaviors. For example,) 152.1 258.33 T
|
|
5 9 Q
|
|
(bindtags .b {.b MyButton Button . all}) 179.1 244 T
|
|
3 10 Q
|
|
(gives) 152.1 230.33 T
|
|
5 F
|
|
(.b) 175.7 230.33 T
|
|
3 F
|
|
( the behaviors of) 187.69 230.33 T
|
|
5 F
|
|
(MyButton) 257.08 230.33 T
|
|
3 F
|
|
( bindings as well as those speci\336ed by) 305.06 230.33 T
|
|
5 F
|
|
(Button) 459.96 230.33 T
|
|
3 F
|
|
(bindings.) 152.1 218.33 T
|
|
(Overall, binding tags are similar to the tag mechanisms already used internally by) 170.1 206.33 T
|
|
(canvas and text widgets in Tk 3.6, except that binding tags apply to windows instead of) 152.1 194.33 T
|
|
(graphical objects or textual characters.) 152.1 182.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "3" 4
|
|
%%Page: "4" 4
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(4) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
0 F
|
|
0 X
|
|
(1.2) 127.41 632.33 T
|
|
(Con\337ict resolution) 152.1 632.33 T
|
|
3 F
|
|
(It is possible for several bindings to match a particular event. In Tk 3.6 at most one event) 152.1 616.33 T
|
|
(is actually allowed to trigger: a set of con\337ict resolution rules determines the winner) 152.1 604.22 T
|
|
(. In) 488.27 604.22 T
|
|
(general, a more speci\336c binding takes precedence over a less speci\336c binding. For exam-) 152.1 592.11 T
|
|
-0.27 (ple, any binding for a speci\336c widget takes precedence over any class or) 152.1 580 P
|
|
5 F
|
|
-0.66 (all) 439.96 580 P
|
|
3 F
|
|
-0.27 ( binding, and) 457.95 580 P
|
|
(a binding on) 152.1 567.89 T
|
|
5 F
|
|
(<Control-a>) 204.57 567.89 T
|
|
3 F
|
|
( takes precedence over a binding on) 270.54 567.89 T
|
|
5 F
|
|
(<KeyPress>.) 416.24 567.89 T
|
|
3 F
|
|
-0.26 (The mechanism for con\337ict resolution is similar in Tk 4.0 except that one binding can) 170.1 555.89 P
|
|
-0.35 (trigger for) 152.1 543.78 P
|
|
2 F
|
|
-0.35 (each) 194.7 543.78 P
|
|
3 F
|
|
-0.35 ( binding tag on the window where the event occurs. The bindings trigger in) 213.57 543.78 P
|
|
(the order of the tags. Thus if button) 152.1 531.67 T
|
|
5 F
|
|
(.b) 296.17 531.67 T
|
|
3 F
|
|
( has the default binding tags, one binding for) 308.16 531.67 T
|
|
5 F
|
|
(.b) 489.71 531.67 T
|
|
3 F
|
|
(can trigger) 152.1 519.56 T
|
|
(, followed by one for) 194.72 519.56 T
|
|
5 F
|
|
(Button) 281.32 519.56 T
|
|
3 F
|
|
(, followed by one for \322) 317.3 519.56 T
|
|
5 F
|
|
(.) 408.34 519.56 T
|
|
3 F
|
|
(\323, followed by one for) 414.34 519.56 T
|
|
5 F
|
|
(all) 152.1 507.44 T
|
|
3 F
|
|
(. If there are no matching bindings for a given tag then none will trigger) 170.09 507.44 T
|
|
(, and if there) 456.98 507.44 T
|
|
(are several matching bindings for a given tag then a single one is chosen using the same) 152.1 495.33 T
|
|
(rules as in Tk 3.6.) 152.1 483.22 T
|
|
(The philosophy behind binding tags in Tk 4.0 is that each binding tag corresponds to) 170.1 471.22 T
|
|
(an independent behavior) 152.1 459.11 T
|
|
(, so bindings with dif) 249.96 459.11 T
|
|
(ferent tags should usually be additive. Sup-) 334.46 459.11 T
|
|
(pose you de\336ned the following binding:) 152.1 447 T
|
|
5 9 Q
|
|
(bind .b <Enter> {puts "press here to exit"}) 179.1 432.67 T
|
|
3 10 Q
|
|
(This binding will add to the behavior de\336ned by the Button class binding for) 152.1 419 T
|
|
5 F
|
|
(<Enter>) 460.81 419 T
|
|
3 F
|
|
(.) 502.79 419 T
|
|
(In Tk 3.6, the widget-speci\336c binding will replace the class binding, which will break the) 152.1 406.89 T
|
|
(behavior of the button so that it no longer has normal button behavior) 152.1 394.78 T
|
|
(.) 429.71 394.78 T
|
|
(Sometimes there need to be interactions between binding tags. For example, you) 170.1 382.78 T
|
|
(might wish to keep most of the default button behavior for) 152.1 370.67 T
|
|
5 F
|
|
(.b) 388.34 370.67 T
|
|
3 F
|
|
( but replace the default) 400.33 370.67 T
|
|
(behavior for) 152.1 358.56 T
|
|
5 F
|
|
(<ButtonRelease>) 203.72 358.56 T
|
|
3 F
|
|
( with some other behavior) 293.67 358.56 T
|
|
(. T) 397.49 358.56 T
|
|
(o allow bindings to be) 407.9 358.56 T
|
|
-0.17 (overridden, Tk 4.0 allows the) 152.1 346.44 P
|
|
5 F
|
|
-0.41 (break) 271.44 346.44 P
|
|
3 F
|
|
-0.17 ( command to be invoked from inside a binding. This) 301.43 346.44 P
|
|
(causes all remaining binding tags for that binding to be skipped. Consider the following) 152.1 334.33 T
|
|
(binding:) 152.1 322.22 T
|
|
5 9 Q
|
|
(bind .b <ButtonRelease-1> {myRelease .b; break}) 179.1 307.89 T
|
|
3 10 Q
|
|
-0.21 (This will cause the) 152.1 294.22 P
|
|
5 F
|
|
-0.5 (myRelease) 228.99 294.22 P
|
|
3 F
|
|
-0.21 ( procedure to be invoked, then the) 282.96 294.22 P
|
|
5 F
|
|
-0.5 (break) 420.28 294.22 P
|
|
3 F
|
|
-0.21 ( command will) 450.26 294.22 P
|
|
-0.37 (cause the class binding for the event to be skipped \050assuming that the widget name appears) 152.1 282.11 P
|
|
(before its class in the binding tags for) 152.1 270 T
|
|
5 F
|
|
(.b) 304.78 270 T
|
|
3 F
|
|
(\051, along with any bindings for other tags.) 316.77 270 T
|
|
2 F
|
|
(Note:) 119.09 254 T
|
|
-0.07 (Y) 152.1 254 P
|
|
-0.07 (ou cannot invoke) 156.74 254 P
|
|
6 F
|
|
-0.17 (break) 227.31 254 P
|
|
2 F
|
|
-0.07 ( fr) 257.29 254 P
|
|
-0.07 (om within the) 266.02 254 P
|
|
6 F
|
|
-0.17 (myRelease) 322.73 254 P
|
|
2 F
|
|
-0.07 ( pr) 376.7 254 P
|
|
-0.07 (ocedur) 387.64 254 P
|
|
-0.07 (e in the above example:) 415.03 254 P
|
|
-0.02 (this will generate a T) 152.1 242.89 P
|
|
-0.02 (cl err) 236.05 242.89 P
|
|
-0.02 (or) 257.59 242.89 P
|
|
-0.02 (. However) 265.37 242.89 P
|
|
-0.02 (, you can invoke the command \322) 305.31 242.89 P
|
|
6 F
|
|
-0.05 (return -code) 434.25 242.89 P
|
|
(break) 152.1 231.78 T
|
|
2 F
|
|
(\323 in the pr) 182.08 231.78 T
|
|
(ocedur) 223.64 231.78 T
|
|
(e to achieve the same effect as the) 251.03 231.78 T
|
|
6 F
|
|
(break) 389.25 231.78 T
|
|
2 F
|
|
( in the binding script.) 419.23 231.78 T
|
|
0 F
|
|
(1.3) 127.41 202.78 T
|
|
(Implicit Any) 152.1 202.78 T
|
|
3 F
|
|
-0.13 (In Tk 3.6 extraneous modi\336ers prevent a binding from matching an event. For example, if) 152.1 186.78 P
|
|
(a binding is de\336ned for) 152.1 174.67 T
|
|
5 F
|
|
(<Button-1>) 247.32 174.67 T
|
|
3 F
|
|
( and the mouse button is pressed with the) 307.29 174.67 T
|
|
5 F
|
|
(Num-) 474.68 174.67 T
|
|
(Lock) 152.1 162.56 T
|
|
3 F
|
|
( key down, then the binding will not match. If you want a binding to trigger even) 176.09 162.56 T
|
|
(when extraneous modi\336ers are present, you must specify the) 152.1 150.45 T
|
|
5 F
|
|
(Any) 396.37 150.45 T
|
|
3 F
|
|
( modi\336er) 414.36 150.45 T
|
|
(, as in) 450.33 150.45 T
|
|
5 F
|
|
(<Any-) 476.42 150.45 T
|
|
(Button-1>) 152.1 138.33 T
|
|
3 F
|
|
(.) 206.07 138.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "4" 5
|
|
%%Page: "5" 5
|
|
612 792 0 FMBEGINPAGE
|
|
4 10 Q
|
|
0 X
|
|
0 K
|
|
(1 Bindings) 98.1 668.33 T
|
|
0 F
|
|
(5) 506.54 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 F
|
|
0 X
|
|
-0.06 (In Tk 4.0, all bindings have the) 170.1 632.33 P
|
|
5 F
|
|
-0.15 (Any) 297.08 632.33 P
|
|
3 F
|
|
-0.06 ( modi\336er present implicitly) 315.08 632.33 P
|
|
-0.06 (. The) 423.35 632.33 P
|
|
5 F
|
|
-0.15 (Any) 446.26 632.33 P
|
|
3 F
|
|
-0.06 ( modi\336er is) 464.25 632.33 P
|
|
(still allowed for compatibility) 152.1 620.33 T
|
|
(, but it has no meaning. Thus a binding for) 270.55 620.33 T
|
|
5 F
|
|
(<Button-1>) 443.23 620.33 T
|
|
3 F
|
|
(will match a button press event even if) 152.1 608.33 T
|
|
5 F
|
|
(NumLock) 309.21 608.33 T
|
|
3 F
|
|
(,) 351.19 608.33 T
|
|
5 F
|
|
(Shift) 356.19 608.33 T
|
|
3 F
|
|
(,) 386.17 608.33 T
|
|
5 F
|
|
(Control) 391.17 608.33 T
|
|
3 F
|
|
(, or any combina-) 433.15 608.33 T
|
|
(tion of them. If you wish for a binding not to trigger when a modi\336er is present, you can) 152.1 596.33 T
|
|
(just de\336ne an empty binding for that modi\336er combination. For example,) 152.1 584.33 T
|
|
5 9 Q
|
|
(bind .b <Control-ButtonPress-1> {# this script is a no-op}) 179.1 570 T
|
|
3 10 Q
|
|
(creates a binding that will trigger on mouse button presses when the) 152.1 556.33 T
|
|
5 F
|
|
(Control) 426.36 556.33 T
|
|
3 F
|
|
( key is) 468.34 556.33 T
|
|
-0.22 (down. If there is also a) 152.1 544.33 P
|
|
5 F
|
|
-0.52 (<ButtonPress-1>) 244.35 544.33 P
|
|
3 F
|
|
-0.22 ( binding for) 334.3 544.33 P
|
|
5 F
|
|
-0.52 (.b) 383.35 544.33 P
|
|
3 F
|
|
-0.22 (, it will no longer be invoked) 395.34 544.33 P
|
|
-0.02 (if the) 152.1 532.33 P
|
|
5 F
|
|
-0.05 (Control) 175.37 532.33 P
|
|
3 F
|
|
-0.02 ( key is down, due to the con\337ict resolution rules. The script for the above) 217.35 532.33 P
|
|
(binding is just a T) 152.1 520.33 T
|
|
(cl comment, so it has no ef) 223.59 520.33 T
|
|
(fect when it is invoked. Alternatively) 330.84 520.33 T
|
|
(, you) 478.98 520.33 T
|
|
(could use) 152.1 508.33 T
|
|
5 F
|
|
(%s) 192.63 508.33 T
|
|
3 F
|
|
( in the binding script to extract the modi\336er state, then test to see that only) 204.62 508.33 T
|
|
(desired modi\336ers are present.) 152.1 496.33 T
|
|
0 F
|
|
(1.4) 127.41 466.33 T
|
|
(Porting problems: widget bindings vs. class bindings) 152.1 466.33 T
|
|
3 F
|
|
-0.38 (Y) 152.1 450.33 P
|
|
-0.38 (ou are likely to encounter two problems with bindings when you port Tk 3.6 scripts to Tk) 158.32 450.33 P
|
|
-0.18 (4.0: widget bindings vs. class bindings, and events on top-level windows. This section dis-) 152.1 438.33 P
|
|
(cusses the \336rst problem and the following section discusses the second problem.) 152.1 426.33 T
|
|
(In Tk 3.6, if a widget-speci\336c binding matches an event then no class binding will) 170.1 414.33 T
|
|
-0.15 (trigger for the event; in Tk 4.0 both bindings will trigger) 152.1 402.33 P
|
|
-0.15 (. Because of this change, you will) 375.75 402.33 P
|
|
-0.09 (need to modify most of your widget-speci\336c bindings in one of two ways. If a widget-spe-) 152.1 390.33 P
|
|
(ci\336c binding in Tk 3.6 was intended to supplement the class binding, this could only be) 152.1 378.33 T
|
|
(done by duplicating the code of the class binding in the widget binding script. This dupli-) 152.1 366.33 T
|
|
-0.02 (cated code is no longer necessary in Tk 4.0 and will probably interfere with the new class) 152.1 354.33 P
|
|
(bindings in Tk 4.0; you should remove the duplicated class code, leaving only the widget-) 152.1 342.33 T
|
|
(speci\336c code in the binding script. If a widget-speci\336c binding in Tk 3.6 was intended to) 152.1 330.33 T
|
|
-0.17 (override the class binding, this will no longer occur by default in Tk 4.0; you should add a) 152.1 318.33 P
|
|
5 F
|
|
-0.54 (break) 152.1 306.33 P
|
|
3 F
|
|
-0.22 ( command at the end of the binding script to prevent the class binding from trigger-) 182.08 306.33 P
|
|
(ing. If a widget binding in Tk 3.6 didn\325) 152.1 294.33 T
|
|
(t con\337ict with a class binding, then you will not) 308.49 294.33 T
|
|
(need to modify it for Tk 4.0. For example, a widget binding for) 152.1 282.33 T
|
|
5 F
|
|
(<Help>) 407.49 282.33 T
|
|
3 F
|
|
( in a text widget) 443.47 282.33 T
|
|
(would not need to be modi\336ed, since it doesn\325) 152.1 270.33 T
|
|
(t con\337ict with a class binding.) 336.53 270.33 T
|
|
0 F
|
|
(1.5) 127.41 240.33 T
|
|
(Porting problems: events on top-levels) 152.1 240.33 T
|
|
3 F
|
|
-0.26 (The second binding problem you are likely to encounter in porting Tk 3.6 scripts to Tk 4.0) 152.1 224.33 P
|
|
(is that in Tk 4.0 a binding on a toplevel will match events on any of the internal windows) 152.1 212.33 T
|
|
(within that top-level. For example, suppose you have a binding created as follows:) 152.1 200.33 T
|
|
5 9 Q
|
|
(toplevel .t) 179.1 186 T
|
|
(button .t.b1 ...) 179.1 176 T
|
|
(button .t.b2 ...) 179.1 166 T
|
|
(bind .t <Enter> action) 179.1 156 T
|
|
FMENDPAGE
|
|
%%EndPage: "5" 6
|
|
%%Page: "6" 6
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(6) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 F
|
|
0 X
|
|
-0.27 (This binding will trigger not only when the mouse enters) 152.1 632.33 P
|
|
5 F
|
|
-0.64 (.t) 379.29 632.33 P
|
|
3 F
|
|
-0.27 (, but also when it enters either) 391.28 632.33 P
|
|
5 F
|
|
(.t.b1) 152.1 620.33 T
|
|
3 F
|
|
( or) 182.08 620.33 T
|
|
5 F
|
|
(.t.b2) 195.41 620.33 T
|
|
3 F
|
|
(. This is because the binding tags for a window include its nearest) 225.39 620.33 T
|
|
(ancestor toplevel by default. The toplevel is present in the binding tags to make it easy to) 152.1 608.33 T
|
|
(set up accelerator keys that apply in all the windows of a panel. For example,) 152.1 596.33 T
|
|
5 9 Q
|
|
(bind .t <Control-a> {controlAProc %W}) 179.1 582 T
|
|
3 10 Q
|
|
(will cause) 152.1 568.33 T
|
|
5 F
|
|
(controlAProc) 194.85 568.33 T
|
|
3 F
|
|
( to be invoked whenever) 266.81 568.33 T
|
|
5 F
|
|
(Control-a) 367.56 568.33 T
|
|
3 F
|
|
( is typed in any of the) 421.53 568.33 T
|
|
-0.12 (windows in) 152.1 556.33 P
|
|
5 F
|
|
-0.29 (.t) 200.72 556.33 P
|
|
3 F
|
|
-0.12 (. The procedure will receive the name of the focus window as its ar) 212.71 556.33 P
|
|
-0.12 (gument.) 479.62 556.33 P
|
|
(Unfortunately) 170.1 544.33 T
|
|
(, if you have created bindings on toplevel windows in your Tk 3.6) 225.52 544.33 T
|
|
-0.16 (scripts, they probably expect to trigger only for events in the toplevel, so the bindings will) 152.1 532.33 P
|
|
(misbehave under Tk 4.0. Fortunately you can reproduce the behavior of Tk 3.6 by using) 152.1 520.33 T
|
|
(the) 152.1 508.33 T
|
|
5 F
|
|
(%W) 166.81 508.33 T
|
|
3 F
|
|
( substitution in the binding script. For example, to ensure that) 178.8 508.33 T
|
|
5 F
|
|
(action) 427.28 508.33 T
|
|
3 F
|
|
( is invoked) 463.26 508.33 T
|
|
(only for) 152.1 496.33 T
|
|
5 F
|
|
(Enter) 186.52 496.33 T
|
|
3 F
|
|
( events in a toplevel window itself, create the following binding in place) 216.51 496.33 T
|
|
(of the one above:) 152.1 484.33 T
|
|
5 9 Q
|
|
(bind .t <Enter> {) 179.1 470 T
|
|
(if {"%W" == ".t"} {) 200.63 460 T
|
|
(action) 222.23 450 T
|
|
(}) 200.63 440 T
|
|
(}) 179.1 430 T
|
|
3 10 Q
|
|
-0.01 (When an) 152.1 416.33 P
|
|
5 F
|
|
-0.03 (Enter) 190.38 416.33 P
|
|
3 F
|
|
-0.01 ( event occurs in a descendant of) 220.36 416.33 P
|
|
5 F
|
|
-0.03 (.t) 350.45 416.33 P
|
|
3 F
|
|
-0.01 ( such as) 362.45 416.33 P
|
|
5 F
|
|
-0.03 (.t.x) 396.56 416.33 P
|
|
3 F
|
|
-0.01 (, a binding for) 420.54 416.33 P
|
|
5 F
|
|
-0.03 (Enter) 479.63 416.33 P
|
|
3 F
|
|
(in) 152.1 404.33 T
|
|
5 F
|
|
(.t.x) 162.37 404.33 T
|
|
3 F
|
|
( will trigger \336rst, if there is one. Then the above binding will trigger) 186.36 404.33 T
|
|
(. Since) 457.58 404.33 T
|
|
5 F
|
|
(%W) 487.29 404.33 T
|
|
3 F
|
|
(will be substituted with) 152.1 392.33 T
|
|
5 F
|
|
(.t.x) 248.17 392.33 T
|
|
3 F
|
|
(, the) 272.15 392.33 T
|
|
5 F
|
|
(if) 291.86 392.33 T
|
|
3 F
|
|
( condition will not be satis\336ed and the binding will) 303.86 392.33 T
|
|
(not do anything.) 152.1 380.33 T
|
|
-0.14 ( An alternative solution is to remove the toplevel window from the binding tags of all) 170.1 368.33 P
|
|
-0.12 (its internal windows. However) 152.1 356.33 P
|
|
-0.12 (, this means that you won\325) 274.03 356.33 P
|
|
-0.12 (t be able to take advantage of the) 378.73 356.33 P
|
|
(tag to create key bindings that apply everywhere within the toplevel.) 152.1 344.33 T
|
|
0 F
|
|
(1.6) 127.41 314.33 T
|
|
(Internal bindings in canvases and texts) 152.1 314.33 T
|
|
3 F
|
|
(The same changes in con\337ict resolution described in Section 1.2 also apply to bindings) 152.1 298.33 T
|
|
-0.05 (created internally for the items of a canvas or the tags of a text widget. If a canvas item or) 152.1 286.33 P
|
|
-0.29 (character of text has multiple tags, then one binding can trigger for each tag on each event.) 152.1 274.33 P
|
|
-0.32 (The bindings trigger in the priority order of the tags. Similar porting problems are likely to) 152.1 262.33 P
|
|
-0.19 (occur as described in Section 1.4; if a binding for one tag needs to override that of another) 152.1 250.33 P
|
|
(tag, you\325ll need to add a) 152.1 238.33 T
|
|
5 F
|
|
(break) 251.2 238.33 T
|
|
3 F
|
|
( command under Tk 4.0; if a binding for one tag dupli-) 281.18 238.33 T
|
|
-0.28 (cated the code from another tag\325) 152.1 226.33 P
|
|
-0.28 (s binding, so that they will compose in Tk 3.6, you\325ll have) 279.76 226.33 P
|
|
(to remove the duplicated code in Tk 4.0.) 152.1 214.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "6" 7
|
|
%%Page: "7" 7
|
|
612 792 0 FMBEGINPAGE
|
|
4 10 Q
|
|
0 X
|
|
0 K
|
|
(2 Focus management) 98.1 668.33 T
|
|
0 F
|
|
(7) 506.54 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
98.1 623.98 512.1 627 C
|
|
152.1 625.2 512.1 625.2 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 625.49 143.1 625.49 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(2) 134.63 631 T
|
|
(Focus management) 152.1 631 T
|
|
3 10 Q
|
|
(The input focus is another area where Tk 4.0 contains major changes. Fortunately) 152.1 607.31 T
|
|
(, the) 477.87 607.31 T
|
|
-0.09 (focus changes should not require as many modi\336cations to your Tk 3.6 scripts as the bind-) 152.1 595.31 P
|
|
(ing changes.) 152.1 583.31 T
|
|
0 F
|
|
(2.1) 127.41 553.31 T
|
|
(One focus window per toplevel) 152.1 553.31 T
|
|
3 F
|
|
(Tk 3.6 only keeps track of a single focus window for each application, and this results in) 152.1 537.31 T
|
|
(two problems. First, it doesn\325) 152.1 525.31 T
|
|
(t allow an application to use multiple displays since this) 269.64 525.31 T
|
|
-0.16 (could result in multiple simultaneous focus windows, one on each display) 152.1 513.31 P
|
|
-0.16 (. Second, the Tk) 444.99 513.31 P
|
|
(3.6 model doesn\325) 152.1 501.31 T
|
|
(t work very well for applications that have multiple toplevels: when the) 221.04 501.31 T
|
|
(mouse moves from one toplevel to another) 152.1 489.31 T
|
|
(, the focus window should switch to whatever) 322.7 489.31 T
|
|
-0.24 (window had the focus the last time the mouse was in the new toplevel, but Tk 3.6 does not) 152.1 477.31 P
|
|
(remember this information.) 152.1 465.31 T
|
|
(Tk 4.0 corrects both of these problems. It remembers one focus window for each) 170.1 453.31 T
|
|
(toplevel, which can be queried with the) 152.1 441.31 T
|
|
5 F
|
|
(focus -lastfor) 311.98 441.31 T
|
|
3 F
|
|
( command. When the win-) 395.94 441.31 T
|
|
(dow manager gives the focus to a toplevel window \050because the mouse entered the win-) 152.1 429.31 T
|
|
(dow or because you clicked on the window) 152.1 417.31 T
|
|
(, depending on the focus model being used by) 324.38 417.31 T
|
|
(the window manager\051, Tk passes the focus on to the remembered window) 152.1 405.31 T
|
|
(. Several win-) 446.23 405.31 T
|
|
(dows in an application can have the focus at the same time, one on each display the appli-) 152.1 393.31 T
|
|
(cation is using. When asking for the current focus window in the) 152.1 381.31 T
|
|
5 F
|
|
(focus) 413.31 381.31 T
|
|
3 F
|
|
( command, you) 443.29 381.31 T
|
|
(can use the) 152.1 369.31 T
|
|
5 F
|
|
(-displayof) 199 369.31 T
|
|
3 F
|
|
( switch to specify a particular display) 258.97 369.31 T
|
|
(.) 407.66 369.31 T
|
|
(When you set the focus to a window with the) 170.1 357.31 T
|
|
5 F
|
|
(focus) 353.31 357.31 T
|
|
3 F
|
|
( command, Tk remembers that) 383.29 357.31 T
|
|
(window as the most recent focus window for its toplevel. In addition, if the application) 152.1 345.31 T
|
|
(currently has the focus for the window\325) 152.1 333.31 T
|
|
(s display) 309.2 333.31 T
|
|
(, Tk moves the focus to the speci\336ed win-) 343.82 333.31 T
|
|
-0.35 (dow; this can be used, for example to move the focus to a dialog when the dialog is posted,) 152.1 321.31 P
|
|
(or to perform keyboard traversal among the toplevels of an application. If the application) 152.1 309.31 T
|
|
(doesn\325) 152.1 297.31 T
|
|
(t currently have the focus for the display) 178.57 297.31 T
|
|
(, then Tk will not normally take the focus) 339.74 297.31 T
|
|
(from its current owner) 152.1 285.31 T
|
|
(. However) 241.2 285.31 T
|
|
(, you can specify the) 282.43 285.31 T
|
|
5 F
|
|
(-force) 367.36 285.31 T
|
|
3 F
|
|
( ar) 403.34 285.31 T
|
|
(gument to) 413.43 285.31 T
|
|
5 F
|
|
(focus) 456.18 285.31 T
|
|
3 F
|
|
( to) 486.17 285.31 T
|
|
(insist that Tk grab the focus for this application \050in general this is probably not a good) 152.1 273.31 T
|
|
(idea, since it may clash with the window manager) 152.1 261.31 T
|
|
(\325) 352.05 261.31 T
|
|
(s focus policy\051.) 354.83 261.31 T
|
|
0 F
|
|
(2.2) 127.41 231.31 T
|
|
(Keyboard traversal) 152.1 231.31 T
|
|
3 F
|
|
-0.38 (Tk 4.0 has a much more complete implementation of keyboard traversal than Tk 3.6. In Tk) 152.1 215.31 P
|
|
(3.6 there is built-in support only for keyboard traversal of menus. In Tk 4.0 keyboard tra-) 152.1 203.31 T
|
|
(versal is implemented for all widgets. Y) 152.1 191.31 T
|
|
(ou can type) 311.27 191.31 T
|
|
5 F
|
|
(Tab) 359.85 191.31 T
|
|
3 F
|
|
( to move the focus among the) 377.84 191.31 T
|
|
-0.4 (windows within a toplevel and) 152.1 179.31 P
|
|
5 F
|
|
-0.95 (Shift+Tab) 275.31 179.31 P
|
|
3 F
|
|
-0.4 ( to move in the reverse direction. The order of) 329.28 179.31 P
|
|
-0.11 (traversal is de\336ned by the stacking order of widgets, with the lowest widget \336rst in the tra-) 152.1 167.31 P
|
|
(versal order) 152.1 155.31 T
|
|
(. All Tk widgets now provide a) 199 155.31 T
|
|
5 F
|
|
(-takefocus) 326.14 155.31 T
|
|
3 F
|
|
( option, which determines) 386.11 155.31 T
|
|
FMENDPAGE
|
|
%%EndPage: "7" 8
|
|
%%Page: "8" 8
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(8) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 F
|
|
0 X
|
|
(whether the window should accept the focus during traversal or be skipped. This option) 152.1 632.33 T
|
|
(has several features; see the) 152.1 620.33 T
|
|
5 F
|
|
(options.n) 265.61 620.33 T
|
|
3 F
|
|
( manual entry for details.) 319.58 620.33 T
|
|
(All of the Tk widgets provide a traversal highlight ring as required by Motif. The) 170.1 608.33 T
|
|
(highlight ring turns dark when the widget has the input focus. Its size and colors are con-) 152.1 596.33 T
|
|
(trolled by the) 152.1 584.33 T
|
|
5 F
|
|
(-highlightthickness) 207.9 584.33 T
|
|
3 F
|
|
(,) 321.84 584.33 T
|
|
5 F
|
|
(-highlightbackground) 326.83 584.33 T
|
|
3 F
|
|
(, and) 446.77 584.33 T
|
|
5 F
|
|
(-) 152.1 572.33 T
|
|
(highlightcolor) 158.1 572.33 T
|
|
3 F
|
|
( options. Y) 242.05 572.33 T
|
|
(ou may notice that widgets appear to have extra space) 285.2 572.33 T
|
|
(around them in Tk 4.0; this is due to the traversal highlight ring, which is normally the) 152.1 560.33 T
|
|
(same color as the background for widgets.) 152.1 548.33 T
|
|
0 F
|
|
(2.3) 127.41 518.33 T
|
|
(Support for focus-follows-mouse) 152.1 518.33 T
|
|
3 F
|
|
(Both Tk 3.6 and Tk 4.0 use an) 152.1 502.33 T
|
|
2 F
|
|
(explicit focus model) 275.91 502.33 T
|
|
3 F
|
|
( within a toplevel. This means that) 355.86 502.33 T
|
|
(moving the mouse among the windows of a toplevel does not normally move the focus;) 152.1 490.33 T
|
|
-0.06 (you have to click or perform some other action \050such as pressing) 152.1 478.33 P
|
|
5 F
|
|
-0.15 (Tab) 412.26 478.33 P
|
|
3 F
|
|
-0.06 (\051 to move the focus.) 430.25 478.33 P
|
|
(Tk 3.6 has no support for an) 152.1 466.33 T
|
|
2 F
|
|
(implicit focus model) 267.58 466.33 T
|
|
3 F
|
|
( where the window under the mouse) 348.64 466.33 T
|
|
(always has the focus. In Tk 4.0 you can invoke the library procedure) 152.1 454.33 T
|
|
5 F
|
|
(tk_focusFol-) 428.83 454.33 T
|
|
(lowsMouse) 152.1 442.33 T
|
|
3 F
|
|
( to switch to an implicit focus model; in this mode whenever the mouse) 206.07 442.33 T
|
|
(enters a new window the focus will switch to that window) 152.1 430.33 T
|
|
(.) 384.07 430.33 T
|
|
0 F
|
|
(2.4) 127.41 400.33 T
|
|
(No default focus window) 152.1 400.33 T
|
|
(, no \322none\323 focus.) 269.45 400.33 T
|
|
3 F
|
|
-0.16 (Tk 3.6 has the notion of a default focus window) 152.1 384.33 P
|
|
-0.16 (, which receives the focus if the focus win-) 341.56 384.33 P
|
|
(dow is deleted. It is also possible for an application to abandon the input focus by setting) 152.1 372.33 T
|
|
(the focus to) 152.1 360.33 T
|
|
5 F
|
|
(none) 201.23 360.33 T
|
|
3 F
|
|
(. In Tk 4.0 both of these features have been eliminated. There is no) 225.22 360.33 T
|
|
(default focus window) 152.1 348.33 T
|
|
(, and the focus can never be explicitly abandoned. If the focus win-) 238.05 348.33 T
|
|
(dow is destroyed, Tk resets the input focus to the toplevel containing the old focus win-) 152.1 336.33 T
|
|
(dow) 152.1 324.33 T
|
|
(. If the toplevel is destroyed, the window manager will reclaim the focus and move it) 168.66 324.33 T
|
|
(elsewhere.) 152.1 312.33 T
|
|
-0.18 (If you really want to abandon the focus in Tk 4.0 so that keyboard events are ignored,) 170.1 300.33 P
|
|
(you can create a dummy window with no key bindings \050set its binding tags to an empty) 152.1 288.33 T
|
|
(string to be sure\051, make sure that is never mapped, and give it the input focus.) 152.1 276.33 T
|
|
0 F
|
|
(2.5) 127.41 246.33 T
|
|
(Better focus events) 152.1 246.33 T
|
|
3 F
|
|
-0.13 (Tk 3.6 has a quirky event model for) 152.1 230.33 P
|
|
5 F
|
|
-0.32 (FocusIn) 296.77 230.33 P
|
|
3 F
|
|
-0.13 ( and) 338.75 230.33 P
|
|
5 F
|
|
-0.32 (FocusOut) 357.92 230.33 P
|
|
3 F
|
|
-0.13 ( events: when the window) 405.89 230.33 P
|
|
-0.23 (manager gives the focus to a toplevel, Tk generates a) 152.1 218.33 P
|
|
5 F
|
|
-0.55 (FocusIn) 364.36 218.33 P
|
|
3 F
|
|
-0.23 ( event for the toplevel and) 406.33 218.33 P
|
|
(another) 152.1 206.33 T
|
|
5 F
|
|
(FocusIn) 184.57 206.33 T
|
|
3 F
|
|
( event for the focus window) 226.55 206.33 T
|
|
(, but no events for any other windows.) 337.76 206.33 T
|
|
(When the window manager moves the focus somewhere else,) 152.1 194.33 T
|
|
5 F
|
|
(FocusOut) 400.79 194.33 T
|
|
3 F
|
|
( events are gen-) 448.77 194.33 T
|
|
-0 (erated for these same two windows. In Tk 4.0,) 152.1 182.33 P
|
|
5 F
|
|
-0 (FocusIn) 339.73 182.33 P
|
|
3 F
|
|
-0 ( and) 381.71 182.33 P
|
|
5 F
|
|
-0 (FocusOut) 401.13 182.33 P
|
|
3 F
|
|
-0 ( events are gen-) 449.11 182.33 P
|
|
-0.26 (erated in the same way as) 152.1 170.33 P
|
|
5 F
|
|
-0.63 (Enter) 255.43 170.33 P
|
|
3 F
|
|
-0.26 ( and) 285.41 170.33 P
|
|
5 F
|
|
-0.63 (Leave) 304.31 170.33 P
|
|
3 F
|
|
-0.26 ( events: when the focus arrives, a) 334.29 170.33 P
|
|
5 F
|
|
-0.63 (FocusIn) 467.89 170.33 P
|
|
3 F
|
|
-0.05 (event is generated for each window from the toplevel down to the focus window) 152.1 158.33 P
|
|
-0.05 (, with dif-) 472.5 158.33 P
|
|
FMENDPAGE
|
|
%%EndPage: "8" 9
|
|
%%Page: "9" 9
|
|
612 792 0 FMBEGINPAGE
|
|
4 10 Q
|
|
0 X
|
|
0 K
|
|
(3 T) 98.1 668.33 T
|
|
(ext widgets) 111.43 668.33 T
|
|
0 F
|
|
(9) 506.54 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 F
|
|
0 X
|
|
-0.33 (ferent detail \336elds for dif) 152.1 632.33 P
|
|
-0.33 (ferent windows \050see Xlib documentation for information on these) 250.53 632.33 P
|
|
(values\051. The reverse happens when the focus leaves a window) 152.1 620.33 T
|
|
(.) 399.57 620.33 T
|
|
0 F
|
|
(2.6) 127.41 590.33 T
|
|
(Porting issues) 152.1 590.33 T
|
|
3 F
|
|
(If you didn\325) 152.1 574.33 T
|
|
(t have any special focus-related code in Tk 3.6, then you shouldn\325) 199.66 574.33 T
|
|
(t need to) 462.9 574.33 T
|
|
(make any changes for 4.0; things will just work better) 152.1 562.33 T
|
|
(. If you wrote code in Tk 3.6 to get) 366.96 562.33 T
|
|
(around the weaknesses with its focus mechanism, then you should remove most or all of) 152.1 550.33 T
|
|
(that code. For example, if you implemented keyboard traversal yourself, or if you built) 152.1 538.33 T
|
|
(your own mechanism to remember a separate focus window for each toplevel and give it) 152.1 526.33 T
|
|
(the input focus whenever the toplevel gets the focus, you can simply remove this code,) 152.1 514.33 T
|
|
-0.33 (since Tk 4.0 performs these functions for you. If you wrote code that depends on the weird) 152.1 502.33 P
|
|
-0.03 (event model in Tk 3.6, that code will need to be rewritten for Tk 4.0. The Tk 4.0 model is) 152.1 490.33 P
|
|
(general enough to duplicate any ef) 152.1 478.33 T
|
|
(fects that were possible in Tk 3.6.) 289.86 478.33 T
|
|
98.1 434.98 512.1 438 C
|
|
152.1 436.2 512.1 436.2 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 436.49 143.1 436.49 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(3) 134.63 442 T
|
|
(T) 152.1 442 T
|
|
(ext widgets) 158.54 442 T
|
|
3 10 Q
|
|
(T) 152.1 418.31 T
|
|
(ext widgets have under) 157.51 418.31 T
|
|
(gone a major overhaul for Tk 4.0 and they have improved in) 249.76 418.31 T
|
|
(many ways. The changes to text widgets are almost entirely upward-compatible from Tk) 152.1 406.31 T
|
|
(3.6.) 152.1 394.31 T
|
|
0 F
|
|
(3.1) 127.41 364.31 T
|
|
(Embedded windows.) 152.1 364.31 T
|
|
3 F
|
|
(Tk 3.6 supported two kinds of annotations in texts: marks and tags. In Tk 4.0 a third kind) 152.1 348.31 T
|
|
-0.04 (of annotation is available: an embedded window) 152.1 336.31 P
|
|
-0.04 (. This allows you to embed other widgets) 344.99 336.31 P
|
|
(inside a text widget, mixed in with the text. The text widget acts as a geometry manager) 152.1 324.31 T
|
|
(for these windows, laying them out and wrapping them just as if each embedded window) 152.1 312.31 T
|
|
(were a single character in the text. Y) 152.1 300.31 T
|
|
(ou can even have texts with nothing in them but) 297.64 300.31 T
|
|
(embedded windows. The) 152.1 288.31 T
|
|
5 F
|
|
(window) 254.8 288.31 T
|
|
3 F
|
|
( widget command for text widgets provides several) 290.78 288.31 T
|
|
(options to manage embedded windows.) 152.1 276.31 T
|
|
0 F
|
|
(3.2) 127.41 246.31 T
|
|
(More options for tags.) 152.1 246.31 T
|
|
3 F
|
|
(In Tk 4.0 tags support many new options providing additional control over how informa-) 152.1 230.31 T
|
|
(tion is displayed. Here is a summary of the new options:) 152.1 218.31 T
|
|
3 12 Q
|
|
(\245) 152.1 203.31 T
|
|
3 10 Q
|
|
(Y) 162.9 203.31 T
|
|
(ou can now specify tab stops with the) 169.12 203.31 T
|
|
5 F
|
|
(-tabs) 321.79 203.31 T
|
|
3 F
|
|
( option. Each tab stop can use left, cen-) 351.78 203.31 T
|
|
(ter) 162.9 191.31 T
|
|
(, right, or numeric justi\336cation. T) 173.04 191.31 T
|
|
(ab stops can also be speci\336ed for the widget as a) 305.6 191.31 T
|
|
(whole.) 162.9 179.31 T
|
|
3 12 Q
|
|
(\245) 152.1 164.31 T
|
|
3 10 Q
|
|
(Y) 162.9 164.31 T
|
|
(ou can specify justi\336cation \050left, center or right\051 with the) 169.12 164.31 T
|
|
5 F
|
|
(-justify) 398.12 164.31 T
|
|
3 F
|
|
( option.) 446.09 164.31 T
|
|
FMENDPAGE
|
|
%%EndPage: "9" 10
|
|
%%Page: "10" 10
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(10) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 12 Q
|
|
0 X
|
|
(\245) 152.1 632.33 T
|
|
3 10 Q
|
|
(Y) 162.9 632.33 T
|
|
(ou can now specify line spacing with three options,) 169.12 632.33 T
|
|
5 F
|
|
(-spacing1) 376.75 632.33 T
|
|
3 F
|
|
(,) 430.72 632.33 T
|
|
5 F
|
|
(-spacing2) 435.72 632.33 T
|
|
3 F
|
|
(, and) 489.69 632.33 T
|
|
5 F
|
|
(-) 162.9 620.2 T
|
|
(spacing3) 168.9 620.2 T
|
|
3 F
|
|
(, which control the spacing above a line, between wrapped lines, and) 216.87 620.2 T
|
|
(below a line.) 162.9 608.06 T
|
|
3 12 Q
|
|
(\245) 152.1 593.06 T
|
|
3 10 Q
|
|
(Y) 162.9 593.06 T
|
|
(ou can now specify mar) 169.12 593.06 T
|
|
(gins with the) 264.41 593.06 T
|
|
5 F
|
|
(-lmargin1) 318.55 593.06 T
|
|
3 F
|
|
(,) 372.52 593.06 T
|
|
5 F
|
|
(-lmargin2) 377.52 593.06 T
|
|
3 F
|
|
(, and) 431.49 593.06 T
|
|
5 F
|
|
(-rmargin) 453.42 593.06 T
|
|
3 F
|
|
(options.) 162.9 580.92 T
|
|
3 12 Q
|
|
(\245) 152.1 565.92 T
|
|
3 10 Q
|
|
-0.25 (Y) 162.9 565.92 P
|
|
-0.25 (ou can now adjust the vertical position of text \050e.g. for superscripts or subscripts\051 with) 169.12 565.92 P
|
|
(the) 162.9 553.79 T
|
|
5 F
|
|
(-offset) 177.61 553.79 T
|
|
3 F
|
|
( option.) 219.59 553.79 T
|
|
3 12 Q
|
|
(\245) 152.1 538.79 T
|
|
3 10 Q
|
|
-0.03 (Y) 162.9 538.79 P
|
|
-0.03 (ou can now specify the wrapping style \050word wrapping, character wrapping, or none\051) 169.12 538.79 P
|
|
(with the) 162.9 526.65 T
|
|
5 F
|
|
(-wrap) 197.88 526.65 T
|
|
3 F
|
|
( option.) 227.86 526.65 T
|
|
3 12 Q
|
|
(\245) 152.1 511.65 T
|
|
3 10 Q
|
|
(Y) 162.9 511.65 T
|
|
(ou can now request overstriking with the) 169.12 511.65 T
|
|
5 F
|
|
(-overstrike) 334.83 511.65 T
|
|
3 F
|
|
( option.) 400.8 511.65 T
|
|
0 F
|
|
(3.3) 127.41 481.65 T
|
|
(Bindings) 152.1 481.65 T
|
|
3 F
|
|
-0.19 (The default bindings for text widgets have been completely rewritten in Tk 4.0. They now) 152.1 465.65 P
|
|
(support almost all of the Motif behavior \050everything except add mode and secondary) 152.1 453.52 T
|
|
-0.36 (selections\051. They also include a substantial subset of the Emacs bindings for cursor motion) 152.1 441.38 P
|
|
(and basic editing. The) 152.1 429.24 T
|
|
5 F
|
|
(tk_strictMotif) 242.87 429.24 T
|
|
3 F
|
|
( variable disables the Emacs bindings.) 326.82 429.24 T
|
|
0 F
|
|
(3.4) 127.41 399.24 T
|
|
(Miscellaneous new features) 152.1 399.24 T
|
|
3 F
|
|
(In addition to the major changes described above, text widgets also include the following) 152.1 383.24 T
|
|
(new features:) 152.1 371.11 T
|
|
1 F
|
|
(Horizontal scr) 162.9 356.11 T
|
|
(olling) 224.07 356.11 T
|
|
3 F
|
|
(. T) 247.95 356.11 T
|
|
(ext widgets can now be scrolled horizontally as well as verti-) 258.36 356.11 T
|
|
(cally) 162.9 343.97 T
|
|
(, using the) 181.68 343.97 T
|
|
5 F
|
|
(-) 225.55 343.97 T
|
|
(xscrollcommand) 231.54 343.97 T
|
|
3 F
|
|
( option and the) 315.5 343.97 T
|
|
5 F
|
|
(xview) 377.68 343.97 T
|
|
3 F
|
|
( widget command.) 407.67 343.97 T
|
|
1 F
|
|
(Sear) 162.9 328.97 T
|
|
(ching) 182.15 328.97 T
|
|
3 F
|
|
(. T) 205.48 328.97 T
|
|
(ext widgets have a new) 215.88 328.97 T
|
|
5 F
|
|
(search) 311.64 328.97 T
|
|
3 F
|
|
( widget command, which provides ef) 347.62 328.97 T
|
|
(\336-) 495.67 328.97 T
|
|
-0.19 (cient searching of text widgets using either exact matching, glob-style matching, or reg-) 162.9 316.83 P
|
|
(ular expressions. Y) 162.9 304.7 T
|
|
(ou can search forwards or backwards.) 238.79 304.7 T
|
|
1 F
|
|
(Mark gravity) 162.9 289.7 T
|
|
3 F
|
|
(. In Tk 3.6 marks always had \322right gravity\323, which means they stick to) 219.71 289.7 T
|
|
(the character on the right side of the mark; if you insert at the position of a mark, the) 162.9 277.56 T
|
|
-0.1 (new character goes before the mark. In Tk 4.0 you can specify whether marks have left) 162.9 265.42 P
|
|
(or right gravity) 162.9 253.29 T
|
|
(.) 222.77 253.29 T
|
|
1 F
|
|
(Scr) 162.9 238.29 T
|
|
(een information) 177.15 238.29 T
|
|
3 F
|
|
(. In Tk 4.0 there are two new widget commands for text widgets) 245.16 238.29 T
|
|
(that return information about the screen layout. The) 162.9 226.15 T
|
|
5 F
|
|
(dlineinfo) 371.92 226.15 T
|
|
3 F
|
|
( widget command) 425.89 226.15 T
|
|
(returns the bounding box of a display line \050all the information displayed on one line of) 162.9 214.02 T
|
|
(the window) 162.9 201.88 T
|
|
(, which may be either a whole line of text or a partial line if wrapping has) 209.16 201.88 T
|
|
(occurred\051. The) 162.9 189.74 T
|
|
5 F
|
|
(bbox) 224.23 189.74 T
|
|
3 F
|
|
( widget command returns the screen area occupied by a single) 248.21 189.74 T
|
|
(character) 162.9 177.61 T
|
|
(.) 198.97 177.61 T
|
|
1 F
|
|
(Extended insert command) 162.9 162.61 T
|
|
3 F
|
|
(. The) 275.06 162.61 T
|
|
5 F
|
|
(insert) 298.1 162.61 T
|
|
3 F
|
|
( widget command now supports an addi-) 334.08 162.61 T
|
|
-0.32 (tional ar) 162.9 150.47 P
|
|
-0.32 (gument giving a list of tags to apply to the new characters. Y) 195.43 150.47 P
|
|
-0.32 (ou can also include) 434 150.47 P
|
|
(several text and tag ar) 162.9 138.33 T
|
|
(guments in a single) 250.42 138.33 T
|
|
5 F
|
|
(insert) 330.38 138.33 T
|
|
3 F
|
|
( command.) 366.36 138.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "10" 11
|
|
%%Page: "11" 11
|
|
612 792 0 FMBEGINPAGE
|
|
4 10 Q
|
|
0 X
|
|
0 K
|
|
(4 Better Motif compliance) 98.1 668.33 T
|
|
0 F
|
|
(1) 501.54 668.33 T
|
|
(1) 506.54 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
1 F
|
|
0 X
|
|
(See command) 162.9 632.33 T
|
|
3 F
|
|
(. There is a new) 222.03 632.33 T
|
|
5 F
|
|
(see) 288.08 632.33 T
|
|
3 F
|
|
( widget command, which adjusts the view in the) 306.07 632.33 T
|
|
(widget if needed to ensure that a particular character is visible in the window) 162.9 620.29 T
|
|
(.) 470.07 620.29 T
|
|
0 F
|
|
(3.5) 127.41 590.29 T
|
|
(Porting issues: tag stickiness, change in end) 152.1 590.29 T
|
|
3 F
|
|
(There are two changes in text widgets that may require modi\336cations to Tk 3.6 scripts.) 152.1 574.29 T
|
|
-0.06 (The \336rst change has to do with tag stickiness. In Tk 3.6, tags are sticky to the right: if you) 152.1 562.24 P
|
|
(insert new text just after a tagged range, the new text acquires the tags of the preceding) 152.1 550.19 T
|
|
(character) 152.1 538.14 T
|
|
(. If you insert text before a tagged range in Tk 3.6, the new characters do not) 188.17 538.14 T
|
|
-0.34 (acquire the tags of the range. In Tk 4.0, tags are not sticky on either side: new text acquires) 152.1 526.09 P
|
|
(a tag from surrounding characters only if the tag is present on both sides of the insertion) 152.1 514.05 T
|
|
(position. The sticky behavior in Tk 3.6 was rarely useful and special code was often) 152.1 502 T
|
|
(needed to work around it. Y) 152.1 489.95 T
|
|
(ou should be able to eliminate this code in Tk 4.0.) 263.24 489.95 T
|
|
(The second incompatible change in text widgets is that the index) 170.1 477.95 T
|
|
5 F
|
|
(end) 431.32 477.95 T
|
|
3 F
|
|
( now refers to) 449.31 477.95 T
|
|
-0.14 (the position just after the \336nal newline in the text, whereas in Tk 3.6 it referred to the posi-) 152.1 465.9 P
|
|
-0.1 (tion just before the \336nal newline. This makes it possible to apply tags to the \336nal newline,) 152.1 453.86 P
|
|
(which was not possible in Tk 3.6, but you may need to modify your scripts if you depend) 152.1 441.81 T
|
|
(on the old position of) 152.1 429.76 T
|
|
5 F
|
|
(end) 240.11 429.76 T
|
|
3 F
|
|
(.) 258.1 429.76 T
|
|
98.1 386.4 512.1 389.43 C
|
|
152.1 387.63 512.1 387.63 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 387.92 143.1 387.92 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(4) 134.63 393.43 T
|
|
(Better Motif compliance) 152.1 393.43 T
|
|
3 10 Q
|
|
(All of the widgets have been modi\336ed in Tk 4.0 to improve their Motif compliance. This) 152.1 369.74 T
|
|
-0.3 (was done by adding features that were missing and reworking the bindings to comply with) 152.1 357.69 P
|
|
(Motif conventions. I believe that the widgets are now completely Motif compliant except) 152.1 345.64 T
|
|
(for the following missing features:) 152.1 333.6 T
|
|
3 12 Q
|
|
(\245) 152.1 318.6 T
|
|
3 10 Q
|
|
(There is no support for secondary selections.) 162.9 318.6 T
|
|
3 12 Q
|
|
(\245) 152.1 303.6 T
|
|
3 10 Q
|
|
(There is no support for \322add mode\323 in widgets such as texts and listboxes.) 162.9 303.6 T
|
|
3 12 Q
|
|
(\245) 152.1 288.6 T
|
|
3 10 Q
|
|
(There is no support for drag and drop.) 162.9 288.6 T
|
|
-0.02 (Please let me know if you \336nd any other discrepancies between the Tk widgets and Motif) 152.1 273.59 P
|
|
(widgets. W) 152.1 261.55 T
|
|
(e plan to eliminate the remaining incompatibilities over the next year or two.) 196.82 261.55 T
|
|
98.1 218.19 512.1 221.21 C
|
|
152.1 219.41 512.1 219.41 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 219.7 143.1 219.7 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(5) 134.63 225.21 T
|
|
(W) 152.1 225.21 T
|
|
(idget changes) 163.31 225.21 T
|
|
3 10 Q
|
|
-0.07 (All of the Tk 4.0 widgets have been improved over their 3.6 counterparts, mostly in small) 152.1 201.52 P
|
|
-0.23 (and backwards compatible ways. Here is a summary of the widget improvements; see Sec-) 152.1 189.48 P
|
|
(tion 13 for information about incompatible changes.) 152.1 177.43 T
|
|
3 12 Q
|
|
(\245) 152.1 162.43 T
|
|
3 10 Q
|
|
(All widgets now have a) 162.9 162.43 T
|
|
5 F
|
|
(cget) 259.78 162.43 T
|
|
3 F
|
|
( command, which provides an easier way to retrieve the) 283.76 162.43 T
|
|
(value of a con\336guration option. In other situations where con\336guration options are) 162.9 150.38 T
|
|
(used, such as for menu entries or text tags, a) 162.9 138.33 T
|
|
5 F
|
|
(cget) 342.21 138.33 T
|
|
3 F
|
|
( command is also available.) 366.2 138.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "11" 12
|
|
%%Page: "12" 12
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(12) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 12 Q
|
|
0 X
|
|
(\245) 152.1 632.33 T
|
|
3 10 Q
|
|
-0.22 (All widgets now have) 162.9 632.33 P
|
|
5 F
|
|
-0.53 (-highlightthickness) 251.96 632.33 P
|
|
3 F
|
|
-0.22 (,) 365.9 632.33 P
|
|
5 F
|
|
-0.53 (-highlightbackground) 370.68 632.33 P
|
|
3 F
|
|
-0.22 (, and) 490.61 632.33 P
|
|
5 F
|
|
(-) 162.9 620.33 T
|
|
(highlightcolor) 168.9 620.33 T
|
|
3 F
|
|
( options for displaying a highlight ring when the widget \050or one) 252.85 620.33 T
|
|
(of its descendants\051 has the input focus.) 162.9 608.33 T
|
|
3 12 Q
|
|
(\245) 152.1 593.33 T
|
|
3 10 Q
|
|
(Entry widgets now support justi\336cation and provide a) 162.9 593.33 T
|
|
5 F
|
|
(-show) 379.99 593.33 T
|
|
3 F
|
|
( option for \050not\051 display-) 409.97 593.33 T
|
|
(ing passwords. They will autosize to \336t their text if) 162.9 581.33 T
|
|
5 F
|
|
(-width 0) 369.17 581.33 T
|
|
3 F
|
|
( is speci\336ed.) 417.14 581.33 T
|
|
3 12 Q
|
|
(\245) 152.1 566.33 T
|
|
3 10 Q
|
|
-0.16 (The label/button family of widgets now supports multiline text and justi\336cation, includ-) 162.9 566.33 P
|
|
(ing new options) 162.9 554.33 T
|
|
5 F
|
|
(-wraplength) 229.25 554.33 T
|
|
3 F
|
|
( and) 295.22 554.33 T
|
|
5 F
|
|
(-justify) 314.65 554.33 T
|
|
3 F
|
|
(. These features make the message) 361.97 554.33 T
|
|
-0.04 (widget obsolete. There is also a new) 162.9 542.33 P
|
|
5 F
|
|
-0.1 (-underline) 310.27 542.33 P
|
|
3 F
|
|
-0.04 ( option for highlighting a character) 370.23 542.33 P
|
|
(for keyboard traversal.) 162.9 530.33 T
|
|
3 12 Q
|
|
(\245) 152.1 515.33 T
|
|
3 10 Q
|
|
-0.23 (Listboxes now support all of the Motif selection modes, including single selection, mul-) 162.9 515.33 P
|
|
(tiple selection, and multiple disjoint selections, via the) 162.9 503.33 T
|
|
5 F
|
|
(-selectmode) 382.78 503.33 T
|
|
3 F
|
|
( option. They) 448.74 503.33 T
|
|
(will autosize to \336t their contents if) 162.9 491.33 T
|
|
5 F
|
|
(-width 0) 302.54 491.33 T
|
|
3 F
|
|
( or) 350.52 491.33 T
|
|
5 F
|
|
(-height 0) 363.84 491.33 T
|
|
3 F
|
|
( is speci\336ed. There are) 417.81 491.33 T
|
|
(new) 162.9 479.33 T
|
|
5 F
|
|
(see) 182.05 479.33 T
|
|
3 F
|
|
(,) 200.04 479.33 T
|
|
5 F
|
|
(bbox) 205.04 479.33 T
|
|
3 F
|
|
(, and) 229.02 479.33 T
|
|
5 F
|
|
(activate) 250.95 479.33 T
|
|
3 F
|
|
( widget commands.) 298.92 479.33 T
|
|
3 12 Q
|
|
(\245) 152.1 464.33 T
|
|
3 10 Q
|
|
(Canvas polygons now support) 162.9 464.33 T
|
|
5 F
|
|
(-outline) 286.16 464.33 T
|
|
3 F
|
|
( and) 334.14 464.33 T
|
|
5 F
|
|
(-width) 353.57 464.33 T
|
|
3 F
|
|
( options for drawing outlines.) 389.55 464.33 T
|
|
3 12 Q
|
|
(\245) 152.1 449.33 T
|
|
3 10 Q
|
|
-0.03 (Scale widgets now support real values as well as integers \050see the) 162.9 449.33 P
|
|
5 F
|
|
-0.08 (-resolution) 426.77 449.33 P
|
|
3 F
|
|
-0.03 ( and) 492.73 449.33 P
|
|
5 F
|
|
-0.54 (-digits) 162.9 437.33 P
|
|
3 F
|
|
-0.22 ( options\051, and they have a) 204.88 437.33 P
|
|
5 F
|
|
-0.54 (-variable) 308.73 437.33 P
|
|
3 F
|
|
-0.22 ( option to link to a T) 362.7 437.33 P
|
|
-0.22 (cl variable. They) 442.83 437.33 P
|
|
-0.28 (have two new widget commands,) 162.9 425.33 P
|
|
5 F
|
|
-0.67 (coords) 297.52 425.33 P
|
|
3 F
|
|
-0.28 ( and) 333.5 425.33 P
|
|
5 F
|
|
-0.67 (identify) 352.37 425.33 P
|
|
3 F
|
|
-0.28 (, and their bindings are now) 399.69 425.33 P
|
|
(de\336ned in T) 162.9 413.33 T
|
|
(cl rather than being hardwired in C code as in Tk 3.6.) 210.5 413.33 T
|
|
3 12 Q
|
|
(\245) 152.1 398.33 T
|
|
3 10 Q
|
|
(Scrollbar widgets now have a new interface to the controlling widget, which provides) 162.9 398.33 T
|
|
-0.04 (more \337exibility than the old style \050but the old style is still supported for compatibility\051.) 162.9 386.33 P
|
|
(There is a new option) 162.9 374.33 T
|
|
5 F
|
|
(-jump) 252 374.33 T
|
|
3 F
|
|
( to prevent continuous updates while dragging the slider) 281.98 374.33 T
|
|
(,) 505.88 374.33 T
|
|
-0.24 (and a new option) 162.9 362.33 P
|
|
5 F
|
|
-0.59 (-elementborderwidth) 232.98 362.33 P
|
|
3 F
|
|
-0.24 ( to control the border width of the arrows) 346.92 362.33 P
|
|
(and slider separately from the widget\325) 162.9 350.33 T
|
|
(s outer border) 314.18 350.33 T
|
|
(. There are four new widget com-) 369.14 350.33 T
|
|
(mands,) 162.9 338.33 T
|
|
5 F
|
|
(activate) 193.99 338.33 T
|
|
3 F
|
|
(,) 241.97 338.33 T
|
|
5 F
|
|
(delta) 246.96 338.33 T
|
|
3 F
|
|
(,) 276.95 338.33 T
|
|
5 F
|
|
(fraction) 281.95 338.33 T
|
|
3 F
|
|
(, and) 329.92 338.33 T
|
|
5 F
|
|
(identify) 351.85 338.33 T
|
|
3 F
|
|
(, and the default bindings) 399.17 338.33 T
|
|
(are now de\336ned in T) 162.9 326.33 T
|
|
(cl rather than being hardwired in C code as in Tk 3.6.) 244.91 326.33 T
|
|
3 12 Q
|
|
(\245) 152.1 311.33 T
|
|
3 10 Q
|
|
-0.13 (Menu entries now have several new con\336guration options such as) 162.9 311.33 P
|
|
5 F
|
|
-0.31 (-foreground) 426.97 311.33 P
|
|
3 F
|
|
-0.13 ( and) 492.93 311.33 P
|
|
5 F
|
|
-0.41 (-) 162.9 299.33 P
|
|
-0.41 (indicatoron) 168.9 299.33 P
|
|
3 F
|
|
-0.17 (, and tear) 234.86 299.33 P
|
|
-0.17 (-of) 271.23 299.33 P
|
|
-0.17 (f menus have been reimplemented to be more Motif-like.) 282.7 299.33 P
|
|
(New menu entries can be created in the middle of a menu using the) 162.9 287.33 T
|
|
5 F
|
|
(insert) 434.36 287.33 T
|
|
3 F
|
|
( widget) 470.34 287.33 T
|
|
(command, and there is a) 162.9 275.33 T
|
|
5 F
|
|
(type) 262.83 275.33 T
|
|
3 F
|
|
( widget command that returns the type of a menu entry) 286.81 275.33 T
|
|
(.) 505.45 275.33 T
|
|
3 12 Q
|
|
(\245) 152.1 260.33 T
|
|
3 10 Q
|
|
(Menubuttons now have a) 162.9 260.33 T
|
|
5 F
|
|
(-indicatoron) 266.16 260.33 T
|
|
3 F
|
|
( option for displaying an option menu indi-) 338.12 260.33 T
|
|
-0.38 (cator) 162.9 248.33 P
|
|
-0.38 (. There is now support for option menus via the) 182.33 248.33 P
|
|
5 F
|
|
-0.91 (tk_optionMenu) 370.9 248.33 P
|
|
3 F
|
|
-0.38 ( procedure, and) 448.86 248.33 P
|
|
(popups are simpli\336ed with the) 162.9 236.33 T
|
|
5 F
|
|
(tk_popup) 286.44 236.33 T
|
|
3 F
|
|
( procedure.) 334.42 236.33 T
|
|
3 12 Q
|
|
(\245) 152.1 221.33 T
|
|
3 10 Q
|
|
-0.03 (The variable) 162.9 221.33 P
|
|
5 F
|
|
-0.07 (tk_strictMotif) 215.57 221.33 P
|
|
3 F
|
|
-0.03 ( is used in more places to enforce even stricter Motif) 299.53 221.33 P
|
|
(compliance.) 162.9 209.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "12" 13
|
|
%%Page: "13" 13
|
|
612 792 0 FMBEGINPAGE
|
|
4 10 Q
|
|
0 X
|
|
0 K
|
|
(6 Images) 98.1 668.33 T
|
|
0 F
|
|
(13) 500.99 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
98.1 623.98 512.1 627 C
|
|
152.1 625.2 512.1 625.2 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 625.49 143.1 625.49 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(6) 134.63 631 T
|
|
(Images) 152.1 631 T
|
|
3 10 Q
|
|
(Tk 4.0 contains a general-purpose image mechanism for displaying color pictures and) 152.1 607.31 T
|
|
(other complex objects. There is a new command,) 152.1 595.26 T
|
|
5 F
|
|
(image) 350.84 595.26 T
|
|
3 F
|
|
(, which may be used to create) 380.82 595.26 T
|
|
(image objects. For example, the command) 152.1 583.21 T
|
|
5 9 Q
|
|
(image create photo myFace -f) 179.1 568.88 T
|
|
(ile picture.ppm) 330.09 568.88 T
|
|
3 10 Q
|
|
(creates a new image named) 152.1 555.21 T
|
|
5 F
|
|
(myFace) 264.5 555.21 T
|
|
3 F
|
|
(. The image is of type) 300.48 555.21 T
|
|
5 F
|
|
(photo) 390.14 555.21 T
|
|
3 F
|
|
( \050a full-color represen-) 420.12 555.21 T
|
|
(tation that dithers on monochrome or color) 152.1 543.17 T
|
|
(-mapped displays\051 and the source data for the) 323.46 543.17 T
|
|
(image is in the \336le named) 152.1 531.12 T
|
|
5 F
|
|
(picture.ppm) 257.59 531.12 T
|
|
3 F
|
|
(. Once an image has been created, it can be) 323.56 531.12 T
|
|
-0.15 (used in many dif) 152.1 519.07 P
|
|
-0.15 (ferent places by specifying a) 218.37 519.07 P
|
|
5 F
|
|
-0.36 (-image) 334.46 519.07 P
|
|
3 F
|
|
-0.15 ( option. For example, the command) 370.44 519.07 P
|
|
5 9 Q
|
|
(label .l -image myFace) 179.1 504.74 T
|
|
3 10 Q
|
|
(will create a label widget that displays the image, and if) 152.1 491.07 T
|
|
5 F
|
|
(.c) 377.5 491.07 T
|
|
3 F
|
|
( is a canvas widget the com-) 389.49 491.07 T
|
|
(mand) 152.1 479.02 T
|
|
5 9 Q
|
|
(.c create image 400 200 -image myFace) 179.1 464.69 T
|
|
3 10 Q
|
|
(will create an image item in the canvas that displays) 152.1 451.02 T
|
|
5 F
|
|
(myFace) 363.06 451.02 T
|
|
3 F
|
|
(.) 399.04 451.02 T
|
|
(The image mechanism provides a great deal of \337exibility:) 170.1 439.02 T
|
|
3 12 Q
|
|
(\245) 152.1 424.02 T
|
|
3 10 Q
|
|
-0.18 (Once an image has been de\336ned, it can be used in many dif) 162.9 424.02 P
|
|
-0.18 (ferent places, even on dif) 397.84 424.02 P
|
|
-0.18 (fer-) 497.68 424.02 P
|
|
(ent displays.) 162.9 411.98 T
|
|
3 12 Q
|
|
(\245) 152.1 396.98 T
|
|
3 10 Q
|
|
(Images provide image commands, analogous to widget commands, that can be used to) 162.9 396.98 T
|
|
(manipulate the image; any changes in an image are automatically re\337ected in all of its) 162.9 384.93 T
|
|
(instances.) 162.9 372.88 T
|
|
3 12 Q
|
|
(\245) 152.1 357.88 T
|
|
3 10 Q
|
|
-0.21 (There can be many dif) 162.9 357.88 P
|
|
-0.21 (ferent types of images. Tk 4.0 has two built-in types,) 251.78 357.88 P
|
|
5 F
|
|
-0.51 (photo) 463.11 357.88 P
|
|
3 F
|
|
-0.21 ( and) 493.1 357.88 P
|
|
5 F
|
|
(bitmap) 162.9 345.83 T
|
|
3 F
|
|
(. Other image types can be de\336ned in C as extensions \050see the documentation) 198.88 345.83 T
|
|
-0.16 (for the) 162.9 333.79 P
|
|
5 F
|
|
-0.39 (Tk_CreateImageType) 191.44 333.79 P
|
|
3 F
|
|
-0.16 ( library procedure\051. The photo image type was imple-) 299.38 333.79 P
|
|
(mented by Paul Mackerras, based on his earlier photo widget.) 162.9 321.74 T
|
|
3 12 Q
|
|
(\245) 152.1 306.74 T
|
|
3 10 Q
|
|
(W) 162.9 306.74 T
|
|
(ithin the photo image type, there can be many dif) 171.93 306.74 T
|
|
(ferent \336le formats. In Tk 4.0, only) 368.29 306.74 T
|
|
-0.11 (PPM, PGM, and GIF formats are built-in, but other formats can be added as extensions) 162.9 294.69 P
|
|
(\050see the documentation for the) 162.9 282.64 T
|
|
5 F
|
|
(Tk_CreatePhotoImageFormat) 286.97 282.64 T
|
|
3 F
|
|
( library proce-) 436.89 282.64 T
|
|
(dure\051. Readers for XPM, TIFF) 162.9 270.59 T
|
|
(, and others are available from the T) 284.23 270.59 T
|
|
(cl community) 428.41 270.59 T
|
|
(.) 483.01 270.59 T
|
|
98.1 227.24 512.1 230.26 C
|
|
152.1 228.46 512.1 228.46 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 228.75 143.1 228.75 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(7) 134.63 234.26 T
|
|
(Color management) 152.1 234.26 T
|
|
3 10 Q
|
|
(Tk 3.6 suf) 152.1 210.57 T
|
|
(fers from a relatively weak mechanism for managing colors. It uses only the) 192.73 210.57 T
|
|
(default colormap for a screen, and if all the entries in that colormap \336ll up then Tk) 152.1 198.52 T
|
|
(switches to monochrome mode and \322rounds\323 all future colors to black or white. This) 152.1 186.48 T
|
|
(approach is becoming increasingly unpleasant because of applications such as Frame and) 152.1 174.43 T
|
|
(W) 152.1 162.38 T
|
|
(eb browsers that use up all the entries in the default colormap.) 160.74 162.38 T
|
|
(Tk 4.0 has a much more powerful color management mechanism. If a colormap \336lls) 170.1 150.38 T
|
|
(up, Tk allocates future colors by picking the closest match from the available colors, so) 152.1 138.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "13" 14
|
|
%%Page: "14" 14
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(14) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 F
|
|
0 X
|
|
(that it need not revert to monochrome mode. Tk also manages colors better by delaying) 152.1 632.33 T
|
|
-0.3 (color allocation until colors are actually needed; in many cases, such as 3D borders, colors) 152.1 620.33 P
|
|
(are never needed. When colors are scarce Tk changes the way it displays beveled borders) 152.1 608.33 T
|
|
-0.38 (so that it uses stippling instead of additional colors for the light and dark shadows. Y) 152.1 596.33 P
|
|
-0.38 (ou can) 484.01 596.33 P
|
|
(\336nd out whether a colormap has \336lled up using the new command) 152.1 584.33 T
|
|
5 F
|
|
(winfo colormap-) 418.59 584.33 T
|
|
(full) 152.1 572.33 T
|
|
3 F
|
|
(.) 176.09 572.33 T
|
|
-0.26 (Tk 4.0 also allows you to allocate new colormaps for toplevel and frame widgets with) 170.1 560.33 P
|
|
(the) 152.1 548.33 T
|
|
5 F
|
|
(-colormap) 166.81 548.33 T
|
|
3 F
|
|
( option, and you change the visual type in these widgets \050with the) 220.78 548.33 T
|
|
5 F
|
|
(-) 152.1 536.33 T
|
|
(visual) 158.1 536.33 T
|
|
3 F
|
|
( option\051 to take advantage of visuals other than the default visual for a screen.) 194.08 536.33 T
|
|
(New commands) 152.1 524.33 T
|
|
5 F
|
|
(winfo visualsavailable) 219.27 524.33 T
|
|
3 F
|
|
( and) 351.2 524.33 T
|
|
5 F
|
|
(wm colormapwindows) 370.63 524.33 T
|
|
3 F
|
|
( have) 478.57 524.33 T
|
|
(been added to help manage colormaps and visuals.) 152.1 512.33 T
|
|
(The default color scheme in Tk 4.0 has changed from a tan palette \050\322bisque\323\051 to a) 170.1 500.33 T
|
|
(gray palette, which seems to becoming standard for Motif. There is a new T) 152.1 488.33 T
|
|
(cl procedure) 454.78 488.33 T
|
|
5 F
|
|
-0.36 (tk_setPalette) 152.1 476.33 P
|
|
3 F
|
|
-0.15 ( that changes the palette of an application on the \337y) 230.06 476.33 P
|
|
-0.15 (, and there is also a) 433.89 476.33 P
|
|
(procedure) 152.1 464.33 T
|
|
5 F
|
|
(tk_bisque) 194.56 464.33 T
|
|
3 F
|
|
( to restore the palette to the old bisque colors.) 248.53 464.33 T
|
|
(The Tk 3.6 color model mechanism is no longer necessary so it has been removed in) 170.1 452.33 T
|
|
(Tk 4.0. If you want to \336nd out whether a screen is monochrome or color) 152.1 440.33 T
|
|
(, you cannot use) 440.38 440.33 T
|
|
(the) 152.1 428.33 T
|
|
5 F
|
|
(tk colormodel) 166.81 428.33 T
|
|
3 F
|
|
( command anymore; use) 244.77 428.33 T
|
|
5 F
|
|
(winfo depth) 345.25 428.33 T
|
|
3 F
|
|
( instead.) 411.22 428.33 T
|
|
98.1 384.98 512.1 388 C
|
|
152.1 386.2 512.1 386.2 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 386.49 143.1 386.49 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(8) 134.63 392 T
|
|
(Event handling: \336leevent and after) 152.1 392 T
|
|
3 10 Q
|
|
(Tk 4.0 contains several improvements in the area of event handling besides those already) 152.1 368.31 T
|
|
(mentioned for bindings:) 152.1 356.31 T
|
|
3 12 Q
|
|
(\245) 152.1 341.31 T
|
|
3 10 Q
|
|
(There is a new command) 162.9 341.31 T
|
|
5 F
|
|
(f) 265.87 341.31 T
|
|
(ileevent) 271.87 341.31 T
|
|
3 F
|
|
( for performing event-driven I/O to and from) 319.84 341.31 T
|
|
-0.12 (\336les. The) 162.9 329.31 P
|
|
5 F
|
|
-0.29 (f) 202.35 329.31 P
|
|
-0.29 (ileevent) 208.35 329.31 P
|
|
3 F
|
|
-0.12 ( command is modelled very closely after Mark Diekhans\325) 256.33 329.31 P
|
|
5 F
|
|
-0.29 (add-) 488.11 329.31 P
|
|
(input) 162.9 317.31 T
|
|
3 F
|
|
( extension, which has been used widely with Tk 3.6.) 192.88 317.31 T
|
|
3 12 Q
|
|
(\245) 152.1 302.31 T
|
|
3 10 Q
|
|
-0.34 (The) 162.9 302.31 P
|
|
5 F
|
|
-0.82 (after) 180.6 302.31 P
|
|
3 F
|
|
-0.34 ( command has two new options,) 210.58 302.31 P
|
|
5 F
|
|
-0.82 (idle) 339.82 302.31 P
|
|
3 F
|
|
-0.34 ( and) 363.81 302.31 P
|
|
5 F
|
|
-0.82 (cancel) 382.55 302.31 P
|
|
3 F
|
|
-0.34 (.) 418.53 302.31 P
|
|
5 F
|
|
-0.82 (After idle) 423.19 302.31 P
|
|
3 F
|
|
-0.34 ( can be) 482.33 302.31 P
|
|
-0.2 (used to schedule a script as an \322idle handler\323, which means it runs the next time that Tk) 162.9 290.31 P
|
|
(enters the event loop and \336nds no work to do.) 162.9 278.31 T
|
|
5 F
|
|
(After cancel) 348.06 278.31 T
|
|
3 F
|
|
( may be used to delete) 420.02 278.31 T
|
|
(a previously-scheduled) 162.9 266.31 T
|
|
5 F
|
|
(after) 257.83 266.31 T
|
|
3 F
|
|
( script, so that it will no longer be invoked.) 287.81 266.31 T
|
|
98.1 222.95 512.1 225.98 C
|
|
152.1 224.18 512.1 224.18 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 224.46 143.1 224.46 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(9) 134.63 229.98 T
|
|
(Multiple displays) 152.1 229.98 T
|
|
3 10 Q
|
|
(Although Tk has always allowed a single application to open windows on several dis-) 152.1 206.29 T
|
|
(plays, the support for multiple displays is weak in Tk 3.6. For example, many of the bind-) 152.1 194.29 T
|
|
(ings break if users work simultaneously in windows on dif) 152.1 182.29 T
|
|
(ferent displays, and) 385.94 182.29 T
|
|
(mechanisms like the selection and the input focus have insuf) 152.1 170.29 T
|
|
(\336cient support for multiple) 394.26 170.29 T
|
|
(displays.) 152.1 158.29 T
|
|
FMENDPAGE
|
|
%%EndPage: "14" 15
|
|
%%Page: "15" 15
|
|
612 792 0 FMBEGINPAGE
|
|
4 10 Q
|
|
0 X
|
|
0 K
|
|
(10 The send command) 98.1 668.33 T
|
|
0 F
|
|
(15) 500.99 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 F
|
|
0 X
|
|
-0.33 (Tk 4.0 contains numerous modi\336cations to improve the handling of multiple displays.) 170.1 632.33 P
|
|
-0.18 (Several commands, such as) 152.1 620.24 P
|
|
5 F
|
|
-0.44 (selection) 263.78 620.24 P
|
|
3 F
|
|
-0.18 (,) 317.76 620.24 P
|
|
5 F
|
|
-0.44 (send) 322.57 620.24 P
|
|
3 F
|
|
-0.18 (, and) 346.55 620.24 P
|
|
5 F
|
|
-0.44 (focus) 368.12 620.24 P
|
|
3 F
|
|
-0.18 (, have a new) 398.1 620.24 P
|
|
5 F
|
|
-0.44 (-displayof) 449.82 620.24 P
|
|
3 F
|
|
(ar) 152.1 608.15 T
|
|
(gument so that you can select a particular display) 159.69 608.15 T
|
|
(. In addition, the bindings have been) 356.12 608.15 T
|
|
(reworked to handle interactions occurring simultaneously on dif) 152.1 596.05 T
|
|
(ferent displays. W) 408.13 596.05 T
|
|
(ith Tk) 480.73 596.05 T
|
|
(4.0 it should be possible to create applications that really use multiple displays gracefully) 152.1 583.96 T
|
|
(.) 508.44 583.96 T
|
|
98.1 540.6 512.1 543.63 C
|
|
152.1 541.83 512.1 541.83 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 542.12 143.1 542.12 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(10) 127.96 547.63 T
|
|
(The send command) 152.1 547.63 T
|
|
3 10 Q
|
|
-0.2 (The) 152.1 523.94 P
|
|
5 F
|
|
-0.48 (send) 169.94 523.94 P
|
|
3 F
|
|
-0.2 ( command has been completely overhauled for Tk 4.0 to eliminate several prob-) 193.93 523.94 P
|
|
(lems in Tk 3.6 and add a number of new features:) 152.1 511.85 T
|
|
3 12 Q
|
|
(\245) 152.1 496.85 T
|
|
3 10 Q
|
|
(Tk 3.6 aborts a) 162.9 496.85 T
|
|
5 F
|
|
(send) 225.36 496.85 T
|
|
3 F
|
|
( command if no response is received within 5 seconds; this made) 249.34 496.85 T
|
|
(it very dif) 162.9 484.75 T
|
|
(\336cult to invoke long-running commands. Tk 4.0 eliminates the timeout and) 202.14 484.75 T
|
|
(uses a dif) 162.9 472.66 T
|
|
(ferent mechanism to tell if the tar) 200.47 472.66 T
|
|
(get application has crashed.) 333.53 472.66 T
|
|
3 12 Q
|
|
(\245) 152.1 457.66 T
|
|
3 10 Q
|
|
-0.36 (The) 162.9 457.66 P
|
|
5 F
|
|
-0.87 (winfo interps) 180.58 457.66 P
|
|
3 F
|
|
-0.36 ( command no longer returns the names of applications that have) 257.66 457.66 P
|
|
(exited or crashed.) 162.9 445.57 T
|
|
3 12 Q
|
|
(\245) 152.1 430.57 T
|
|
3 10 Q
|
|
(Asynchronous sends are possible using the) 162.9 430.57 T
|
|
5 F
|
|
(-async) 336.67 430.57 T
|
|
3 F
|
|
( switch.) 372.65 430.57 T
|
|
3 12 Q
|
|
(\245) 152.1 415.57 T
|
|
3 10 Q
|
|
(Commands can be sent to displays other than that of the root window) 162.9 415.57 T
|
|
(, using the) 439.3 415.57 T
|
|
5 F
|
|
(-) 162.9 403.47 T
|
|
(displayof) 168.9 403.47 T
|
|
3 F
|
|
( switch.) 222.87 403.47 T
|
|
3 12 Q
|
|
(\245) 152.1 388.47 T
|
|
3 10 Q
|
|
(W) 162.9 388.47 T
|
|
(indow server security is now checked on each) 171.93 388.47 T
|
|
5 F
|
|
(send) 357.89 388.47 T
|
|
3 F
|
|
(, so Tk 4.0 deals better with) 381.88 388.47 T
|
|
(changes in the security of the server) 162.9 376.38 T
|
|
(.) 306.12 376.38 T
|
|
3 12 Q
|
|
(\245) 152.1 361.38 T
|
|
3 10 Q
|
|
(More complete error information \050including the) 162.9 361.38 T
|
|
5 F
|
|
(errorCode) 356.09 361.38 T
|
|
3 F
|
|
( and) 410.06 361.38 T
|
|
5 F
|
|
(errorInfo) 429.49 361.38 T
|
|
3 F
|
|
( vari-) 483.46 361.38 T
|
|
(ables\051 is propagated back to the sender after errors.) 162.9 349.29 T
|
|
3 12 Q
|
|
(\245) 152.1 334.29 T
|
|
3 10 Q
|
|
(Y) 162.9 334.29 T
|
|
(ou can query and change the name of an application with the) 169.12 334.29 T
|
|
5 F
|
|
(tk appname) 414.48 334.29 T
|
|
3 F
|
|
( com-) 474.45 334.29 T
|
|
(mand.) 162.9 322.19 T
|
|
(Unfortunately the improvements to the Tk 4.0) 152.1 307.19 T
|
|
5 F
|
|
(send) 338.65 307.19 T
|
|
3 F
|
|
( mechanism required substantial) 362.63 307.19 T
|
|
(changes to the transport protocol for sends; this makes it impossible for Tk 4.0 applica-) 152.1 295.1 T
|
|
(tions to communicate with Tk 3.6 applications via) 152.1 283.01 T
|
|
5 F
|
|
(send) 355.04 283.01 T
|
|
3 F
|
|
(. The new transport protocol is) 379.02 283.01 T
|
|
(more \337exible than the old protocol, so it should be possible to make protocol improve-) 152.1 270.91 T
|
|
(ments in an upward-compatible way) 152.1 258.82 T
|
|
(.) 296.9 258.82 T
|
|
98.1 215.47 512.1 218.49 C
|
|
152.1 216.69 512.1 216.69 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 216.98 143.1 216.98 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(1) 128.62 222.49 T
|
|
(1) 134.63 222.49 T
|
|
(The selection and clipboard) 152.1 222.49 T
|
|
3 10 Q
|
|
(In Tk 3.6 the selection mechanism can deal only with the display of the root window and) 152.1 198.8 T
|
|
-0.13 (with the primary selection; there is no support for multiple displays, secondary selections,) 152.1 186.71 P
|
|
(or the clipboard. Tk 4.0 eliminates all of these shortcomings. The) 152.1 174.61 T
|
|
5 F
|
|
(-displayof) 415.82 174.61 T
|
|
3 F
|
|
( option) 475.78 174.61 T
|
|
-0.12 (can be used to specify a particular display in the selection command, and there is now full) 152.1 162.52 P
|
|
(access to all of the X selection types. Tk 4.0 also includes a new) 152.1 150.43 T
|
|
5 F
|
|
(clipboard) 411.36 150.43 T
|
|
3 F
|
|
( command) 465.33 150.43 T
|
|
(for manipulating the clipboard.) 152.1 138.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "15" 16
|
|
%%Page: "16" 16
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(16) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
98.1 623.98 512.1 627 C
|
|
152.1 625.2 512.1 625.2 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 625.49 143.1 625.49 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(12) 127.96 631 T
|
|
(Miscellaneous changes) 152.1 631 T
|
|
3 10 Q
|
|
(Here is a quick summary of the remaining changes in Tk 4.0:) 152.1 607.31 T
|
|
3 12 Q
|
|
(\245) 152.1 592.31 T
|
|
3 10 Q
|
|
-0.17 (The) 162.9 592.31 P
|
|
5 F
|
|
-0.42 (wish) 180.76 592.31 P
|
|
3 F
|
|
-0.17 ( application has been modi\336ed so that the) 204.75 592.31 P
|
|
5 F
|
|
-0.42 (-f) 371.58 592.31 P
|
|
-0.42 (ile) 383.57 592.31 P
|
|
3 F
|
|
-0.17 ( switch is no longer needed) 401.56 592.31 P
|
|
(or recommended. This makes) 162.9 580.31 T
|
|
5 F
|
|
(wish) 283.64 580.31 T
|
|
3 F
|
|
( just like) 307.63 580.31 T
|
|
5 F
|
|
(tclsh) 344.56 580.31 T
|
|
3 F
|
|
(, where you specify the script \336le) 374.54 580.31 T
|
|
(as the \336rst ar) 162.9 568.31 T
|
|
(gument to the program, e.g.) 214.07 568.31 T
|
|
5 F
|
|
(wish foo.tcl) 327.33 568.31 T
|
|
3 F
|
|
(. The) 399.29 568.31 T
|
|
5 F
|
|
(-f) 422.33 568.31 T
|
|
(ile) 434.32 568.31 T
|
|
3 F
|
|
( switch is still) 452.31 568.31 T
|
|
(permitted for backward compatibility) 162.9 556.31 T
|
|
(, but its use is deprecated.) 311.87 556.31 T
|
|
3 12 Q
|
|
(\245) 152.1 541.31 T
|
|
5 10 Q
|
|
(Wish) 162.9 541.31 T
|
|
3 F
|
|
( now sets the application\325) 186.89 541.31 T
|
|
(s class from the application name \050what appears in the) 288.49 541.31 T
|
|
-0.37 (title bar of the window by default\051, rather than always using) 162.9 529.31 P
|
|
5 F
|
|
-0.88 (Tk) 400.9 529.31 P
|
|
3 F
|
|
-0.37 ( as the class as in Tk 3.6.) 412.89 529.31 P
|
|
(This makes application-speci\336c options easier to use.) 162.9 517.31 T
|
|
3 12 Q
|
|
(\245) 152.1 502.31 T
|
|
3 10 Q
|
|
(T) 162.9 502.31 T
|
|
(oplevel windows are now resizable by default, whereas in Tk 3.6 they were not. Y) 168.31 502.31 T
|
|
(ou) 496.22 502.31 T
|
|
(can use the) 162.9 490.31 T
|
|
5 F
|
|
(wm resizable) 209.8 490.31 T
|
|
3 F
|
|
( command to make windows non-reiszable.) 281.77 490.31 T
|
|
3 12 Q
|
|
(\245) 152.1 475.31 T
|
|
3 10 Q
|
|
(Tk 4.0 patches around an Xlib bug whereby long-running applications tended to reach) 162.9 475.31 T
|
|
(the end of the space of X resource ids, wrap around to 0 again, and then crash. Tk now) 162.9 463.31 T
|
|
(reuses resource identi\336ers so that wrap-around should never occur) 162.9 451.31 T
|
|
(.) 427.14 451.31 T
|
|
3 12 Q
|
|
(\245) 152.1 436.31 T
|
|
3 10 Q
|
|
-0.13 (There is a new) 162.9 436.31 P
|
|
5 F
|
|
-0.31 (winfo manager) 223.43 436.31 P
|
|
3 F
|
|
-0.13 ( command that tells which geometry manager is con-) 301.08 436.31 P
|
|
(trolling a particular widget.) 162.9 424.31 T
|
|
3 12 Q
|
|
(\245) 152.1 409.31 T
|
|
3 10 Q
|
|
(There is a new) 162.9 409.31 T
|
|
5 F
|
|
(bell) 223.96 409.31 T
|
|
3 F
|
|
( command that does what its name suggests.) 247.94 409.31 T
|
|
3 12 Q
|
|
(\245) 152.1 394.31 T
|
|
3 10 Q
|
|
(There are new) 162.9 394.31 T
|
|
5 F
|
|
(winfo pointerx) 222.56 394.31 T
|
|
3 F
|
|
(,) 306.51 394.31 T
|
|
5 F
|
|
(winfo pointery) 311.51 394.31 T
|
|
3 F
|
|
(, and) 394.81 394.31 T
|
|
5 F
|
|
(winfo pointerxy) 416.74 394.31 T
|
|
3 F
|
|
(commands that can be used to query the position of the mouse pointer) 162.9 382.31 T
|
|
(.) 442.17 382.31 T
|
|
98.1 338.95 512.1 341.98 C
|
|
152.1 340.18 512.1 340.18 2 L
|
|
0.5 H
|
|
2 Z
|
|
0 X
|
|
0 K
|
|
N
|
|
98.1 340.46 143.1 340.46 2 L
|
|
0 Z
|
|
N
|
|
40.5 63 571.5 729 C
|
|
0 12 Q
|
|
0 X
|
|
0 K
|
|
(13) 127.96 345.98 T
|
|
(Summary of Incompatibilites) 152.1 345.98 T
|
|
3 10 Q
|
|
-0.24 (This section lists all of the incompatible changes in Tk 4.0 that may require changes in T) 152.1 322.29 P
|
|
-0.24 (cl) 502.62 322.29 P
|
|
-0.22 (scripts written for T) 152.1 310.29 P
|
|
-0.22 (cl 3.6. Each incompatibility is described in terms of the problem it pro-) 230.42 310.29 P
|
|
(duces when you run your Tk 3.6 script under Tk 4.0 and a possible work-around. Only) 152.1 298.29 T
|
|
(T) 152.1 286.29 T
|
|
(cl-level incompatibilities are covered here. For incompatible changes at the C level, see) 157.51 286.29 T
|
|
(the) 152.1 274.29 T
|
|
5 F
|
|
(README) 166.81 274.29 T
|
|
3 F
|
|
( and) 202.79 274.29 T
|
|
5 F
|
|
(changes) 222.22 274.29 T
|
|
3 F
|
|
( \336les in the distribution. The problems and solutions are) 264.2 274.29 T
|
|
(roughly in order of importance, with the most important problems \336rst.) 152.1 262.29 T
|
|
1 F
|
|
(Pr) 152.1 247.29 T
|
|
(oblem #1:) 162.46 247.29 T
|
|
3 F
|
|
(When you change the background color of a widget, a small ring in the) 206.88 247.29 T
|
|
(default background color remains around the edge of the widget.) 152.1 235.29 T
|
|
2 F
|
|
(Solution:) 170.1 223.29 T
|
|
3 F
|
|
(This is the focus traversal highlight, whose color is speci\336ed separately) 209.25 223.29 T
|
|
(from) 170.1 211.29 T
|
|
5 F
|
|
(-background) 192.03 211.29 T
|
|
3 F
|
|
(; use the) 257.99 211.29 T
|
|
5 F
|
|
(-highlightbackground) 293.8 211.29 T
|
|
3 F
|
|
( option to change the) 413.74 211.29 T
|
|
(color of the highlight. Or) 170.1 199.29 T
|
|
(, you can set) 269.92 199.29 T
|
|
5 F
|
|
(-highlightthickness) 322.38 199.29 T
|
|
3 F
|
|
( to 0 to eliminate) 436.31 199.29 T
|
|
(the traversal highlight altogether) 170.1 187.29 T
|
|
(.) 299.74 187.29 T
|
|
1 F
|
|
(Pr) 152.1 172.29 T
|
|
(oblem #2:) 162.46 172.29 T
|
|
3 F
|
|
(Bindings de\336ned for a widget no longer replace the corresponding class) 206.88 172.29 T
|
|
(bindings, so unwanted class bindings get invoked in addition to the widget bindings.) 152.1 160.29 T
|
|
FMENDPAGE
|
|
%%EndPage: "16" 17
|
|
%%Page: "17" 17
|
|
612 792 0 FMBEGINPAGE
|
|
4 10 Q
|
|
0 X
|
|
0 K
|
|
(13 Summary of Incompatibilites) 98.1 668.33 T
|
|
0 F
|
|
(17) 500.99 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
2 F
|
|
0 X
|
|
(Solution:) 170.1 632.33 T
|
|
3 F
|
|
(Add a) 209.25 632.33 T
|
|
5 F
|
|
(break) 235.89 632.33 T
|
|
3 F
|
|
( command at the end of the widget binding, or rework the) 265.88 632.33 T
|
|
(widget binding so that it\325) 170.1 620.33 T
|
|
(s OK for the class binding to execute.) 270.05 620.33 T
|
|
1 F
|
|
(Pr) 152.1 605.33 T
|
|
(oblem #3:) 162.46 605.33 T
|
|
3 F
|
|
(Bindings on toplevel windows are invoked when events occur for internal) 206.88 605.33 T
|
|
(windows inside the toplevels.) 152.1 593.33 T
|
|
2 F
|
|
(Solution:) 170.1 581.33 T
|
|
3 F
|
|
(Use the) 209.25 581.33 T
|
|
5 F
|
|
(%W) 242 581.33 T
|
|
3 F
|
|
( substitution to extract the name of the window where the event) 253.99 581.33 T
|
|
(actually occurred, and only execute the rest of the binding script if this matches the) 170.1 569.33 T
|
|
(name of the toplevel.) 170.1 557.33 T
|
|
1 F
|
|
-0.15 (Pr) 152.1 542.33 P
|
|
-0.15 (oblem #4:) 162.46 542.33 P
|
|
3 F
|
|
-0.15 (The) 206.58 542.33 P
|
|
5 F
|
|
-0.37 (-command) 224.46 542.33 P
|
|
3 F
|
|
-0.15 ( option for a cascade menu entry is no longer invoked when) 272.44 542.33 P
|
|
(the submenu is posted.) 152.1 530.33 T
|
|
2 F
|
|
(Solution:) 170.1 518.33 T
|
|
3 F
|
|
(Use the) 209.25 518.33 T
|
|
5 F
|
|
(-postcommand) 242 518.33 T
|
|
3 F
|
|
( option for the submenu instead.) 313.96 518.33 T
|
|
1 F
|
|
(Pr) 152.1 503.33 T
|
|
(oblem #5:) 162.46 503.33 T
|
|
3 F
|
|
(The) 206.88 503.33 T
|
|
5 F
|
|
(-geometry) 224.92 503.33 T
|
|
3 F
|
|
( option is no longer supported by listboxes, frames, and) 278.89 503.33 T
|
|
(toplevels.) 152.1 491.33 T
|
|
2 F
|
|
(Solution:) 170.1 479.33 T
|
|
3 F
|
|
(Use the) 209.25 479.33 T
|
|
5 F
|
|
(-width) 242 479.33 T
|
|
3 F
|
|
( and) 277.98 479.33 T
|
|
5 F
|
|
(-height) 297.41 479.33 T
|
|
3 F
|
|
( options instead.) 339.39 479.33 T
|
|
1 F
|
|
(Pr) 152.1 464.33 T
|
|
(oblem #6:) 162.46 464.33 T
|
|
3 F
|
|
(The procedure) 206.88 464.33 T
|
|
5 F
|
|
(tk_listboxSingleSelect) 267.38 464.33 T
|
|
3 F
|
|
( no longer exists.) 399.3 464.33 T
|
|
2 F
|
|
(Solution:) 170.1 452.33 T
|
|
3 F
|
|
(Use the) 209.25 452.33 T
|
|
5 F
|
|
(-selectmode) 242 452.33 T
|
|
3 F
|
|
( option on the listbox instead.) 307.96 452.33 T
|
|
1 F
|
|
(Pr) 152.1 437.33 T
|
|
(oblem #7:) 162.46 437.33 T
|
|
3 F
|
|
(Canvases no longer have a) 206.88 437.33 T
|
|
5 F
|
|
(-scrollincrement) 315.96 437.33 T
|
|
3 F
|
|
( option.) 411.91 437.33 T
|
|
2 F
|
|
(Solution:) 170.1 425.33 T
|
|
3 F
|
|
(Use the new) 209.25 425.33 T
|
|
5 F
|
|
(-xscrollincrement) 261.15 425.33 T
|
|
3 F
|
|
( and) 363.09 425.33 T
|
|
5 F
|
|
(-yscrollincrement) 382.52 425.33 T
|
|
3 F
|
|
(options instead.) 170.1 413.33 T
|
|
1 F
|
|
(Pr) 152.1 398.33 T
|
|
(oblem #8:) 162.46 398.33 T
|
|
3 F
|
|
(The) 206.88 398.33 T
|
|
5 F
|
|
(tk colormodel) 224.92 398.33 T
|
|
3 F
|
|
( command no longer exists.) 302.88 398.33 T
|
|
2 F
|
|
-0.28 (Solution:) 170.1 386.33 P
|
|
3 F
|
|
-0.28 (T) 208.97 386.33 P
|
|
-0.28 (o \336nd out whether a window is monochrome or color) 214.37 386.33 P
|
|
-0.28 (, use) 424.34 386.33 P
|
|
5 F
|
|
-0.68 (winfo depth) 444.6 386.33 P
|
|
3 F
|
|
(to extract the window\325) 170.1 374.33 T
|
|
(s depth; a depth of 1 means monochrome.) 259.76 374.33 T
|
|
1 F
|
|
-0.08 (Pr) 152.1 359.33 P
|
|
-0.08 (oblem #9:) 162.46 359.33 P
|
|
3 F
|
|
-0.08 (The class of Tk applications is no longer) 206.72 359.33 P
|
|
5 F
|
|
-0.19 (Tk) 370.97 359.33 P
|
|
3 F
|
|
-0.08 (, so options speci\336ed for the) 382.96 359.33 P
|
|
5 F
|
|
-0.19 (Tk) 497.69 359.33 P
|
|
3 F
|
|
(class in your) 152.1 347.33 T
|
|
5 F
|
|
(.Xdefaults) 205.12 347.33 T
|
|
3 F
|
|
( \336le are no longer used.) 265.09 347.33 T
|
|
2 F
|
|
(Solution:) 170.1 335.33 T
|
|
3 F
|
|
(Modify your) 209.25 335.33 T
|
|
5 F
|
|
(.Xdefaults) 262.55 335.33 T
|
|
3 F
|
|
( \336le \050and any T) 322.52 335.33 T
|
|
(cl code that sets options\051 to) 382.88 335.33 T
|
|
(specify the name of the application \050with the \336rst letter capitalized\051 as the class) 170.1 323.33 T
|
|
(instead of) 170.1 311.33 T
|
|
5 F
|
|
(Tk) 211.74 311.33 T
|
|
3 F
|
|
(.) 223.73 311.33 T
|
|
1 F
|
|
-0.15 (Pr) 152.1 296.33 P
|
|
-0.15 (oblem #10:) 162.46 296.33 P
|
|
3 F
|
|
-0.15 (When text is added to a text widget just after a tagged area, the new text no) 211.57 296.33 P
|
|
(longer receives the tag.) 152.1 284.33 T
|
|
2 F
|
|
-0.1 (Solution:) 170.1 272.33 P
|
|
3 F
|
|
-0.1 (Explicitly tag the new text with the desired tags. If you want the tags on the) 209.15 272.33 P
|
|
-0.08 (new text to be the same as those at some other point in the text, you can use the) 170.1 260.33 P
|
|
5 F
|
|
-0.2 (tag) 488.31 260.33 P
|
|
(names) 170.1 248.33 T
|
|
3 F
|
|
( widget command to query existing tags.) 200.08 248.33 T
|
|
1 F
|
|
(Pr) 152.1 233.33 T
|
|
(oblem #1) 162.46 233.33 T
|
|
(1:) 200.5 233.33 T
|
|
3 F
|
|
(W) 211.33 233.33 T
|
|
(idgets appear lar) 220.36 233.33 T
|
|
(ger than they did in Tk 3.6.) 286.24 233.33 T
|
|
2 F
|
|
(Solution:) 170.1 221.33 T
|
|
3 F
|
|
(There are two issues here. The \336rst is that all widgets now have a focus tra-) 209.25 221.33 T
|
|
-0.24 (versal highlight ring that turns dark when the widget has the focus; this is required for) 170.1 209.33 P
|
|
(Motif compliance but you can eliminate it by specifying a 0 value for the) 170.1 197.33 T
|
|
5 F
|
|
( -high-) 462.4 197.33 T
|
|
(lightthickness) 170.1 185.33 T
|
|
3 F
|
|
( option. The second issue is that the default padding for buttons) 254.05 185.33 T
|
|
-0.17 (and menubuttons has been increased to match the sizes of Motif widgets. If you don\325) 170.1 173.33 P
|
|
-0.17 (t) 506.99 173.33 P
|
|
(mind being dif) 170.1 161.33 T
|
|
(ferent from Motif, you can set the) 228.78 161.33 T
|
|
5 F
|
|
(-padx) 366.45 161.33 T
|
|
3 F
|
|
( and) 396.44 161.33 T
|
|
5 F
|
|
(-) 415.86 161.33 T
|
|
(pady) 421.86 161.33 T
|
|
3 F
|
|
( options back to) 445.85 161.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "17" 18
|
|
%%Page: "18" 18
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(18) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
3 F
|
|
0 X
|
|
(their Tk 3.6 values \050use the) 170.1 632.33 T
|
|
5 F
|
|
(conf) 281.41 632.33 T
|
|
(igure) 305.4 632.33 T
|
|
3 F
|
|
( widget command in Tk 3.6 to see what the) 335.38 632.33 T
|
|
(old values were\051.) 170.1 620.33 T
|
|
1 F
|
|
(Pr) 152.1 605.33 T
|
|
(oblem #12:) 162.46 605.33 T
|
|
3 F
|
|
(Listboxes now return the selection as a string with newlines separating the) 211.88 605.33 T
|
|
(values, rather than a T) 152.1 593.33 T
|
|
(cl, list.) 240.49 593.33 T
|
|
2 F
|
|
(Solution:) 170.1 581.33 T
|
|
3 F
|
|
(Modify your code to handle the new format. Y) 209.25 581.33 T
|
|
(ou can convert the selection) 395.06 581.33 T
|
|
(back into the old list format with a script like the following:) 170.1 569.33 T
|
|
5 9 Q
|
|
(split [selection get] \134n) 179.1 555 T
|
|
1 10 Q
|
|
(Pr) 152.1 541.33 T
|
|
(oblem #13:) 162.46 541.33 T
|
|
3 F
|
|
(Tk 4.0 applications cannot) 211.88 541.33 T
|
|
5 F
|
|
(send) 320.42 541.33 T
|
|
3 F
|
|
( to or be sent from Tk 3.6 applications.) 344.4 541.33 T
|
|
2 F
|
|
(Solution:) 170.1 529.33 T
|
|
3 F
|
|
(The only solution is to upgrade all your applications to Tk 4.0.) 209.25 529.33 T
|
|
1 F
|
|
-0.17 (Pr) 152.1 514.33 P
|
|
-0.17 (oblem #14:) 162.46 514.33 P
|
|
3 F
|
|
-0.17 (In texts,) 211.54 514.33 P
|
|
5 F
|
|
-0.4 (end) 245.91 514.33 P
|
|
3 F
|
|
-0.17 ( now refers to a position just after the \336nal newline, instead of) 263.9 514.33 P
|
|
(the \336nal newline.) 152.1 502.33 T
|
|
2 F
|
|
-0.08 (Solution:) 170.1 490.33 P
|
|
3 F
|
|
-0.08 (If you wish to refer to the \336nal newline, use the index) 209.17 490.33 P
|
|
5 F
|
|
-0.19 (end-1char) 424.98 490.33 P
|
|
3 F
|
|
-0.08 ( instead) 478.95 490.33 P
|
|
(of) 170.1 478.33 T
|
|
5 F
|
|
(end) 180.92 478.33 T
|
|
3 F
|
|
(.) 198.91 478.33 T
|
|
1 F
|
|
(Pr) 152.1 463.33 T
|
|
(oblem #15:) 162.46 463.33 T
|
|
3 F
|
|
(In entry widgets,) 211.88 463.33 T
|
|
5 F
|
|
(sel.last) 281.83 463.33 T
|
|
3 F
|
|
( now refers to the character just after the last) 329.8 463.33 T
|
|
(selected one, rather than the last selected one. The second index for the) 152.1 451.33 T
|
|
5 F
|
|
(delete) 438.81 451.33 T
|
|
3 F
|
|
( widget) 474.79 451.33 T
|
|
(command has changed in the same way) 152.1 439.33 T
|
|
(.) 309.66 439.33 T
|
|
2 F
|
|
(Solution:) 170.1 427.33 T
|
|
3 F
|
|
(Add one to the values used in your scripts.) 209.25 427.33 T
|
|
1 F
|
|
(Pr) 152.1 412.33 T
|
|
(oblem #16:) 162.46 412.33 T
|
|
3 F
|
|
(Because) 211.88 412.33 T
|
|
5 F
|
|
(Any) 247.68 412.33 T
|
|
3 F
|
|
( is implicit in all bindings, bindings trigger when extra modi-) 265.67 412.33 T
|
|
(\336ers are present, whereas they didn\325) 152.1 400.33 T
|
|
(t trigger in Tk 3.6.) 296.24 400.33 T
|
|
2 F
|
|
(Solution:) 170.1 388.33 T
|
|
3 F
|
|
(In most cases it\325) 209.25 388.33 T
|
|
(s probably \336ne to ignore the extra modi\336ers. If you really) 273.93 388.33 T
|
|
-0.12 (don\325) 170.1 376.33 P
|
|
-0.12 (t want any actions to be taken when extra modi\336ers are present, create additional) 188.24 376.33 P
|
|
(bindings for the cases with extra modi\336ers, and specify a single blank character \050or) 170.1 364.33 T
|
|
(any script that does nothing\051 as the script for those bindings. Alternatively) 170.1 352.33 T
|
|
(, you can) 465.93 352.33 T
|
|
(use the) 170.1 340.33 T
|
|
5 F
|
|
(%s) 200.63 340.33 T
|
|
3 F
|
|
( substitution to extract the mouse and modi\336er state in the event binding,) 212.63 340.33 T
|
|
(then you can test this value for modi\336ers you do or don\325) 170.1 328.33 T
|
|
(t want.) 394.5 328.33 T
|
|
1 F
|
|
(Pr) 152.1 313.33 T
|
|
(oblem #17:) 162.46 313.33 T
|
|
3 F
|
|
(In scrollbars there is no longer a) 211.88 313.33 T
|
|
5 F
|
|
(-foreground) 343.17 313.33 T
|
|
3 F
|
|
( or) 409.13 313.33 T
|
|
5 F
|
|
(-activefore-) 422.45 313.33 T
|
|
(ground) 152.1 301.33 T
|
|
3 F
|
|
( option, and) 188.08 301.33 T
|
|
5 F
|
|
(-background) 238.05 301.33 T
|
|
3 F
|
|
( has a dif) 304.02 301.33 T
|
|
(ferent meaning.) 340.2 301.33 T
|
|
2 F
|
|
-0.4 (Solution:) 170.1 289.33 P
|
|
3 F
|
|
-0.4 (Use) 208.85 289.33 P
|
|
5 F
|
|
-0.96 (-troughcolor) 226.49 289.33 P
|
|
3 F
|
|
-0.4 ( everywhere that you used) 298.45 289.33 P
|
|
5 F
|
|
-0.96 (-background) 403.87 289.33 P
|
|
3 F
|
|
-0.4 ( in Tk 3.6,) 469.83 289.33 P
|
|
5 F
|
|
(-background) 170.1 277.33 T
|
|
3 F
|
|
( everywhere you used to use) 236.06 277.33 T
|
|
5 F
|
|
(-foreground) 352.08 277.33 T
|
|
3 F
|
|
(, and) 418.04 277.33 T
|
|
5 F
|
|
(-activeback-) 439.97 277.33 T
|
|
(ground) 170.1 265.33 T
|
|
3 F
|
|
( everywhere you used to use) 206.08 265.33 T
|
|
5 F
|
|
(-activeforeground) 322.1 265.33 T
|
|
3 F
|
|
(.) 424.04 265.33 T
|
|
1 F
|
|
(Pr) 152.1 250.33 T
|
|
(oblem #18:) 162.46 250.33 T
|
|
3 F
|
|
(Options for colors seem to have changed in scale widgets.) 211.88 250.33 T
|
|
2 F
|
|
(Solution:) 170.1 238.33 T
|
|
3 F
|
|
(Use) 209.25 238.33 T
|
|
5 F
|
|
(-background) 227.29 238.33 T
|
|
3 F
|
|
( where you used to use) 293.25 238.33 T
|
|
5 F
|
|
(-sliderforeground) 387.07 238.33 T
|
|
3 F
|
|
(,) 489.02 238.33 T
|
|
5 F
|
|
(-) 170.1 226.33 T
|
|
(troughcolor) 176.1 226.33 T
|
|
3 F
|
|
( where you used to use) 242.06 226.33 T
|
|
5 F
|
|
(-background) 335.88 226.33 T
|
|
3 F
|
|
(, and) 401.84 226.33 T
|
|
5 F
|
|
( -activeback-) 421.27 226.33 T
|
|
(ground) 170.1 214.33 T
|
|
3 F
|
|
( everywhere you used to use) 206.08 214.33 T
|
|
5 F
|
|
(-activeforeground) 322.1 214.33 T
|
|
3 F
|
|
(.) 424.04 214.33 T
|
|
1 F
|
|
(Pr) 152.1 199.33 T
|
|
(oblem #19:) 162.46 199.33 T
|
|
3 F
|
|
(Scale widgets no longer accept hexadecimal or octal numbers in the) 211.88 199.33 T
|
|
5 F
|
|
(set) 485.84 199.33 T
|
|
3 F
|
|
(command or the) 152.1 187.33 T
|
|
5 F
|
|
(-from) 219.55 187.33 T
|
|
3 F
|
|
( and) 249.54 187.33 T
|
|
5 F
|
|
(-to) 268.97 187.33 T
|
|
3 F
|
|
( options.) 286.96 187.33 T
|
|
2 F
|
|
(Solution:) 170.1 175.33 T
|
|
3 F
|
|
(Use) 209.25 175.33 T
|
|
5 F
|
|
(format) 227.29 175.33 T
|
|
3 F
|
|
( or) 263.27 175.33 T
|
|
5 F
|
|
(expr) 276.59 175.33 T
|
|
3 F
|
|
( to convert the values to decimal.) 300.58 175.33 T
|
|
1 F
|
|
(Pr) 152.1 160.33 T
|
|
(oblem #20:) 162.46 160.33 T
|
|
3 F
|
|
(In checkbuttons, radiobuttons, and menu entries, the) 211.88 160.33 T
|
|
5 F
|
|
(-selector) 423.4 160.33 T
|
|
3 F
|
|
( option) 477.37 160.33 T
|
|
(no longer exists.) 152.1 148.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "18" 19
|
|
%%Page: "19" 19
|
|
612 792 0 FMBEGINPAGE
|
|
4 10 Q
|
|
0 X
|
|
0 K
|
|
(13 Summary of Incompatibilites) 98.1 668.33 T
|
|
0 F
|
|
(19) 500.99 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
2 F
|
|
0 X
|
|
(Solution:) 170.1 632.33 T
|
|
3 F
|
|
(Use) 209.25 632.33 T
|
|
5 F
|
|
(-selectcolor) 227.29 632.33 T
|
|
3 F
|
|
( instead of) 299.25 632.33 T
|
|
5 F
|
|
(-select) 343.39 632.33 T
|
|
3 F
|
|
(. T) 385.36 632.33 T
|
|
(o specify that no indicator) 395.77 632.33 T
|
|
(should be drawn at all, use the) 170.1 620.33 T
|
|
5 F
|
|
(-indicatoron) 293.9 620.33 T
|
|
3 F
|
|
( option instead of setting) 365.86 620.33 T
|
|
5 F
|
|
(-select) 467.2 620.33 T
|
|
3 F
|
|
(to an empty string.) 170.1 608.33 T
|
|
1 F
|
|
-0.12 (Pr) 152.1 593.33 P
|
|
-0.12 (oblem #21:) 162.46 593.33 P
|
|
3 F
|
|
-0.12 (The indices of menu entries have changed, and operations on menu entry 0) 211.64 593.33 P
|
|
(no longer work.) 152.1 581.33 T
|
|
2 F
|
|
(Solution:) 170.1 569.33 T
|
|
3 F
|
|
(This is because menus now have a tearof) 209.25 569.33 T
|
|
(f entry at the top by default, and) 372.55 569.33 T
|
|
(this occupies entry 0, so your \336rst entry is now entry 1. Y) 170.1 557.33 T
|
|
(ou can either set the) 398.95 557.33 T
|
|
5 F
|
|
(-) 170.1 545.33 T
|
|
(tearoff) 176.1 545.33 T
|
|
3 F
|
|
( option to 0 to eliminate the tearof) 218.07 545.33 T
|
|
(f entry or add 1 to all the indices you) 354.2 545.33 T
|
|
(use in your scripts.) 170.1 533.33 T
|
|
1 F
|
|
-0.22 (Pr) 152.1 518.33 P
|
|
-0.22 (oblem #22:) 162.46 518.33 P
|
|
3 F
|
|
-0.22 (The) 211.44 518.33 P
|
|
5 F
|
|
-0.53 (enable) 229.26 518.33 P
|
|
3 F
|
|
-0.22 ( and) 265.24 518.33 P
|
|
5 F
|
|
-0.53 (disable) 284.23 518.33 P
|
|
3 F
|
|
-0.22 ( widget commands are no longer supported by) 326.21 518.33 P
|
|
(menus.) 152.1 506.33 T
|
|
2 F
|
|
(Solution:) 170.1 494.33 T
|
|
3 F
|
|
(Use the) 209.25 494.33 T
|
|
5 F
|
|
(-state) 242 494.33 T
|
|
3 F
|
|
( con\336guration option instead.) 277.98 494.33 T
|
|
1 F
|
|
(Pr) 152.1 479.33 T
|
|
(oblem #23:) 162.46 479.33 T
|
|
3 F
|
|
(The) 211.88 479.33 T
|
|
5 F
|
|
(activate) 229.92 479.33 T
|
|
3 F
|
|
( and) 277.89 479.33 T
|
|
5 F
|
|
(deactivate) 297.32 479.33 T
|
|
3 F
|
|
( widget commands are no longer sup-) 357.29 479.33 T
|
|
(ported by buttons, checkbuttons, radiobuttons, and menus.) 152.1 467.33 T
|
|
2 F
|
|
(Solution:) 170.1 455.33 T
|
|
3 F
|
|
(Use the) 209.25 455.33 T
|
|
5 F
|
|
(-state) 242 455.33 T
|
|
3 F
|
|
( con\336guration option instead.) 277.98 455.33 T
|
|
1 F
|
|
(Pr) 152.1 440.33 T
|
|
(oblem #24:) 162.46 440.33 T
|
|
3 F
|
|
(Canvas arc items no longer use the) 211.88 440.33 T
|
|
5 F
|
|
(-f) 353.72 440.33 T
|
|
(ill) 365.71 440.33 T
|
|
3 F
|
|
( and) 383.7 440.33 T
|
|
5 F
|
|
(-stipple) 403.13 440.33 T
|
|
3 F
|
|
( options for) 451.11 440.33 T
|
|
(drawing when the) 152.1 428.33 T
|
|
5 F
|
|
(-style) 226.21 428.33 T
|
|
3 F
|
|
( option is) 262.19 428.33 T
|
|
5 F
|
|
(arc) 301.9 428.33 T
|
|
3 F
|
|
(.) 319.89 428.33 T
|
|
2 F
|
|
(Solution:) 170.1 416.33 T
|
|
3 F
|
|
(Use the) 209.25 416.33 T
|
|
5 F
|
|
(-outline) 242 416.33 T
|
|
3 F
|
|
( and) 289.97 416.33 T
|
|
5 F
|
|
(-outlinestipple) 309.4 416.33 T
|
|
3 F
|
|
( options instead.) 399.35 416.33 T
|
|
1 F
|
|
-0.29 (Pr) 152.1 401.33 P
|
|
-0.29 (oblem #25:) 162.46 401.33 P
|
|
3 F
|
|
-0.29 (The variable) 211.29 401.33 P
|
|
5 F
|
|
-0.7 (tkVersion) 263.43 401.33 P
|
|
3 F
|
|
-0.29 ( no longer exists \050it has been obsolete for several) 317.4 401.33 P
|
|
(releases\051.) 152.1 389.33 T
|
|
2 F
|
|
(Solution:) 170.1 377.33 T
|
|
3 F
|
|
(Use) 209.25 377.33 T
|
|
5 F
|
|
(tk_version) 227.29 377.33 T
|
|
3 F
|
|
( instead.) 287.26 377.33 T
|
|
1 F
|
|
(Pr) 152.1 362.33 T
|
|
(oblem #26:) 162.46 362.33 T
|
|
3 F
|
|
(The syntax of the) 211.88 362.33 T
|
|
5 F
|
|
(scan) 284.05 362.33 T
|
|
3 F
|
|
( widget commands for texts has changed.) 308.03 362.33 T
|
|
2 F
|
|
(Solution:) 170.1 350.33 T
|
|
3 F
|
|
(Modify your code to use the new syntax.) 209.25 350.33 T
|
|
1 F
|
|
(Pr) 152.1 335.33 T
|
|
(oblem #27:) 162.46 335.33 T
|
|
5 F
|
|
(wish) 211.88 335.33 T
|
|
3 F
|
|
( no longer recognizes the) 235.86 335.33 T
|
|
5 F
|
|
(-help) 338.84 335.33 T
|
|
3 F
|
|
( option.) 368.82 335.33 T
|
|
2 F
|
|
(Solution:) 170.1 323.33 T
|
|
3 F
|
|
(Implement this option yourself in your) 209.25 323.33 T
|
|
5 F
|
|
(wish) 366.38 323.33 T
|
|
3 F
|
|
( scripts.) 390.37 323.33 T
|
|
1 F
|
|
(Pr) 152.1 308.33 T
|
|
(oblem #28:) 162.46 308.33 T
|
|
3 F
|
|
(Tk 4.0 always prints real numbers such as canvas coordinates with a deci-) 211.88 308.33 T
|
|
(mal point. This can cause syntax errors if you later use them in situations where integers) 152.1 296.33 T
|
|
(are expected.) 152.1 284.33 T
|
|
2 F
|
|
(Solution:) 170.1 272.33 T
|
|
3 F
|
|
(Change your code so that real numbers work OK, or use the) 209.25 272.33 T
|
|
5 F
|
|
(expr) 451.57 272.33 T
|
|
3 F
|
|
( com-) 475.55 272.33 T
|
|
(mand \050with the) 170.1 260.33 T
|
|
5 F
|
|
(round) 233.12 260.33 T
|
|
3 F
|
|
( function\051 to convert the numbers to integers.) 263.1 260.33 T
|
|
1 F
|
|
(Pr) 152.1 245.33 T
|
|
(oblem #29:) 162.46 245.33 T
|
|
3 F
|
|
(The) 211.88 245.33 T
|
|
5 F
|
|
(pack info) 229.92 245.33 T
|
|
3 F
|
|
( command returns dif) 283.89 245.33 T
|
|
(ferent information, and) 369.48 245.33 T
|
|
5 F
|
|
(pack) 464.41 245.33 T
|
|
(newinfo) 152.1 233.33 T
|
|
3 F
|
|
( no longer exists.) 194.08 233.33 T
|
|
2 F
|
|
(Solution:) 170.1 221.33 T
|
|
3 F
|
|
(Use) 209.25 221.33 T
|
|
5 F
|
|
(pack info) 227.29 221.33 T
|
|
3 F
|
|
( where you used to use) 281.26 221.33 T
|
|
5 F
|
|
(pack newinfo) 375.08 221.33 T
|
|
3 F
|
|
(.) 447.04 221.33 T
|
|
5 F
|
|
(Pack info) 452.04 221.33 T
|
|
3 F
|
|
(was obsolete, so it has been eliminated.) 170.1 209.33 T
|
|
1 F
|
|
(Pr) 152.1 194.33 T
|
|
(oblem #30:) 162.46 194.33 T
|
|
3 F
|
|
(The) 211.88 194.33 T
|
|
5 F
|
|
(view) 229.92 194.33 T
|
|
3 F
|
|
( widget command for entries no longer exists, nor does the) 253.9 194.33 T
|
|
5 F
|
|
(-) 152.1 182.33 T
|
|
(scrollcommand) 158.1 182.33 T
|
|
3 F
|
|
( option.) 236.05 182.33 T
|
|
2 F
|
|
-0.29 (Solution:) 170.1 170.33 P
|
|
3 F
|
|
-0.29 (Use) 208.96 170.33 P
|
|
5 F
|
|
-0.69 (xview) 226.71 170.33 P
|
|
3 F
|
|
-0.29 ( where you used to use) 256.7 170.33 P
|
|
5 F
|
|
-0.69 (view) 348.8 170.33 P
|
|
3 F
|
|
-0.29 (; use) 372.78 170.33 P
|
|
5 F
|
|
-0.69 (-xscrollcommand) 393.31 170.33 P
|
|
3 F
|
|
-0.29 ( where) 483.26 170.33 P
|
|
(you used to use) 170.1 158.33 T
|
|
5 F
|
|
(-scrollcommand) 234.51 158.33 T
|
|
3 F
|
|
(.) 318.46 158.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "19" 20
|
|
%%Page: "20" 20
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(20) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
1 F
|
|
0 X
|
|
(Pr) 152.1 632.33 T
|
|
(oblem #31:) 162.46 632.33 T
|
|
3 F
|
|
(The) 211.88 632.33 T
|
|
5 F
|
|
(-padx) 229.92 632.33 T
|
|
3 F
|
|
( and) 259.9 632.33 T
|
|
5 F
|
|
(-pady) 279.33 632.33 T
|
|
3 F
|
|
( options are ignored for the button family of wid-) 309.31 632.33 T
|
|
(gets if a bitmap or image is being displayed: the padding is always 0.) 152.1 620.02 T
|
|
2 F
|
|
-0.27 (Solution:) 170.1 608.02 P
|
|
3 F
|
|
-0.27 (Pack the button inside a frame, with extra padding in the frame. Or) 208.98 608.02 P
|
|
-0.27 (, redo the) 472.94 608.02 P
|
|
(image or bitmap to incorporate padding into it.) 170.1 595.71 T
|
|
1 F
|
|
(Pr) 152.1 580.71 T
|
|
(oblem #32:) 162.46 580.71 T
|
|
3 F
|
|
(In radiobuttons, the) 211.88 580.71 T
|
|
5 F
|
|
(-value) 292.38 580.71 T
|
|
3 F
|
|
( option no longer defaults to the name of the) 328.36 580.71 T
|
|
(widget; it defaults to an empty string.) 152.1 568.4 T
|
|
2 F
|
|
(Solution:) 170.1 556.4 T
|
|
3 F
|
|
(Specify the widget\325) 209.25 556.4 T
|
|
(s name explicitly as the value of the option.) 286.98 556.4 T
|
|
1 F
|
|
(Pr) 152.1 541.4 T
|
|
(oblem #33:) 162.46 541.4 T
|
|
3 F
|
|
(The) 211.88 541.4 T
|
|
5 F
|
|
(-menu) 229.92 541.4 T
|
|
3 F
|
|
( option for menubuttons and cascade menu entries may refer) 259.9 541.4 T
|
|
(only to a child of the menubutton or menu.) 152.1 529.08 T
|
|
2 F
|
|
(Solution:) 170.1 517.08 T
|
|
3 F
|
|
(Rename menus to meet this requirement.) 209.25 517.08 T
|
|
1 F
|
|
(Pr) 152.1 502.08 T
|
|
(oblem #34:) 162.46 502.08 T
|
|
3 F
|
|
(The interpretation of) 211.88 502.08 T
|
|
5 F
|
|
(@y) 297.09 502.08 T
|
|
3 F
|
|
( in menus has changed: it never returns) 309.08 502.08 T
|
|
5 F
|
|
(none) 467.86 502.08 T
|
|
3 F
|
|
(,) 491.84 502.08 T
|
|
(even if the y-coordinate is outside the menu \050it returns the index of the closest entry\051.) 152.1 489.77 T
|
|
2 F
|
|
(Solution:) 170.1 477.77 T
|
|
3 F
|
|
(If you care about this distinction, check the y-coordinate explicitly to see if) 209.25 477.77 T
|
|
-0.17 (it is less than 0 or greater than or equal to the window\325) 170.1 465.46 P
|
|
-0.17 (s height \050use) 385.7 465.46 P
|
|
5 F
|
|
-0.41 (winfo height) 438.21 465.46 P
|
|
3 F
|
|
(to get the height\051.) 170.1 453.15 T
|
|
1 F
|
|
-0.13 (Pr) 152.1 438.15 P
|
|
-0.13 (oblem #35:) 162.46 438.15 P
|
|
3 F
|
|
-0.13 (The) 211.62 438.15 P
|
|
5 F
|
|
-0.3 (invoke) 229.54 438.15 P
|
|
3 F
|
|
-0.13 ( and) 265.52 438.15 P
|
|
5 F
|
|
-0.3 (activate) 284.7 438.15 P
|
|
3 F
|
|
-0.13 ( widget commands for menus no longer post) 332.67 438.15 P
|
|
(cascaded submenus.) 152.1 425.83 T
|
|
2 F
|
|
(Solution:) 170.1 413.83 T
|
|
3 F
|
|
(Use the) 209.25 413.83 T
|
|
5 F
|
|
(postcascade) 242 413.83 T
|
|
3 F
|
|
( widget command to post submenus.) 307.96 413.83 T
|
|
1 F
|
|
(Pr) 152.1 398.83 T
|
|
(oblem #36:) 162.46 398.83 T
|
|
3 F
|
|
(The selection tar) 211.88 398.83 T
|
|
(gets) 278.31 398.83 T
|
|
5 F
|
|
(APPLICATION) 296.91 398.83 T
|
|
3 F
|
|
( and) 362.87 398.83 T
|
|
5 F
|
|
(WINDOW_NAME) 382.3 398.83 T
|
|
3 F
|
|
( are no longer) 448.27 398.83 T
|
|
(supported.) 152.1 386.52 T
|
|
2 F
|
|
(Solution:) 170.1 374.52 T
|
|
3 F
|
|
(Use tar) 209.25 374.52 T
|
|
(gets) 237.65 374.52 T
|
|
5 F
|
|
(TK_APPLICATION) 256.25 374.52 T
|
|
3 F
|
|
( and) 340.21 374.52 T
|
|
5 F
|
|
(TK_WINDOW) 359.64 374.52 T
|
|
3 F
|
|
( instead.) 413.61 374.52 T
|
|
1 F
|
|
(Pr) 152.1 359.52 T
|
|
(oblem #37:) 162.46 359.52 T
|
|
3 F
|
|
(There is no longer a default focus.) 211.88 359.52 T
|
|
2 F
|
|
(Solution:) 170.1 347.52 T
|
|
3 F
|
|
(None: modify your code not to depend on this feature.) 209.25 347.52 T
|
|
1 F
|
|
(Pr) 152.1 332.52 T
|
|
(oblem #38:) 162.46 332.52 T
|
|
3 F
|
|
(The) 211.88 332.52 T
|
|
5 F
|
|
(focus) 229.92 332.52 T
|
|
3 F
|
|
( command now returns an empty string to indicate that the) 259.9 332.52 T
|
|
(application doesn\325) 152.1 320.21 T
|
|
(t have the input focus, instead of) 225.48 320.21 T
|
|
5 F
|
|
(none) 358.17 320.21 T
|
|
3 F
|
|
(.) 382.15 320.21 T
|
|
2 F
|
|
(Solution:) 170.1 308.21 T
|
|
3 F
|
|
(Modify your code to check for an empty string instead of) 209.25 308.21 T
|
|
5 F
|
|
(none) 440.47 308.21 T
|
|
3 F
|
|
(.) 464.46 308.21 T
|
|
1 F
|
|
(Pr) 152.1 293.21 T
|
|
(oblem #39:) 162.46 293.21 T
|
|
5 F
|
|
(FocusIn) 211.88 293.21 T
|
|
3 F
|
|
( and) 253.85 293.21 T
|
|
5 F
|
|
(FocusOut) 273.28 293.21 T
|
|
3 F
|
|
( events are delivered to more windows than) 321.26 293.21 T
|
|
(they used to be.) 152.1 280.9 T
|
|
2 F
|
|
-0.02 (Solution:) 170.1 268.9 P
|
|
3 F
|
|
-0.02 (Modify your code to use the new set of events. The old event set was some-) 209.23 268.9 P
|
|
(what bizarre, and the new set matches more closely what happens elsewhere, such as) 170.1 256.58 T
|
|
(with) 170.1 244.27 T
|
|
5 F
|
|
(Enter) 190.37 244.27 T
|
|
3 F
|
|
( and) 220.35 244.27 T
|
|
5 F
|
|
(Leave) 239.78 244.27 T
|
|
3 F
|
|
( events.) 269.77 244.27 T
|
|
1 F
|
|
-0.28 (Pr) 152.1 229.27 P
|
|
-0.28 (oblem #40:) 162.46 229.27 P
|
|
5 F
|
|
-0.67 (wm maxsize) 211.32 229.27 P
|
|
3 F
|
|
-0.28 ( and) 270.62 229.27 P
|
|
5 F
|
|
-0.67 (wm minsize) 289.49 229.27 P
|
|
3 F
|
|
-0.28 ( no longer accept empty ar) 348.79 229.27 P
|
|
-0.28 (guments. This) 453.52 229.27 P
|
|
(means that you cannot use these commands to make windows non-resizable.) 152.1 216.96 T
|
|
2 F
|
|
(Solution:) 170.1 204.96 T
|
|
3 F
|
|
(Use the) 209.25 204.96 T
|
|
5 F
|
|
(wm resizable) 242 204.96 T
|
|
3 F
|
|
( command to make windows resizable.) 313.96 204.96 T
|
|
1 F
|
|
(Pr) 152.1 189.96 T
|
|
(oblem #41:) 162.46 189.96 T
|
|
3 F
|
|
(In the placer) 211.88 189.96 T
|
|
(, if you specify both) 261.43 189.96 T
|
|
5 F
|
|
(-x) 344.15 189.96 T
|
|
3 F
|
|
( and) 356.15 189.96 T
|
|
5 F
|
|
(-relx) 375.58 189.96 T
|
|
3 F
|
|
( then they add, instead of) 405.56 189.96 T
|
|
(the most recent speci\336cation replacing the earlier one. Ditto for) 152.1 177.65 T
|
|
5 F
|
|
(-y) 407.74 177.65 T
|
|
3 F
|
|
( and) 419.73 177.65 T
|
|
5 F
|
|
(-rely) 439.16 177.65 T
|
|
3 F
|
|
(,) 468.5 177.65 T
|
|
5 F
|
|
(-width) 473.49 177.65 T
|
|
3 F
|
|
(and) 152.1 165.33 T
|
|
5 F
|
|
(-relwidth) 169.03 165.33 T
|
|
3 F
|
|
(, and) 223 165.33 T
|
|
5 F
|
|
(-height) 244.93 165.33 T
|
|
3 F
|
|
( and) 286.91 165.33 T
|
|
5 F
|
|
(-relheight) 306.33 165.33 T
|
|
3 F
|
|
(.) 366.3 165.33 T
|
|
2 F
|
|
(Solution:) 170.1 153.33 T
|
|
3 F
|
|
(If you no longer want one of these options to be used, set it to 0 explicitly) 209.25 153.33 T
|
|
(.) 503.14 153.33 T
|
|
1 F
|
|
(Pr) 152.1 138.33 T
|
|
(oblem #42:) 162.46 138.33 T
|
|
3 F
|
|
(The command \322) 211.88 138.33 T
|
|
5 F
|
|
(focus none) 276.27 138.33 T
|
|
3 F
|
|
(\323 doesn\325) 336.24 138.33 T
|
|
(t work in Tk 4.0.) 369.64 138.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "20" 21
|
|
%%Page: "21" 21
|
|
612 792 0 FMBEGINPAGE
|
|
4 10 Q
|
|
0 X
|
|
0 K
|
|
(13 Summary of Incompatibilites) 98.1 668.33 T
|
|
0 F
|
|
(21) 500.99 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
2 F
|
|
0 X
|
|
(Solution:) 170.1 632.33 T
|
|
3 F
|
|
(Create a dummy widget that is never mapped and set the focus to that wid-) 209.25 632.33 T
|
|
(get.) 170.1 620.33 T
|
|
1 F
|
|
(Pr) 152.1 605.33 T
|
|
(oblem #43:) 162.46 605.33 T
|
|
5 F
|
|
(%D) 211.88 605.33 T
|
|
3 F
|
|
( substitutions are no longer supported in bindings, nor are the event) 223.87 605.33 T
|
|
(types) 152.1 593.33 T
|
|
5 F
|
|
(CirculateRequest) 175.7 593.33 T
|
|
3 F
|
|
(,) 271.64 593.33 T
|
|
5 F
|
|
(Conf) 276.64 593.33 T
|
|
(igureRequest) 300.63 593.33 T
|
|
3 F
|
|
(,) 372.59 593.33 T
|
|
5 F
|
|
(MapRequest) 377.59 593.33 T
|
|
3 F
|
|
(, and) 437.55 593.33 T
|
|
5 F
|
|
(Resiz-) 459.48 593.33 T
|
|
(eRequest) 152.1 581.33 T
|
|
3 F
|
|
(.) 200.07 581.33 T
|
|
2 F
|
|
-0.25 (Solution:) 170.1 569.33 P
|
|
3 F
|
|
-0.25 (Use the name of the display instead of %D to identify a display; you can get) 209 569.33 P
|
|
(the display name with the) 170.1 557.33 T
|
|
5 F
|
|
(winfo screen) 275.31 557.33 T
|
|
3 F
|
|
( command. The desupported event types) 347.27 557.33 T
|
|
(never really worked anyway) 170.1 545.33 T
|
|
(, so there should be no code that depends on them.) 282.96 545.33 T
|
|
1 F
|
|
(Pr) 152.1 530.33 T
|
|
(oblem #44:) 162.46 530.33 T
|
|
5 F
|
|
(%) 211.88 530.33 T
|
|
3 F
|
|
( binding substitutions that return window identi\336ers, such as) 217.87 530.33 T
|
|
5 F
|
|
(%a) 461.63 530.33 T
|
|
3 F
|
|
( and) 473.62 530.33 T
|
|
5 F
|
|
(%S) 493.05 530.33 T
|
|
3 F
|
|
(,) 505.05 530.33 T
|
|
(now produce hexadecimal results instead of decimal.) 152.1 518.33 T
|
|
2 F
|
|
(Solution:) 170.1 506.33 T
|
|
3 F
|
|
(Use the) 209.25 506.33 T
|
|
5 F
|
|
(format) 242 506.33 T
|
|
3 F
|
|
( command to turn them back to decimal.) 277.98 506.33 T
|
|
1 F
|
|
(Pr) 152.1 491.33 T
|
|
(oblem #45:) 162.46 491.33 T
|
|
5 F
|
|
(Enter) 211.88 491.33 T
|
|
3 F
|
|
(,) 241.46 491.33 T
|
|
5 F
|
|
(Leave) 246.46 491.33 T
|
|
3 F
|
|
(,) 276.44 491.33 T
|
|
5 F
|
|
(FocusIn) 281.44 491.33 T
|
|
3 F
|
|
(, and) 323.42 491.33 T
|
|
5 F
|
|
(FocusOut) 345.34 491.33 T
|
|
3 F
|
|
( events with detail) 393.32 491.33 T
|
|
5 F
|
|
(Notify-) 468.83 491.33 T
|
|
(Inferior) 152.1 479.33 T
|
|
3 F
|
|
( are now ignored by the binding mechanism, so they\325re not visible to T) 200.07 479.33 T
|
|
(cl) 483.08 479.33 T
|
|
(scripts.) 152.1 467.33 T
|
|
2 F
|
|
-0.13 (Solution:) 170.1 455.33 P
|
|
3 F
|
|
-0.13 (In most cases, T) 209.12 455.33 P
|
|
-0.13 (cl scripts work better if these bindings are ignored. Y) 273 455.33 P
|
|
-0.13 (ou can) 483.49 455.33 P
|
|
(still use C code to access these events if you really need them. Or) 170.1 443.33 T
|
|
(, create bindings on) 431.18 443.33 T
|
|
-0.33 (the inferior windows and use) 170.1 431.33 P
|
|
5 F
|
|
-0.8 (NotifyAncestor) 286.96 431.33 P
|
|
3 F
|
|
-0.33 ( bindings on the children instead of) 370.91 431.33 P
|
|
5 F
|
|
(NotifyInferior) 170.1 419.33 T
|
|
3 F
|
|
( bindings on the parent.) 254.05 419.33 T
|
|
FMENDPAGE
|
|
%%EndPage: "21" 22
|
|
%%Page: "22" 22
|
|
612 792 0 FMBEGINPAGE
|
|
0 10 Q
|
|
0 X
|
|
0 K
|
|
(22) 98.1 668.33 T
|
|
4 F
|
|
(Tk4.0 Overview and Porting Guide) 359.34 668.33 T
|
|
98.1 660.6 512.1 660.6 2 L
|
|
0.25 H
|
|
0 Z
|
|
N
|
|
98.1 135 512.1 639 R
|
|
7 X
|
|
V
|
|
FMENDPAGE
|
|
%%EndPage: "22" 23
|
|
%%Trailer
|
|
%%BoundingBox: 0 0 612 792
|
|
%%Pages: 22 1
|
|
%%DocumentFonts: Helvetica-Bold
|
|
%%+ Times-Bold
|
|
%%+ Times-Italic
|
|
%%+ Times-Roman
|
|
%%+ Helvetica
|
|
%%+ Courier
|
|
%%+ Courier-Oblique
|