ofs | hex dump | ascii |
---|
0000 | 00 05 16 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 09 00 00 | ................................ |
0020 | 00 3e 00 00 00 20 00 00 00 0a 00 00 00 5e 00 00 00 04 00 00 00 02 00 00 00 62 00 04 5b c1 72 73 | .>...........^...........b..[.rs |
0040 | 72 63 52 53 45 44 01 00 00 75 00 b9 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | rcRSED...u...................... |
0060 | 00 02 00 00 01 00 00 04 50 6f 00 04 4f 6f 00 00 0b 52 da 79 01 6f 08 20 12 01 60 2e 3b e5 01 00 | ........Po..Oo...R.y.o....`.;... |
0080 | 3c e5 d1 e5 01 00 34 13 a9 8b 42 67 1f 3c a3 e5 b5 5d 0d 74 6b 70 79 74 68 6f 6e 2e 72 73 72 63 | <.....4...Bg.<...].tkpython.rsrc |
00a0 | 2e 63 72 63 70 6f 6f 6c 65 72 74 41 44 20 4d 45 72 6c 00 00 72 73 72 63 52 53 45 44 00 00 00 00 | .crcpoolertAD.MErl..rsrcRSED.... |
00c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b2 63 74 a9 00 00 00 00 00 03 b0 30 | .....................ct........0 |
00e0 | bb 01 7e 7f 18 3d 47 00 0a 2e 1f 4e 5e 20 5f 54 4f 4e d0 4e 56 93 90 20 1d 01 3e 28 6f 01 10 2e | ..~..=G....N^._TON.NV.....>(o... |
0100 | 4d 04 67 1a 70 42 b0 47 6c 10 e0 78 02 81 fc 00 42 ef 05 cf fc 00 42 60 5c 7e 42 60 58 e1 50 01 | M.g.pB.Gl..x....B.....B`\~B`X.P. |
0120 | 09 5a e0 01 90 5f 56 e1 50 01 0a 42 12 32 1f 20 1f 78 01 81 c1 ef 29 01 6f 1c e1 50 03 0a 42 30 | .Z..._V.P..B.2...x....).o..P..B0 |
0140 | 1f e5 40 56 e1 50 15 09 5a 32 1f 20 1f 3e 01 de 40 01 60 1a e1 50 01 0a 42 e0 01 c1 df 56 e1 50 | ..@V.P..Z2...>..@.`..P..B....V.P |
0160 | 20 21 00 00 00 21 00 a8 00 14 00 bb 01 2c 00 00 01 00 00 50 00 84 03 f0 00 00 00 00 0a 46 69 6c | .!...!.......,.....P.........Fil |
0180 | 65 20 54 79 70 65 3a 00 00 00 f2 80 01 00 00 00 60 00 00 00 92 00 00 00 00 00 00 00 00 00 00 01 | e.Type:.........`............... |
01a0 | 80 1a 70 26 48 26 4a 12 4d 12 49 68 09 98 01 88 02 40 02 20 02 20 04 10 04 08 08 04 08 04 08 01 | ..p&H&J.M.Ih.....@.............. |
01c0 | 80 1b f0 3f f8 3f fa 1f ff 1f ff 6f ff ff ff ff fe 7f fe 3f fe 3f fc 1f fc 0f f8 07 f8 07 f8 00 | ...?.?.....o.......?.?.......... |
01e0 | 08 00 08 00 00 00 00 00 00 00 00 00 00 00 00 80 04 00 00 00 00 00 10 00 10 00 00 00 00 00 00 00 | ................................ |
0200 | 00 00 48 00 00 00 48 00 00 00 00 00 02 00 01 00 02 00 00 00 00 00 00 00 d2 00 00 00 00 00 03 c0 | ..H...H......................... |
0220 | 00 03 cd 7f 00 0d 7d 75 c0 0d 7d 75 cc 03 5d 75 f7 03 5d 75 d7 3c d5 55 d7 d7 d5 55 57 d5 d5 55 | ......}u..}u..]u..]u.<.U...UW..U |
0240 | 5c 35 55 55 5c 0d 55 55 5c 0d 55 55 70 03 55 55 70 00 d5 55 c0 00 35 55 c0 00 35 55 c0 00 00 00 | \5UU\.UU\.UUp.UUp..U..5U..5U.... |
0260 | 00 00 00 00 02 00 00 ff ff ff ff ff ff 00 01 ff ff cc cc 99 99 00 03 00 00 00 00 00 00 00 00 00 | ................................ |
0280 | f2 80 01 00 00 00 60 00 00 00 92 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0d b0 12 | ......`......................... |
02a0 | 4c 10 0a 08 02 18 02 20 02 20 02 20 04 10 04 08 08 04 08 04 08 00 00 00 00 00 00 00 00 0d b0 1f | L............................... |
02c0 | fc 1f fe 0f fe 1f fe 3f fe 3f fe 3f fc 1f fc 0f f8 07 f8 07 f8 00 08 00 08 00 00 00 00 00 00 00 | .......?.?.?.................... |
02e0 | 00 00 00 00 00 80 04 00 00 00 00 00 10 00 10 00 00 00 00 00 00 00 00 00 48 00 00 00 48 00 00 00 | ........................H...H... |
0300 | 00 00 02 00 01 00 02 00 00 00 00 00 00 00 d2 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
0320 | 00 00 00 00 f3 cf 00 03 5d 75 f0 03 55 55 dc 00 d5 55 5c 03 d5 55 5c 0d 55 55 5c 0d 55 55 5c 0d | ........]u..UU...U\..U\.UU\.UU\. |
0340 | 55 55 70 03 55 55 70 00 d5 55 c0 00 35 55 c0 00 35 55 c0 00 00 00 00 00 00 00 02 00 00 ff ff ff | UUp.UUp..U..5U..5U.............. |
0360 | ff ff ff 00 01 ff ff cc cc 99 99 00 03 00 00 00 00 00 00 00 00 01 5a 80 01 00 00 00 60 00 00 00 | ......................Z.....`... |
0380 | 92 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 03 c0 84 60 ff ff 00 18 00 20 00 | ........................`....... |
03a0 | 40 ff c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 03 c0 87 e0 ff ff ff f8 ff e0 ff | @............................... |
03c0 | c0 ff c0 00 00 00 00 00 00 00 00 00 07 00 0f 00 00 00 00 00 00 00 00 00 00 00 00 80 08 00 00 00 | ................................ |
03e0 | 00 00 10 00 10 00 00 00 00 00 00 00 00 00 48 00 00 00 48 00 00 00 00 00 04 00 01 00 04 00 00 00 | ..............H...H............. |
0400 | 00 00 00 01 12 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
0420 | 00 00 00 00 00 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 ff ff 00 00 00 f0 00 0f 32 25 f0 00 | ............................2%.. |
0440 | 00 6f ff ff ff ff ff ff ff 22 22 22 22 22 1f f0 00 22 22 22 22 21 f0 00 00 33 33 33 33 4f 00 00 | .o......."""""...""""!...3333O.. |
0460 | 00 ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
0480 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 ff ff ff ff ff ff 00 01 bb bb bb bb bb | ................................ |
04a0 | bb 00 02 ee ee ee ee ee ee 00 03 dd dd dd dd dd dd 00 04 cc cc cc cc cc cc 00 05 44 44 44 44 44 | ...........................DDDDD |
04c0 | 44 00 06 11 11 11 11 11 11 00 0f 00 00 00 00 00 00 00 00 01 5a 80 01 00 00 00 60 00 00 00 92 00 | D...................Z.....`..... |
04e0 | 00 00 00 00 00 00 00 00 00 1f f8 33 cc 64 66 49 92 4f 12 44 22 63 c6 3f fc 29 94 29 94 29 94 2b | ...........3.dfI.O.D"c.?.).).).+ |
0500 | d4 69 96 78 1e 7f fe 7f fe 1f f8 3f fc 7f fe 7f fe 7f fe 7f fe 7f fe 3f fc 3f fc 3f fc 3f fc 3f | .i.x.......?...........?.?.?.?.? |
0520 | fc 7f fe 7f fe 7f fe 7f fe 00 04 00 08 00 00 00 00 00 00 00 00 00 00 00 00 80 08 00 00 00 00 00 | ................................ |
0540 | 10 00 10 00 00 00 00 00 00 00 00 00 48 00 00 00 48 00 00 00 00 00 04 00 01 00 04 00 00 00 00 00 | ............H...H............... |
0560 | 00 01 12 00 00 00 00 00 0f ff ff ff ff f0 00 00 f6 05 ff ff 50 6f 00 0f 60 5f 00 56 f5 06 f0 0f | ....................Po..`_.V.... |
0580 | 00 f0 21 f3 0f 00 f0 0f 00 f6 f1 00 0f 00 f0 0f 00 5f 00 00 f5 00 f0 0f 60 05 ff ff 50 06 f0 00 | ..!.............._......`...P... |
05a0 | ff ff ff ff ff ff 00 00 f0 f0 01 10 0f 0f 00 00 f0 f0 01 10 0f 0f 00 00 f0 f0 21 12 0f 0f 00 00 | ..........................!..... |
05c0 | f0 f0 1f f1 0f 0f 00 0f f0 f0 21 12 0f 0f f0 0f f4 f5 00 00 5f 4f f0 0f ff ff ff ff ff ff f0 0f | ..........!........._O.......... |
05e0 | ff ff ff ff ff ff f0 00 00 00 00 00 00 00 07 00 00 ff ff ff ff ff ff 00 01 44 44 44 44 44 44 00 | .........................DDDDDD. |
0600 | 02 aa aa aa aa aa aa 00 03 ee ee ee ee ee ee 00 04 55 55 55 55 55 55 00 05 dd dd dd dd dd dd 00 | .................UUUUUU......... |
0620 | 06 77 77 77 77 77 77 00 0f 00 00 00 00 00 00 00 00 01 52 80 01 00 00 00 60 00 00 00 92 00 00 00 | .wwwwww...........R.....`....... |
0640 | 00 00 00 00 00 00 00 03 f8 0c 06 10 01 1c 07 33 f9 70 01 d0 01 90 01 96 0d da 55 7a 55 36 ed 10 | ...............3.p........UzU6.. |
0660 | a1 10 01 08 02 07 fc 03 f8 0f fe 1f ff 1f ff 3f ff 7f ff ff ff ff ff ff ff ff ff 7f ff 3f ff 1f | ...............?.............?.. |
0680 | ff 1f ff 0f fe 07 fc 00 04 00 03 00 00 00 00 00 00 00 00 00 00 00 00 80 08 00 00 00 00 00 10 00 | ................................ |
06a0 | 10 00 00 00 00 00 00 00 00 00 48 00 00 00 48 00 00 00 00 00 04 00 01 00 04 00 00 00 00 00 00 01 | ..........H...H................. |
06c0 | 12 00 00 00 00 00 00 00 ff ff ff f0 00 00 00 ff 42 22 22 4f f0 00 0f 42 21 11 11 22 4f 00 0f ff | ................B""O...B!.."O... |
06e0 | 11 11 11 1f ff 00 ff 24 ff ff ff f4 2f 0f 5f 22 22 22 22 22 2f f5 2f 22 22 22 22 22 2f f4 0f 22 | .......$..../._"""""/./"""""/.." |
0700 | 22 22 22 22 2f f4 0f 4f f2 22 24 ff 2f f5 2f f2 f2 2f 2f 2f 2f 0f 5f f2 f2 53 5f 2f 2f 00 ff 4f | """"/..O."$././..////._..S_//..O |
0720 | f2 f3 f4 ff 2f 00 0f 22 22 f2 f2 22 2f 00 0f 42 22 22 22 22 4f 00 00 f4 22 22 22 24 f0 00 00 0f | ..../.."".."/..B""""O..."""$.... |
0740 | ff ff ff ff 00 00 00 00 00 00 00 00 06 00 00 ff ff ff ff ff ff 00 01 cc cc 99 99 66 66 00 02 cc | ...........................ff... |
0760 | cc cc cc ff ff 00 03 33 33 33 33 66 66 00 04 99 99 99 99 ff ff 00 05 66 66 66 66 cc cc 00 0f 00 | .......3333ff..........ffff..... |
0780 | 00 00 00 00 00 00 00 01 52 80 01 00 00 00 60 00 00 00 92 00 00 00 00 00 00 00 00 00 00 00 00 00 | ........R.....`................. |
07a0 | 78 00 70 40 36 4f b0 7f f0 7e 30 7c 30 30 38 00 f0 0f e0 04 00 04 00 04 00 0f 00 00 00 00 fc 00 | x.p@6O...~0|008................. |
07c0 | fc e0 ff ff ff ff ff ff f8 ff f8 ff f8 ff fc 7f fc 3f f8 1f f0 0e 00 1f 80 1f 80 1f 80 00 03 00 | .................?.............. |
07e0 | 0e 00 00 00 00 00 00 00 00 00 00 00 00 80 08 00 00 00 00 00 10 00 10 00 00 00 00 00 00 00 00 00 | ................................ |
0800 | 48 00 00 00 48 00 00 00 00 00 04 00 01 00 04 00 00 00 00 00 00 01 12 00 00 00 00 00 00 00 00 00 | H...H........................... |
0820 | 00 00 00 00 00 00 00 02 22 20 00 00 00 00 00 01 11 00 00 03 00 00 00 00 11 02 20 01 00 16 16 10 | ........"....................... |
0840 | 11 00 00 03 61 61 11 11 11 00 00 01 11 11 14 44 15 00 00 03 11 11 44 44 51 00 00 00 11 44 44 44 | ....aa.........D......DDQ....DDD |
0860 | 15 10 00 00 04 44 44 51 51 00 00 00 00 15 15 15 10 00 00 00 00 02 00 00 00 00 00 00 00 03 00 00 | .....DDQQ....................... |
0880 | 00 00 00 00 00 02 00 00 00 00 00 00 00 23 23 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .............##................. |
08a0 | 00 00 06 00 00 ff ff ff ff ff ff 00 01 cc cc 99 99 66 66 00 02 dd dd 00 00 00 00 00 03 ff ff 66 | .................ff............f |
08c0 | 66 33 33 00 04 cc cc cc cc cc cc 00 05 88 88 88 88 88 88 00 06 ff ff cc cc 99 99 00 00 01 4a 80 | f33...........................J. |
08e0 | 01 00 00 00 60 00 00 00 92 00 00 00 00 00 00 00 00 00 00 3f 00 10 c0 c8 20 ea a0 c8 20 cb a0 f8 | ....`..............?............ |
0900 | 38 38 3e 08 26 08 26 09 2e 09 26 09 20 11 10 21 08 3e f8 3f 00 1f c0 cf e0 ef e0 cf e0 cf e0 ff | 88>.&.&...&....!.>.?............ |
0920 | f8 3f fe 0f e6 0f e6 0f ee 0f e6 0f e0 1f f0 3f f8 3e f8 00 00 00 02 00 00 00 00 00 00 00 00 00 | .?.............?.>.............. |
0940 | 00 00 00 80 08 00 00 00 00 00 10 00 10 00 00 00 00 00 00 00 00 00 48 00 00 00 48 00 00 00 00 00 | ......................H...H..... |
0960 | 04 00 01 00 04 00 00 00 00 00 00 01 12 00 00 00 00 00 ff ff ff 00 00 00 00 00 0f 12 12 ff 00 00 | ................................ |
0980 | 00 ff 00 f1 31 31 f0 00 00 ff f0 f3 f3 f3 f0 00 00 ff 00 f1 31 31 f0 00 00 ff 00 f2 ff f2 f0 00 | ....11..............11.......... |
09a0 | 00 4f ff f1 21 21 ff f0 00 00 ff f2 12 12 ff ff 40 00 00 f1 21 21 f0 0f f0 00 00 f2 12 12 f0 0f | .O..!!..........@...!!.......... |
09c0 | f0 00 00 f1 2f 21 f0 ff f0 00 00 f2 1f 12 f0 0f f0 00 00 f1 2f 21 f0 00 00 00 0f 12 1f 12 1f 00 | ..../!............../!.......... |
09e0 | 00 00 f1 21 2f 21 21 f0 00 00 ff ff f0 ff ff f0 00 00 00 00 00 00 00 00 05 00 00 ff ff ff ff ff | ...!/!!......................... |
0a00 | ff 00 01 00 00 bb bb 00 00 00 02 cc cc cc cc cc cc 00 03 aa aa aa aa aa aa 00 04 44 44 44 44 44 | ...........................DDDDD |
0a20 | 44 00 0f 00 00 00 00 00 00 00 00 00 fa 80 01 00 00 00 60 00 00 00 92 00 00 00 00 00 00 00 00 00 | D.................`............. |
0a40 | 00 00 00 3e f8 63 8c c1 06 80 02 80 02 80 02 80 02 c0 06 60 0c 30 18 18 30 0c 60 06 c0 03 80 00 | ...>.c.............`.0..0.`..... |
0a60 | 00 00 00 3e f8 7f fc ff fe ff fe ff fe ff fe ff fe ff fe 7f fc 3f f8 1f f0 0f e0 07 c0 03 80 00 | ...>.................?.......... |
0a80 | 00 00 03 00 07 00 00 00 00 00 00 00 00 00 00 00 00 80 04 00 00 00 00 00 10 00 10 00 00 00 00 00 | ................................ |
0aa0 | 00 00 00 00 48 00 00 00 48 00 00 00 00 00 02 00 01 00 02 00 00 00 00 00 00 00 d2 00 00 00 00 00 | ....H...H....................... |
0ac0 | 00 00 00 0f fc ff c0 3a ab aa 70 e9 9b 99 9c e6 65 a6 5c e9 99 99 9c e6 66 66 5c e9 99 99 9c d6 | .......:..p.....e.\.....ff\..... |
0ae0 | 66 66 5c 35 99 99 70 0d 66 65 c0 03 59 97 00 00 d6 5c 00 00 35 70 00 00 0f c0 00 00 00 00 00 00 | ff\5..p.fe..Y....\..5p.......... |
0b00 | 00 00 00 00 00 00 03 00 00 ff ff ff ff ff ff 00 01 dd dd 00 00 00 00 00 02 ff ff 66 66 cc cc 00 | ...........................ff... |
0b20 | 03 00 00 00 00 00 00 00 00 01 7a 80 01 00 00 00 60 00 00 00 92 00 00 00 00 00 00 00 00 00 00 be | ..........z.....`............... |
0b40 | 00 01 00 01 80 0f f0 10 08 17 e8 14 28 14 28 17 e8 10 08 10 08 10 08 10 08 10 08 10 08 0f f0 fe | ............(.(................. |
0b60 | 00 01 00 01 80 0f f0 1f f8 1f f8 1f f8 1f f8 1f f8 1f f8 1f f8 1f f8 1f f8 1f f8 1f f8 0f f0 00 | ................................ |
0b80 | 01 00 07 00 00 00 00 00 00 00 00 00 00 00 00 80 08 00 00 00 00 00 10 00 10 00 00 00 00 00 00 00 | ................................ |
0ba0 | 00 00 48 00 00 00 48 00 00 00 00 00 04 00 01 00 04 00 00 00 00 00 00 01 12 00 00 00 00 13 79 4a | ..H...H.......................yJ |
0bc0 | f0 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 0f f0 00 00 00 00 00 ff ff ff ff 00 00 00 0f 21 | ...............................! |
0be0 | 11 11 12 f0 00 00 0f 36 55 55 63 f0 00 00 0f 35 13 13 51 f0 00 00 0f 35 33 33 51 f0 00 00 0f 36 | .......6UUc....5..Q....533Q....6 |
0c00 | 55 55 61 f0 00 00 0f 33 11 11 11 f0 00 00 0f 33 33 33 33 f0 00 00 0f 33 33 33 33 f0 00 00 0f 22 | UUa....3.......3333....3333...." |
0c20 | 22 22 22 f0 00 00 0f 88 88 88 88 f0 00 00 0f 78 88 88 87 f0 00 00 00 ff ff ff ff 00 00 00 00 00 | """............x................ |
0c40 | 00 00 00 00 0b 00 00 ff ff ff ff ff ff 00 01 ee ee ee ee ee ee 00 02 cc cc cc cc cc cc 00 03 dd | ................................ |
0c60 | dd dd dd dd dd 00 04 44 44 44 44 44 44 00 05 22 22 22 22 22 22 00 06 55 55 55 55 55 55 00 07 aa | .......DDDDDD..""""""..UUUUUU... |
0c80 | aa aa aa aa aa 00 08 bb bb bb bb bb bb 00 09 77 77 77 77 77 77 00 0a 11 11 11 11 11 11 00 0f 00 | ...............wwwwww........... |
0ca0 | 00 00 00 00 00 00 00 01 52 80 01 00 00 00 60 00 00 00 92 00 00 00 00 00 00 00 00 00 00 00 00 00 | ........R.....`................. |
0cc0 | f0 00 88 01 08 01 90 02 70 02 20 04 40 04 40 08 80 08 80 11 00 1e 00 1c 00 18 00 10 00 00 00 00 | ........p...@.@................. |
0ce0 | f0 00 f8 01 f8 01 f0 03 f0 03 e0 07 c0 07 c0 0f 80 0f 80 1f 00 1e 00 1c 00 18 00 10 00 00 0f 00 | ................................ |
0d00 | 03 00 00 00 00 00 00 00 00 00 00 00 00 80 08 00 00 00 00 00 10 00 10 00 00 00 00 00 00 00 00 00 | ................................ |
0d20 | 48 00 00 00 48 00 00 00 00 00 04 00 01 00 04 00 00 00 00 00 00 01 12 00 00 00 00 00 00 00 00 00 | H...H........................... |
0d40 | 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 f4 04 f0 00 00 00 00 0f 40 42 f0 00 00 00 00 0f f4 | .......................@B....... |
0d60 | 2f 00 00 00 00 00 f5 3f ff 00 00 00 00 00 f3 52 f0 00 00 00 00 0f 35 1f 00 00 00 00 00 0f 53 2f | /......?.......R......5.......S/ |
0d80 | 00 00 00 00 00 f5 32 f0 00 00 00 00 00 f3 12 f0 00 00 00 00 0f 35 2f 00 00 00 00 00 0f ff f0 00 | ......2..............5/......... |
0da0 | 00 00 00 00 0f ff 00 00 00 00 00 00 0f f0 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
0dc0 | 00 00 06 00 00 ff ff ff ff ff ff 00 01 cc cc cc cc cc cc 00 02 88 88 88 88 88 88 00 03 ff ff ff | ................................ |
0de0 | ff 00 00 00 04 dd dd 00 00 00 00 00 05 ff ff 66 66 33 33 00 0f 00 00 00 00 00 00 00 00 01 52 80 | ...............ff33...........R. |
0e00 | 01 00 00 00 60 00 00 00 92 00 00 00 00 00 00 00 00 00 00 00 20 00 70 00 f8 01 de 05 de 09 de 11 | ....`.................p......... |
0e20 | de 11 de 11 de 11 de 31 de 71 de fd de 18 88 00 78 00 30 00 20 00 70 00 f8 01 fe 07 fe 0f fe 1f | .......1.q......x.0...p......... |
0e40 | fe 1f fe 1f fe 1f fe 3f fe 7f fe ff fe 18 f8 00 78 00 30 00 00 00 0a 00 00 00 00 00 00 00 00 00 | .......?........x.0............. |
0e60 | 00 00 00 80 08 00 00 00 00 00 10 00 10 00 00 00 00 00 00 00 00 00 48 00 00 00 48 00 00 00 00 00 | ......................H...H..... |
0e80 | 04 00 01 00 04 00 00 00 00 00 00 01 12 00 00 00 00 00 00 00 00 00 f0 00 00 00 00 00 00 0f 3f 00 | ..............................?. |
0ea0 | 00 00 00 00 00 f3 43 f0 00 00 00 00 0f 34 04 3f f0 00 00 0f 4f 34 04 3f f0 00 00 f5 5f 34 04 3f | ......C......4.?....O4.?...._4.? |
0ec0 | f0 00 0f 50 5f 34 04 3f f0 00 0f 00 5f 34 04 3f f0 00 0f 00 5f 34 04 3f f0 00 0f 00 5f 34 04 3f | ...P_4.?...._4.?...._4.?...._4.? |
0ee0 | f0 00 f3 00 5f 34 04 3f f0 0f 33 50 5f 34 04 3f f0 ff f3 3f 4f 34 04 3f f0 00 0f f0 00 12 22 10 | ...._4.?..3P_4.?...?O4.?......". |
0f00 | 00 00 00 00 00 01 11 10 00 00 00 00 00 00 11 00 00 00 00 00 00 00 00 00 06 00 00 ff ff ff ff ff | ................................ |
0f20 | ff 00 01 ff ff 66 66 33 33 00 02 dd dd 00 00 00 00 00 03 44 44 44 44 44 44 00 04 88 88 88 88 88 | .....ff33..........DDDDDD....... |
0f40 | 88 00 05 dd dd dd dd dd dd 00 0f 00 00 00 00 00 00 00 00 01 7a 80 01 00 00 00 60 00 00 00 92 00 | ....................z.....`..... |
0f60 | 00 00 00 00 00 00 00 00 00 00 18 00 40 0d 18 1e 40 1a 18 3f 00 21 00 39 00 29 00 39 00 29 00 39 | ............@...@..?.!.9.).9.).9 |
0f80 | 00 39 00 21 00 21 00 3f 00 00 00 00 00 0c 00 1e 00 1e 00 3f 00 3f 00 3f 00 3f 00 3f 00 3f 00 3f | .9.!.!.?...........?.?.?.?.?.?.? |
0fa0 | 00 3f 00 3f 00 3f 00 3f 00 00 02 00 07 00 00 00 00 00 00 00 00 00 00 00 00 80 08 00 00 00 00 00 | .?.?.?.?........................ |
0fc0 | 10 00 10 00 00 00 00 00 00 00 00 00 48 00 00 00 48 00 00 00 00 00 04 00 01 00 04 00 00 00 00 00 | ............H...H............... |
0fe0 | 00 01 12 00 00 00 00 00 00 00 00 00 05 20 00 00 00 00 00 04 60 00 00 00 00 ff 1f 60 05 20 00 00 | ....................`......`.... |
1000 | 0f 33 f0 04 60 00 00 00 0f 10 f0 00 05 20 00 00 ff ff ff 00 00 00 00 00 f8 17 0f 00 00 00 00 00 | .3..`........................... |
1020 | f5 f7 0f 00 00 00 00 00 fa f7 0f 00 00 00 00 00 f9 f7 0f 00 00 00 00 00 fa f7 0f 00 00 00 00 00 | ................................ |
1040 | f9 f7 0f 00 00 00 00 00 f5 f7 0f 00 00 00 00 00 f8 17 0f 00 00 00 00 00 f8 17 0f 00 00 00 00 00 | ................................ |
1060 | ff ff ff 00 00 00 00 00 00 00 00 00 00 00 0b 00 00 ff ff ff ff ff ff 00 01 aa aa aa aa aa aa 00 | ................................ |
1080 | 02 77 77 77 77 77 77 00 03 55 55 55 55 55 55 00 04 22 22 22 22 22 22 00 05 44 44 44 44 44 44 00 | .wwwwww..UUUUUU..""""""..DDDDDD. |
10a0 | 06 bb bb bb bb bb bb 00 07 dd dd dd dd dd dd 00 08 ee ee ee ee ee ee 00 09 66 66 66 66 cc cc 00 | .........................ffff... |
10c0 | 0a cc cc cc cc ff ff 00 0f 00 00 00 00 00 00 00 00 00 f2 80 01 00 00 00 60 00 00 00 92 00 00 00 | ........................`....... |
10e0 | 00 00 00 00 00 00 00 01 00 02 80 02 80 02 80 04 40 04 40 04 40 39 38 c0 06 38 38 09 20 12 90 24 | ................@.@.@98..88....$ |
1100 | 48 28 28 30 18 20 08 01 00 03 80 03 80 03 80 07 c0 07 c0 07 c0 3f f8 ff fe 3f f8 0f e0 1e f0 3c | H((0.................?...?.....< |
1120 | 78 38 38 30 18 20 08 00 07 00 07 00 00 00 00 00 00 00 00 00 00 00 00 80 04 00 00 00 00 00 10 00 | x880............................ |
1140 | 10 00 00 00 00 00 00 00 00 00 48 00 00 00 48 00 00 00 00 00 02 00 01 00 02 00 00 00 00 00 00 00 | ..........H...H................. |
1160 | d2 00 00 00 00 00 03 00 00 00 0d c0 00 00 0d c0 00 00 0d c0 00 00 35 70 00 00 35 70 00 00 35 70 | ......................5p..5p..5p |
1180 | 00 0f d7 5f c0 f5 55 55 7c 0f d5 5f c0 00 d7 5c 00 03 5c d7 00 0d 70 35 c0 0d c0 0d c0 0f 00 03 | ..._..UU|.._...\..\...p5........ |
11a0 | c0 0c 00 00 c0 00 00 00 00 00 00 00 02 00 00 ff ff ff ff ff ff 00 01 ff ff ff ff 00 00 00 03 00 | ................................ |
11c0 | 00 00 00 00 00 00 00 01 52 80 01 00 00 00 60 00 00 00 92 00 00 00 00 00 00 00 00 00 00 01 00 00 | ........R.....`................. |
11e0 | 00 03 80 07 c0 0f e0 0e e0 0f e0 07 c0 03 80 01 00 0b a0 0d 60 09 20 08 20 08 20 00 00 00 00 03 | ....................`........... |
1200 | 80 07 c0 0f e0 1f f0 1f f0 1f f0 0f e0 07 c0 0b a0 1f f0 1f f0 1f f0 1d 70 1c 70 08 20 00 00 00 | ........................p.p..... |
1220 | 07 00 00 00 00 00 00 00 00 00 00 00 00 80 08 00 00 00 00 00 10 00 10 00 00 00 00 00 00 00 00 00 | ................................ |
1240 | 48 00 00 00 48 00 00 00 00 00 04 00 01 00 04 00 00 00 00 00 00 01 12 00 00 00 00 00 00 00 05 00 | H...H........................... |
1260 | 00 00 00 00 00 00 05 00 00 00 00 00 00 00 ff f0 00 00 00 00 00 0f 31 3f 00 00 00 00 00 f3 22 23 | ......................1?......"# |
1280 | f0 00 00 00 00 f1 10 11 f0 00 00 00 00 f3 11 13 f0 00 00 00 00 0f 31 3f 00 00 00 00 00 00 ff f0 | ......................1?........ |
12a0 | 00 00 00 00 00 00 0f 00 00 00 00 00 00 f0 ff f0 f0 00 00 00 00 ff 0f 0f f0 00 00 00 00 40 0f 00 | .............................@.. |
12c0 | 40 00 00 00 00 40 00 00 40 00 00 00 00 40 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | @....@..@....@..@............... |
12e0 | 00 00 06 00 00 ff ff ff ff ff ff 00 01 ee ee ee ee ee ee 00 02 99 99 99 99 ff ff 00 03 dd dd dd | ................................ |
1300 | dd dd dd 00 04 33 33 33 33 66 66 00 05 dd dd 00 00 00 00 00 0f 00 00 00 00 00 00 00 00 01 42 80 | .....3333ff...................B. |
1320 | 01 00 00 00 60 00 00 00 92 00 00 00 00 00 00 00 00 00 00 07 e0 07 e0 07 e0 07 e0 08 10 10 88 10 | ....`........................... |
1340 | 88 10 8c 13 8c 10 08 10 08 08 10 07 e0 07 e0 07 e0 07 e0 07 e0 07 e0 07 e0 07 e0 0f f0 1f f8 1f | ................................ |
1360 | f8 1f f8 1f f8 1f f8 1f f8 0f f0 07 e0 07 e0 07 e0 07 e0 00 08 00 0d 00 00 00 00 00 00 00 00 00 | ................................ |
1380 | 00 00 00 80 08 00 00 00 00 00 10 00 10 00 00 00 00 00 00 00 00 00 48 00 00 00 48 00 00 00 00 00 | ......................H...H..... |
13a0 | 04 00 01 00 04 00 00 00 00 00 00 01 12 00 00 00 00 00 00 0f ff ff f0 00 00 00 00 0f ff ff f0 00 | ................................ |
13c0 | 00 00 00 0f ff ff f0 00 00 00 00 0f ff ff f0 00 00 00 00 f0 20 20 2f 00 00 00 0f 02 22 f2 21 f0 | ....................../.....".!. |
13e0 | 00 00 0f 22 22 f1 23 f0 00 00 0f 02 22 f1 21 ff 00 00 0f 22 ff f1 23 ff 00 00 0f 02 22 22 21 f0 | ..."".#.....".!...."..#.....""!. |
1400 | 00 00 0f 22 22 22 13 f0 00 00 00 f1 31 31 3f 00 00 00 00 0f ff ff f0 00 00 00 00 0f ff ff f0 00 | ..."""......11?................. |
1420 | 00 00 00 0f ff ff f0 00 00 00 00 0f ff ff f0 00 00 00 00 00 00 00 00 00 04 00 00 ff ff ff ff ff | ................................ |
1440 | ff 00 01 cc cc cc cc cc cc 00 02 ee ee ee ee ee ee 00 03 bb bb bb bb bb bb 00 0f 00 00 00 00 00 | ................................ |
1460 | 00 00 00 00 44 01 80 1a 70 26 48 26 4a 12 4d 12 49 68 09 98 01 88 02 40 02 20 02 20 04 10 04 08 | ....D...p&H&J.M.Ih.....@........ |
1480 | 08 04 08 04 08 01 80 1b f0 3f f8 3f fa 1f ff 1f ff 6f ff ff ff ff fe 7f fe 3f fe 3f fc 1f fc 0f | .........?.?.....o.......?.?.... |
14a0 | f8 07 f8 07 f8 00 09 00 08 00 00 00 44 00 00 00 00 06 00 09 80 09 40 0b 30 0d 18 09 0c 12 9c 21 | ............D.........@.0......! |
14c0 | 2c 10 4c 08 8c 05 0c 02 08 00 00 00 00 00 00 00 00 06 00 09 80 09 c0 0b f0 0f f8 0f fc 1f fc 3f | ,.L............................? |
14e0 | ec 1f cc 0f 8c 07 0c 02 08 00 00 00 00 00 0d 00 0c 00 00 00 44 00 00 00 00 00 00 00 00 31 80 4a | ....................D........1.J |
1500 | 40 4a 40 3f 80 0a 00 3f 80 4a 40 4a 46 31 86 00 00 00 00 00 00 00 00 00 00 00 00 31 80 7b c0 ff | @J@?...?.J@JF1.............1.{.. |
1520 | e0 ff e0 7f c0 3f 80 7f c0 ff e6 ff ef 7b cf 31 86 00 00 00 00 00 08 00 05 00 00 00 44 ff ff 80 | .....?.......{.1............D... |
1540 | 01 bf 01 a1 81 a1 f9 a1 8d a1 8d bf 8d 9f 8d 88 0d 88 0d 88 0d 8f fd 87 fd 80 01 ff ff ff ff ff | ................................ |
1560 | ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 08 00 | ................................ |
1580 | 08 00 00 00 44 00 0e 00 1f 00 1f 00 ff 00 7e 00 b8 01 18 02 28 04 40 08 80 11 00 22 00 44 00 48 | ....D.........~.....(.@....".D.H |
15a0 | 00 b0 00 40 00 00 0e 00 1f 00 1f 00 ff 00 7e 00 f8 01 f8 03 e8 07 c0 0f 80 1f 00 3e 00 7c 00 78 | ...@..........~............>.|.x |
15c0 | 00 f0 00 40 00 00 0f 00 00 00 00 00 44 00 0e 00 1f 00 1f 00 ff 00 7e 00 b8 01 18 03 28 07 c0 0f | ...@........D.........~.....(... |
15e0 | 80 1f 00 3e 00 7c 00 78 00 f0 00 40 00 00 0e 00 1f 00 1f 00 ff 00 7e 00 f8 01 f8 03 e8 07 c0 0f | ...>.|.x...@..........~......... |
1600 | 80 1f 00 3e 00 7c 00 78 00 f0 00 40 00 00 0f 00 00 00 00 00 44 07 80 18 60 27 90 58 68 50 28 a0 | ...>.|.x...@........D...`'.XhP(. |
1620 | 14 af d4 af d4 a0 14 50 28 58 68 27 98 18 7c 07 8e 00 07 00 03 07 80 1f e0 3f f0 78 78 70 38 e0 | .......P(Xh'..|..........?.xxp8. |
1640 | 1c ef dc ef dc e0 1c 70 38 78 78 3f f8 1f fc 07 8e 00 07 00 03 00 07 00 07 00 00 00 44 07 80 18 | .......p8xx?................D... |
1660 | 60 27 90 58 68 53 28 a3 14 af d4 af d4 a3 14 53 28 58 68 27 98 18 7c 07 8e 00 07 00 03 07 80 1f | `'.XhS(........S(Xh'..|......... |
1680 | e0 3f f0 78 78 73 38 e3 1c ef dc ef dc e3 1c 73 38 78 78 3f f8 1f fc 07 8e 00 07 00 03 00 07 00 | .?.xxs8........s8xx?............ |
16a0 | 07 00 00 00 44 e0 07 f0 0f f8 1f 7c 3e 3e 7c 1f f8 0f f0 07 e0 07 e0 0f f0 1f f8 3e 7c 7c 3e f8 | ....D......|>>|............>||>. |
16c0 | 1f f0 0f e0 07 00 00 60 06 70 0e 38 1c 1c 38 0e 70 07 e0 03 c0 03 c0 07 e0 0e 70 1c 38 38 1c 70 | .......`.p.8..8.p.........p.88.p |
16e0 | 0e 60 06 00 00 00 07 00 07 00 00 00 44 00 00 00 06 00 1e 00 7c 01 fc 07 f8 00 f8 01 f0 03 b0 07 | .`..........D.......|........... |
1700 | 20 0e 20 1c 00 38 00 70 00 20 00 00 00 00 07 00 1f 00 7f 01 fe 07 fe 1f fc 7f fc 03 f8 07 f8 0f | .....8.p........................ |
1720 | f0 1f 70 3e 60 7c 60 f8 40 70 40 20 00 00 01 00 0e 00 00 00 44 00 00 00 00 00 00 1f e0 00 00 1f | ..p>`|`.@p@.........D........... |
1740 | e0 03 00 03 00 03 00 0b 40 07 80 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1f e0 00 00 1f | ........@....................... |
1760 | e0 07 80 07 80 3f f0 1f e0 0f c0 07 80 03 00 00 00 00 00 00 00 00 0b 00 06 00 00 00 44 00 00 00 | .....?......................D... |
1780 | 00 00 00 00 00 03 00 07 80 0b 40 03 00 03 00 03 00 1f e0 00 00 1f e0 00 00 00 00 00 00 00 00 00 | ..........@..................... |
17a0 | 00 00 00 03 00 07 80 0f c0 1f e0 3f f0 07 80 07 80 1f e0 00 00 1f e0 00 00 00 00 00 00 00 04 00 | ...........?.................... |
17c0 | 06 00 00 00 44 00 00 00 00 00 00 00 00 01 00 03 c0 84 60 ff ff 00 18 00 20 00 40 ff c0 00 00 00 | ....D.............`.......@..... |
17e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 03 c0 87 e0 ff ff ff f8 ff e0 ff c0 ff c0 00 00 00 | ................................ |
1800 | 00 00 00 00 00 00 07 00 0f 00 00 00 44 00 00 71 1c 11 10 11 10 11 10 7f fc 51 14 51 14 51 14 51 | ............D..q.........Q.Q.Q.Q |
1820 | 14 7f fc 11 10 11 10 11 10 71 1c 00 00 00 00 00 00 00 00 00 00 00 00 7f fc 7f fc 7f fc 7f fc 7f | .........q...................... |
1840 | fc 7f fc 00 00 00 00 00 00 00 00 00 00 00 01 00 07 00 00 00 44 00 00 00 00 00 00 00 00 c0 00 c0 | ....................D........... |
1860 | 20 c8 40 c8 80 c9 00 ca 00 cc 00 cf c0 c0 00 c0 00 ff f0 ff f0 00 00 00 00 00 00 00 00 00 00 00 | ..@............................. |
1880 | 20 08 40 08 80 09 00 0a 00 0c 00 0f c0 00 00 00 00 00 00 00 00 00 0f 00 00 00 00 00 44 00 00 00 | ..@.........................D... |
18a0 | 00 00 00 00 00 00 03 04 03 02 13 01 13 00 93 00 53 00 33 03 f3 00 03 00 03 0f ff 0f ff 00 00 00 | ................S.3............. |
18c0 | 00 00 00 00 00 00 00 04 00 02 10 01 10 00 90 00 50 00 30 03 f0 00 00 00 00 00 00 00 00 00 0f 00 | ................P.0............. |
18e0 | 0f 00 00 00 44 00 00 00 00 01 00 01 00 01 00 01 00 01 00 11 10 09 20 05 40 03 80 01 00 00 00 7f | ....D...................@....... |
1900 | fc 7f fc 00 00 00 00 00 00 01 00 01 00 01 00 01 00 01 00 11 10 09 20 05 40 03 80 01 00 00 00 00 | ........................@....... |
1920 | 00 00 00 00 00 00 0b 00 07 00 00 00 44 00 00 00 00 00 00 01 80 01 80 01 80 01 80 01 80 01 80 01 | ............D................... |
1940 | 80 7f fe 7f fe 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
1960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0b 00 07 00 00 00 44 ff fe 80 00 bf fe a0 02 af fa a8 | ....................D........... |
1980 | 0a ab ea aa 2a aa aa ab aa a8 2a af ea a0 0a bf fa 80 02 ff fe 00 00 00 00 00 00 00 00 00 00 00 | ....*.....*..................... |
19a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 08 00 08 00 00 00 44 00 00 03 | ............................D... |
19c0 | 00 03 00 07 80 07 80 0f c0 0f c0 1f e0 1f e0 33 30 23 10 03 00 03 00 03 00 03 00 00 00 03 00 07 | ...............30#.............. |
19e0 | 80 07 80 0f c0 0f c0 1f e0 1f e0 3f f0 3f f0 7f f8 77 b8 67 98 07 80 07 80 07 80 07 80 00 01 00 | ...........?.?...w.g............ |
1a00 | 06 00 00 00 44 00 00 03 c0 0f f0 1f f8 3c 3c 38 1c 70 0e 70 0e 70 0e 70 0e 38 1c 3c 3c 1f f8 0f | ....D........<<8.p.p.p.p.8.<<... |
1a20 | f0 03 c0 00 00 03 c0 0f f0 1f f8 3f fc 7f fe 7c 3e f8 1f f8 1f f8 1f f8 1f 7c 3e 7f fe 3f fc 1f | ...........?...|>........|>..?.. |
1a40 | f8 0f f0 03 c0 00 07 00 07 00 00 00 44 1f f8 33 cc 64 66 49 92 4f 12 44 22 63 c6 3f fc 29 94 29 | ............D..3.dfI.O.D"c.?.).) |
1a60 | 94 29 94 2b d4 69 96 78 1e 7f fe 7f fe 1f f8 3f fc 7f fe 7f fe 7f fe 7f fe 7f fe 3f fc 3f fc 3f | .).+.i.x.......?...........?.?.? |
1a80 | fc 3f fc 3f fc 7f fe 7f fe 7f fe 7f fe 00 04 00 08 00 00 00 44 03 f8 0c 06 10 01 1c 07 33 f9 70 | .?.?................D........3.p |
1aa0 | 01 d0 01 90 01 96 0d da 55 7a 55 36 ed 10 a1 10 01 08 02 07 fc 03 f8 0f fe 1f ff 1f ff 3f ff 7f | ........UzU6.................?.. |
1ac0 | ff ff ff ff ff ff ff ff ff 7f ff 3f ff 1f ff 1f ff 0f fe 07 fc 00 04 00 03 00 00 00 44 02 80 02 | ...........?................D... |
1ae0 | 80 02 80 02 80 02 80 02 80 fe fe 00 00 fe fe 02 80 02 80 02 80 02 80 02 80 02 80 00 00 03 80 03 | ................................ |
1b00 | 80 03 80 03 80 03 80 03 80 ff fe ff fe ff fe 03 80 03 80 03 80 03 80 03 80 03 80 00 00 00 07 00 | ................................ |
1b20 | 07 00 00 00 44 42 84 a2 8a 52 94 2a a8 16 d0 0a a0 fd 7e 02 80 fd 7e 0a a0 16 d0 2a a8 52 94 a2 | ....DB...R.*......~...~....*.R.. |
1b40 | 8a 42 84 00 00 43 84 e3 8e 73 9c 3b b8 1f f0 0f e0 ff fe ff fe ff fe 0f e0 1f f0 3b b8 73 9c e3 | .B...C...s.;...............;.s.. |
1b60 | 8e 43 84 00 00 00 07 00 07 00 00 00 44 01 00 01 00 01 00 01 00 01 00 01 00 01 00 fe fe 01 00 01 | .C..........D................... |
1b80 | 00 01 00 01 00 01 00 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
1ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 07 00 07 00 00 00 44 02 80 06 c0 0a a0 12 90 22 88 42 | ....................D........".B |
1bc0 | 84 fe fe 00 00 fe fe 42 84 22 88 12 90 0a a0 06 c0 02 80 00 00 02 80 06 c0 0e e0 1e f0 3e f8 7e | .......B."...................>.~ |
1be0 | fc fe fe 00 00 fe fe 7e fc 3e f8 1e f0 0e e0 06 c0 02 80 00 00 00 07 00 07 00 00 00 44 00 00 00 | .......~.>..................D... |
1c00 | 00 07 80 1f e0 1f e0 3f f0 3f f0 3f f0 3f f0 1f e0 1f e0 07 80 00 00 00 00 00 00 00 00 00 00 07 | .......?.?.?.?.................. |
1c20 | 80 1f e0 3f f0 3f f0 7f f8 7f f8 7f f8 7f f8 3f f0 3f f0 1f e0 07 80 00 00 00 00 00 00 00 06 00 | ...?.?.........?.?.............. |
1c40 | 06 00 00 00 44 00 00 00 00 3f fc 20 04 20 04 20 04 20 04 21 84 21 84 20 04 20 04 20 04 20 04 3f | ....D....?.........!.!.........? |
1c60 | fc 00 00 00 00 00 00 00 00 3f fc 3f fc 30 0c 30 0c 31 8c 33 cc 33 cc 31 8c 30 0c 30 0c 3f fc 3f | .........?.?.0.0.1.3.3.1.0.0.?.? |
1c80 | fc 00 00 00 00 00 07 00 07 00 00 00 44 00 00 01 80 03 c0 07 e0 0d b0 19 98 01 80 01 80 01 80 01 | ............D................... |
1ca0 | 80 19 98 0d b0 07 e0 03 c0 01 80 00 00 01 80 03 c0 07 e0 0f f0 1f f8 3f fc 3b dc 03 c0 03 c0 3b | .......................?.;.....; |
1cc0 | dc 3f fc 1f f8 0f f0 07 e0 03 c0 01 80 00 07 00 07 00 00 00 44 00 00 00 02 00 0c 00 3c 00 f8 03 | .?..................D.......<... |
1ce0 | f8 0f f0 00 f0 01 60 02 60 04 40 08 40 10 00 20 00 40 00 00 00 00 03 00 0f 00 3e 00 fe 03 fc 0f | ......`.`.@.@....@........>..... |
1d00 | fc 3f f8 ff f8 03 f0 07 f0 0e e0 1c e0 38 c0 70 c0 e0 80 40 80 00 01 00 0e 00 00 00 44 00 00 00 | .?...........8.p...@........D... |
1d20 | 02 00 0c 00 3c 00 f8 03 f8 00 70 00 b0 01 20 02 20 04 00 08 00 10 00 20 00 40 00 00 00 00 03 00 | ....<.....p..............@...... |
1d40 | 0f 00 3e 00 fe 03 fc 0f fc 3f f8 01 f8 03 f0 07 70 0e 60 1c 60 38 40 70 40 e0 00 40 00 00 01 00 | ..>......?......p.`.`8@p@..@.... |
1d60 | 0e 00 00 00 44 00 00 00 00 3f fc 22 44 26 64 2c 34 38 1c 21 84 21 84 38 1c 2c 34 26 64 22 44 3f | ....D....?."D&d,48.!.!.8.,4&d"D? |
1d80 | fc 00 00 00 00 00 00 00 00 3f fc 3e 7c 3e 7c 3c 3c 39 9c 23 c4 23 c4 39 9c 3c 3c 3e 7c 3e 7c 3f | .........?.>|>|<<9.#.#.9.<<>|>|? |
1da0 | fc 00 00 00 00 00 07 00 07 00 00 00 44 00 00 47 c0 6f e0 7c 30 48 10 4c 00 7e 00 00 00 00 00 00 | ............D..G.o.|0H.L.~...... |
1dc0 | fc 00 64 10 24 18 7c 0f ec 07 c4 00 00 c7 c0 ef e0 ff f0 ff f8 fc 38 fe 10 ff 00 ff 80 03 fe 01 | ..d.$.|...............8......... |
1de0 | fe 10 fe 38 7e 3f fe 1f fe 0f ee 07 c6 00 07 00 07 00 00 00 44 00 00 01 80 03 c0 07 e0 01 80 11 | ...8~?..............D........... |
1e00 | 88 31 8c 7f fe 7f fe 31 8c 11 88 01 80 07 e0 03 c0 01 80 00 00 01 80 03 c0 07 e0 0f f0 17 e8 3b | .1.....1.......................; |
1e20 | dc 7f fe ff ff ff ff 7f fe 3b dc 17 e8 0f f0 07 e0 03 c0 01 80 00 07 00 07 00 00 00 44 00 00 00 | .........;..................D... |
1e40 | 78 00 70 40 36 4f b0 7f f0 7e 30 7c 30 30 38 00 f0 0f e0 04 00 04 00 04 00 0f 00 00 00 00 fc 00 | x.p@6O...~0|008................. |
1e60 | fc e0 ff ff ff ff ff ff f8 ff f8 ff f8 ff fc 7f fc 3f f8 1f f0 0e 00 1f 80 1f 80 1f 80 00 03 00 | .................?.............. |
1e80 | 0e 00 00 00 44 3f 00 10 c0 c8 20 ea a0 c8 20 cb a0 f8 38 38 3e 08 26 08 26 09 2e 09 26 09 20 11 | ....D?............88>.&.&...&... |
1ea0 | 10 21 08 3e f8 3f 00 1f c0 cf e0 ef e0 cf e0 cf e0 ff f8 3f fe 0f e6 0f e6 0f ee 0f e6 0f e0 1f | .!.>.?.............?............ |
1ec0 | f0 3f f8 3e f8 00 00 00 02 00 00 00 44 00 0c 00 3c 00 f0 01 e0 03 c0 07 e0 0f f0 2f e0 7f f0 5f | .?.>........D...<........../..._ |
1ee0 | f0 07 e0 07 c0 4a 00 62 00 34 00 18 00 00 0c 00 3c 00 f0 01 e0 03 c0 07 e0 0f f0 2f e0 7f f0 7f | .....J.b.4......<........../.... |
1f00 | f0 7f e0 7f c0 7e 00 7e 00 3c 00 18 00 00 00 00 0d 00 00 00 44 00 00 3f c0 40 20 3f 10 08 08 07 | .....~.~.<..........D..?.@.?.... |
1f20 | 08 08 08 07 14 08 22 06 41 01 82 01 24 00 88 00 50 00 20 00 00 00 00 3f c0 7f e0 3f f0 0f f8 07 | ......".A...$...P......?...?.... |
1f40 | f8 0f f8 07 fc 0f fe 07 ff 01 fe 01 fc 00 f8 00 70 00 20 00 00 00 02 00 01 00 00 00 44 00 00 3e | ................p...........D..> |
1f60 | f8 63 8c c1 06 80 02 80 02 80 02 80 02 c0 06 60 0c 30 18 18 30 0c 60 06 c0 03 80 00 00 00 00 3e | .c.............`.0..0.`........> |
1f80 | f8 7f fc ff fe ff fe ff fe ff fe ff fe ff fe 7f fc 3f f8 1f f0 0f e0 07 c0 03 80 00 00 00 03 00 | .................?.............. |
1fa0 | 07 00 00 00 44 ff ff d5 55 aa ab d5 55 a0 0b d0 05 a0 0b d0 05 a0 0b d0 05 a0 0b d0 05 aa ab d5 | ....D...U...U................... |
1fc0 | 55 aa ab ff ff ff ff ff ff ff ff ff ff f0 0f f0 0f f0 0f f0 0f f0 0f f0 0f f0 0f f0 0f ff ff ff | U............................... |
1fe0 | ff ff ff ff ff 00 07 00 07 00 00 00 44 00 00 3f fc 1f f8 4f f2 67 e6 73 ce 79 9e 7f fe 7f fe 79 | ............D..?...O.g.s.y.....y |
2000 | 9e 73 ce 67 e6 4f f2 1f f8 3f fc 00 00 7f fe 7f fe ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | .s.g.O...?...................... |
2020 | ff ff ff ff ff ff ff ff ff 7f fe 7f fe 00 07 00 06 00 00 00 44 00 00 08 00 0c 00 0e 00 0f 00 0f | ....................D........... |
2040 | 80 0f c0 0f e0 0f f0 0f 80 0d 80 08 c0 00 c0 00 60 00 60 00 00 18 00 1c 00 1e 00 1f 00 1f 80 1f | ................`.`............. |
2060 | c0 1f e0 1f f0 1f f8 1f fc 1f c0 1d e0 19 e0 10 f0 00 f0 00 70 00 01 00 04 00 00 00 44 00 00 60 | ....................p.......D..` |
2080 | 00 60 00 60 80 61 00 62 00 64 00 6f fc 64 00 62 00 61 00 60 80 60 00 60 00 00 00 00 00 00 00 00 | .`.`.a.b.d.o.d.b.a.`.`.`........ |
20a0 | 00 00 00 00 80 01 00 02 00 04 00 0f fc 04 00 02 00 01 00 00 80 00 00 00 00 00 00 00 00 00 07 00 | ................................ |
20c0 | 04 00 00 00 44 00 00 0c 00 0c 00 0c 00 0c 00 0c 00 0c 00 0f f8 0f f8 0c 00 0c 00 0c 00 0c 00 0c | ....D........................... |
20e0 | 00 0c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
2100 | 00 00 00 00 00 00 07 00 04 00 00 00 44 80 02 7f fc 7f fc 44 44 45 54 45 54 45 54 45 54 44 44 7f | ............D......DDETETETETDD. |
2120 | fc 7f fc 7f fc 7f fc 7f fc 7f fc 80 02 ff fe ff fe ff fe ff fe ff fe ff fe ff fe ff fe ff fe ff | ................................ |
2140 | fe ff fe ff fe ff fe ff fe ff fe ff fe 00 04 00 03 00 00 00 44 00 00 00 00 00 00 0c 00 0c 00 0c | ....................D........... |
2160 | 00 0c 00 0c 00 0c 00 0c 00 0f f8 0f f8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
2180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0b 00 04 00 00 00 44 00 00 00 | ............................D... |
21a0 | 00 00 00 00 30 00 30 00 30 00 30 00 30 00 30 00 30 1f f0 1f f0 00 00 00 00 00 00 00 00 00 00 00 | ....0.0.0.0.0.0.0............... |
21c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0b 00 | ................................ |
21e0 | 0b 00 00 00 44 03 80 1e f0 02 80 81 00 43 87 24 4b 1d 70 05 40 04 40 02 80 04 40 09 20 12 90 14 | ....D........C.$K.p.@.@...@..... |
2200 | 50 78 3c f8 3f 03 80 1f f0 03 80 81 00 43 87 27 cb 1f f0 07 c0 07 c0 03 80 07 c0 0f e0 1e f0 1c | Px<.?........C.'................ |
2220 | 70 78 3c f8 3f 00 01 00 07 00 00 00 44 80 02 7f fc 7f fc 44 44 54 54 54 54 54 54 54 54 44 44 7f | px<.?.......D......DDTTTTTTTTDD. |
2240 | fc 7f fc 7f fc 7f fc 7f fc 7f fc 80 02 ff fe ff fe ff fe ff fe ff fe ff fe ff fe ff fe ff fe ff | ................................ |
2260 | fe ff fe ff fe ff fe ff fe ff fe ff fe 00 04 00 07 00 00 00 44 06 00 01 00 01 80 0f f0 10 08 17 | ....................D........... |
2280 | e8 14 28 14 28 17 e8 10 08 10 08 10 08 10 08 10 08 10 08 0f f0 06 00 01 00 01 80 0f f0 1f f8 1f | ..(.(........................... |
22a0 | f8 1f f8 1f f8 1f f8 1f f8 1f f8 1f f8 1f f8 1f f8 1f f8 0f f0 00 00 00 00 00 00 00 44 00 00 00 | ............................D... |
22c0 | f0 00 88 01 08 01 90 02 70 02 20 04 40 04 40 08 80 08 80 11 00 1e 00 1c 00 18 00 10 00 00 00 00 | ........p...@.@................. |
22e0 | f0 00 f8 01 f8 01 f0 03 f0 03 e0 07 c0 07 c0 0f 80 0f 80 1f 00 1e 00 1c 00 18 00 10 00 00 0f 00 | ................................ |
2300 | 03 00 00 00 44 03 c0 07 e0 0f f0 19 98 19 98 0f f0 07 e0 03 c0 43 c2 43 c3 21 84 1c 38 03 c0 0f | ....D................C.C.!..8... |
2320 | f1 78 1f 40 02 07 e0 0f f0 1f f8 3f fc 3f fc 1f f8 0f f0 47 e2 e7 e7 e7 e7 7f ff 3f fc 1f f9 7f | .x.@.......?.?.....G.......?.... |
2340 | ff ff ff f8 1f 00 0a 00 07 00 00 00 44 00 00 00 00 00 00 01 80 01 80 01 80 01 80 1f f8 1f f8 01 | ............D................... |
2360 | 80 01 80 01 80 01 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
2380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 07 00 07 00 00 00 44 07 c0 0f e0 1c 70 18 30 1c 30 0c | ....................D.....p.0.0. |
23a0 | 70 00 e0 03 c0 03 80 02 80 02 80 0e e0 06 c0 03 80 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | p............................... |
23c0 | 00 00 00 00 00 00 00 00 00 3f f8 1f f0 0f e0 07 c0 03 80 01 00 00 0e 00 07 00 00 00 44 00 00 00 | .........?..................D... |
23e0 | 10 00 30 00 70 00 f0 01 f0 03 f0 07 f0 0f f0 01 f0 01 b0 03 10 03 00 06 00 06 00 00 00 00 18 00 | ..0.p........................... |
2400 | 38 00 78 00 f8 01 f8 03 f8 07 f8 0f f8 1f f8 3f f8 03 f8 07 b8 07 98 0f 08 0f 00 0e 00 00 01 00 | 8.x............?................ |
2420 | 0b 00 00 00 44 00 00 00 00 00 06 00 06 01 06 00 86 00 46 00 26 3f f6 00 26 00 46 00 86 01 06 00 | ....D.............F.&?..&.F..... |
2440 | 06 00 06 00 00 00 00 00 00 00 00 00 00 01 00 00 80 00 40 00 20 3f f0 00 20 00 40 00 80 01 00 00 | ..................@..?....@..... |
2460 | 00 00 00 00 00 00 08 00 0b 00 00 00 44 00 00 00 30 00 30 00 30 00 30 00 30 00 30 1f f0 1f f0 00 | ............D...0.0.0.0.0.0..... |
2480 | 30 00 30 00 30 00 30 00 30 00 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | 0.0.0.0.0.0..................... |
24a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 07 00 0a 00 00 00 44 80 02 7f fc 7f fc 44 44 55 44 55 | ....................D......DDUDU |
24c0 | 44 55 44 55 44 44 44 7f fc 7f fc 7f fc 7f fc 7f fc 7f fc 80 02 ff fe ff fe ff fe ff fe ff fe ff | DUDUDDD......................... |
24e0 | fe ff fe ff fe ff fe ff fe ff fe ff fe ff fe ff fe ff fe ff fe 00 04 00 03 00 00 00 44 00 00 7f | ............................D... |
2500 | fe 40 22 40 22 40 22 7f e2 44 22 44 22 44 22 44 22 47 fe 44 02 44 02 44 02 7f fe 00 00 00 00 7f | .@"@"@"..D"D"D"D"G.D.D.D........ |
2520 | fe 7f fe 60 76 7f f6 7f f6 7c 36 6c 36 6c 36 6c 3e 6f fe 6f fe 6e 06 7f fe 7f fe 00 00 00 07 00 | ...`v....|6l6l6l>o.o.n.......... |
2540 | 07 00 00 00 44 00 00 00 40 00 40 01 60 01 60 03 60 03 70 07 70 07 70 0f 78 0f 78 1f 78 1f 7c 3e | ....D...@.@.`.`.`.p.p.p.x.x.x.|> |
2560 | 38 00 00 00 00 00 40 00 e0 01 e0 03 f0 03 f0 07 f0 07 f8 0f f8 0f f8 1f fc 1f fc 3f fc 3f fe 7f | 8.....@....................?.?.. |
2580 | 7c 7e 38 00 00 00 0c 00 08 00 00 00 44 02 80 02 80 02 80 02 80 02 80 02 80 02 80 02 80 02 80 02 | |~8.........D................... |
25a0 | 80 02 80 0f e0 07 c0 03 80 01 00 00 00 03 80 03 80 03 80 03 80 03 80 03 80 03 80 03 80 03 80 03 | ................................ |
25c0 | 80 03 80 1f f0 0f e0 07 c0 03 80 01 00 00 0e 00 07 00 00 00 44 00 00 00 00 00 00 00 00 08 10 18 | ....................D........... |
25e0 | 18 3f fc 78 1e 3f fc 18 18 08 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 08 10 18 18 38 | .?.x.?.........................8 |
2600 | 1c 7f fe ff ff 7f fe 38 1c 18 18 08 10 00 00 00 00 00 00 00 00 00 07 00 07 00 00 00 44 00 00 00 | .......8....................D... |
2620 | 00 00 00 00 00 08 00 18 00 3f ff 78 00 3f ff 18 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .........?.x.?.................. |
2640 | 00 00 00 08 00 18 00 38 00 7f ff ff ff 7f ff 38 00 18 00 08 00 00 00 00 00 00 00 00 00 00 07 00 | .......8.......8................ |
2660 | 01 00 00 00 44 00 00 00 00 00 00 00 00 00 00 00 10 00 18 ff fc 00 1e ff fc 00 18 00 10 00 00 00 | ....D........................... |
2680 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 18 00 1c ff fe ff ff ff fe 00 1c 00 18 00 10 00 | ................................ |
26a0 | 00 00 00 00 00 00 08 00 0e 00 00 00 44 00 00 00 80 01 c0 03 e0 07 f0 01 40 01 40 01 40 01 40 01 | ............D...........@.@.@.@. |
26c0 | 40 01 40 01 40 01 40 01 40 01 40 01 40 00 80 01 c0 03 e0 07 f0 0f f8 01 c0 01 c0 01 c0 01 c0 01 | @.@.@.@.@.@.@................... |
26e0 | c0 01 c0 01 c0 01 c0 01 c0 01 c0 01 c0 00 01 00 08 00 00 00 44 00 00 01 00 03 80 07 c0 0f e0 02 | ....................D........... |
2700 | 80 02 80 02 80 02 80 02 80 02 80 0f e0 07 c0 03 80 01 00 00 00 01 00 03 80 07 c0 0f e0 1f f0 03 | ................................ |
2720 | 80 03 80 03 80 03 80 03 80 03 80 1f f0 0f e0 07 c0 03 80 01 00 00 07 00 07 00 00 00 44 00 20 00 | ............................D... |
2740 | 70 00 f8 01 de 05 de 09 de 11 de 11 de 11 de 11 de 31 de 71 de fd de 18 88 00 78 00 30 00 20 00 | p................1.q......x.0... |
2760 | 70 00 f8 01 fe 07 fe 0f fe 1f fe 1f fe 1f fe 1f fe 3f fe 7f fe ff fe 18 f8 00 78 00 30 00 00 00 | p................?........x.0... |
2780 | 0a 00 00 00 44 00 00 7f 80 40 00 40 00 40 00 47 e0 44 20 44 22 44 22 04 22 07 e2 00 12 00 0a 00 | ....D....@.@.@.G.D.D"D"."....... |
27a0 | 06 01 fe 00 00 ff c0 ff c0 ff c0 e0 00 ef f0 ef f0 ec 37 ec 37 ec 37 ec 37 0f f7 0f ff 00 1f 03 | ..................7.7.7.7....... |
27c0 | ff 03 ff 03 ff 00 0e 00 0e 00 00 00 44 20 10 10 20 10 20 08 40 08 40 87 87 67 98 1f e0 1f e0 67 | ............D.......@.@..g.....g |
27e0 | 98 87 87 08 40 08 40 10 20 10 20 20 10 70 38 38 70 38 70 1c e0 9f e7 ef df ff ff 7f f8 7f f8 ff | ....@.@......p88p8p............. |
2800 | ff ef df 9f e7 1c e0 38 70 38 70 70 38 00 07 00 07 00 00 00 44 00 18 00 40 0d 18 1e 40 1a 18 3f | .......8p8pp8.......D...@...@..? |
2820 | 00 21 00 39 00 29 00 39 00 29 00 39 00 39 00 21 00 21 00 3f 00 00 00 00 00 0c 00 1e 00 1e 00 3f | .!.9.).9.).9.9.!.!.?...........? |
2840 | 00 3f 00 3f 00 3f 00 3f 00 3f 00 3f 00 3f 00 3f 00 3f 00 3f 00 00 02 00 07 00 00 00 44 01 00 02 | .?.?.?.?.?.?.?.?.?.?........D... |
2860 | 80 02 80 02 80 04 40 04 40 04 40 39 38 c0 06 38 38 09 20 12 90 24 48 28 28 30 18 20 08 01 00 03 | ......@.@.@98..88....$H((0...... |
2880 | 80 03 80 03 80 07 c0 07 c0 07 c0 3f f8 ff fe 3f f8 0f e0 1e f0 3c 78 38 38 30 18 20 08 00 07 00 | ...........?...?.....<x880...... |
28a0 | 07 00 00 00 44 00 00 03 80 0f e0 1c 70 30 18 60 0c c1 06 c2 86 c1 06 60 0c 30 18 1c 70 0f e0 03 | ....D.......p0.`.......`.0..p... |
28c0 | 80 00 00 00 00 00 00 03 80 0f e0 1f f0 3c 78 70 1c e3 8e e3 8e e3 8e 70 1c 3c 78 1f f0 0f e0 03 | .............<xp.......p.<x..... |
28e0 | 80 00 00 00 00 00 07 00 07 00 00 00 44 01 00 01 00 01 00 01 00 01 00 01 00 01 00 ff fe 01 00 01 | ............D................... |
2900 | 00 01 00 01 00 01 00 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
2920 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 07 00 07 00 00 00 44 00 00 60 00 78 00 3e 00 3f 80 1f | ....................D..`.x.>.?.. |
2940 | e0 1e 00 0d 00 0c 80 04 40 04 20 00 10 00 08 00 04 00 00 00 00 e0 00 f8 00 fe 00 7f 80 7f e0 3f | ........@......................? |
2960 | f8 3f fe 1f 80 1f c0 0e e0 0e 70 06 38 06 1c 02 0e 02 04 00 00 00 01 00 01 00 00 00 44 ff f0 ff | .?........p.8...............D... |
2980 | f0 c0 00 c0 00 cf c0 cc 00 ca 00 c9 00 c8 80 c8 40 c0 20 c0 00 00 00 00 00 00 00 00 00 00 00 00 | ................@............... |
29a0 | 00 00 00 00 00 0f c0 0c 00 0a 00 09 00 08 80 08 40 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................@............... |
29c0 | 00 00 00 00 44 0f ff 0f ff 00 03 00 03 03 f3 00 33 00 53 00 93 01 13 02 13 04 03 00 03 00 00 00 | ....D...........3.S............. |
29e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 03 f0 00 30 00 50 00 90 01 10 02 10 04 00 00 00 00 00 00 | ................0.P............. |
2a00 | 00 00 00 00 00 00 00 00 0f 00 00 00 44 00 00 7f fc 7f fc 00 00 01 00 03 80 05 40 09 20 11 10 01 | ............D.............@..... |
2a20 | 00 01 00 01 00 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 03 80 05 40 09 20 11 10 01 | ..........................@..... |
2a40 | 00 01 00 01 00 01 00 01 00 00 00 00 00 00 04 00 07 00 00 00 44 00 00 00 00 00 00 00 00 7f fe 7f | ....................D........... |
2a60 | fe 01 80 01 80 01 80 01 80 01 80 01 80 01 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
2a80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 00 07 00 00 00 44 01 00 00 | ............................D... |
2aa0 | 00 03 80 07 c0 0f e0 0e e0 0f e0 07 c0 03 80 01 00 0b a0 0d 60 09 20 08 20 08 20 00 00 00 00 03 | ....................`........... |
2ac0 | 80 07 c0 0f e0 1f f0 1f f0 1f f0 0f e0 07 c0 0b a0 1f f0 1f f0 1f f0 1d 70 1c 70 08 20 00 00 00 | ........................p.p..... |
2ae0 | 07 00 00 00 44 00 00 00 00 00 00 0f f8 0f f8 0c 00 0c 00 0c 00 0c 00 0c 00 0c 00 0c 00 00 00 00 | ....D........................... |
2b00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
2b20 | 00 00 00 00 00 00 03 00 04 00 00 00 44 00 00 08 90 02 28 49 a6 27 c8 19 30 61 0c 01 00 01 00 01 | ............D.....(I.'..0a...... |
2b40 | 00 01 00 01 00 01 40 01 40 00 80 00 00 00 00 0f f0 1f f8 7f fe 7f fc ff fe fb be e3 8e 03 80 03 | ......@.@....................... |
2b60 | 80 03 80 03 c0 03 e0 03 e0 01 c0 00 80 00 04 00 07 00 00 00 44 00 00 00 00 00 00 00 00 1f f0 1f | ....................D........... |
2b80 | f0 00 30 00 30 00 30 00 30 00 30 00 30 00 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ..0.0.0.0.0.0.0................. |
2ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 00 0b 00 00 00 44 07 e0 07 | ............................D... |
2bc0 | e0 07 e0 07 e0 08 10 10 88 10 88 10 8c 13 8c 10 08 10 08 08 10 07 e0 07 e0 07 e0 07 e0 07 e0 07 | ................................ |
2be0 | e0 07 e0 07 e0 0f f0 1f f8 1f f8 1f fc 1f fc 1f f8 1f f8 0f f0 07 e0 07 e0 07 e0 07 e0 00 08 00 | ................................ |
2c00 | 0d 00 00 00 44 0c 60 02 80 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 00 01 | ....D.`......................... |
2c20 | 00 02 80 0c 60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ....`........................... |
2c40 | 00 00 00 00 00 00 0b 00 07 00 00 00 a4 00 02 00 00 00 00 00 8f 00 93 00 a7 00 c9 04 02 4f 6b 00 | .............................Ok. |
2c60 | 00 00 00 00 0e 00 6c 00 89 01 3a 88 73 57 69 73 68 20 2d 20 57 69 6e 64 6f 77 69 6e 67 20 53 68 | ......l...:.sWish.-.Windowing.Sh |
2c80 | 65 6c 6c 0d 62 61 73 65 64 20 6f 6e 20 54 63 6c 20 38 2e 33 2e 30 20 26 20 54 6b 20 38 2e 33 2e | ell.based.on.Tcl.8.3.0.&.Tk.8.3. |
2ca0 | 30 0d 0d 52 61 79 20 4a 6f 68 6e 73 6f 6e 20 26 20 4a 69 6d 20 49 6e 67 68 61 6d 0d 53 63 72 69 | 0..Ray.Johnson.&.Jim.Ingham.Scri |
2cc0 | 70 74 69 63 73 20 49 6e 63 2e 0d 6a 69 6d 2e 69 6e 67 68 61 6d 40 63 79 67 6e 75 73 2e 63 6f 6d | ptics.Inc..jim.ingham@cygnus.com |
2ce0 | 00 00 00 00 00 00 13 00 18 00 77 00 5c 40 02 00 80 00 00 00 ae 00 09 00 00 00 00 00 87 00 fc 00 | ..........w.\@.................. |
2d00 | 9b 01 4c 04 04 4f 70 65 6e 00 00 00 00 00 68 00 fc 00 7c 01 4c 04 06 43 61 6e 63 65 6c 00 00 00 | ..L..Open.....h...|.L..Cancel... |
2d20 | 00 00 00 00 00 00 00 00 00 81 04 00 01 00 82 00 00 00 00 00 08 00 eb 00 18 01 51 00 00 00 00 00 | ..........................Q..... |
2d40 | 00 00 20 00 fc 00 34 01 4c 04 05 45 6a 65 63 74 00 00 00 00 00 00 3c 00 fc 00 50 01 4c 04 07 44 | ......4.L..Eject......<...P.L..D |
2d60 | 65 73 6b 74 6f 70 00 00 00 00 00 00 1d 00 0c 00 9f 00 e6 00 00 00 00 00 00 00 06 00 0c 00 19 00 | esktop.......................... |
2d80 | e6 00 00 00 00 00 00 00 5b 00 fb 00 5c 01 4d c0 02 00 0b 00 00 00 00 00 a8 00 14 00 bb 01 2c 07 | ........[...\.M...............,. |
2da0 | 02 00 83 00 00 00 18 00 55 00 6b 01 04 01 9c 00 01 01 00 01 00 00 00 00 00 00 80 00 00 28 0a 00 | ........U.k..................(.. |
2dc0 | 00 00 18 00 00 00 00 00 c3 01 58 00 01 00 00 00 00 00 00 00 00 00 82 00 00 00 00 00 00 00 ce 60 | ..........X....................` |
2de0 | 0a 00 00 4d 44 45 46 02 4f 00 00 4e fa 00 04 4e 75 48 e7 18 30 4f ef ff ee 38 2f 00 36 24 6f 00 | ...MDEF.O..N...NuH..0O...8/.6$o. |
2e00 | 26 26 7c 4d 44 45 46 59 4f 2e b8 0b 54 2e 9f 55 4f 3e b8 0a 0a 3f 5f 00 04 55 4f 3e b8 0a 0c 3f | &&|MDEFYO...T..UO>...?_..UO>...? |
2e20 | 5f 00 06 0c 78 ff ff 0b 5c 66 12 20 78 0b 5c 20 50 2f 68 00 06 00 08 2f 68 00 0a 00 0c 0c 44 00 | _...x...\f..x.\.P/h..../h.....D. |
2e40 | 01 66 02 36 12 3f 04 2f 2f 00 34 2f 2f 00 34 2f 2f 00 34 2f 0a 48 6f 00 12 4e 93 2f 17 21 df 0b | .f.6.?.//.4//.4//.4/.Ho..N./.!.. |
2e60 | 54 3f 2f 00 04 31 df 0a 0a 3f 2f 00 06 31 df 0a 0c 0c 44 00 01 66 2a b6 52 67 26 0c 78 ff ff 0b | T?/..1...?/..1....D..f*.Rg&.x... |
2e80 | 5c 67 1e 20 78 0b 5c 20 50 21 6f 00 08 00 06 21 6f 00 0c 00 0a 21 ef 00 08 09 fa 21 ef 00 0c 09 | \g..x.\.P!o....!o....!.....!.... |
2ea0 | fe 4f ef 00 12 4c df 0c 18 4e 74 00 12 00 00 00 10 00 84 00 00 00 00 00 00 00 00 00 01 ff ff 00 | .O...L...Nt..................... |
2ec0 | 00 00 00 13 a4 13 a4 00 00 00 00 00 64 00 44 00 11 02 ff 0c 00 ff fe 00 00 00 48 00 00 00 48 00 | ............d.D...........H...H. |
2ee0 | 00 00 00 00 00 00 64 00 44 00 00 00 00 00 01 00 0a 00 00 00 00 00 64 00 44 00 99 80 44 00 00 00 | ......d.D.............d.D...D... |
2f00 | 00 00 64 00 44 00 00 00 00 00 00 00 00 00 48 00 00 00 48 00 00 00 00 00 08 00 01 00 08 00 00 00 | ..d.D.........H...H............. |
2f20 | 00 01 08 00 d8 00 00 00 00 00 01 5a 5a 80 00 00 ff 37 36 ff 00 ff 00 ff 00 35 35 ff 00 ff 00 cc | ...........ZZ....76......55..... |
2f40 | 00 34 34 ff 00 ff 00 99 00 33 33 ff 00 ff 00 66 00 37 36 ff 00 ff 00 33 00 35 35 ff 00 ff 00 00 | .44......33....f.76....3.55..... |
2f60 | 00 34 34 ff 00 cc 00 ff 00 33 33 ff 00 cc 00 cc 00 37 36 ff 00 cc 00 99 00 35 35 ff 00 cc 00 66 | .44......33......76......55....f |
2f80 | 00 fa fa ff 00 cc 00 33 00 33 33 ff 00 cc 00 00 00 31 30 ff 00 99 00 ff 00 2f 2f ff 00 99 00 cc | .......3.33......10......//..... |
2fa0 | 00 fa fa ff 00 99 00 99 00 f9 f9 ff 00 99 00 66 00 31 30 ff 00 99 00 33 00 2f 2f ff 00 99 00 00 | ...............f.10....3.//..... |
2fc0 | 00 2e 2e ff 00 66 00 ff 00 f9 f9 ff 00 66 00 cc 00 31 30 ff 00 66 00 99 00 2f 2f ff 00 66 00 66 | .....f.......f...10..f...//..f.f |
2fe0 | 00 2e 2e ff 00 66 00 33 00 2d 2d ff 00 66 00 00 00 31 30 ff 00 33 00 ff 00 2f 2f ff 00 33 00 cc | .....f.3.--..f...10..3...//..3.. |
3000 | 00 2e 2e ff 00 33 00 99 00 2d 2d ff 00 33 00 66 00 31 30 ff 00 33 00 33 00 2f 2f ff 00 33 00 00 | .....3...--..3.f.10..3.3.//..3.. |
3020 | 00 2e 2e ff 00 00 00 ff 00 2d 2d ff 00 00 00 cc 00 31 30 ff 00 00 00 99 00 2f 2f ff 00 00 00 66 | .........--......10......//....f |
3040 | 00 2e 2e ff 00 00 00 33 00 2d f8 ff 00 00 00 00 00 2b 2a cc 00 ff 00 ff 00 29 29 cc 00 ff 00 cc | .......3.-.......+*......))..... |
3060 | 00 28 28 cc 00 ff 00 99 00 27 f8 cc 00 ff 00 66 00 2b 2a cc 00 ff 00 33 00 29 29 cc 00 ff 00 00 | .((......'.....f.+*....3.))..... |
3080 | 00 28 28 cc 00 cc 00 ff 00 27 27 cc 00 cc 00 cc 00 2b 2a cc 00 cc 00 99 00 29 29 cc 00 cc 00 66 | .((......''......+*......))....f |
30a0 | 00 28 28 cc 00 cc 00 33 00 27 27 cc 00 cc 00 00 00 2b 2a cc 00 99 00 ff 00 29 29 cc 00 99 00 cc | .((....3.''......+*......))..... |
30c0 | 00 28 28 cc 00 99 00 99 00 27 27 cc 00 99 00 66 00 db db cc 00 99 00 33 00 47 47 cc 00 99 00 00 | .((......''....f.......3.GG..... |
30e0 | 00 46 46 cc 00 66 00 ff 00 45 45 cc 00 66 00 cc 00 db db cc 00 66 00 99 00 47 47 cc 00 66 00 66 | .FF..f...EE..f.......f...GG..f.f |
3100 | 00 46 46 cc 00 66 00 33 00 45 45 cc 00 66 00 00 00 db db cc 00 33 00 ff 00 47 47 cc 00 33 00 cc | .FF..f.3.EE..f.......3...GG..3.. |
3120 | 00 46 46 cc 00 33 00 99 00 45 45 cc 00 33 00 66 00 db db cc 00 33 00 33 00 41 41 cc 00 33 00 00 | .FF..3...EE..3.f.....3.3.AA..3.. |
3140 | 00 40 40 cc 00 00 00 ff 00 3f 3f cc 00 00 00 cc 00 43 42 cc 00 00 00 99 00 41 41 cc 00 00 00 66 | .@@......??......CB......AA....f |
3160 | 00 40 40 cc 00 00 00 33 00 3f 3f cc 00 00 00 00 00 43 42 99 00 ff 00 ff 00 41 41 99 00 ff 00 cc | .@@....3.??......CB......AA..... |
3180 | 00 40 40 99 00 ff 00 99 00 3f 3f 99 00 ff 00 66 00 43 42 99 00 ff 00 33 00 41 41 99 00 ff 00 00 | .@@......??....f.CB....3.AA..... |
31a0 | 00 40 40 99 00 cc 00 ff 00 3f 3f 99 00 cc 00 cc 00 43 42 99 00 cc 00 99 00 41 41 99 00 cc 00 66 | .@@......??......CB......AA....f |
31c0 | 00 40 40 99 00 cc 00 33 00 3f 3f 99 00 cc 00 00 00 43 42 99 00 99 00 ff 00 41 41 99 00 99 00 cc | .@@....3.??......CB......AA..... |
31e0 | 00 40 40 99 00 99 00 99 00 3f 3f 99 00 99 00 66 00 3d 3c 99 00 99 00 33 00 3b 3b 99 00 99 00 00 | .@@......??....f.=<....3.;;..... |
3200 | 00 3a 3a 99 00 66 00 ff 00 39 39 99 00 66 00 cc 00 3d 3c 99 00 66 00 99 00 3b 3b 99 00 66 00 66 | .::..f...99..f...=<..f...;;..f.f |
3220 | 00 3a 3a 99 00 66 00 33 00 39 39 99 00 66 00 00 00 3d 3c 99 00 33 00 ff 00 3b 3b 99 00 33 00 cc | .::..f.3.99..f...=<..3...;;..3.. |
3240 | 00 3a 3a 99 00 33 00 99 00 39 39 99 00 33 00 66 00 3d 3c 99 00 33 00 33 00 3b 3b 99 00 33 00 00 | .::..3...99..3.f.=<..3.3.;;..3.. |
3260 | 00 3a 3a 99 00 00 00 ff 00 39 39 99 00 00 00 cc 00 3d 3c 99 00 00 00 99 00 3b 3b 99 00 00 00 66 | .::......99......=<......;;....f |
3280 | 00 3a 3a 99 00 00 00 33 00 39 39 99 00 00 00 00 00 3d 3c 66 00 ff 00 ff 00 3b 3b 66 00 ff 00 cc | .::....3.99......=<f.....;;f.... |
32a0 | 00 3a 3a 66 00 ff 00 99 00 39 39 66 00 ff 00 66 00 3d 3c 66 00 ff 00 33 00 3b 3b 66 00 ff 00 00 | .::f.....99f...f.=<f...3.;;f.... |
32c0 | 00 3a 3a 66 00 cc 00 ff 00 39 39 66 00 cc 00 cc 00 37 36 66 00 cc 00 99 00 35 35 66 00 cc 00 66 | .::f.....99f.....76f.....55f...f |
32e0 | 00 34 34 66 00 cc 00 33 00 33 33 66 00 cc 00 00 00 37 36 66 00 99 00 ff 00 35 35 66 00 99 00 cc | .44f...3.33f.....76f.....55f.... |
3300 | 00 34 34 66 00 99 00 99 00 33 33 66 00 99 00 66 00 37 36 66 00 99 00 33 00 35 35 66 00 99 00 00 | .44f.....33f...f.76f...3.55f.... |
3320 | 00 34 34 66 00 66 00 ff 00 33 33 66 00 66 00 cc 00 37 36 66 00 66 00 99 00 35 35 66 00 66 00 66 | .44f.f...33f.f...76f.f...55f.f.f |
3340 | 00 34 34 66 00 66 00 33 00 33 33 66 00 66 00 00 00 37 36 66 00 33 00 ff 00 35 35 66 00 33 00 cc | .44f.f.3.33f.f...76f.3...55f.3.. |
3360 | 00 34 34 66 00 33 00 99 00 33 33 66 00 33 00 66 00 37 36 66 00 33 00 33 00 35 35 66 00 33 00 00 | .44f.3...33f.3.f.76f.3.3.55f.3.. |
3380 | 00 34 34 66 00 00 00 ff 00 33 33 66 00 00 00 cc 00 31 30 66 00 00 00 99 00 2f 2f 66 00 00 00 66 | .44f.....33f.....10f.....//f...f |
33a0 | 00 2e 2e 66 00 00 00 33 00 f9 f9 66 00 00 00 00 00 31 30 33 00 ff 00 ff 00 2f 2f 33 00 ff 00 cc | ...f...3...f.....103.....//3.... |
33c0 | 00 2e 2e 33 00 ff 00 99 00 f9 f9 33 00 ff 00 66 00 31 30 33 00 ff 00 33 00 2f 2f 33 00 ff 00 00 | ...3.......3...f.103...3.//3.... |
33e0 | 00 2e 2e 33 00 cc 00 ff 00 2d 2d 33 00 cc 00 cc 00 31 30 33 00 cc 00 99 00 2f 2f 33 00 cc 00 66 | ...3.....--3.....103.....//3...f |
3400 | 00 2e 2e 33 00 cc 00 33 00 2d 2d 33 00 cc 00 00 00 31 30 33 00 99 00 ff 00 2f 2f 33 00 99 00 cc | ...3...3.--3.....103.....//3.... |
3420 | 00 2e 2e 33 00 99 00 99 00 2d 2d 33 00 99 00 66 00 31 30 33 00 99 00 33 00 2f 2f 33 00 99 00 00 | ...3.....--3...f.103...3.//3.... |
3440 | 00 2e 2e 33 00 66 00 ff 00 2d f8 33 00 66 00 cc 00 2b 2a 33 00 66 00 99 00 29 29 33 00 66 00 66 | ...3.f...-.3.f...+*3.f...))3.f.f |
3460 | 00 28 28 33 00 66 00 33 00 27 f8 33 00 66 00 00 00 2b 2a 33 00 33 00 ff 00 29 29 33 00 33 00 cc | .((3.f.3.'.3.f...+*3.3...))3.3.. |
3480 | 00 28 28 33 00 33 00 99 00 27 27 33 00 33 00 66 00 2b 2a 33 00 33 00 33 00 29 29 33 00 33 00 00 | .((3.3...''3.3.f.+*3.3.3.))3.3.. |
34a0 | 00 28 28 33 00 00 00 ff 00 27 27 33 00 00 00 cc 00 2b 2a 33 00 00 00 99 00 29 29 33 00 00 00 66 | .((3.....''3.....+*3.....))3...f |
34c0 | 00 28 28 33 00 00 00 33 00 27 27 33 00 00 00 00 00 49 48 00 00 ff 00 ff 00 47 47 00 00 ff 00 cc | .((3...3.''3.....IH......GG..... |
34e0 | 00 46 46 00 00 ff 00 99 00 45 45 00 00 ff 00 66 00 49 48 00 00 ff 00 33 00 47 47 00 00 ff 00 00 | .FF......EE....f.IH....3.GG..... |
3500 | 00 46 46 00 00 cc 00 ff 00 45 45 00 00 cc 00 cc 00 49 48 00 00 cc 00 99 00 47 47 00 00 cc 00 66 | .FF......EE......IH......GG....f |
3520 | 00 46 46 00 00 cc 00 33 00 45 45 00 00 cc 00 00 00 43 42 00 00 99 00 ff 00 41 41 00 00 99 00 cc | .FF....3.EE......CB......AA..... |
3540 | 00 40 40 00 00 99 00 99 00 3f 3f 00 00 99 00 66 00 43 42 00 00 99 00 33 00 41 41 00 00 99 00 00 | .@@......??....f.CB....3.AA..... |
3560 | 00 40 40 00 00 66 00 ff 00 3f 3f 00 00 66 00 cc 00 43 42 00 00 66 00 99 00 41 41 00 00 66 00 66 | .@@..f...??..f...CB..f...AA..f.f |
3580 | 00 40 40 00 00 66 00 33 00 3f 3f 00 00 66 00 00 00 43 42 00 00 33 00 ff 00 41 41 00 00 33 00 cc | .@@..f.3.??..f...CB..3...AA..3.. |
35a0 | 00 40 40 00 00 33 00 99 00 3f 3f 00 00 33 00 66 00 43 42 00 00 33 00 33 00 41 41 00 00 33 00 00 | .@@..3...??..3.f.CB..3.3.AA..3.. |
35c0 | 00 40 40 00 00 00 00 ff 00 3f 3f 00 00 00 00 cc 00 43 42 00 00 00 00 99 00 41 41 00 00 00 00 66 | .@@......??......CB......AA....f |
35e0 | 00 40 40 00 00 00 00 33 00 3f 3f ee 00 00 00 00 00 3d 3c dd 00 00 00 00 00 3b 3b bb 00 00 00 00 | .@@....3.??......=<......;;..... |
3600 | 00 3a 3a aa 00 00 00 00 00 39 39 88 00 00 00 00 00 3d 3c 77 00 00 00 00 00 3b 3b 55 00 00 00 00 | .::......99......=<w.....;;U.... |
3620 | 00 3a 3a 44 00 00 00 00 00 39 39 22 00 00 00 00 00 3d 3c 11 00 00 00 00 00 3b 3b 00 00 ee 00 00 | .::D.....99".....=<......;;..... |
3640 | 00 3a 3a 00 00 dd 00 00 00 39 39 00 00 bb 00 00 00 3d 3c 00 00 aa 00 00 00 3b 3b 00 00 88 00 00 | .::......99......=<......;;..... |
3660 | 00 3a 3a 00 00 77 00 00 00 39 39 00 00 55 00 00 00 3d 3c 00 00 44 00 00 00 3b 3b 00 00 22 00 00 | .::..w...99..U...=<..D...;;..".. |
3680 | 00 3a 3a 00 00 11 00 00 00 39 39 00 00 00 00 ee 00 3d 3c 00 00 00 00 dd 00 3b 3b 00 00 00 00 bb | .::......99......=<......;;..... |
36a0 | 00 3a 3a 00 00 00 00 aa 00 39 39 00 00 00 00 88 00 3d 3c 00 00 00 00 77 00 3b 3b 00 00 00 00 55 | .::......99......=<....w.;;....U |
36c0 | 00 3a 3a 00 00 00 00 44 00 39 39 00 00 00 00 22 00 37 36 00 00 00 00 11 00 35 35 ee 00 ee 00 ee | .::....D.99....".76......55..... |
36e0 | 00 34 34 dd 00 dd 00 dd 00 33 33 bb 00 bb 00 bb 00 37 36 aa 00 aa 00 aa 00 35 35 88 00 88 00 88 | .44......33......76......55..... |
3700 | 00 34 34 77 00 77 00 77 00 33 33 55 00 55 00 55 00 37 36 44 00 44 00 44 00 35 35 22 00 22 00 22 | .44w.w.w.33U.U.U.76D.D.D.55"."." |
3720 | 00 34 34 11 00 11 00 11 00 33 33 00 00 00 00 00 00 00 00 00 00 00 64 00 44 00 00 00 00 00 64 00 | .44......33...........d.D.....d. |
3740 | 44 00 00 00 0a 00 00 00 00 00 64 00 44 02 bd 00 13 e8 00 01 f5 f6 fe 07 fe 0e 02 32 32 33 fd 39 | D.........d.D..............223.9 |
3760 | 00 0e e6 00 1d fc 00 01 f5 f5 fe 07 00 08 fe 0e 02 32 32 33 fe 39 00 3a fc 40 f2 41 02 40 33 07 | .................223.9.:.@.A.@3. |
3780 | e9 00 17 01 00 0e fc 40 dc 41 02 39 0e f5 f5 00 02 f5 f5 f6 fe 07 02 0e 07 00 16 01 00 32 d5 41 | .......@.A.9.................2.A |
37a0 | 04 40 39 0e 32 33 fd 39 00 3a fc 40 fc 41 01 32 00 08 01 00 0e c1 41 01 0e 00 08 01 00 0e c1 41 | .@9.23.9.:.@.A.2......A........A |
37c0 | 01 08 00 08 01 00 0e c1 41 01 07 00 08 01 00 0e c1 41 01 07 00 09 01 00 07 c2 41 02 40 f5 00 0e | ........A........A........A.@... |
37e0 | 01 00 07 e8 41 01 47 47 dd 41 02 40 00 00 12 01 00 07 f0 41 00 47 fa 41 01 3b 3b dd 41 02 40 00 | ....A.GG.A.@.......A.G.A.;;.A.@. |
3800 | 00 19 01 00 07 f1 41 0c 47 3b 0b 3b 47 41 41 47 11 05 05 3b 47 df 41 02 3a 00 00 17 01 00 f6 f0 | ......A.G;.;GAAG...;G.A.:....... |
3820 | 41 01 0b 0b fe 41 05 47 3b 05 05 11 3b de 41 02 39 00 00 1a 02 00 f5 40 f3 41 0c 47 3b 05 3b 47 | A....A.G;...;.A.9......@.A.G;.;G |
3840 | 41 47 41 0b 0b 3b 47 47 de 41 02 39 00 00 18 02 00 f5 40 f3 41 02 47 11 0b fe 41 04 47 11 05 41 | AGA..;GG.A.9......@.A.G...A.G..A |
3860 | 47 dc 41 02 33 00 00 1b 02 00 00 40 f3 41 03 47 11 11 47 fe 41 02 05 35 47 f7 41 fd 47 e9 41 02 | G.A.3......@.A.G..G.A..5G.A.G.A. |
3880 | 32 00 00 1e 02 00 00 40 f2 41 06 11 3b 47 41 47 35 0b f7 41 06 47 41 39 0e 0e 40 47 ea 41 02 0e | 2......@.A..;GAG5..A.GA9..@G.A.. |
38a0 | 00 00 21 02 00 00 40 f2 41 07 11 3b 47 41 41 0b 35 47 f9 41 02 47 40 07 fe 00 02 f6 40 47 eb 41 | ..!...@.A..;GAA.5G.A.G@.....@G.A |
38c0 | 02 0e 00 00 23 02 00 00 40 f3 41 08 47 35 41 41 47 3b 05 41 47 fa 41 09 47 3a f6 00 f5 4f 55 f5 | ....#...@.A.G5AAG;.AG.A.G:...OU. |
38e0 | 0e 47 eb 41 02 07 00 00 22 02 00 00 3a f3 41 01 47 3b fe 41 01 0b 0b f9 41 05 47 3a f5 00 55 c8 | .G.A...."...:.A.G;.A....A.G:..U. |
3900 | fe ce 01 56 40 eb 41 02 07 00 00 1f 02 00 00 39 f0 41 04 47 41 05 3b 47 fb 41 04 47 40 f5 f5 a4 | ...V@.A........9.A.GA.;G.A.G@... |
3920 | fc ce 01 c8 5d eb 41 02 f6 00 00 1f 02 00 00 39 f0 41 04 47 3b 05 41 47 fc 41 04 47 40 07 f6 c8 | ....].A........9.A.G;.AG.A.G@... |
3940 | fa ce 00 64 ec 41 03 40 f5 00 00 1c 02 00 00 39 f0 41 02 47 11 0b fa 41 03 47 08 2a c8 fa ce 01 | ...d.A.@.......9.A.G...A.G.*.... |
3960 | 64 d8 ec 41 00 40 fe 00 25 02 00 00 39 ef 41 02 0b 3b 47 fc 41 03 47 0f f5 a4 fb ce 02 c8 87 d8 | d..A.@..%...9.A..;G.A.G......... |
3980 | fc 41 fe 47 fc 41 00 47 f9 41 00 3a fe 00 28 02 00 00 39 ef 41 02 0b 3b 47 fd 41 03 47 39 00 a4 | .A.G.A.G.A.:..(...9.A..;G.A.G9.. |
39a0 | fa ce 00 ab fa 41 09 3b 11 3b 41 41 47 3b 0b 3b 47 fa 41 00 39 fe 00 24 02 00 00 33 f1 41 02 47 | .....A.;.;AAG;.;G.A.9..$...3.A.G |
39c0 | 41 0b fa 41 01 07 79 f9 ce 00 64 fa 41 02 35 05 0b fd 41 01 0b 0b f9 41 00 39 fe 00 28 02 00 00 | A..A..y...d.A.5...A....A.9..(... |
39e0 | 32 f1 41 02 47 3b 0b fc 41 02 47 39 f6 f9 ce 01 87 d8 fb 41 03 47 41 05 0b fe 41 02 47 11 0b f9 | 2.A.G;..A.G9.......A.GA...A.G... |
3a00 | 41 00 39 fe 00 2c 02 00 00 32 f1 41 02 47 3b 11 fb 41 01 08 79 fa ce 05 aa 40 41 41 47 47 fe 41 | A.9..,...2.A.G;..A..y....@AAGG.A |
3a20 | 0a 47 41 05 11 47 41 41 47 35 11 47 fa 41 00 32 fe 00 2f 02 00 00 0e f1 41 03 47 3b 11 47 fe 41 | .GA..GAAG5.G.A.2../.....A.G;.G.A |
3a40 | 03 47 40 f6 c8 fa ce 05 64 d8 41 40 39 39 fe 41 04 47 3b 05 3b 47 fe 41 02 35 41 47 fa 41 00 0e | .G@.....d.A@99.A.G;.;G.A.5AG.A.. |
3a60 | fe 00 27 02 00 00 0e f1 41 03 47 3b 3b 47 fe 41 02 47 0f 79 fa ce 0c 87 41 40 32 f5 00 00 3a 47 | ..'.....A.G;;G.A.G.y....A@2...:G |
3a80 | 41 47 3b 05 f2 41 00 0e fe 00 27 02 00 00 0e f1 41 03 47 3b 3b 47 fd 41 01 0e a4 fa ce 01 ab aa | AG;..A....'.....A.G;;G.A........ |
3aa0 | fe c8 08 79 00 39 47 41 47 11 0b 47 f3 41 00 07 fe 00 1c 02 00 00 0e ea 41 02 40 2b c8 f5 ce 08 | ...y.9GAG..G.A..........A.@+.... |
3ac0 | 81 00 33 47 41 41 0b 3b 47 f3 41 00 07 fe 00 1a 02 00 00 08 eb 41 02 47 3a 55 f4 ce 06 5d 00 39 | ..3GAA.;G.A..........A.G:U...].9 |
3ae0 | 47 47 41 0b f1 41 00 f6 fe 00 1c 02 00 00 07 eb 41 02 47 39 79 f4 ce 07 39 00 39 47 47 35 11 47 | GGA..A..........A.G9y...9.9GG5.G |
3b00 | f3 41 01 40 f5 fe 00 1c 02 00 00 07 eb 41 02 47 39 a4 f5 ce 08 ab 0e 00 40 47 41 11 41 47 f3 41 | .A.@.........A.G9.......@GA.AG.A |
3b20 | 00 40 fd 00 1b 02 00 00 07 eb 41 02 47 39 a4 f5 ce 07 87 07 07 41 47 41 11 47 f2 41 00 40 fd 00 | .@........A.G9.......AGA.G.A.@.. |
3b40 | 1b 02 00 00 07 eb 41 02 47 39 c8 f5 ce 07 63 f5 32 47 47 3b 3b 47 f2 41 00 3a fd 00 1a 03 00 00 | ......A.G9....c.2GG;;G.A.:...... |
3b60 | f6 40 ec 41 02 47 39 c8 f5 ce 05 39 f5 40 47 41 3b f0 41 00 39 fd 00 1c 03 00 00 f5 40 eb 41 01 | .@.A.G9....9.@GA;.A.9.......@.A. |
3b80 | 40 c8 fd ce 01 c8 a4 fc ce 03 ab 08 0e 47 ed 41 00 39 fd 00 1a fe 00 00 40 eb 41 00 40 fc ce 01 | @............G.A.9......@.A.@... |
3ba0 | a4 c8 fc ce 03 fa 07 40 47 ed 41 00 32 fd 00 1a fe 00 00 40 ea 41 00 aa fe ce 02 87 f9 c8 fc ce | .......@G.A.2......@.A.......... |
3bc0 | 02 56 0f 47 ec 41 00 32 fd 00 19 fe 00 00 40 ea 41 00 ab fe ce 02 64 56 c8 fd ce 01 c8 32 ea 41 | .V.G.A.2......@.A.....dV.....2.A |
3be0 | 00 0e fd 00 1b fe 00 00 40 ed 41 03 0e 40 47 87 fe ce 01 40 55 fc ce 01 fa 40 ea 41 00 08 fd 00 | ........@.A..@G....@U....@.A.... |
3c00 | 1a fe 00 00 3a ed 41 08 07 07 40 fb ce ce ab 39 79 fd ce 00 ab e8 41 00 07 fd 00 1c fe 00 00 3a | ....:.A...@....9y.....A........: |
3c20 | ed 41 08 07 00 f6 a4 ce ce 87 33 79 fd ce 02 41 47 47 ea 41 00 07 fd 00 1e fe 00 00 39 ed 41 08 | .A........3y...AGG.A........9.A. |
3c40 | 07 2a a4 c8 ce ce 88 0e 9d fe ce 03 64 1c 39 39 eb 41 01 40 f5 fd 00 1c fe 00 00 39 ed 41 01 07 | .*..........d.99.A.@.......9.A.. |
3c60 | 4f fd ce 02 64 f7 a4 fe ce 03 ab 80 f6 07 eb 41 00 40 fc 00 1c fe 00 00 39 ed 41 01 08 79 fe ce | O...d..........A.@......9.A..y.. |
3c80 | 03 ab 40 2b a4 fc ce 02 f7 0e 47 ec 41 00 40 fc 00 1c fe 00 00 39 ed 41 01 08 79 fe ce 03 ab 40 | ..@+......G.A.@......9.A..y....@ |
3ca0 | f6 c8 fc ce 02 f6 15 47 ec 41 00 40 fc 00 1e fe 00 00 3a ee 41 02 47 0e 79 fe ce 03 ab 40 f5 c8 | .......G.A.@......:.A.G.y....@.. |
3cc0 | fd ce 03 a4 f5 3a 47 ec 41 00 40 fc 00 1e fe 00 00 3a ee 41 02 47 0e 56 fe ce 03 fb 3a f6 c8 fd | .....:G.A.@......:.A.G.V....:... |
3ce0 | ce 02 80 f5 40 eb 41 01 40 f5 fd 00 1e fe 00 00 40 ee 41 09 47 0f 56 ce ce c8 88 39 f6 c8 fd ce | ....@.A.@.......@.A.G.V....9.... |
3d00 | 02 56 01 40 eb 41 01 40 f5 fd 00 1c fe 00 00 40 ee 41 09 47 39 32 ce ce c8 88 39 2a c8 fd ce 01 | .V.@.A.@.......@.A.G92....9*.... |
3d20 | 56 07 e9 41 00 f6 fd 00 1b fe 00 00 40 ee 41 08 47 3a 32 ce ce c8 64 15 2a fc ce 01 32 07 e9 41 | V..A........@.A.G:2...d.*...2..A |
3d40 | 00 07 fd 00 1a fe 00 00 40 ed 41 07 40 32 ab ce c8 64 39 4e fc ce 01 3a 07 e9 41 00 07 fd 00 1d | ........@.A.@2...d9N...:..A..... |
3d60 | 03 00 00 f5 40 ed 41 07 40 0e ab ce ce 64 0f 4e fd ce 03 ab 40 08 40 ea 41 00 07 fd 00 1b 03 00 | ....@.A.@....d.N....@.@.A....... |
3d80 | 00 f5 40 ec 41 06 0f 81 ce ce 64 33 4e fd ce 02 ab 40 0e e9 41 00 0e fd 00 1c 02 00 00 f6 ec 41 | ..@.A.....d3N....@..A..........A |
3da0 | 07 47 15 fa ce ce 64 33 4e fd ce 03 87 0f 0e 47 ea 41 00 0e fd 00 1c 02 00 00 07 ec 41 07 47 16 | .G....d3N......G.A..........A.G. |
3dc0 | f9 ce c8 64 33 4e fd ce 03 63 08 40 47 ea 41 00 0e fd 00 1a 02 00 00 07 eb 41 06 40 f9 ce c8 64 | ...d3N...c.@G.A..........A.@...d |
3de0 | 39 4e fd ce 02 39 40 47 e9 41 00 32 fd 00 1b 02 00 00 07 ea 41 05 39 ce ce 88 39 f6 fe ce 04 ab | 9N...9@G.A.2........A.9...9..... |
3e00 | 41 41 39 40 ea 41 00 32 fd 00 1c 02 00 00 07 eb 41 0e 47 3a c8 ce 88 39 f6 c8 ce ce 64 15 f6 f5 | AA9@.A.2........A.G:...9....d... |
3e20 | 40 ea 41 00 33 fd 00 1a 02 00 00 07 ea 41 0c 40 a4 ce 87 39 2a c8 ce ab 41 40 f8 f6 e9 41 00 39 | @.A.3........A.@...9*...A@...A.9 |
3e40 | fd 00 1b 02 00 00 0e eb 41 0d 47 41 ab c8 87 39 f5 c8 ce ab ab ce a4 07 e9 41 00 39 fd 00 1c 02 | ........A.GA...9.........A.9.... |
3e60 | 00 00 0e ed 41 09 47 39 39 47 87 c8 ab 40 f5 c8 fd ce 01 a4 0e e9 41 00 39 fd 00 1d 02 00 00 0e | ....A.G99G...@........A.9....... |
3e80 | ed 41 09 47 3a 00 07 80 ce ab 40 f5 c8 fd ce 02 55 0e 47 ea 41 00 39 fd 00 1b 02 00 00 0e eb 41 | .A.G:.....@.....U.G.A.9........A |
3ea0 | 07 07 79 c8 ce ce 40 f6 a4 fd ce 02 2b 39 47 ea 41 00 3a fd 00 1c 02 00 00 0e ec 41 02 47 39 79 | ..y...@.....+9G.A.:........A.G9y |
3ec0 | fe ce 02 64 07 a4 fe ce 02 a4 07 40 e9 41 00 40 fd 00 1a 02 00 00 32 ea 41 06 32 a4 ce ce 88 08 | ...d.......@.A.@......2.A.2..... |
3ee0 | 79 fe ce 02 f9 0f 47 e9 41 00 40 fd 00 1a 02 00 00 32 eb 41 07 47 40 f7 c8 ce 87 0e 79 fe ce 01 | y.....G.A.@......2.A.G@.....y... |
3f00 | 32 40 e8 41 00 40 fd 00 19 02 00 00 33 ea 41 0b 47 40 f8 c8 ab 0e 55 ce ce 80 15 47 e8 41 00 40 | 2@.A.@......3.A.G@....U....G.A.@ |
3f20 | fd 00 17 02 00 00 33 e9 41 08 47 40 f9 a4 39 4f ce ce 5d e6 41 01 40 f5 fe 00 14 02 00 00 39 e8 | ......3.A.G@..9O..].A.@.......9. |
3f40 | 41 06 47 64 fb 39 2b c8 ab e4 41 00 f6 fe 00 11 02 00 00 39 e5 41 03 40 f6 87 64 e4 41 00 07 fe | A.Gd.9+...A........9.A.@..d.A... |
3f60 | 00 1e 02 00 00 39 eb 41 02 3a 0e 0e fd 41 02 07 40 47 f6 41 04 40 0f 08 39 47 f4 41 00 07 fe 00 | .....9.A.:...A..@G.A.@..9G.A.... |
3f80 | 27 02 00 00 39 fb 41 01 47 47 f2 41 02 08 00 40 fe 41 02 08 39 47 fc 41 01 47 47 fc 41 03 39 00 | '...9.A.GG.A...@.A..9G.A.GG.A.9. |
3fa0 | 39 47 f4 41 00 07 fe 00 29 02 00 00 39 fb 41 01 40 39 f3 41 09 47 0e f5 40 41 41 47 0e 33 47 fc | 9G.A....)...9.A.@9.A.G..@AAG.3G. |
3fc0 | 41 01 39 3a fd 41 04 47 39 00 39 47 f4 41 00 08 fe 00 36 02 00 00 3a fc 41 03 47 0e 00 40 fc 41 | A.9:.A.G9.9G.A....6...:.A.G..@.A |
3fe0 | 02 47 41 40 fc 41 09 47 0e f5 40 41 41 47 33 0e 47 fe 41 04 47 40 00 0e 47 fe 41 04 47 39 00 39 | .GA@.A.G..@AAG3.G.A.G@..G.A.G9.9 |
4000 | 41 fe 40 f7 41 00 0e fe 00 3a 02 00 00 3a fd 41 0e 47 40 07 00 0e 40 47 41 41 47 39 0e 39 0e 40 | A.@.A....:...:.A.G@...@GAAG9.9.@ |
4020 | fe 41 08 47 0e f5 40 41 41 47 39 0e fc 41 03 0f 00 07 39 fe 41 07 47 39 00 39 40 08 0f 39 f7 41 | .A.G..@AAG9..A....9.A.G9.9@..9.A |
4040 | 00 0e fe 00 35 02 00 00 40 fb 41 02 0e 00 40 fe 41 0d 47 40 00 39 41 00 32 47 41 41 47 0e f5 40 | ....5...@.A...@.A.G@.9A.2GAAG..@ |
4060 | fe 41 01 40 08 fc 41 02 3a 00 0e fd 41 05 47 39 00 39 39 33 f5 41 00 0e fe 00 39 02 00 00 40 fc | .A.@..A.:...A.G9.993.A....9...@. |
4080 | 41 03 47 0e 00 40 fe 41 06 47 32 00 40 41 39 40 fe 41 03 47 0e f5 40 fd 41 01 08 40 fe 41 04 47 | A.G..@.A.G2.@A9@.A.G..@.A..@.A.G |
40a0 | 40 00 0e 47 fe 41 06 47 39 00 07 f5 40 47 f6 41 00 32 fe 00 3a 02 00 00 40 fc 41 0c 47 0e 00 40 | @..G.A.G9...@G.A.2..:...@.A.G..@ |
40c0 | 47 41 41 47 0e 00 40 47 47 fd 41 03 47 0e f5 40 fe 41 0a 47 0e 39 47 41 41 47 40 00 0e 47 fe 41 | GAAG..@GG.A.G..@.A.G.9GAAG@..G.A |
40e0 | 07 47 39 00 0e 00 07 41 47 f7 41 00 32 fe 00 38 02 00 00 40 fc 41 02 47 0e 00 fd 41 06 47 39 00 | .G9....AG.A.2..8...@.A.G...A.G9. |
4100 | 3a 47 40 39 fe 41 02 47 0e f5 fd 41 0a 47 33 33 47 41 41 47 40 00 0e 47 fe 41 06 47 39 00 39 39 | :G@9.A.G...A.G33GAAG@..G.A.G9.99 |
4120 | 00 0e f6 41 00 33 fe 00 3a 02 00 f5 40 fc 41 04 47 32 00 0e 39 fd 41 0b 0e 0e 40 33 3a 47 41 41 | ...A.3..:...@.A.G2..9.A...@3:GAA |
4140 | 3a 07 f5 39 fe 41 02 47 3a 0e fd 41 0f 40 f5 07 33 40 41 41 40 0e 00 0e 40 07 00 0e 40 f8 41 00 | :..9.A.G:..A.@..3@AA@...@...@.A. |
4160 | 39 fe 00 29 02 00 f5 40 fa 41 01 39 39 fb 41 02 3a 3a 40 fd 41 fd 40 fd 41 02 40 0e 40 fd 41 02 | 9..)...@.A.99.A.::@.A.@.A.@.@.A. |
4180 | 40 39 40 fd 41 fa 40 f7 41 00 39 fe 00 2a 01 00 f6 f9 41 01 47 47 fb 41 01 47 47 fb 41 01 47 47 | @9@.A.@.A.9..*....A.GG.A.GG.A.GG |
41a0 | fb 41 01 39 40 fd 41 01 47 47 fb 41 00 47 fe 41 00 47 f6 41 00 39 fe 00 0d 01 00 07 e1 41 00 40 | .A.9@.A.GG.A.G.A.G.A.9.......A.@ |
41c0 | e4 41 00 3a fe 00 09 01 00 07 c3 41 00 3a fe 00 09 01 00 07 c3 41 00 40 fe 00 09 01 00 07 c3 41 | .A.:.......A.:.......A.@.......A |
41e0 | 00 40 fe 00 09 01 00 07 c3 41 00 40 fe 00 0a 01 00 0e c3 41 03 40 f5 00 00 09 01 00 0e c2 41 02 | .@.......A.@.......A.@........A. |
4200 | f6 00 00 09 01 00 0e c2 41 02 07 00 00 09 01 00 0e c2 41 02 07 00 00 11 01 00 0e ed 41 fe 40 00 | ........A.........A.........A.@. |
4220 | 3a f9 40 e2 41 02 07 00 00 2b 01 00 32 f9 41 fe 40 fe 39 06 32 0e 0e 07 07 f6 f5 f8 00 02 f5 f5 | :.@.A....+..2.A.@.9.2........... |
4240 | f6 fb 07 fb 0e 03 32 32 33 33 fb 39 01 3a 3a fb 40 02 07 00 00 0e 0a 00 0e 39 39 32 0e 0e 07 07 | ......2233.9.::.@........992.... |
4260 | f6 f5 c8 00 02 bd 00 00 ff 00 00 00 e0 00 00 00 00 80 00 c0 00 e0 00 f0 00 f8 00 fc 00 f8 00 f0 | ................................ |
4280 | 00 e0 00 c0 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 08 00 14 00 22 00 41 00 80 80 e3 80 22 | .......................".A....." |
42a0 | 00 22 00 22 00 3e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f8 f0 c4 f0 f2 70 09 00 04 | .".".>......................p... |
42c0 | 80 02 70 01 30 00 f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e4 | ..p.0........................... |
42e0 | e0 ce 60 1b 00 31 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 63 00 94 80 94 80 7f 00 14 00 7f | ..`..1...............c.......... |
4300 | 00 94 80 94 80 63 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3f f8 1f f0 0f e0 07 c0 03 | .....c.................?........ |
4320 | 80 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 03 80 07 c0 0f e0 1f | ................................ |
4340 | f0 3f f8 00 00 00 00 00 00 00 00 00 00 00 00 00 0a 58 c0 00 80 00 00 00 20 00 00 00 00 00 63 00 | .?...............X............c. |
4360 | 02 27 53 43 48 45 44 55 4c 45 5f 4e 41 4d 45 3d 41 67 65 6e 74 20 43 6f 6e 74 72 6f 6c 6c 65 72 | .'SCHEDULE_NAME=Agent.Controller |
4380 | 20 53 63 68 65 64 75 6c 65 38 53 43 48 45 44 55 4c 45 5f 50 41 54 48 3d 4c 6f 7a 6f 79 61 3a 53 | .Schedule8SCHEDULE_PATH=Lozoya:S |
43a0 | 79 73 74 65 6d 20 46 6f 6c 64 65 72 3a 54 63 6c 20 4c 69 62 3a 54 63 6c 2d 53 63 68 65 64 75 6c | ystem.Folder:Tcl.Lib:Tcl-Schedul |
43c0 | 65 72 00 00 28 52 23 20 74 6b 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 49 6e 69 74 69 61 6c 69 7a 61 | er..(R#.tk.tcl.--.#.#.Initializa |
43e0 | 74 69 6f 6e 20 73 63 72 69 70 74 20 6e 6f 72 6d 61 6c 6c 79 20 65 78 65 63 75 74 65 64 20 69 6e | tion.script.normally.executed.in |
4400 | 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 66 6f 72 20 65 61 63 68 0a 23 20 54 6b 2d 62 | .the.interpreter.for.each.#.Tk-b |
4420 | 61 73 65 64 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 20 20 41 72 72 61 6e 67 65 73 20 63 6c 61 73 | ased.application...Arranges.clas |
4440 | 73 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 77 69 64 67 65 74 73 2e 0a 23 0a 23 20 52 43 53 3a | s.bindings.for.widgets..#.#.RCS: |
4460 | 20 40 28 23 29 20 24 49 64 3a 20 74 6b 2e 74 63 6c 2c 76 20 31 2e 31 39 20 32 30 30 30 2f 30 32 | .@(#).$Id:.tk.tcl,v.1.19.2000/02 |
4480 | 2f 30 38 20 31 30 3a 30 30 3a 35 35 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 | /08.10:00:55.hobbs.Exp.$.#.#.Cop |
44a0 | 79 72 69 67 68 74 20 28 63 29 20 31 39 39 32 2d 31 39 39 34 20 54 68 65 20 52 65 67 65 6e 74 73 | yright.(c).1992-1994.The.Regents |
44c0 | 20 6f 66 20 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 | .of.the.University.of.California |
44e0 | 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 36 20 53 75 6e 20 | ..#.Copyright.(c).1994-1996.Sun. |
4500 | 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 | Microsystems,.Inc..#.Copyright.( |
4520 | 63 29 20 31 39 39 38 2d 32 30 30 30 20 53 63 72 69 70 74 69 63 73 20 43 6f 72 70 6f 72 61 74 69 | c).1998-2000.Scriptics.Corporati |
4540 | 6f 6e 2e 0a 23 0a 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 | on..#.#.See.the.file."license.te |
4560 | 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e | rms".for.information.on.usage.an |
4580 | 64 20 72 65 64 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c | d.redistribution.#.of.this.file, |
45a0 | 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 | .and.for.a.DISCLAIMER.OF.ALL.WAR |
45c0 | 52 41 4e 54 49 45 53 2e 0a 0a 23 20 49 6e 73 69 73 74 20 6f 6e 20 72 75 6e 6e 69 6e 67 20 77 69 | RANTIES...#.Insist.on.running.wi |
45e0 | 74 68 20 63 6f 6d 70 61 74 69 62 6c 65 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 54 63 6c 20 61 6e | th.compatible.versions.of.Tcl.an |
4600 | 64 20 54 6b 2e 0a 0a 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 20 2d 65 78 61 63 74 20 54 6b | d.Tk...package.require.-exact.Tk |
4620 | 20 38 2e 33 0a 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 20 2d 65 78 61 63 74 20 54 63 6c 20 | .8.3.package.require.-exact.Tcl. |
4640 | 38 2e 33 0a 0a 23 20 41 64 64 20 54 6b 27 73 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20 74 68 65 | 8.3..#.Add.Tk's.directory.to.the |
4660 | 20 65 6e 64 20 6f 66 20 74 68 65 20 61 75 74 6f 2d 6c 6f 61 64 20 73 65 61 72 63 68 20 70 61 74 | .end.of.the.auto-load.search.pat |
4680 | 68 2c 20 69 66 20 69 74 0a 23 20 69 73 6e 27 74 20 61 6c 72 65 61 64 79 20 6f 6e 20 74 68 65 20 | h,.if.it.#.isn't.already.on.the. |
46a0 | 70 61 74 68 3a 0a 0a 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 61 75 74 6f 5f 70 61 74 | path:..if.{[info.exists.auto_pat |
46c0 | 68 5d 20 26 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 7b 7d 20 24 74 6b 5f 6c 69 62 | h].&&.[string.compare.{}.$tk_lib |
46e0 | 72 61 72 79 5d 20 26 26 20 5c 0a 09 5b 6c 73 65 61 72 63 68 20 2d 65 78 61 63 74 20 24 61 75 74 | rary].&&.\..[lsearch.-exact.$aut |
4700 | 6f 5f 70 61 74 68 20 24 74 6b 5f 6c 69 62 72 61 72 79 5d 20 3c 20 30 7d 20 7b 0a 20 20 20 20 6c | o_path.$tk_library].<.0}.{.....l |
4720 | 61 70 70 65 6e 64 20 61 75 74 6f 5f 70 61 74 68 20 24 74 6b 5f 6c 69 62 72 61 72 79 0a 7d 0a 0a | append.auto_path.$tk_library.}.. |
4740 | 23 20 54 75 72 6e 20 6f 66 66 20 73 74 72 69 63 74 20 4d 6f 74 69 66 20 6c 6f 6f 6b 20 61 6e 64 | #.Turn.off.strict.Motif.look.and |
4760 | 20 66 65 65 6c 20 61 73 20 61 20 64 65 66 61 75 6c 74 2e 0a 0a 73 65 74 20 74 6b 5f 73 74 72 69 | .feel.as.a.default...set.tk_stri |
4780 | 63 74 4d 6f 74 69 66 20 30 0a 0a 23 20 43 72 65 61 74 65 20 61 20 3a 3a 74 6b 20 6e 61 6d 65 73 | ctMotif.0..#.Create.a.::tk.names |
47a0 | 70 61 63 65 0a 0a 6e 61 6d 65 73 70 61 63 65 20 65 76 61 6c 20 3a 3a 74 6b 20 7b 0a 7d 0a 0a 23 | pace..namespace.eval.::tk.{.}..# |
47c0 | 20 3a 3a 74 6b 3a 3a 50 6c 61 63 65 57 69 6e 64 6f 77 20 2d 2d 0a 23 20 20 20 70 6c 61 63 65 20 | .::tk::PlaceWindow.--.#...place. |
47e0 | 61 20 74 6f 70 6c 65 76 65 6c 20 61 74 20 61 20 70 61 72 74 69 63 75 6c 61 72 20 70 6f 73 69 74 | a.toplevel.at.a.particular.posit |
4800 | 69 6f 6e 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 20 20 74 6f 70 6c 65 76 65 6c 09 6e 61 | ion.#.Arguments:.#...toplevel.na |
4820 | 6d 65 20 6f 66 20 74 6f 70 6c 65 76 65 6c 20 77 69 6e 64 6f 77 0a 23 20 20 20 3f 70 6c 61 63 65 | me.of.toplevel.window.#...?place |
4840 | 6d 65 6e 74 3f 09 70 6f 69 6e 74 65 72 20 3f 63 65 6e 74 65 72 3f 20 3b 20 70 6c 61 63 65 73 20 | ment?.pointer.?center?.;.places. |
4860 | 24 77 20 63 65 6e 74 65 72 65 64 20 6f 6e 20 74 68 65 20 70 6f 69 6e 74 65 72 0a 23 09 09 77 69 | $w.centered.on.the.pointer.#..wi |
4880 | 64 67 65 74 20 77 69 64 67 65 74 50 61 74 68 20 3b 20 63 65 6e 74 65 72 73 20 24 77 20 6f 76 65 | dget.widgetPath.;.centers.$w.ove |
48a0 | 72 20 77 69 64 67 65 74 5f 6e 61 6d 65 0a 23 09 09 64 65 66 61 75 6c 74 73 20 74 6f 20 70 6c 61 | r.widget_name.#..defaults.to.pla |
48c0 | 63 69 6e 67 20 74 6f 70 6c 65 76 65 6c 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 74 | cing.toplevel.in.the.middle.of.t |
48e0 | 68 65 20 73 63 72 65 65 6e 0a 23 20 20 20 3f 61 6e 63 68 6f 72 3f 09 63 65 6e 74 65 72 20 6f 72 | he.screen.#...?anchor?.center.or |
4900 | 20 77 69 64 67 65 74 50 61 74 68 0a 23 20 52 65 73 75 6c 74 73 3a 0a 23 20 20 20 52 65 74 75 72 | .widgetPath.#.Results:.#...Retur |
4920 | 6e 73 20 6e 6f 74 68 69 6e 67 0a 23 0a 70 72 6f 63 20 3a 3a 74 6b 3a 3a 50 6c 61 63 65 57 69 6e | ns.nothing.#.proc.::tk::PlaceWin |
4940 | 64 6f 77 20 7b 77 20 7b 70 6c 61 63 65 20 22 22 7d 20 7b 61 6e 63 68 6f 72 20 22 22 7d 7d 20 7b | dow.{w.{place.""}.{anchor.""}}.{ |
4960 | 0a 20 20 20 20 77 6d 20 77 69 74 68 64 72 61 77 20 24 77 0a 20 20 20 20 75 70 64 61 74 65 20 69 | .....wm.withdraw.$w.....update.i |
4980 | 64 6c 65 74 61 73 6b 73 0a 20 20 20 20 73 65 74 20 63 68 65 63 6b 42 6f 75 6e 64 73 20 31 0a 20 | dletasks.....set.checkBounds.1.. |
49a0 | 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 2d 6c 65 6e 20 5b 73 74 72 69 6e | ...if.{[string.equal.-len.[strin |
49c0 | 67 20 6c 65 6e 67 74 68 20 24 70 6c 61 63 65 5d 20 24 70 6c 61 63 65 20 22 70 6f 69 6e 74 65 72 | g.length.$place].$place."pointer |
49e0 | 22 5d 7d 20 7b 0a 09 23 23 20 70 6c 61 63 65 20 61 74 20 50 4f 49 4e 54 45 52 20 28 63 65 6e 74 | "]}.{..##.place.at.POINTER.(cent |
4a00 | 65 72 65 64 20 69 66 20 24 61 6e 63 68 6f 72 20 3d 3d 20 63 65 6e 74 65 72 29 0a 09 69 66 20 7b | ered.if.$anchor.==.center)..if.{ |
4a20 | 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 2d 6c 65 6e 20 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74 | [string.equal.-len.[string.lengt |
4a40 | 68 20 24 61 6e 63 68 6f 72 5d 20 24 61 6e 63 68 6f 72 20 22 63 65 6e 74 65 72 22 5d 7d 20 7b 0a | h.$anchor].$anchor."center"]}.{. |
4a60 | 09 20 20 20 20 73 65 74 20 78 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 70 6f 69 6e 74 65 72 | .....set.x.[expr.{[winfo.pointer |
4a80 | 78 20 24 77 5d 2d 5b 77 69 6e 66 6f 20 72 65 71 77 69 64 74 68 20 24 77 5d 2f 32 7d 5d 0a 09 20 | x.$w]-[winfo.reqwidth.$w]/2}]... |
4aa0 | 20 20 20 73 65 74 20 79 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 70 6f 69 6e 74 65 72 79 20 | ...set.y.[expr.{[winfo.pointery. |
4ac0 | 24 77 5d 2d 5b 77 69 6e 66 6f 20 72 65 71 68 65 69 67 68 74 20 24 77 5d 2f 32 7d 5d 0a 09 7d 20 | $w]-[winfo.reqheight.$w]/2}]..}. |
4ae0 | 65 6c 73 65 20 7b 0a 09 20 20 20 20 73 65 74 20 78 20 5b 77 69 6e 66 6f 20 70 6f 69 6e 74 65 72 | else.{......set.x.[winfo.pointer |
4b00 | 78 20 24 77 5d 0a 09 20 20 20 20 73 65 74 20 79 20 5b 77 69 6e 66 6f 20 70 6f 69 6e 74 65 72 79 | x.$w]......set.y.[winfo.pointery |
4b20 | 20 24 77 5d 0a 09 7d 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 | .$w]..}.....}.elseif.{[string.eq |
4b40 | 75 61 6c 20 2d 6c 65 6e 20 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 24 70 6c 61 63 65 5d 20 | ual.-len.[string.length.$place]. |
4b60 | 24 70 6c 61 63 65 20 22 77 69 64 67 65 74 22 5d 20 26 26 20 5c 0a 09 20 20 20 20 5b 77 69 6e 66 | $place."widget"].&&.\......[winf |
4b80 | 6f 20 65 78 69 73 74 73 20 24 61 6e 63 68 6f 72 5d 20 26 26 20 5b 77 69 6e 66 6f 20 69 73 6d 61 | o.exists.$anchor].&&.[winfo.isma |
4ba0 | 70 70 65 64 20 24 61 6e 63 68 6f 72 5d 7d 20 7b 0a 09 23 23 20 63 65 6e 74 65 72 20 61 62 6f 75 | pped.$anchor]}.{..##.center.abou |
4bc0 | 74 20 57 49 44 47 45 54 20 24 61 6e 63 68 6f 72 2c 20 77 69 64 67 65 74 20 6d 75 73 74 20 62 65 | t.WIDGET.$anchor,.widget.must.be |
4be0 | 20 6d 61 70 70 65 64 0a 09 73 65 74 20 78 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 72 6f 6f | .mapped..set.x.[expr.{[winfo.roo |
4c00 | 74 78 20 24 61 6e 63 68 6f 72 5d 20 2b 20 5c 0a 09 09 28 5b 77 69 6e 66 6f 20 77 69 64 74 68 20 | tx.$anchor].+.\...([winfo.width. |
4c20 | 24 61 6e 63 68 6f 72 5d 2d 5b 77 69 6e 66 6f 20 72 65 71 77 69 64 74 68 20 24 77 5d 29 2f 32 7d | $anchor]-[winfo.reqwidth.$w])/2} |
4c40 | 5d 0a 09 73 65 74 20 79 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 72 6f 6f 74 79 20 24 61 6e | ]..set.y.[expr.{[winfo.rooty.$an |
4c60 | 63 68 6f 72 5d 20 2b 20 5c 0a 09 09 28 5b 77 69 6e 66 6f 20 68 65 69 67 68 74 20 24 61 6e 63 68 | chor].+.\...([winfo.height.$anch |
4c80 | 6f 72 5d 2d 5b 77 69 6e 66 6f 20 72 65 71 68 65 69 67 68 74 20 24 77 5d 29 2f 32 7d 5d 0a 20 20 | or]-[winfo.reqheight.$w])/2}]... |
4ca0 | 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 78 20 5b 65 78 70 72 20 7b 28 5b 77 69 6e 66 6f | ..}.else.{..set.x.[expr.{([winfo |
4cc0 | 20 73 63 72 65 65 6e 77 69 64 74 68 20 24 77 5d 2d 5b 77 69 6e 66 6f 20 72 65 71 77 69 64 74 68 | .screenwidth.$w]-[winfo.reqwidth |
4ce0 | 20 24 77 5d 29 2f 32 7d 5d 0a 09 73 65 74 20 79 20 5b 65 78 70 72 20 7b 28 5b 77 69 6e 66 6f 20 | .$w])/2}]..set.y.[expr.{([winfo. |
4d00 | 73 63 72 65 65 6e 68 65 69 67 68 74 20 24 77 5d 2d 5b 77 69 6e 66 6f 20 72 65 71 68 65 69 67 68 | screenheight.$w]-[winfo.reqheigh |
4d20 | 74 20 24 77 5d 29 2f 32 7d 5d 0a 09 73 65 74 20 63 68 65 63 6b 42 6f 75 6e 64 73 20 30 0a 20 20 | t.$w])/2}]..set.checkBounds.0... |
4d40 | 20 20 7d 0a 20 20 20 20 69 66 20 7b 24 63 68 65 63 6b 42 6f 75 6e 64 73 7d 20 7b 0a 09 69 66 20 | ..}.....if.{$checkBounds}.{..if. |
4d60 | 7b 24 78 20 3c 20 30 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 78 20 30 0a 09 7d 20 65 6c 73 65 69 | {$x.<.0}.{......set.x.0..}.elsei |
4d80 | 66 20 7b 24 78 20 3e 20 28 5b 77 69 6e 66 6f 20 73 63 72 65 65 6e 77 69 64 74 68 20 24 77 5d 2d | f.{$x.>.([winfo.screenwidth.$w]- |
4da0 | 5b 77 69 6e 66 6f 20 72 65 71 77 69 64 74 68 20 24 77 5d 29 7d 20 7b 0a 09 20 20 20 20 73 65 74 | [winfo.reqwidth.$w])}.{......set |
4dc0 | 20 78 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 73 63 72 65 65 6e 77 69 64 74 68 20 24 77 5d | .x.[expr.{[winfo.screenwidth.$w] |
4de0 | 2d 5b 77 69 6e 66 6f 20 72 65 71 77 69 64 74 68 20 24 77 5d 7d 5d 0a 09 7d 0a 09 69 66 20 7b 24 | -[winfo.reqwidth.$w]}]..}..if.{$ |
4e00 | 79 20 3c 20 30 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 79 20 30 0a 09 7d 20 65 6c 73 65 69 66 20 | y.<.0}.{......set.y.0..}.elseif. |
4e20 | 7b 24 79 20 3e 20 28 5b 77 69 6e 66 6f 20 73 63 72 65 65 6e 68 65 69 67 68 74 20 24 77 5d 2d 5b | {$y.>.([winfo.screenheight.$w]-[ |
4e40 | 77 69 6e 66 6f 20 72 65 71 68 65 69 67 68 74 20 24 77 5d 29 7d 20 7b 0a 09 20 20 20 20 73 65 74 | winfo.reqheight.$w])}.{......set |
4e60 | 20 79 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 73 63 72 65 65 6e 68 65 69 67 68 74 20 24 77 | .y.[expr.{[winfo.screenheight.$w |
4e80 | 5d 2d 5b 77 69 6e 66 6f 20 72 65 71 68 65 69 67 68 74 20 24 77 5d 7d 5d 0a 09 7d 0a 20 20 20 20 | ]-[winfo.reqheight.$w]}]..}..... |
4ea0 | 7d 0a 20 20 20 20 77 6d 20 67 65 6f 6d 65 74 72 79 20 24 77 20 2b 24 78 2b 24 79 0a 20 20 20 20 | }.....wm.geometry.$w.+$x+$y..... |
4ec0 | 77 6d 20 64 65 69 63 6f 6e 69 66 79 20 24 77 0a 7d 0a 0a 23 20 3a 3a 74 6b 3a 3a 53 65 74 46 6f | wm.deiconify.$w.}..#.::tk::SetFo |
4ee0 | 63 75 73 47 72 61 62 20 2d 2d 0a 23 20 20 20 73 77 61 70 20 6f 75 74 20 63 75 72 72 65 6e 74 20 | cusGrab.--.#...swap.out.current. |
4f00 | 66 6f 63 75 73 20 61 6e 64 20 67 72 61 62 20 74 65 6d 70 6f 72 61 72 69 6c 79 20 28 66 6f 72 20 | focus.and.grab.temporarily.(for. |
4f20 | 64 69 61 6c 6f 67 73 29 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 20 20 67 72 61 62 09 6e | dialogs).#.Arguments:.#...grab.n |
4f40 | 65 77 20 77 69 6e 64 6f 77 20 74 6f 20 67 72 61 62 0a 23 20 20 20 66 6f 63 75 73 09 77 69 6e 64 | ew.window.to.grab.#...focus.wind |
4f60 | 6f 77 20 74 6f 20 67 69 76 65 20 66 6f 63 75 73 20 74 6f 0a 23 20 52 65 73 75 6c 74 73 3a 0a 23 | ow.to.give.focus.to.#.Results:.# |
4f80 | 20 20 20 52 65 74 75 72 6e 73 20 6e 6f 74 68 69 6e 67 0a 23 0a 70 72 6f 63 20 3a 3a 74 6b 3a 3a | ...Returns.nothing.#.proc.::tk:: |
4fa0 | 53 65 74 46 6f 63 75 73 47 72 61 62 20 7b 67 72 61 62 20 7b 66 6f 63 75 73 20 7b 7d 7d 7d 20 7b | SetFocusGrab.{grab.{focus.{}}}.{ |
4fc0 | 0a 20 20 20 20 73 65 74 20 69 6e 64 65 78 20 22 24 67 72 61 62 2c 24 66 6f 63 75 73 22 0a 20 20 | .....set.index."$grab,$focus"... |
4fe0 | 20 20 75 70 76 61 72 20 3a 3a 74 6b 3a 3a 46 6f 63 75 73 47 72 61 62 28 24 69 6e 64 65 78 29 20 | ..upvar.::tk::FocusGrab($index). |
5000 | 64 61 74 61 0a 0a 20 20 20 20 6c 61 70 70 65 6e 64 20 64 61 74 61 20 5b 66 6f 63 75 73 5d 0a 20 | data......lappend.data.[focus].. |
5020 | 20 20 20 73 65 74 20 6f 6c 64 47 72 61 62 20 5b 67 72 61 62 20 63 75 72 72 65 6e 74 20 24 67 72 | ...set.oldGrab.[grab.current.$gr |
5040 | 61 62 5d 0a 20 20 20 20 6c 61 70 70 65 6e 64 20 64 61 74 61 20 24 6f 6c 64 47 72 61 62 0a 20 20 | ab].....lappend.data.$oldGrab... |
5060 | 20 20 69 66 20 7b 5b 77 69 6e 66 6f 20 65 78 69 73 74 73 20 24 6f 6c 64 47 72 61 62 5d 7d 20 7b | ..if.{[winfo.exists.$oldGrab]}.{ |
5080 | 0a 09 6c 61 70 70 65 6e 64 20 64 61 74 61 20 5b 67 72 61 62 20 73 74 61 74 75 73 20 24 6f 6c 64 | ..lappend.data.[grab.status.$old |
50a0 | 47 72 61 62 5d 0a 20 20 20 20 7d 0a 20 20 20 20 67 72 61 62 20 24 67 72 61 62 0a 20 20 20 20 69 | Grab].....}.....grab.$grab.....i |
50c0 | 66 20 7b 5b 77 69 6e 66 6f 20 65 78 69 73 74 73 20 24 66 6f 63 75 73 5d 7d 20 7b 0a 09 66 6f 63 | f.{[winfo.exists.$focus]}.{..foc |
50e0 | 75 73 20 24 66 6f 63 75 73 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 3a 3a 74 6b 3a 3a 52 65 73 74 6f | us.$focus.....}.}..#.::tk::Resto |
5100 | 72 65 46 6f 63 75 73 47 72 61 62 20 2d 2d 0a 23 20 20 20 72 65 73 74 6f 72 65 20 6f 6c 64 20 66 | reFocusGrab.--.#...restore.old.f |
5120 | 6f 63 75 73 20 61 6e 64 20 67 72 61 62 20 28 66 6f 72 20 64 69 61 6c 6f 67 73 29 0a 23 20 41 72 | ocus.and.grab.(for.dialogs).#.Ar |
5140 | 67 75 6d 65 6e 74 73 3a 0a 23 20 20 20 67 72 61 62 09 77 69 6e 64 6f 77 20 74 68 61 74 20 68 61 | guments:.#...grab.window.that.ha |
5160 | 64 20 74 61 6b 65 6e 20 67 72 61 62 0a 23 20 20 20 66 6f 63 75 73 09 77 69 6e 64 6f 77 20 74 68 | d.taken.grab.#...focus.window.th |
5180 | 61 74 20 68 61 64 20 74 61 6b 65 6e 20 66 6f 63 75 73 0a 23 20 20 20 64 65 73 74 72 6f 79 09 64 | at.had.taken.focus.#...destroy.d |
51a0 | 65 73 74 72 6f 79 7c 77 69 74 68 64 72 61 77 20 2d 20 68 6f 77 20 74 6f 20 68 61 6e 64 6c 65 20 | estroy|withdraw.-.how.to.handle. |
51c0 | 74 68 65 20 6f 6c 64 20 67 72 61 62 62 65 64 20 77 69 6e 64 6f 77 0a 23 20 52 65 73 75 6c 74 73 | the.old.grabbed.window.#.Results |
51e0 | 3a 0a 23 20 20 20 52 65 74 75 72 6e 73 20 6e 6f 74 68 69 6e 67 0a 23 0a 70 72 6f 63 20 3a 3a 74 | :.#...Returns.nothing.#.proc.::t |
5200 | 6b 3a 3a 52 65 73 74 6f 72 65 46 6f 63 75 73 47 72 61 62 20 7b 67 72 61 62 20 66 6f 63 75 73 20 | k::RestoreFocusGrab.{grab.focus. |
5220 | 7b 64 65 73 74 72 6f 79 20 64 65 73 74 72 6f 79 7d 7d 20 7b 0a 20 20 20 20 73 65 74 20 69 6e 64 | {destroy.destroy}}.{.....set.ind |
5240 | 65 78 20 22 24 67 72 61 62 2c 24 66 6f 63 75 73 22 0a 20 20 20 20 66 6f 72 65 61 63 68 20 7b 6f | ex."$grab,$focus".....foreach.{o |
5260 | 6c 64 46 6f 63 75 73 20 6f 6c 64 47 72 61 62 20 6f 6c 64 53 74 61 74 75 73 7d 20 24 3a 3a 74 6b | ldFocus.oldGrab.oldStatus}.$::tk |
5280 | 3a 3a 46 6f 63 75 73 47 72 61 62 28 24 69 6e 64 65 78 29 20 7b 20 62 72 65 61 6b 20 7d 0a 20 20 | ::FocusGrab($index).{.break.}... |
52a0 | 20 20 75 6e 73 65 74 20 3a 3a 74 6b 3a 3a 46 6f 63 75 73 47 72 61 62 28 24 69 6e 64 65 78 29 0a | ..unset.::tk::FocusGrab($index). |
52c0 | 0a 20 20 20 20 63 61 74 63 68 20 7b 66 6f 63 75 73 20 24 6f 6c 64 46 6f 63 75 73 7d 0a 20 20 20 | .....catch.{focus.$oldFocus}.... |
52e0 | 20 67 72 61 62 20 72 65 6c 65 61 73 65 20 24 67 72 61 62 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 | .grab.release.$grab.....if.{[str |
5300 | 69 6e 67 20 65 71 75 61 6c 20 24 64 65 73 74 72 6f 79 20 22 77 69 74 68 64 72 61 77 22 5d 7d 20 | ing.equal.$destroy."withdraw"]}. |
5320 | 7b 0a 09 77 6d 20 77 69 74 68 64 72 61 77 20 24 67 72 61 62 0a 20 20 20 20 7d 20 65 6c 73 65 20 | {..wm.withdraw.$grab.....}.else. |
5340 | 7b 0a 09 64 65 73 74 72 6f 79 20 24 67 72 61 62 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b | {..destroy.$grab.....}.....if.{[ |
5360 | 77 69 6e 66 6f 20 65 78 69 73 74 73 20 24 6f 6c 64 47 72 61 62 5d 20 26 26 20 5b 77 69 6e 66 6f | winfo.exists.$oldGrab].&&.[winfo |
5380 | 20 69 73 6d 61 70 70 65 64 20 24 6f 6c 64 47 72 61 62 5d 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 | .ismapped.$oldGrab]}.{..if.{[str |
53a0 | 69 6e 67 20 65 71 75 61 6c 20 24 6f 6c 64 53 74 61 74 75 73 20 22 67 6c 6f 62 61 6c 22 5d 7d 20 | ing.equal.$oldStatus."global"]}. |
53c0 | 7b 0a 09 20 20 20 20 67 72 61 62 20 2d 67 6c 6f 62 61 6c 20 24 6f 6c 64 47 72 61 62 0a 09 7d 20 | {......grab.-global.$oldGrab..}. |
53e0 | 65 6c 73 65 20 7b 0a 09 20 20 20 20 67 72 61 62 20 24 6f 6c 64 47 72 61 62 0a 09 7d 0a 20 20 20 | else.{......grab.$oldGrab..}.... |
5400 | 20 7d 0a 7d 0a 0a 23 20 74 6b 53 63 72 65 65 6e 43 68 61 6e 67 65 64 20 2d 2d 0a 23 20 54 68 69 | .}.}..#.tkScreenChanged.--.#.Thi |
5420 | 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 62 79 20 74 68 65 20 62 69 | s.procedure.is.invoked.by.the.bi |
5440 | 6e 64 69 6e 67 20 6d 65 63 68 61 6e 69 73 6d 20 77 68 65 6e 65 76 65 72 20 74 68 65 0a 23 20 22 | nding.mechanism.whenever.the.#." |
5460 | 63 75 72 72 65 6e 74 22 20 73 63 72 65 65 6e 20 69 73 20 63 68 61 6e 67 69 6e 67 2e 20 20 54 68 | current".screen.is.changing...Th |
5480 | 65 20 70 72 6f 63 65 64 75 72 65 20 64 6f 65 73 20 74 77 6f 20 74 68 69 6e 67 73 2e 0a 23 20 46 | e.procedure.does.two.things..#.F |
54a0 | 69 72 73 74 2c 20 69 74 20 75 73 65 73 20 22 75 70 76 61 72 22 20 74 6f 20 6d 61 6b 65 20 67 6c | irst,.it.uses."upvar".to.make.gl |
54c0 | 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 22 74 6b 50 72 69 76 22 20 70 6f 69 6e 74 20 61 74 20 | obal.variable."tkPriv".point.at. |
54e0 | 61 6e 0a 23 20 61 72 72 61 79 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 68 6f 6c 64 73 20 73 | an.#.array.variable.that.holds.s |
5500 | 74 61 74 65 20 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 73 70 6c 61 79 2e 20 20 53 | tate.for.the.current.display...S |
5520 | 65 63 6f 6e 64 2c 0a 23 20 69 74 20 69 6e 69 74 69 61 6c 69 7a 65 73 20 74 68 65 20 61 72 72 61 | econd,.#.it.initializes.the.arra |
5540 | 79 20 69 66 20 69 74 20 64 69 64 6e 27 74 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 2e 0a 23 0a | y.if.it.didn't.already.exist..#. |
5560 | 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 73 63 72 65 65 6e 20 2d 09 09 54 68 65 20 6e 61 6d | #.Arguments:.#.screen.-..The.nam |
5580 | 65 20 6f 66 20 74 68 65 20 6e 65 77 20 73 63 72 65 65 6e 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 72 | e.of.the.new.screen...proc.tkScr |
55a0 | 65 65 6e 43 68 61 6e 67 65 64 20 73 63 72 65 65 6e 20 7b 0a 20 20 20 20 73 65 74 20 78 20 5b 73 | eenChanged.screen.{.....set.x.[s |
55c0 | 74 72 69 6e 67 20 6c 61 73 74 20 2e 20 24 73 63 72 65 65 6e 5d 0a 20 20 20 20 69 66 20 7b 24 78 | tring.last...$screen].....if.{$x |
55e0 | 20 3e 20 30 7d 20 7b 0a 09 73 65 74 20 64 69 73 70 20 5b 73 74 72 69 6e 67 20 72 61 6e 67 65 20 | .>.0}.{..set.disp.[string.range. |
5600 | 24 73 63 72 65 65 6e 20 30 20 5b 65 78 70 72 20 7b 24 78 20 2d 20 31 7d 5d 5d 0a 20 20 20 20 7d | $screen.0.[expr.{$x.-.1}]].....} |
5620 | 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 64 69 73 70 20 24 73 63 72 65 65 6e 0a 20 20 20 20 7d 0a | .else.{..set.disp.$screen.....}. |
5640 | 0a 20 20 20 20 75 70 6c 65 76 65 6c 20 23 30 20 75 70 76 61 72 20 23 30 20 74 6b 50 72 69 76 2e | .....uplevel.#0.upvar.#0.tkPriv. |
5660 | 24 64 69 73 70 20 74 6b 50 72 69 76 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 | $disp.tkPriv.....global.tkPriv.. |
5680 | 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 0a 0a 20 20 20 20 69 66 20 7b | ...global.tcl_platform......if.{ |
56a0 | 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 6b 50 72 69 76 5d 7d 20 7b 0a 09 73 65 74 20 74 6b 50 | [info.exists.tkPriv]}.{..set.tkP |
56c0 | 72 69 76 28 73 63 72 65 65 6e 29 20 24 73 63 72 65 65 6e 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 | riv(screen).$screen..return..... |
56e0 | 7d 0a 20 20 20 20 61 72 72 61 79 20 73 65 74 20 74 6b 50 72 69 76 20 7b 0a 09 61 63 74 69 76 65 | }.....array.set.tkPriv.{..active |
5700 | 4d 65 6e 75 09 7b 7d 0a 09 61 63 74 69 76 65 49 74 65 6d 09 7b 7d 0a 09 61 66 74 65 72 49 64 09 | Menu.{}..activeItem.{}..afterId. |
5720 | 09 7b 7d 0a 09 62 75 74 74 6f 6e 73 09 09 30 0a 09 62 75 74 74 6f 6e 57 69 6e 64 6f 77 09 7b 7d | .{}..buttons..0..buttonWindow.{} |
5740 | 0a 09 64 72 61 67 67 69 6e 67 09 30 0a 09 66 6f 63 75 73 09 09 7b 7d 0a 09 67 72 61 62 09 09 7b | ..dragging.0..focus..{}..grab..{ |
5760 | 7d 0a 09 69 6e 69 74 50 6f 73 09 09 7b 7d 0a 09 69 6e 4d 65 6e 75 62 75 74 74 6f 6e 09 7b 7d 0a | }..initPos..{}..inMenubutton.{}. |
5780 | 09 6c 69 73 74 62 6f 78 50 72 65 76 09 7b 7d 0a 09 6d 65 6e 75 42 61 72 09 09 7b 7d 0a 09 6d 6f | .listboxPrev.{}..menuBar..{}..mo |
57a0 | 75 73 65 4d 6f 76 65 64 09 30 0a 09 6f 6c 64 47 72 61 62 09 09 7b 7d 0a 09 70 6f 70 75 70 09 09 | useMoved.0..oldGrab..{}..popup.. |
57c0 | 7b 7d 0a 09 70 6f 73 74 65 64 4d 62 09 7b 7d 0a 09 70 72 65 73 73 58 09 09 30 0a 09 70 72 65 73 | {}..postedMb.{}..pressX..0..pres |
57e0 | 73 59 09 09 30 0a 09 70 72 65 76 50 6f 73 09 09 30 0a 09 73 65 6c 65 63 74 4d 6f 64 65 09 63 68 | sY..0..prevPos..0..selectMode.ch |
5800 | 61 72 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 63 72 65 65 6e 29 20 | ar.....}.....set.tkPriv(screen). |
5820 | 24 73 63 72 65 65 6e 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 74 65 61 72 6f 66 66 29 20 | $screen.....set.tkPriv(tearoff). |
5840 | 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 | [string.equal.$tcl_platform(plat |
5860 | 66 6f 72 6d 29 20 22 75 6e 69 78 22 5d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 77 69 6e | form)."unix"].....set.tkPriv(win |
5880 | 64 6f 77 29 20 7b 7d 0a 7d 0a 0a 23 20 44 6f 20 69 6e 69 74 69 61 6c 20 73 65 74 75 70 20 66 6f | dow).{}.}..#.Do.initial.setup.fo |
58a0 | 72 20 74 6b 50 72 69 76 2c 20 73 6f 20 74 68 61 74 20 69 74 20 69 73 20 61 6c 77 61 79 73 20 62 | r.tkPriv,.so.that.it.is.always.b |
58c0 | 6f 75 6e 64 20 74 6f 20 73 6f 6d 65 74 68 69 6e 67 0a 23 20 28 6f 74 68 65 72 77 69 73 65 2c 20 | ound.to.something.#.(otherwise,. |
58e0 | 69 66 20 73 6f 6d 65 6f 6e 65 20 72 65 66 65 72 65 6e 63 65 73 20 69 74 2c 20 69 74 20 6d 61 79 | if.someone.references.it,.it.may |
5900 | 20 67 65 74 20 73 65 74 20 74 6f 20 61 20 6e 6f 6e 2d 75 70 76 61 72 2d 65 64 0a 23 20 76 61 6c | .get.set.to.a.non-upvar-ed.#.val |
5920 | 75 65 2c 20 77 68 69 63 68 20 77 69 6c 6c 20 63 61 75 73 65 20 74 72 6f 75 62 6c 65 20 6c 61 74 | ue,.which.will.cause.trouble.lat |
5940 | 65 72 29 2e 0a 0a 74 6b 53 63 72 65 65 6e 43 68 61 6e 67 65 64 20 5b 77 69 6e 66 6f 20 73 63 72 | er)...tkScreenChanged.[winfo.scr |
5960 | 65 65 6e 20 2e 5d 0a 0a 23 20 74 6b 45 76 65 6e 74 4d 6f 74 69 66 42 69 6e 64 69 6e 67 73 20 2d | een..]..#.tkEventMotifBindings.- |
5980 | 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 61 73 | -.#.This.procedure.is.invoked.as |
59a0 | 20 61 20 74 72 61 63 65 20 77 68 65 6e 65 76 65 72 20 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 | .a.trace.whenever.tk_strictMotif |
59c0 | 20 69 73 0a 23 20 63 68 61 6e 67 65 64 2e 20 20 49 74 20 69 73 20 75 73 65 64 20 74 6f 20 74 75 | .is.#.changed...It.is.used.to.tu |
59e0 | 72 6e 20 6f 6e 20 6f 72 20 74 75 72 6e 20 6f 66 66 20 74 68 65 20 6d 6f 74 69 66 20 76 69 72 74 | rn.on.or.turn.off.the.motif.virt |
5a00 | 75 61 6c 0a 23 20 62 69 6e 64 69 6e 67 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 | ual.#.bindings..#.#.Arguments:.# |
5a20 | 20 6e 31 20 2d 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 62 | .n1.-.the.name.of.the.variable.b |
5a40 | 65 69 6e 67 20 63 68 61 6e 67 65 64 20 28 22 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 22 29 2e | eing.changed.("tk_strictMotif"). |
5a60 | 0a 0a 70 72 6f 63 20 74 6b 45 76 65 6e 74 4d 6f 74 69 66 42 69 6e 64 69 6e 67 73 20 7b 6e 31 20 | ..proc.tkEventMotifBindings.{n1. |
5a80 | 64 75 6d 6d 79 20 64 75 6d 6d 79 7d 20 7b 0a 20 20 20 20 75 70 76 61 72 20 24 6e 31 20 6e 61 6d | dummy.dummy}.{.....upvar.$n1.nam |
5aa0 | 65 0a 20 20 20 20 0a 20 20 20 20 69 66 20 7b 24 6e 61 6d 65 7d 20 7b 0a 09 73 65 74 20 6f 70 20 | e..........if.{$name}.{..set.op. |
5ac0 | 64 65 6c 65 74 65 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 6f 70 20 61 64 64 0a | delete.....}.else.{..set.op.add. |
5ae0 | 20 20 20 20 7d 0a 0a 20 20 20 20 65 76 65 6e 74 20 24 6f 70 20 3c 3c 43 75 74 3e 3e 20 3c 43 6f | ....}......event.$op.<<Cut>>.<Co |
5b00 | 6e 74 72 6f 6c 2d 4b 65 79 2d 77 3e 0a 20 20 20 20 65 76 65 6e 74 20 24 6f 70 20 3c 3c 43 6f 70 | ntrol-Key-w>.....event.$op.<<Cop |
5b20 | 79 3e 3e 20 3c 4d 65 74 61 2d 4b 65 79 2d 77 3e 20 0a 20 20 20 20 65 76 65 6e 74 20 24 6f 70 20 | y>>.<Meta-Key-w>......event.$op. |
5b40 | 3c 3c 50 61 73 74 65 3e 3e 20 3c 43 6f 6e 74 72 6f 6c 2d 4b 65 79 2d 79 3e 0a 7d 0a 0a 23 2d 2d | <<Paste>>.<Control-Key-y>.}..#-- |
5b60 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
5b80 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
5ba0 | 2d 2d 2d 2d 0a 23 20 44 65 66 69 6e 65 20 63 6f 6d 6d 6f 6e 20 64 69 61 6c 6f 67 73 20 6f 6e 20 | ----.#.Define.common.dialogs.on. |
5bc0 | 70 6c 61 74 66 6f 72 6d 73 20 77 68 65 72 65 20 74 68 65 79 20 61 72 65 20 6e 6f 74 20 69 6d 70 | platforms.where.they.are.not.imp |
5be0 | 6c 65 6d 65 6e 74 65 64 20 0a 23 20 75 73 69 6e 67 20 63 6f 6d 70 69 6c 65 64 20 63 6f 64 65 2e | lemented..#.using.compiled.code. |
5c00 | 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .#------------------------------ |
5c20 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
5c40 | 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 69 6e 66 | --------..if.{[string.equal.[inf |
5c60 | 6f 20 63 6f 6d 6d 61 6e 64 73 20 74 6b 5f 63 68 6f 6f 73 65 43 6f 6c 6f 72 5d 20 22 22 5d 7d 20 | o.commands.tk_chooseColor].""]}. |
5c80 | 7b 0a 20 20 20 20 70 72 6f 63 20 74 6b 5f 63 68 6f 6f 73 65 43 6f 6c 6f 72 20 7b 61 72 67 73 7d | {.....proc.tk_chooseColor.{args} |
5ca0 | 20 7b 0a 09 72 65 74 75 72 6e 20 5b 65 76 61 6c 20 74 6b 43 6f 6c 6f 72 44 69 61 6c 6f 67 20 24 | .{..return.[eval.tkColorDialog.$ |
5cc0 | 61 72 67 73 5d 0a 20 20 20 20 7d 0a 7d 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 | args].....}.}.if.{[string.equal. |
5ce0 | 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 20 74 6b 5f 67 65 74 4f 70 65 6e 46 69 6c 65 5d 20 22 | [info.commands.tk_getOpenFile]." |
5d00 | 22 5d 7d 20 7b 0a 20 20 20 20 70 72 6f 63 20 74 6b 5f 67 65 74 4f 70 65 6e 46 69 6c 65 20 7b 61 | "]}.{.....proc.tk_getOpenFile.{a |
5d20 | 72 67 73 7d 20 7b 0a 09 69 66 20 7b 24 3a 3a 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b | rgs}.{..if.{$::tk_strictMotif}.{ |
5d40 | 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 65 76 61 6c 20 74 6b 4d 6f 74 69 66 46 44 69 61 6c 6f | ......return.[eval.tkMotifFDialo |
5d60 | 67 20 6f 70 65 6e 20 24 61 72 67 73 5d 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 72 65 74 | g.open.$args]..}.else.{......ret |
5d80 | 75 72 6e 20 5b 65 76 61 6c 20 74 6b 46 44 69 61 6c 6f 67 20 6f 70 65 6e 20 24 61 72 67 73 5d 0a | urn.[eval.tkFDialog.open.$args]. |
5da0 | 09 7d 0a 20 20 20 20 7d 0a 7d 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 69 6e | .}.....}.}.if.{[string.equal.[in |
5dc0 | 66 6f 20 63 6f 6d 6d 61 6e 64 73 20 74 6b 5f 67 65 74 53 61 76 65 46 69 6c 65 5d 20 22 22 5d 7d | fo.commands.tk_getSaveFile].""]} |
5de0 | 20 7b 0a 20 20 20 20 70 72 6f 63 20 74 6b 5f 67 65 74 53 61 76 65 46 69 6c 65 20 7b 61 72 67 73 | .{.....proc.tk_getSaveFile.{args |
5e00 | 7d 20 7b 0a 09 69 66 20 7b 24 3a 3a 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 20 | }.{..if.{$::tk_strictMotif}.{... |
5e20 | 20 20 20 72 65 74 75 72 6e 20 5b 65 76 61 6c 20 74 6b 4d 6f 74 69 66 46 44 69 61 6c 6f 67 20 73 | ...return.[eval.tkMotifFDialog.s |
5e40 | 61 76 65 20 24 61 72 67 73 5d 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e | ave.$args]..}.else.{......return |
5e60 | 20 5b 65 76 61 6c 20 74 6b 46 44 69 61 6c 6f 67 20 73 61 76 65 20 24 61 72 67 73 5d 0a 09 7d 0a | .[eval.tkFDialog.save.$args]..}. |
5e80 | 20 20 20 20 7d 0a 7d 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 69 6e 66 6f 20 | ....}.}.if.{[string.equal.[info. |
5ea0 | 63 6f 6d 6d 61 6e 64 73 20 74 6b 5f 6d 65 73 73 61 67 65 42 6f 78 5d 20 22 22 5d 7d 20 7b 0a 20 | commands.tk_messageBox].""]}.{.. |
5ec0 | 20 20 20 70 72 6f 63 20 74 6b 5f 6d 65 73 73 61 67 65 42 6f 78 20 7b 61 72 67 73 7d 20 7b 0a 09 | ...proc.tk_messageBox.{args}.{.. |
5ee0 | 72 65 74 75 72 6e 20 5b 65 76 61 6c 20 74 6b 4d 65 73 73 61 67 65 42 6f 78 20 24 61 72 67 73 5d | return.[eval.tkMessageBox.$args] |
5f00 | 0a 20 20 20 20 7d 0a 7d 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 69 6e 66 6f | .....}.}.if.{[string.equal.[info |
5f20 | 20 63 6f 6d 6d 61 6e 64 20 74 6b 5f 63 68 6f 6f 73 65 44 69 72 65 63 74 6f 72 79 5d 20 22 22 5d | .command.tk_chooseDirectory].""] |
5f40 | 7d 20 7b 0a 20 20 20 20 70 72 6f 63 20 74 6b 5f 63 68 6f 6f 73 65 44 69 72 65 63 74 6f 72 79 20 | }.{.....proc.tk_chooseDirectory. |
5f60 | 7b 61 72 67 73 7d 20 7b 0a 09 72 65 74 75 72 6e 20 5b 65 76 61 6c 20 3a 3a 74 6b 3a 3a 64 69 61 | {args}.{..return.[eval.::tk::dia |
5f80 | 6c 6f 67 3a 3a 63 68 6f 6f 73 65 44 69 72 3a 3a 74 6b 43 68 6f 6f 73 65 44 69 72 65 63 74 6f 72 | log::chooseDir::tkChooseDirector |
5fa0 | 79 20 24 61 72 67 73 5d 0a 20 20 20 20 7d 0a 7d 0a 09 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | y.$args].....}.}...#------------ |
5fc0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
5fe0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 44 65 66 | --------------------------.#.Def |
6000 | 69 6e 65 20 74 68 65 20 73 65 74 20 6f 66 20 63 6f 6d 6d 6f 6e 20 76 69 72 74 75 61 6c 20 65 76 | ine.the.set.of.common.virtual.ev |
6020 | 65 6e 74 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ents..#------------------------- |
6040 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
6060 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 73 77 69 74 63 68 20 24 74 63 6c 5f 70 6c 61 74 66 | -------------..switch.$tcl_platf |
6080 | 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 7b 0a 20 20 20 20 22 75 6e 69 78 22 20 7b 0a 09 65 76 | orm(platform).{....."unix".{..ev |
60a0 | 65 6e 74 20 61 64 64 20 3c 3c 43 75 74 3e 3e 20 3c 43 6f 6e 74 72 6f 6c 2d 4b 65 79 2d 78 3e 20 | ent.add.<<Cut>>.<Control-Key-x>. |
60c0 | 3c 4b 65 79 2d 46 32 30 3e 20 0a 09 65 76 65 6e 74 20 61 64 64 20 3c 3c 43 6f 70 79 3e 3e 20 3c | <Key-F20>...event.add.<<Copy>>.< |
60e0 | 43 6f 6e 74 72 6f 6c 2d 4b 65 79 2d 63 3e 20 3c 4b 65 79 2d 46 31 36 3e 0a 09 65 76 65 6e 74 20 | Control-Key-c>.<Key-F16>..event. |
6100 | 61 64 64 20 3c 3c 50 61 73 74 65 3e 3e 20 3c 43 6f 6e 74 72 6f 6c 2d 4b 65 79 2d 76 3e 20 3c 4b | add.<<Paste>>.<Control-Key-v>.<K |
6120 | 65 79 2d 46 31 38 3e 0a 09 65 76 65 6e 74 20 61 64 64 20 3c 3c 50 61 73 74 65 53 65 6c 65 63 74 | ey-F18>..event.add.<<PasteSelect |
6140 | 69 6f 6e 3e 3e 20 3c 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 32 3e 0a 09 23 20 53 6f 6d 65 20 | ion>>.<ButtonRelease-2>..#.Some. |
6160 | 4f 53 27 73 20 64 65 66 69 6e 65 20 61 20 67 6f 6f 66 79 20 28 61 73 20 69 6e 2c 20 6e 6f 74 20 | OS's.define.a.goofy.(as.in,.not. |
6180 | 3c 53 68 69 66 74 2d 54 61 62 3e 29 20 6b 65 79 73 79 6d 0a 09 23 20 74 68 61 74 20 69 73 20 72 | <Shift-Tab>).keysym..#.that.is.r |
61a0 | 65 74 75 72 6e 65 64 20 77 68 65 6e 20 74 68 65 20 75 73 65 72 20 70 72 65 73 73 65 73 20 3c 53 | eturned.when.the.user.presses.<S |
61c0 | 68 69 66 74 2d 54 61 62 3e 2e 20 20 49 6e 20 6f 72 64 65 72 20 66 6f 72 0a 09 23 20 74 61 62 20 | hift-Tab>...In.order.for..#.tab. |
61e0 | 74 72 61 76 65 72 73 61 6c 20 74 6f 20 77 6f 72 6b 2c 20 77 65 20 68 61 76 65 20 74 6f 20 61 64 | traversal.to.work,.we.have.to.ad |
6200 | 64 20 74 68 65 73 65 20 6b 65 79 73 79 6d 73 20 74 6f 20 74 68 65 20 0a 09 23 20 50 72 65 76 57 | d.these.keysyms.to.the...#.PrevW |
6220 | 69 6e 64 6f 77 20 65 76 65 6e 74 2e 0a 09 23 20 54 68 65 20 69 6e 66 6f 20 65 78 69 73 74 73 20 | indow.event...#.The.info.exists. |
6240 | 69 73 20 6e 65 63 65 73 73 61 72 79 2c 20 62 65 63 61 75 73 65 20 74 63 6c 5f 70 6c 61 74 66 6f | is.necessary,.because.tcl_platfo |
6260 | 72 6d 28 6f 73 29 20 64 6f 65 73 6e 27 74 0a 09 23 20 65 78 69 73 74 20 69 6e 20 73 61 66 65 20 | rm(os).doesn't..#.exist.in.safe. |
6280 | 69 6e 74 65 72 70 72 65 74 65 72 73 2e 0a 09 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 | interpreters...if.{[info.exists. |
62a0 | 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 6f 73 29 5d 7d 20 7b 0a 09 20 20 20 20 73 77 69 74 63 68 | tcl_platform(os)]}.{......switch |
62c0 | 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 6f 73 29 20 7b 0a 09 09 22 49 52 49 58 22 20 20 2d | .$tcl_platform(os).{..."IRIX"..- |
62e0 | 0a 09 09 22 4c 69 6e 75 78 22 20 7b 20 65 76 65 6e 74 20 61 64 64 20 3c 3c 50 72 65 76 57 69 6e | ..."Linux".{.event.add.<<PrevWin |
6300 | 64 6f 77 3e 3e 20 3c 49 53 4f 5f 4c 65 66 74 5f 54 61 62 3e 20 7d 0a 09 09 22 48 50 2d 55 58 22 | dow>>.<ISO_Left_Tab>.}..."HP-UX" |
6320 | 20 7b 20 65 76 65 6e 74 20 61 64 64 20 3c 3c 50 72 65 76 57 69 6e 64 6f 77 3e 3e 20 3c 68 70 42 | .{.event.add.<<PrevWindow>>.<hpB |
6340 | 61 63 6b 54 61 62 3e 20 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 74 72 61 63 65 20 76 61 72 69 61 | ackTab>.}......}..}..trace.varia |
6360 | 62 6c 65 20 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 20 77 20 74 6b 45 76 65 6e 74 4d 6f 74 69 | ble.tk_strictMotif.w.tkEventMoti |
6380 | 66 42 69 6e 64 69 6e 67 73 0a 09 73 65 74 20 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 20 24 74 | fBindings..set.tk_strictMotif.$t |
63a0 | 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 0a 20 20 20 20 7d 0a 20 20 20 20 22 77 69 6e 64 6f 77 73 | k_strictMotif.....}....."windows |
63c0 | 22 20 7b 0a 09 65 76 65 6e 74 20 61 64 64 20 3c 3c 43 75 74 3e 3e 20 3c 43 6f 6e 74 72 6f 6c 2d | ".{..event.add.<<Cut>>.<Control- |
63e0 | 4b 65 79 2d 78 3e 20 3c 53 68 69 66 74 2d 4b 65 79 2d 44 65 6c 65 74 65 3e 0a 09 65 76 65 6e 74 | Key-x>.<Shift-Key-Delete>..event |
6400 | 20 61 64 64 20 3c 3c 43 6f 70 79 3e 3e 20 3c 43 6f 6e 74 72 6f 6c 2d 4b 65 79 2d 63 3e 20 3c 43 | .add.<<Copy>>.<Control-Key-c>.<C |
6420 | 6f 6e 74 72 6f 6c 2d 4b 65 79 2d 49 6e 73 65 72 74 3e 0a 09 65 76 65 6e 74 20 61 64 64 20 3c 3c | ontrol-Key-Insert>..event.add.<< |
6440 | 50 61 73 74 65 3e 3e 20 3c 43 6f 6e 74 72 6f 6c 2d 4b 65 79 2d 76 3e 20 3c 53 68 69 66 74 2d 4b | Paste>>.<Control-Key-v>.<Shift-K |
6460 | 65 79 2d 49 6e 73 65 72 74 3e 0a 09 65 76 65 6e 74 20 61 64 64 20 3c 3c 50 61 73 74 65 53 65 6c | ey-Insert>..event.add.<<PasteSel |
6480 | 65 63 74 69 6f 6e 3e 3e 20 3c 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 32 3e 0a 20 20 20 20 7d | ection>>.<ButtonRelease-2>.....} |
64a0 | 0a 20 20 20 20 22 6d 61 63 69 6e 74 6f 73 68 22 20 7b 0a 09 65 76 65 6e 74 20 61 64 64 20 3c 3c | ....."macintosh".{..event.add.<< |
64c0 | 43 75 74 3e 3e 20 3c 43 6f 6e 74 72 6f 6c 2d 4b 65 79 2d 78 3e 20 3c 4b 65 79 2d 46 32 3e 20 0a | Cut>>.<Control-Key-x>.<Key-F2>.. |
64e0 | 09 65 76 65 6e 74 20 61 64 64 20 3c 3c 43 6f 70 79 3e 3e 20 3c 43 6f 6e 74 72 6f 6c 2d 4b 65 79 | .event.add.<<Copy>>.<Control-Key |
6500 | 2d 63 3e 20 3c 4b 65 79 2d 46 33 3e 0a 09 65 76 65 6e 74 20 61 64 64 20 3c 3c 50 61 73 74 65 3e | -c>.<Key-F3>..event.add.<<Paste> |
6520 | 3e 20 3c 43 6f 6e 74 72 6f 6c 2d 4b 65 79 2d 76 3e 20 3c 4b 65 79 2d 46 34 3e 0a 09 65 76 65 6e | >.<Control-Key-v>.<Key-F4>..even |
6540 | 74 20 61 64 64 20 3c 3c 50 61 73 74 65 53 65 6c 65 63 74 69 6f 6e 3e 3e 20 3c 42 75 74 74 6f 6e | t.add.<<PasteSelection>>.<Button |
6560 | 52 65 6c 65 61 73 65 2d 32 3e 0a 09 65 76 65 6e 74 20 61 64 64 20 3c 3c 43 6c 65 61 72 3e 3e 20 | Release-2>..event.add.<<Clear>>. |
6580 | 3c 43 6c 65 61 72 3e 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | <Clear>.....}.}..#.------------- |
65a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
65c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 52 65 61 64 | -------------------------.#.Read |
65e0 | 20 69 6e 20 66 69 6c 65 73 20 74 68 61 74 20 64 65 66 69 6e 65 20 61 6c 6c 20 6f 66 20 74 68 65 | .in.files.that.define.all.of.the |
6600 | 20 63 6c 61 73 73 20 62 69 6e 64 69 6e 67 73 2e 0a 23 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .class.bindings..#.------------- |
6620 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
6640 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 69 66 20 7b 5b | -------------------------..if.{[ |
6660 | 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 | string.compare.$tcl_platform(pla |
6680 | 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 20 26 26 20 5c 0a 09 5b 73 74 72 69 6e | tform)."macintosh"].&&.\..[strin |
66a0 | 67 20 63 6f 6d 70 61 72 65 20 7b 7d 20 24 74 6b 5f 6c 69 62 72 61 72 79 5d 7d 20 7b 0a 20 20 20 | g.compare.{}.$tk_library]}.{.... |
66c0 | 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 74 6b 5f 6c 69 62 72 61 72 79 20 62 | .source.[file.join.$tk_library.b |
66e0 | 75 74 74 6f 6e 2e 74 63 6c 5d 0a 20 20 20 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e | utton.tcl].....source.[file.join |
6700 | 20 24 74 6b 5f 6c 69 62 72 61 72 79 20 65 6e 74 72 79 2e 74 63 6c 5d 0a 20 20 20 20 73 6f 75 72 | .$tk_library.entry.tcl].....sour |
6720 | 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 74 6b 5f 6c 69 62 72 61 72 79 20 6c 69 73 74 62 6f | ce.[file.join.$tk_library.listbo |
6740 | 78 2e 74 63 6c 5d 0a 20 20 20 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 74 6b | x.tcl].....source.[file.join.$tk |
6760 | 5f 6c 69 62 72 61 72 79 20 6d 65 6e 75 2e 74 63 6c 5d 0a 20 20 20 20 73 6f 75 72 63 65 20 5b 66 | _library.menu.tcl].....source.[f |
6780 | 69 6c 65 20 6a 6f 69 6e 20 24 74 6b 5f 6c 69 62 72 61 72 79 20 73 63 61 6c 65 2e 74 63 6c 5d 0a | ile.join.$tk_library.scale.tcl]. |
67a0 | 20 20 20 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 74 6b 5f 6c 69 62 72 61 72 | ....source.[file.join.$tk_librar |
67c0 | 79 20 73 63 72 6c 62 61 72 2e 74 63 6c 5d 0a 20 20 20 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 | y.scrlbar.tcl].....source.[file. |
67e0 | 6a 6f 69 6e 20 24 74 6b 5f 6c 69 62 72 61 72 79 20 74 65 78 74 2e 74 63 6c 5d 0a 7d 0a 0a 23 20 | join.$tk_library.text.tcl].}..#. |
6800 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
6820 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
6840 | 2d 2d 2d 2d 2d 2d 0a 23 20 44 65 66 61 75 6c 74 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 6b 65 | ------.#.Default.bindings.for.ke |
6860 | 79 62 6f 61 72 64 20 74 72 61 76 65 72 73 61 6c 2e 0a 23 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | yboard.traversal..#.------------ |
6880 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
68a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 65 76 65 6e | --------------------------..even |
68c0 | 74 20 61 64 64 20 3c 3c 50 72 65 76 57 69 6e 64 6f 77 3e 3e 20 3c 53 68 69 66 74 2d 54 61 62 3e | t.add.<<PrevWindow>>.<Shift-Tab> |
68e0 | 0a 62 69 6e 64 20 61 6c 6c 20 3c 54 61 62 3e 20 7b 74 6b 54 61 62 54 6f 57 69 6e 64 6f 77 20 5b | .bind.all.<Tab>.{tkTabToWindow.[ |
6900 | 74 6b 5f 66 6f 63 75 73 4e 65 78 74 20 25 57 5d 7d 0a 62 69 6e 64 20 61 6c 6c 20 3c 3c 50 72 65 | tk_focusNext.%W]}.bind.all.<<Pre |
6920 | 76 57 69 6e 64 6f 77 3e 3e 20 7b 74 6b 54 61 62 54 6f 57 69 6e 64 6f 77 20 5b 74 6b 5f 66 6f 63 | vWindow>>.{tkTabToWindow.[tk_foc |
6940 | 75 73 50 72 65 76 20 25 57 5d 7d 0a 0a 23 20 74 6b 43 61 6e 63 65 6c 52 65 70 65 61 74 20 2d 2d | usPrev.%W]}..#.tkCancelRepeat.-- |
6960 | 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 74 6f 20 | .#.This.procedure.is.invoked.to. |
6980 | 63 61 6e 63 65 6c 20 61 6e 20 61 75 74 6f 2d 72 65 70 65 61 74 20 61 63 74 69 6f 6e 20 64 65 73 | cancel.an.auto-repeat.action.des |
69a0 | 63 72 69 62 65 64 0a 23 20 62 79 20 74 6b 50 72 69 76 28 61 66 74 65 72 49 64 29 2e 20 20 49 74 | cribed.#.by.tkPriv(afterId)...It |
69c0 | 27 73 20 75 73 65 64 20 62 79 20 73 65 76 65 72 61 6c 20 77 69 64 67 65 74 73 20 74 6f 20 61 75 | 's.used.by.several.widgets.to.au |
69e0 | 74 6f 2d 73 63 72 6f 6c 6c 0a 23 20 74 68 65 20 77 69 64 67 65 74 20 77 68 65 6e 20 74 68 65 20 | to-scroll.#.the.widget.when.the. |
6a00 | 6d 6f 75 73 65 20 69 73 20 64 72 61 67 67 65 64 20 6f 75 74 20 6f 66 20 74 68 65 20 77 69 64 67 | mouse.is.dragged.out.of.the.widg |
6a20 | 65 74 20 77 69 74 68 20 61 0a 23 20 62 75 74 74 6f 6e 20 70 72 65 73 73 65 64 2e 0a 23 0a 23 20 | et.with.a.#.button.pressed..#.#. |
6a40 | 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 74 6b 43 61 6e 63 65 | Arguments:.#.None...proc.tkCance |
6a60 | 6c 52 65 70 65 61 74 20 7b 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 | lRepeat.{}.{.....global.tkPriv.. |
6a80 | 20 20 20 61 66 74 65 72 20 63 61 6e 63 65 6c 20 24 74 6b 50 72 69 76 28 61 66 74 65 72 49 64 29 | ...after.cancel.$tkPriv(afterId) |
6aa0 | 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 61 66 74 65 72 49 64 29 20 7b 7d 0a 7d 0a 0a 23 | .....set.tkPriv(afterId).{}.}..# |
6ac0 | 20 74 6b 54 61 62 54 6f 57 69 6e 64 6f 77 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 | .tkTabToWindow.--.#.This.procedu |
6ae0 | 72 65 20 6d 6f 76 65 73 20 74 68 65 20 66 6f 63 75 73 20 74 6f 20 74 68 65 20 67 69 76 65 6e 20 | re.moves.the.focus.to.the.given. |
6b00 | 77 69 64 67 65 74 2e 20 20 49 66 20 74 68 65 20 77 69 64 67 65 74 0a 23 20 69 73 20 61 6e 20 65 | widget...If.the.widget.#.is.an.e |
6b20 | 6e 74 72 79 2c 20 69 74 20 73 65 6c 65 63 74 73 20 74 68 65 20 65 6e 74 69 72 65 20 63 6f 6e 74 | ntry,.it.selects.the.entire.cont |
6b40 | 65 6e 74 73 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 | ents.of.the.widget..#.#.Argument |
6b60 | 73 3a 0a 23 20 77 20 2d 20 57 69 6e 64 6f 77 20 74 6f 20 77 68 69 63 68 20 66 6f 63 75 73 20 73 | s:.#.w.-.Window.to.which.focus.s |
6b80 | 68 6f 75 6c 64 20 62 65 20 73 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 54 61 62 54 6f 57 69 6e 64 6f | hould.be.set...proc.tkTabToWindo |
6ba0 | 77 20 7b 77 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 | w.{w}.{.....if.{[string.equal.[w |
6bc0 | 69 6e 66 6f 20 63 6c 61 73 73 20 24 77 5d 20 45 6e 74 72 79 5d 7d 20 7b 0a 09 24 77 20 73 65 6c | info.class.$w].Entry]}.{..$w.sel |
6be0 | 65 63 74 69 6f 6e 20 72 61 6e 67 65 20 30 20 65 6e 64 0a 09 24 77 20 69 63 75 72 73 6f 72 20 65 | ection.range.0.end..$w.icursor.e |
6c00 | 6e 64 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 63 75 73 20 24 77 0a 7d 0a 00 00 2c ff 23 20 62 75 | nd.....}.....focus.$w.}...,.#.bu |
6c20 | 74 74 6f 6e 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 66 69 6c 65 20 64 65 66 69 6e 65 | tton.tcl.--.#.#.This.file.define |
6c40 | 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 54 6b 20 6c 61 | s.the.default.bindings.for.Tk.la |
6c60 | 62 65 6c 2c 20 62 75 74 74 6f 6e 2c 0a 23 20 63 68 65 63 6b 62 75 74 74 6f 6e 2c 20 61 6e 64 20 | bel,.button,.#.checkbutton,.and. |
6c80 | 72 61 64 69 6f 62 75 74 74 6f 6e 20 77 69 64 67 65 74 73 20 61 6e 64 20 70 72 6f 76 69 64 65 73 | radiobutton.widgets.and.provides |
6ca0 | 20 70 72 6f 63 65 64 75 72 65 73 0a 23 20 74 68 61 74 20 68 65 6c 70 20 69 6e 20 69 6d 70 6c 65 | .procedures.#.that.help.in.imple |
6cc0 | 6d 65 6e 74 69 6e 67 20 74 68 6f 73 65 20 62 69 6e 64 69 6e 67 73 2e 0a 23 0a 23 20 52 43 53 3a | menting.those.bindings..#.#.RCS: |
6ce0 | 20 40 28 23 29 20 24 49 64 3a 20 62 75 74 74 6f 6e 2e 74 63 6c 2c 76 20 31 2e 36 20 31 39 39 39 | .@(#).$Id:.button.tcl,v.1.6.1999 |
6d00 | 2f 30 39 2f 30 32 20 31 37 3a 30 32 3a 35 32 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 | /09/02.17:02:52.hobbs.Exp.$.#.#. |
6d20 | 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 32 2d 31 39 39 34 20 54 68 65 20 52 65 67 65 | Copyright.(c).1992-1994.The.Rege |
6d40 | 6e 74 73 20 6f 66 20 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 | nts.of.the.University.of.Califor |
6d60 | 6e 69 61 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 36 20 53 | nia..#.Copyright.(c).1994-1996.S |
6d80 | 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 65 20 74 68 | un.Microsystems,.Inc..#.#.See.th |
6da0 | 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 | e.file."license.terms".for.infor |
6dc0 | 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 69 | mation.on.usage.and.redistributi |
6de0 | 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 | on.#.of.this.file,.and.for.a.DIS |
6e00 | 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 0a 0a 23 2d | CLAIMER.OF.ALL.WARRANTIES..#..#- |
6e20 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
6e40 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
6e60 | 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 68 65 20 63 6f 64 65 20 62 65 6c 6f 77 20 63 72 65 61 74 65 | --------.#.The.code.below.create |
6e80 | 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 63 6c 61 73 73 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 | s.the.default.class.bindings.for |
6ea0 | 20 62 75 74 74 6f 6e 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .buttons..#--------------------- |
6ec0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
6ee0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 69 66 20 7b 5b 73 74 72 69 6e | --------------------..if.{[strin |
6f00 | 67 20 6d 61 74 63 68 20 22 6d 61 63 69 6e 74 6f 73 68 22 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 | g.match."macintosh".$tcl_platfor |
6f20 | 6d 28 70 6c 61 74 66 6f 72 6d 29 5d 7d 20 7b 0a 20 20 20 20 62 69 6e 64 20 52 61 64 69 6f 62 75 | m(platform)]}.{.....bind.Radiobu |
6f40 | 74 74 6f 6e 20 3c 45 6e 74 65 72 3e 20 7b 0a 09 74 6b 42 75 74 74 6f 6e 45 6e 74 65 72 20 25 57 | tton.<Enter>.{..tkButtonEnter.%W |
6f60 | 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 52 61 64 69 6f 62 75 74 74 6f 6e 20 3c 31 3e 20 | .....}.....bind.Radiobutton.<1>. |
6f80 | 7b 0a 09 74 6b 42 75 74 74 6f 6e 44 6f 77 6e 20 25 57 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e | {..tkButtonDown.%W.....}.....bin |
6fa0 | 64 20 52 61 64 69 6f 62 75 74 74 6f 6e 20 3c 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 31 3e 20 | d.Radiobutton.<ButtonRelease-1>. |
6fc0 | 7b 0a 09 74 6b 42 75 74 74 6f 6e 55 70 20 25 57 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 | {..tkButtonUp.%W.....}.....bind. |
6fe0 | 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 45 6e 74 65 72 3e 20 7b 0a 09 74 6b 42 75 74 74 6f 6e 45 | Checkbutton.<Enter>.{..tkButtonE |
7000 | 6e 74 65 72 20 25 57 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 43 68 65 63 6b 62 75 74 74 | nter.%W.....}.....bind.Checkbutt |
7020 | 6f 6e 20 3c 31 3e 20 7b 0a 09 74 6b 42 75 74 74 6f 6e 44 6f 77 6e 20 25 57 0a 20 20 20 20 7d 0a | on.<1>.{..tkButtonDown.%W.....}. |
7040 | 20 20 20 20 62 69 6e 64 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 42 75 74 74 6f 6e 52 65 6c 65 | ....bind.Checkbutton.<ButtonRele |
7060 | 61 73 65 2d 31 3e 20 7b 0a 09 74 6b 42 75 74 74 6f 6e 55 70 20 25 57 0a 20 20 20 20 7d 0a 7d 0a | ase-1>.{..tkButtonUp.%W.....}.}. |
7080 | 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 22 77 69 6e 64 6f 77 73 22 20 24 74 63 6c | if.{[string.match."windows".$tcl |
70a0 | 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 5d 7d 20 7b 0a 20 20 20 20 62 69 6e 64 | _platform(platform)]}.{.....bind |
70c0 | 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 65 71 75 61 6c 3e 20 7b 0a 09 74 6b 43 68 65 63 6b 52 | .Checkbutton.<equal>.{..tkCheckR |
70e0 | 61 64 69 6f 49 6e 76 6f 6b 65 20 25 57 20 73 65 6c 65 63 74 0a 20 20 20 20 7d 0a 20 20 20 20 62 | adioInvoke.%W.select.....}.....b |
7100 | 69 6e 64 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 70 6c 75 73 3e 20 7b 0a 09 74 6b 43 68 65 63 | ind.Checkbutton.<plus>.{..tkChec |
7120 | 6b 52 61 64 69 6f 49 6e 76 6f 6b 65 20 25 57 20 73 65 6c 65 63 74 0a 20 20 20 20 7d 0a 20 20 20 | kRadioInvoke.%W.select.....}.... |
7140 | 20 62 69 6e 64 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 6d 69 6e 75 73 3e 20 7b 0a 09 74 6b 43 | .bind.Checkbutton.<minus>.{..tkC |
7160 | 68 65 63 6b 52 61 64 69 6f 49 6e 76 6f 6b 65 20 25 57 20 64 65 73 65 6c 65 63 74 0a 20 20 20 20 | heckRadioInvoke.%W.deselect..... |
7180 | 7d 0a 20 20 20 20 62 69 6e 64 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 31 3e 20 7b 0a 09 74 6b | }.....bind.Checkbutton.<1>.{..tk |
71a0 | 43 68 65 63 6b 52 61 64 69 6f 44 6f 77 6e 20 25 57 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 | CheckRadioDown.%W.....}.....bind |
71c0 | 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 31 3e 20 7b | .Checkbutton.<ButtonRelease-1>.{ |
71e0 | 0a 09 74 6b 42 75 74 74 6f 6e 55 70 20 25 57 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 43 | ..tkButtonUp.%W.....}.....bind.C |
7200 | 68 65 63 6b 62 75 74 74 6f 6e 20 3c 45 6e 74 65 72 3e 20 7b 0a 09 74 6b 43 68 65 63 6b 52 61 64 | heckbutton.<Enter>.{..tkCheckRad |
7220 | 69 6f 45 6e 74 65 72 20 25 57 0a 20 20 20 20 7d 0a 0a 20 20 20 20 62 69 6e 64 20 52 61 64 69 6f | ioEnter.%W.....}......bind.Radio |
7240 | 62 75 74 74 6f 6e 20 3c 31 3e 20 7b 0a 09 74 6b 43 68 65 63 6b 52 61 64 69 6f 44 6f 77 6e 20 25 | button.<1>.{..tkCheckRadioDown.% |
7260 | 57 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 52 61 64 69 6f 62 75 74 74 6f 6e 20 3c 42 75 | W.....}.....bind.Radiobutton.<Bu |
7280 | 74 74 6f 6e 52 65 6c 65 61 73 65 2d 31 3e 20 7b 0a 09 74 6b 42 75 74 74 6f 6e 55 70 20 25 57 0a | ttonRelease-1>.{..tkButtonUp.%W. |
72a0 | 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 52 61 64 69 6f 62 75 74 74 6f 6e 20 3c 45 6e 74 65 | ....}.....bind.Radiobutton.<Ente |
72c0 | 72 3e 20 7b 0a 09 74 6b 43 68 65 63 6b 52 61 64 69 6f 45 6e 74 65 72 20 25 57 0a 20 20 20 20 7d | r>.{..tkCheckRadioEnter.%W.....} |
72e0 | 0a 7d 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 22 75 6e 69 78 22 20 24 74 63 6c | .}.if.{[string.match."unix".$tcl |
7300 | 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 5d 7d 20 7b 0a 20 20 20 20 62 69 6e 64 | _platform(platform)]}.{.....bind |
7320 | 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 52 65 74 75 72 6e 3e 20 7b 0a 09 69 66 20 7b 21 24 74 | .Checkbutton.<Return>.{..if.{!$t |
7340 | 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 20 20 20 20 74 6b 43 68 65 63 6b 52 61 64 | k_strictMotif}.{......tkCheckRad |
7360 | 69 6f 49 6e 76 6f 6b 65 20 25 57 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 52 61 | ioInvoke.%W..}.....}.....bind.Ra |
7380 | 64 69 6f 62 75 74 74 6f 6e 20 3c 52 65 74 75 72 6e 3e 20 7b 0a 09 69 66 20 7b 21 24 74 6b 5f 73 | diobutton.<Return>.{..if.{!$tk_s |
73a0 | 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 20 20 20 20 74 6b 43 68 65 63 6b 52 61 64 69 6f 49 | trictMotif}.{......tkCheckRadioI |
73c0 | 6e 76 6f 6b 65 20 25 57 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 43 68 65 63 6b | nvoke.%W..}.....}.....bind.Check |
73e0 | 62 75 74 74 6f 6e 20 3c 31 3e 20 7b 0a 09 74 6b 43 68 65 63 6b 52 61 64 69 6f 49 6e 76 6f 6b 65 | button.<1>.{..tkCheckRadioInvoke |
7400 | 20 25 57 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 52 61 64 69 6f 62 75 74 74 6f 6e 20 3c | .%W.....}.....bind.Radiobutton.< |
7420 | 31 3e 20 7b 0a 09 74 6b 43 68 65 63 6b 52 61 64 69 6f 49 6e 76 6f 6b 65 20 25 57 0a 20 20 20 20 | 1>.{..tkCheckRadioInvoke.%W..... |
7440 | 7d 0a 20 20 20 20 62 69 6e 64 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 45 6e 74 65 72 3e 20 7b | }.....bind.Checkbutton.<Enter>.{ |
7460 | 0a 09 74 6b 42 75 74 74 6f 6e 45 6e 74 65 72 20 25 57 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e | ..tkButtonEnter.%W.....}.....bin |
7480 | 64 20 52 61 64 69 6f 62 75 74 74 6f 6e 20 3c 45 6e 74 65 72 3e 20 7b 0a 09 74 6b 42 75 74 74 6f | d.Radiobutton.<Enter>.{..tkButto |
74a0 | 6e 45 6e 74 65 72 20 25 57 0a 20 20 20 20 7d 0a 7d 0a 0a 62 69 6e 64 20 42 75 74 74 6f 6e 20 3c | nEnter.%W.....}.}..bind.Button.< |
74c0 | 73 70 61 63 65 3e 20 7b 0a 20 20 20 20 74 6b 42 75 74 74 6f 6e 49 6e 76 6f 6b 65 20 25 57 0a 7d | space>.{.....tkButtonInvoke.%W.} |
74e0 | 0a 62 69 6e 64 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 73 70 61 63 65 3e 20 7b 0a 20 20 20 20 | .bind.Checkbutton.<space>.{..... |
7500 | 74 6b 43 68 65 63 6b 52 61 64 69 6f 49 6e 76 6f 6b 65 20 25 57 0a 7d 0a 62 69 6e 64 20 52 61 64 | tkCheckRadioInvoke.%W.}.bind.Rad |
7520 | 69 6f 62 75 74 74 6f 6e 20 3c 73 70 61 63 65 3e 20 7b 0a 20 20 20 20 74 6b 43 68 65 63 6b 52 61 | iobutton.<space>.{.....tkCheckRa |
7540 | 64 69 6f 49 6e 76 6f 6b 65 20 25 57 0a 7d 0a 0a 62 69 6e 64 20 42 75 74 74 6f 6e 20 3c 46 6f 63 | dioInvoke.%W.}..bind.Button.<Foc |
7560 | 75 73 49 6e 3e 20 7b 7d 0a 62 69 6e 64 20 42 75 74 74 6f 6e 20 3c 45 6e 74 65 72 3e 20 7b 0a 20 | usIn>.{}.bind.Button.<Enter>.{.. |
7580 | 20 20 20 74 6b 42 75 74 74 6f 6e 45 6e 74 65 72 20 25 57 0a 7d 0a 62 69 6e 64 20 42 75 74 74 6f | ...tkButtonEnter.%W.}.bind.Butto |
75a0 | 6e 20 3c 4c 65 61 76 65 3e 20 7b 0a 20 20 20 20 74 6b 42 75 74 74 6f 6e 4c 65 61 76 65 20 25 57 | n.<Leave>.{.....tkButtonLeave.%W |
75c0 | 0a 7d 0a 62 69 6e 64 20 42 75 74 74 6f 6e 20 3c 31 3e 20 7b 0a 20 20 20 20 74 6b 42 75 74 74 6f | .}.bind.Button.<1>.{.....tkButto |
75e0 | 6e 44 6f 77 6e 20 25 57 0a 7d 0a 62 69 6e 64 20 42 75 74 74 6f 6e 20 3c 42 75 74 74 6f 6e 52 65 | nDown.%W.}.bind.Button.<ButtonRe |
7600 | 6c 65 61 73 65 2d 31 3e 20 7b 0a 20 20 20 20 74 6b 42 75 74 74 6f 6e 55 70 20 25 57 0a 7d 0a 0a | lease-1>.{.....tkButtonUp.%W.}.. |
7620 | 62 69 6e 64 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 46 6f 63 75 73 49 6e 3e 20 7b 7d 0a 62 69 | bind.Checkbutton.<FocusIn>.{}.bi |
7640 | 6e 64 20 43 68 65 63 6b 62 75 74 74 6f 6e 20 3c 4c 65 61 76 65 3e 20 7b 0a 20 20 20 20 74 6b 42 | nd.Checkbutton.<Leave>.{.....tkB |
7660 | 75 74 74 6f 6e 4c 65 61 76 65 20 25 57 0a 7d 0a 0a 62 69 6e 64 20 52 61 64 69 6f 62 75 74 74 6f | uttonLeave.%W.}..bind.Radiobutto |
7680 | 6e 20 3c 46 6f 63 75 73 49 6e 3e 20 7b 7d 0a 62 69 6e 64 20 52 61 64 69 6f 62 75 74 74 6f 6e 20 | n.<FocusIn>.{}.bind.Radiobutton. |
76a0 | 3c 4c 65 61 76 65 3e 20 7b 0a 20 20 20 20 74 6b 42 75 74 74 6f 6e 4c 65 61 76 65 20 25 57 0a 7d | <Leave>.{.....tkButtonLeave.%W.} |
76c0 | 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 22 77 69 6e 64 6f 77 73 22 20 24 74 | ..if.{[string.match."windows".$t |
76e0 | 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 5d 7d 20 7b 0a 0a 23 23 23 23 23 | cl_platform(platform)]}.{..##### |
7700 | 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23 20 57 69 6e 64 6f 77 73 20 69 | ####################.#.Windows.i |
7720 | 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 | mplementation..################# |
7740 | 23 23 23 23 23 23 23 23 0a 0a 23 20 74 6b 42 75 74 74 6f 6e 45 6e 74 65 72 20 2d 2d 0a 23 20 54 | ########..#.tkButtonEnter.--.#.T |
7760 | 68 65 20 70 72 6f 63 65 64 75 72 65 20 62 65 6c 6f 77 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 | he.procedure.below.is.invoked.wh |
7780 | 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 70 6f 69 6e 74 65 72 20 65 6e 74 65 72 73 20 61 0a 23 20 | en.the.mouse.pointer.enters.a.#. |
77a0 | 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2e 20 20 49 74 20 72 65 63 6f 72 64 73 20 74 68 65 20 62 | button.widget...It.records.the.b |
77c0 | 75 74 74 6f 6e 20 77 65 27 72 65 20 69 6e 20 61 6e 64 20 63 68 61 6e 67 65 73 20 74 68 65 0a 23 | utton.we're.in.and.changes.the.# |
77e0 | 20 73 74 61 74 65 20 6f 66 20 74 68 65 20 62 75 74 74 6f 6e 20 74 6f 20 61 63 74 69 76 65 20 75 | .state.of.the.button.to.active.u |
7800 | 6e 6c 65 73 73 20 74 68 65 20 62 75 74 74 6f 6e 20 69 73 20 64 69 73 61 62 6c 65 64 2e 0a 23 0a | nless.the.button.is.disabled..#. |
7820 | 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 | #.Arguments:.#.w.-..The.name.of. |
7840 | 74 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 42 75 74 74 6f 6e 45 6e 74 65 72 20 | the.widget...proc.tkButtonEnter. |
7860 | 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 5b 73 | w.{.....global.tkPriv.....if.{[s |
7880 | 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 | tring.compare.[$w.cget.-state]." |
78a0 | 64 69 73 61 62 6c 65 64 22 5d 20 5c 0a 09 20 20 20 20 26 26 20 5b 73 74 72 69 6e 67 20 65 71 75 | disabled"].\......&&.[string.equ |
78c0 | 61 6c 20 24 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 20 24 77 5d 7d 20 7b 0a | al.$tkPriv(buttonWindow).$w]}.{. |
78e0 | 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 61 63 74 69 76 65 20 2d 72 65 6c | .$w.configure.-state.active.-rel |
7900 | 69 65 66 20 73 75 6e 6b 65 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 | ief.sunken.....}.....set.tkPriv( |
7920 | 77 69 6e 64 6f 77 29 20 24 77 0a 7d 0a 0a 23 20 74 6b 42 75 74 74 6f 6e 4c 65 61 76 65 20 2d 2d | window).$w.}..#.tkButtonLeave.-- |
7940 | 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 62 65 6c 6f 77 20 69 73 20 69 6e 76 6f 6b 65 | .#.The.procedure.below.is.invoke |
7960 | 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 70 6f 69 6e 74 65 72 20 6c 65 61 76 65 73 20 | d.when.the.mouse.pointer.leaves. |
7980 | 61 0a 23 20 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2e 20 20 49 74 20 63 68 61 6e 67 65 73 20 74 | a.#.button.widget...It.changes.t |
79a0 | 68 65 20 73 74 61 74 65 20 6f 66 20 74 68 65 20 62 75 74 74 6f 6e 20 62 61 63 6b 20 74 6f 0a 23 | he.state.of.the.button.back.to.# |
79c0 | 20 69 6e 61 63 74 69 76 65 2e 20 20 49 66 20 77 65 27 72 65 20 6c 65 61 76 69 6e 67 20 74 68 65 | .inactive...If.we're.leaving.the |
79e0 | 20 62 75 74 74 6f 6e 20 77 69 6e 64 6f 77 20 77 69 74 68 20 61 20 6d 6f 75 73 65 20 62 75 74 74 | .button.window.with.a.mouse.butt |
7a00 | 6f 6e 0a 23 20 70 72 65 73 73 65 64 20 28 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f | on.#.pressed.(tkPriv(buttonWindo |
7a20 | 77 29 20 3d 3d 20 24 77 29 2c 20 72 65 73 74 6f 72 65 20 74 68 65 20 72 65 6c 69 65 66 20 6f 66 | w).==.$w),.restore.the.relief.of |
7a40 | 20 74 68 65 0a 23 20 62 75 74 74 6f 6e 20 74 6f 6f 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 | .the.#.button.too..#.#.Arguments |
7a60 | 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e | :.#.w.-..The.name.of.the.widget. |
7a80 | 0a 0a 70 72 6f 63 20 74 6b 42 75 74 74 6f 6e 4c 65 61 76 65 20 77 20 7b 0a 20 20 20 20 67 6c 6f | ..proc.tkButtonLeave.w.{.....glo |
7aa0 | 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 | bal.tkPriv.....if.{[string.compa |
7ac0 | 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d | re.[$w.cget.-state]."disabled"]} |
7ae0 | 20 7b 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 6e 6f 72 6d 61 6c 0a 20 | .{..$w.configure.-state.normal.. |
7b00 | 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 | ...}.....if.{[string.equal.$tkPr |
7b20 | 69 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 20 24 77 5d 7d 20 7b 0a 09 24 77 20 63 6f 6e 66 | iv(buttonWindow).$w]}.{..$w.conf |
7b40 | 69 67 75 72 65 20 2d 72 65 6c 69 65 66 20 24 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 0a 20 20 | igure.-relief.$tkPriv(relief)... |
7b60 | 20 20 7d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 77 69 6e 64 6f 77 29 20 22 22 0a 7d 0a | ..}.....set.tkPriv(window)."".}. |
7b80 | 0a 23 20 74 6b 43 68 65 63 6b 52 61 64 69 6f 45 6e 74 65 72 20 2d 2d 0a 23 20 54 68 65 20 70 72 | .#.tkCheckRadioEnter.--.#.The.pr |
7ba0 | 6f 63 65 64 75 72 65 20 62 65 6c 6f 77 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 | ocedure.below.is.invoked.when.th |
7bc0 | 65 20 6d 6f 75 73 65 20 70 6f 69 6e 74 65 72 20 65 6e 74 65 72 73 20 61 0a 23 20 63 68 65 63 6b | e.mouse.pointer.enters.a.#.check |
7be0 | 62 75 74 74 6f 6e 20 6f 72 20 72 61 64 69 6f 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2e 20 20 49 | button.or.radiobutton.widget...I |
7c00 | 74 20 72 65 63 6f 72 64 73 20 74 68 65 20 62 75 74 74 6f 6e 20 77 65 27 72 65 20 69 6e 0a 23 20 | t.records.the.button.we're.in.#. |
7c20 | 61 6e 64 20 63 68 61 6e 67 65 73 20 74 68 65 20 73 74 61 74 65 20 6f 66 20 74 68 65 20 62 75 74 | and.changes.the.state.of.the.but |
7c40 | 74 6f 6e 20 74 6f 20 61 63 74 69 76 65 20 75 6e 6c 65 73 73 20 74 68 65 20 62 75 74 74 6f 6e 20 | ton.to.active.unless.the.button. |
7c60 | 69 73 0a 23 20 64 69 73 61 62 6c 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 | is.#.disabled..#.#.Arguments:.#. |
7c80 | 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 | w.-..The.name.of.the.widget...pr |
7ca0 | 6f 63 20 74 6b 43 68 65 63 6b 52 61 64 69 6f 45 6e 74 65 72 20 77 20 7b 0a 20 20 20 20 67 6c 6f | oc.tkCheckRadioEnter.w.{.....glo |
7cc0 | 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 | bal.tkPriv.....if.{[string.compa |
7ce0 | 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 20 | re.[$w.cget.-state]."disabled"]. |
7d00 | 5c 0a 09 20 20 20 20 26 26 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 | \......&&.[string.equal.$tkPriv( |
7d20 | 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 20 24 77 5d 7d 20 7b 0a 09 24 77 20 63 6f 6e 66 69 67 75 | buttonWindow).$w]}.{..$w.configu |
7d40 | 72 65 20 2d 73 74 61 74 65 20 61 63 74 69 76 65 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 74 | re.-state.active.....}.....set.t |
7d60 | 6b 50 72 69 76 28 77 69 6e 64 6f 77 29 20 24 77 0a 7d 0a 0a 23 20 74 6b 42 75 74 74 6f 6e 44 6f | kPriv(window).$w.}..#.tkButtonDo |
7d80 | 77 6e 20 2d 2d 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 62 65 6c 6f 77 20 69 73 20 69 | wn.--.#.The.procedure.below.is.i |
7da0 | 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 20 69 73 20 | nvoked.when.the.mouse.button.is. |
7dc0 | 70 72 65 73 73 65 64 20 69 6e 0a 23 20 61 20 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2e 20 20 49 | pressed.in.#.a.button.widget...I |
7de0 | 74 20 72 65 63 6f 72 64 73 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 74 68 65 20 6d 6f 75 73 | t.records.the.fact.that.the.mous |
7e00 | 65 20 69 73 20 69 6e 20 74 68 65 20 62 75 74 74 6f 6e 2c 0a 23 20 73 61 76 65 73 20 74 68 65 20 | e.is.in.the.button,.#.saves.the. |
7e20 | 62 75 74 74 6f 6e 27 73 20 72 65 6c 69 65 66 20 73 6f 20 69 74 20 63 61 6e 20 62 65 20 72 65 73 | button's.relief.so.it.can.be.res |
7e40 | 74 6f 72 65 64 20 6c 61 74 65 72 2c 20 61 6e 64 20 63 68 61 6e 67 65 73 0a 23 20 74 68 65 20 72 | tored.later,.and.changes.#.the.r |
7e60 | 65 6c 69 65 66 20 74 6f 20 73 75 6e 6b 65 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a | elief.to.sunken..#.#.Arguments:. |
7e80 | 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e 0a 0a | #.w.-..The.name.of.the.widget... |
7ea0 | 70 72 6f 63 20 74 6b 42 75 74 74 6f 6e 44 6f 77 6e 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c | proc.tkButtonDown.w.{.....global |
7ec0 | 20 74 6b 50 72 69 76 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 20 5b | .tkPriv.....set.tkPriv(relief).[ |
7ee0 | 24 77 20 63 67 65 74 20 2d 72 65 6c 69 65 66 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 | $w.cget.-relief].....if.{[string |
7f00 | 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 | .compare.[$w.cget.-state]."disab |
7f20 | 6c 65 64 22 5d 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f | led"]}.{..set.tkPriv(buttonWindo |
7f40 | 77 29 20 24 77 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 72 65 6c 69 65 66 20 73 75 6e 6b | w).$w..$w.configure.-relief.sunk |
7f60 | 65 6e 20 2d 73 74 61 74 65 20 61 63 74 69 76 65 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 43 68 | en.-state.active.....}.}..#.tkCh |
7f80 | 65 63 6b 52 61 64 69 6f 44 6f 77 6e 20 2d 2d 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 | eckRadioDown.--.#.The.procedure. |
7fa0 | 62 65 6c 6f 77 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 | below.is.invoked.when.the.mouse. |
7fc0 | 62 75 74 74 6f 6e 20 69 73 20 70 72 65 73 73 65 64 20 69 6e 0a 23 20 61 20 62 75 74 74 6f 6e 20 | button.is.pressed.in.#.a.button. |
7fe0 | 77 69 64 67 65 74 2e 20 20 49 74 20 72 65 63 6f 72 64 73 20 74 68 65 20 66 61 63 74 20 74 68 61 | widget...It.records.the.fact.tha |
8000 | 74 20 74 68 65 20 6d 6f 75 73 65 20 69 73 20 69 6e 20 74 68 65 20 62 75 74 74 6f 6e 2c 0a 23 20 | t.the.mouse.is.in.the.button,.#. |
8020 | 73 61 76 65 73 20 74 68 65 20 62 75 74 74 6f 6e 27 73 20 72 65 6c 69 65 66 20 73 6f 20 69 74 20 | saves.the.button's.relief.so.it. |
8040 | 63 61 6e 20 62 65 20 72 65 73 74 6f 72 65 64 20 6c 61 74 65 72 2c 20 61 6e 64 20 63 68 61 6e 67 | can.be.restored.later,.and.chang |
8060 | 65 73 0a 23 20 74 68 65 20 72 65 6c 69 65 66 20 74 6f 20 73 75 6e 6b 65 6e 2e 0a 23 0a 23 20 41 | es.#.the.relief.to.sunken..#.#.A |
8080 | 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 | rguments:.#.w.-..The.name.of.the |
80a0 | 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 43 68 65 63 6b 52 61 64 69 6f 44 6f 77 6e 20 | .widget...proc.tkCheckRadioDown. |
80c0 | 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 73 65 74 20 74 6b | w.{.....global.tkPriv.....set.tk |
80e0 | 50 72 69 76 28 72 65 6c 69 65 66 29 20 5b 24 77 20 63 67 65 74 20 2d 72 65 6c 69 65 66 5d 0a 20 | Priv(relief).[$w.cget.-relief].. |
8100 | 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 | ...if.{[string.compare.[$w.cget. |
8120 | 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 | -state]."disabled"]}.{..set.tkPr |
8140 | 69 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 20 24 77 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 | iv(buttonWindow).$w..$w.configur |
8160 | 65 20 2d 73 74 61 74 65 20 61 63 74 69 76 65 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 42 75 74 | e.-state.active.....}.}..#.tkBut |
8180 | 74 6f 6e 55 70 20 2d 2d 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 62 65 6c 6f 77 20 69 | tonUp.--.#.The.procedure.below.i |
81a0 | 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 20 | s.invoked.when.the.mouse.button. |
81c0 | 69 73 20 72 65 6c 65 61 73 65 64 0a 23 20 69 6e 20 61 20 62 75 74 74 6f 6e 20 77 69 64 67 65 74 | is.released.#.in.a.button.widget |
81e0 | 2e 20 20 49 74 20 72 65 73 74 6f 72 65 73 20 74 68 65 20 62 75 74 74 6f 6e 27 73 20 72 65 6c 69 | ...It.restores.the.button's.reli |
8200 | 65 66 20 61 6e 64 20 69 6e 76 6f 6b 65 73 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 61 73 20 | ef.and.invokes.#.the.command.as. |
8220 | 6c 6f 6e 67 20 61 73 20 74 68 65 20 6d 6f 75 73 65 20 68 61 73 6e 27 74 20 6c 65 66 74 20 74 68 | long.as.the.mouse.hasn't.left.th |
8240 | 65 20 62 75 74 74 6f 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 | e.button..#.#.Arguments:.#.w.-.. |
8260 | 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b | The.name.of.the.widget...proc.tk |
8280 | 42 75 74 74 6f 6e 55 70 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 | ButtonUp.w.{.....global.tkPriv.. |
82a0 | 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 62 75 74 | ...if.{[string.equal.$tkPriv(but |
82c0 | 74 6f 6e 57 69 6e 64 6f 77 29 20 24 77 5d 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 62 75 | tonWindow).$w]}.{..set.tkPriv(bu |
82e0 | 74 74 6f 6e 57 69 6e 64 6f 77 29 20 22 22 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 72 65 | ttonWindow).""..$w.configure.-re |
8300 | 6c 69 65 66 20 24 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 0a 09 69 66 20 7b 5b 73 74 72 69 6e | lief.$tkPriv(relief)..if.{[strin |
8320 | 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 77 69 6e 64 6f 77 29 20 24 77 5d 0a 20 20 20 20 | g.equal.$tkPriv(window).$w]..... |
8340 | 20 20 20 20 20 20 20 20 20 20 26 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 | ..........&&.[string.compare.[$w |
8360 | 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 20 20 | .cget.-state]."disabled"]}.{.... |
8380 | 20 20 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 6e 6f 72 6d 61 6c 0a 09 20 20 | ..$w.configure.-state.normal.... |
83a0 | 20 20 75 70 6c 65 76 65 6c 20 23 30 20 5b 6c 69 73 74 20 24 77 20 69 6e 76 6f 6b 65 5d 0a 09 7d | ..uplevel.#0.[list.$w.invoke]..} |
83c0 | 0a 20 20 20 20 7d 0a 7d 0a 0a 7d 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 22 | .....}.}..}..if.{[string.match." |
83e0 | 75 6e 69 78 22 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 5d 7d 20 | unix".$tcl_platform(platform)]}. |
8400 | 7b 0a 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23 20 55 6e 69 78 20 | {..#####################.#.Unix. |
8420 | 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 | implementation.################# |
8440 | 23 23 23 23 0a 0a 23 20 74 6b 42 75 74 74 6f 6e 45 6e 74 65 72 20 2d 2d 0a 23 20 54 68 65 20 70 | ####..#.tkButtonEnter.--.#.The.p |
8460 | 72 6f 63 65 64 75 72 65 20 62 65 6c 6f 77 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 | rocedure.below.is.invoked.when.t |
8480 | 68 65 20 6d 6f 75 73 65 20 70 6f 69 6e 74 65 72 20 65 6e 74 65 72 73 20 61 0a 23 20 62 75 74 74 | he.mouse.pointer.enters.a.#.butt |
84a0 | 6f 6e 20 77 69 64 67 65 74 2e 20 20 49 74 20 72 65 63 6f 72 64 73 20 74 68 65 20 62 75 74 74 6f | on.widget...It.records.the.butto |
84c0 | 6e 20 77 65 27 72 65 20 69 6e 20 61 6e 64 20 63 68 61 6e 67 65 73 20 74 68 65 0a 23 20 73 74 61 | n.we're.in.and.changes.the.#.sta |
84e0 | 74 65 20 6f 66 20 74 68 65 20 62 75 74 74 6f 6e 20 74 6f 20 61 63 74 69 76 65 20 75 6e 6c 65 73 | te.of.the.button.to.active.unles |
8500 | 73 20 74 68 65 20 62 75 74 74 6f 6e 20 69 73 20 64 69 73 61 62 6c 65 64 2e 0a 23 0a 23 20 41 72 | s.the.button.is.disabled..#.#.Ar |
8520 | 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 | guments:.#.w.-..The.name.of.the. |
8540 | 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 42 75 74 74 6f 6e 45 6e 74 65 72 20 7b 77 7d 20 | widget...proc.tkButtonEnter.{w}. |
8560 | 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 | {.....global.tkPriv.....if.{[str |
8580 | 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 64 69 | ing.compare.[$w.cget.-state]."di |
85a0 | 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 | sabled"]}.{..$w.configure.-state |
85c0 | 20 61 63 74 69 76 65 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 | .active..if.{[string.equal.$tkPr |
85e0 | 69 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 20 24 77 5d 7d 20 7b 0a 09 20 20 20 20 24 77 20 | iv(buttonWindow).$w]}.{......$w. |
8600 | 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 61 63 74 69 76 65 20 2d 72 65 6c 69 65 66 20 | configure.-state.active.-relief. |
8620 | 73 75 6e 6b 65 6e 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 77 | sunken..}.....}.....set.tkPriv(w |
8640 | 69 6e 64 6f 77 29 20 24 77 0a 7d 0a 0a 23 20 74 6b 42 75 74 74 6f 6e 4c 65 61 76 65 20 2d 2d 0a | indow).$w.}..#.tkButtonLeave.--. |
8660 | 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 62 65 6c 6f 77 20 69 73 20 69 6e 76 6f 6b 65 64 | #.The.procedure.below.is.invoked |
8680 | 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 70 6f 69 6e 74 65 72 20 6c 65 61 76 65 73 20 61 | .when.the.mouse.pointer.leaves.a |
86a0 | 0a 23 20 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2e 20 20 49 74 20 63 68 61 6e 67 65 73 20 74 68 | .#.button.widget...It.changes.th |
86c0 | 65 20 73 74 61 74 65 20 6f 66 20 74 68 65 20 62 75 74 74 6f 6e 20 62 61 63 6b 20 74 6f 0a 23 20 | e.state.of.the.button.back.to.#. |
86e0 | 69 6e 61 63 74 69 76 65 2e 20 20 49 66 20 77 65 27 72 65 20 6c 65 61 76 69 6e 67 20 74 68 65 20 | inactive...If.we're.leaving.the. |
8700 | 62 75 74 74 6f 6e 20 77 69 6e 64 6f 77 20 77 69 74 68 20 61 20 6d 6f 75 73 65 20 62 75 74 74 6f | button.window.with.a.mouse.butto |
8720 | 6e 0a 23 20 70 72 65 73 73 65 64 20 28 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 | n.#.pressed.(tkPriv(buttonWindow |
8740 | 29 20 3d 3d 20 24 77 29 2c 20 72 65 73 74 6f 72 65 20 74 68 65 20 72 65 6c 69 65 66 20 6f 66 20 | ).==.$w),.restore.the.relief.of. |
8760 | 74 68 65 0a 23 20 62 75 74 74 6f 6e 20 74 6f 6f 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a | the.#.button.too..#.#.Arguments: |
8780 | 0a 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e 0a | .#.w.-..The.name.of.the.widget.. |
87a0 | 0a 70 72 6f 63 20 74 6b 42 75 74 74 6f 6e 4c 65 61 76 65 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 | .proc.tkButtonLeave.w.{.....glob |
87c0 | 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 | al.tkPriv.....if.{[string.compar |
87e0 | 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 | e.[$w.cget.-state]."disabled"]}. |
8800 | 7b 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 6e 6f 72 6d 61 6c 0a 20 20 | {..$w.configure.-state.normal... |
8820 | 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 | ..}.....if.{[string.equal.$tkPri |
8840 | 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 20 24 77 5d 7d 20 7b 0a 09 24 77 20 63 6f 6e 66 69 | v(buttonWindow).$w]}.{..$w.confi |
8860 | 67 75 72 65 20 2d 72 65 6c 69 65 66 20 24 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 0a 20 20 20 | gure.-relief.$tkPriv(relief).... |
8880 | 20 7d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 77 69 6e 64 6f 77 29 20 22 22 0a 7d 0a 0a | .}.....set.tkPriv(window)."".}.. |
88a0 | 23 20 74 6b 42 75 74 74 6f 6e 44 6f 77 6e 20 2d 2d 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 | #.tkButtonDown.--.#.The.procedur |
88c0 | 65 20 62 65 6c 6f 77 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 | e.below.is.invoked.when.the.mous |
88e0 | 65 20 62 75 74 74 6f 6e 20 69 73 20 70 72 65 73 73 65 64 20 69 6e 0a 23 20 61 20 62 75 74 74 6f | e.button.is.pressed.in.#.a.butto |
8900 | 6e 20 77 69 64 67 65 74 2e 20 20 49 74 20 72 65 63 6f 72 64 73 20 74 68 65 20 66 61 63 74 20 74 | n.widget...It.records.the.fact.t |
8920 | 68 61 74 20 74 68 65 20 6d 6f 75 73 65 20 69 73 20 69 6e 20 74 68 65 20 62 75 74 74 6f 6e 2c 0a | hat.the.mouse.is.in.the.button,. |
8940 | 23 20 73 61 76 65 73 20 74 68 65 20 62 75 74 74 6f 6e 27 73 20 72 65 6c 69 65 66 20 73 6f 20 69 | #.saves.the.button's.relief.so.i |
8960 | 74 20 63 61 6e 20 62 65 20 72 65 73 74 6f 72 65 64 20 6c 61 74 65 72 2c 20 61 6e 64 20 63 68 61 | t.can.be.restored.later,.and.cha |
8980 | 6e 67 65 73 0a 23 20 74 68 65 20 72 65 6c 69 65 66 20 74 6f 20 73 75 6e 6b 65 6e 2e 0a 23 0a 23 | nges.#.the.relief.to.sunken..#.# |
89a0 | 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 | .Arguments:.#.w.-..The.name.of.t |
89c0 | 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 42 75 74 74 6f 6e 44 6f 77 6e 20 77 20 | he.widget...proc.tkButtonDown.w. |
89e0 | 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 73 65 74 20 74 6b 50 72 | {.....global.tkPriv.....set.tkPr |
8a00 | 69 76 28 72 65 6c 69 65 66 29 20 5b 24 77 20 63 67 65 74 20 2d 72 65 6c 69 65 66 5d 0a 20 20 20 | iv(relief).[$w.cget.-relief].... |
8a20 | 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 | .if.{[string.compare.[$w.cget.-s |
8a40 | 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 | tate]."disabled"]}.{..set.tkPriv |
8a60 | 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 20 24 77 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 | (buttonWindow).$w..$w.configure. |
8a80 | 2d 72 65 6c 69 65 66 20 73 75 6e 6b 65 6e 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 42 75 74 74 | -relief.sunken.....}.}..#.tkButt |
8aa0 | 6f 6e 55 70 20 2d 2d 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 62 65 6c 6f 77 20 69 73 | onUp.--.#.The.procedure.below.is |
8ac0 | 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 20 69 | .invoked.when.the.mouse.button.i |
8ae0 | 73 20 72 65 6c 65 61 73 65 64 0a 23 20 69 6e 20 61 20 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2e | s.released.#.in.a.button.widget. |
8b00 | 20 20 49 74 20 72 65 73 74 6f 72 65 73 20 74 68 65 20 62 75 74 74 6f 6e 27 73 20 72 65 6c 69 65 | ..It.restores.the.button's.relie |
8b20 | 66 20 61 6e 64 20 69 6e 76 6f 6b 65 73 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 61 73 20 6c | f.and.invokes.#.the.command.as.l |
8b40 | 6f 6e 67 20 61 73 20 74 68 65 20 6d 6f 75 73 65 20 68 61 73 6e 27 74 20 6c 65 66 74 20 74 68 65 | ong.as.the.mouse.hasn't.left.the |
8b60 | 20 62 75 74 74 6f 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 | .button..#.#.Arguments:.#.w.-..T |
8b80 | 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 42 | he.name.of.the.widget...proc.tkB |
8ba0 | 75 74 74 6f 6e 55 70 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 | uttonUp.w.{.....global.tkPriv... |
8bc0 | 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 77 20 24 74 6b 50 72 69 76 28 62 | ..if.{[string.equal.$w.$tkPriv(b |
8be0 | 75 74 74 6f 6e 57 69 6e 64 6f 77 29 5d 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 62 75 74 | uttonWindow)]}.{..set.tkPriv(but |
8c00 | 74 6f 6e 57 69 6e 64 6f 77 29 20 22 22 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 72 65 6c | tonWindow).""..$w.configure.-rel |
8c20 | 69 65 66 20 24 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 | ief.$tkPriv(relief)..if.{[string |
8c40 | 20 65 71 75 61 6c 20 24 77 20 24 74 6b 50 72 69 76 28 77 69 6e 64 6f 77 29 5d 20 5c 0a 09 09 26 | .equal.$w.$tkPriv(window)].\...& |
8c60 | 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 | &.[string.compare.[$w.cget.-stat |
8c80 | 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 20 20 20 20 75 70 6c 65 76 65 6c 20 23 | e]."disabled"]}.{......uplevel.# |
8ca0 | 30 20 5b 6c 69 73 74 20 24 77 20 69 6e 76 6f 6b 65 5d 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 7d | 0.[list.$w.invoke]..}.....}.}..} |
8cc0 | 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 22 6d 61 63 69 6e 74 6f 73 68 22 20 | ..if.{[string.match."macintosh". |
8ce0 | 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 5d 7d 20 7b 0a 0a 23 23 23 | $tcl_platform(platform)]}.{..### |
8d00 | 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23 20 4d 61 63 20 69 6d 70 6c 65 6d 65 6e | #################.#.Mac.implemen |
8d20 | 74 61 74 69 6f 6e 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 0a 23 20 74 | tation.####################..#.t |
8d40 | 6b 42 75 74 74 6f 6e 45 6e 74 65 72 20 2d 2d 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 | kButtonEnter.--.#.The.procedure. |
8d60 | 62 65 6c 6f 77 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 | below.is.invoked.when.the.mouse. |
8d80 | 70 6f 69 6e 74 65 72 20 65 6e 74 65 72 73 20 61 0a 23 20 62 75 74 74 6f 6e 20 77 69 64 67 65 74 | pointer.enters.a.#.button.widget |
8da0 | 2e 20 20 49 74 20 72 65 63 6f 72 64 73 20 74 68 65 20 62 75 74 74 6f 6e 20 77 65 27 72 65 20 69 | ...It.records.the.button.we're.i |
8dc0 | 6e 20 61 6e 64 20 63 68 61 6e 67 65 73 20 74 68 65 0a 23 20 73 74 61 74 65 20 6f 66 20 74 68 65 | n.and.changes.the.#.state.of.the |
8de0 | 20 62 75 74 74 6f 6e 20 74 6f 20 61 63 74 69 76 65 20 75 6e 6c 65 73 73 20 74 68 65 20 62 75 74 | .button.to.active.unless.the.but |
8e00 | 74 6f 6e 20 69 73 20 64 69 73 61 62 6c 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a | ton.is.disabled..#.#.Arguments:. |
8e20 | 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e 0a 0a | #.w.-..The.name.of.the.widget... |
8e40 | 70 72 6f 63 20 74 6b 42 75 74 74 6f 6e 45 6e 74 65 72 20 7b 77 7d 20 7b 0a 20 20 20 20 67 6c 6f | proc.tkButtonEnter.{w}.{.....glo |
8e60 | 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 | bal.tkPriv.....if.{[string.compa |
8e80 | 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d | re.[$w.cget.-state]."disabled"]} |
8ea0 | 20 7b 0a 20 20 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 77 20 24 74 | .{.......if.{[string.equal.$w.$t |
8ec0 | 6b 50 72 69 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 5d 7d 20 7b 0a 09 20 20 20 20 24 77 20 | kPriv(buttonWindow)]}.{......$w. |
8ee0 | 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 61 63 74 69 76 65 0a 09 7d 0a 20 20 20 20 7d | configure.-state.active..}.....} |
8f00 | 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 77 69 6e 64 6f 77 29 20 24 77 0a 7d 0a 0a 23 20 | .....set.tkPriv(window).$w.}..#. |
8f20 | 74 6b 42 75 74 74 6f 6e 4c 65 61 76 65 20 2d 2d 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 | tkButtonLeave.--.#.The.procedure |
8f40 | 20 62 65 6c 6f 77 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 | .below.is.invoked.when.the.mouse |
8f60 | 20 70 6f 69 6e 74 65 72 20 6c 65 61 76 65 73 20 61 0a 23 20 62 75 74 74 6f 6e 20 77 69 64 67 65 | .pointer.leaves.a.#.button.widge |
8f80 | 74 2e 20 20 49 74 20 63 68 61 6e 67 65 73 20 74 68 65 20 73 74 61 74 65 20 6f 66 20 74 68 65 20 | t...It.changes.the.state.of.the. |
8fa0 | 62 75 74 74 6f 6e 20 62 61 63 6b 20 74 6f 0a 23 20 69 6e 61 63 74 69 76 65 2e 20 20 49 66 20 77 | button.back.to.#.inactive...If.w |
8fc0 | 65 27 72 65 20 6c 65 61 76 69 6e 67 20 74 68 65 20 62 75 74 74 6f 6e 20 77 69 6e 64 6f 77 20 77 | e're.leaving.the.button.window.w |
8fe0 | 69 74 68 20 61 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 0a 23 20 70 72 65 73 73 65 64 20 28 74 6b | ith.a.mouse.button.#.pressed.(tk |
9000 | 50 72 69 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 20 3d 3d 20 24 77 29 2c 20 72 65 73 74 6f | Priv(buttonWindow).==.$w),.resto |
9020 | 72 65 20 74 68 65 20 72 65 6c 69 65 66 20 6f 66 20 74 68 65 0a 23 20 62 75 74 74 6f 6e 20 74 6f | re.the.relief.of.the.#.button.to |
9040 | 6f 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d | o..#.#.Arguments:.#.w.-..The.nam |
9060 | 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 42 75 74 74 6f 6e 4c | e.of.the.widget...proc.tkButtonL |
9080 | 65 61 76 65 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 | eave.w.{.....global.tkPriv.....i |
90a0 | 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 77 20 24 74 6b 50 72 69 76 28 62 75 74 74 | f.{[string.equal.$w.$tkPriv(butt |
90c0 | 6f 6e 57 69 6e 64 6f 77 29 5d 7d 20 7b 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 | onWindow)]}.{..$w.configure.-sta |
90e0 | 74 65 20 6e 6f 72 6d 61 6c 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 77 | te.normal.....}.....set.tkPriv(w |
9100 | 69 6e 64 6f 77 29 20 22 22 0a 7d 0a 0a 23 20 74 6b 42 75 74 74 6f 6e 44 6f 77 6e 20 2d 2d 0a 23 | indow)."".}..#.tkButtonDown.--.# |
9120 | 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 62 65 6c 6f 77 20 69 73 20 69 6e 76 6f 6b 65 64 20 | .The.procedure.below.is.invoked. |
9140 | 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 20 69 73 20 70 72 65 73 73 65 64 | when.the.mouse.button.is.pressed |
9160 | 20 69 6e 0a 23 20 61 20 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2e 20 20 49 74 20 72 65 63 6f 72 | .in.#.a.button.widget...It.recor |
9180 | 64 73 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 74 68 65 20 6d 6f 75 73 65 20 69 73 20 69 6e | ds.the.fact.that.the.mouse.is.in |
91a0 | 20 74 68 65 20 62 75 74 74 6f 6e 2c 0a 23 20 73 61 76 65 73 20 74 68 65 20 62 75 74 74 6f 6e 27 | .the.button,.#.saves.the.button' |
91c0 | 73 20 72 65 6c 69 65 66 20 73 6f 20 69 74 20 63 61 6e 20 62 65 20 72 65 73 74 6f 72 65 64 20 6c | s.relief.so.it.can.be.restored.l |
91e0 | 61 74 65 72 2c 20 61 6e 64 20 63 68 61 6e 67 65 73 0a 23 20 74 68 65 20 72 65 6c 69 65 66 20 74 | ater,.and.changes.#.the.relief.t |
9200 | 6f 20 73 75 6e 6b 65 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 | o.sunken..#.#.Arguments:.#.w.-.. |
9220 | 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b | The.name.of.the.widget...proc.tk |
9240 | 42 75 74 74 6f 6e 44 6f 77 6e 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 | ButtonDown.w.{.....global.tkPriv |
9260 | 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 | .....if.{[string.compare.[$w.cge |
9280 | 74 20 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 73 65 74 20 74 6b | t.-state]."disabled"]}.{..set.tk |
92a0 | 50 72 69 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 20 24 77 0a 09 24 77 20 63 6f 6e 66 69 67 | Priv(buttonWindow).$w..$w.config |
92c0 | 75 72 65 20 2d 73 74 61 74 65 20 61 63 74 69 76 65 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 42 | ure.-state.active.....}.}..#.tkB |
92e0 | 75 74 74 6f 6e 55 70 20 2d 2d 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 62 65 6c 6f 77 | uttonUp.--.#.The.procedure.below |
9300 | 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 62 75 74 74 6f | .is.invoked.when.the.mouse.butto |
9320 | 6e 20 69 73 20 72 65 6c 65 61 73 65 64 0a 23 20 69 6e 20 61 20 62 75 74 74 6f 6e 20 77 69 64 67 | n.is.released.#.in.a.button.widg |
9340 | 65 74 2e 20 20 49 74 20 72 65 73 74 6f 72 65 73 20 74 68 65 20 62 75 74 74 6f 6e 27 73 20 72 65 | et...It.restores.the.button's.re |
9360 | 6c 69 65 66 20 61 6e 64 20 69 6e 76 6f 6b 65 73 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 61 | lief.and.invokes.#.the.command.a |
9380 | 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 20 6d 6f 75 73 65 20 68 61 73 6e 27 74 20 6c 65 66 74 20 | s.long.as.the.mouse.hasn't.left. |
93a0 | 74 68 65 20 62 75 74 74 6f 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d | the.button..#.#.Arguments:.#.w.- |
93c0 | 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 | ..The.name.of.the.widget...proc. |
93e0 | 74 6b 42 75 74 74 6f 6e 55 70 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 | tkButtonUp.w.{.....global.tkPriv |
9400 | 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 77 20 24 74 6b 50 72 69 | .....if.{[string.equal.$w.$tkPri |
9420 | 76 28 62 75 74 74 6f 6e 57 69 6e 64 6f 77 29 5d 7d 20 7b 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 | v(buttonWindow)]}.{..$w.configur |
9440 | 65 20 2d 73 74 61 74 65 20 6e 6f 72 6d 61 6c 0a 09 73 65 74 20 74 6b 50 72 69 76 28 62 75 74 74 | e.-state.normal..set.tkPriv(butt |
9460 | 6f 6e 57 69 6e 64 6f 77 29 20 22 22 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 | onWindow).""..if.{[string.equal. |
9480 | 24 77 20 24 74 6b 50 72 69 76 28 77 69 6e 64 6f 77 29 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | $w.$tkPriv(window)]............. |
94a0 | 20 20 26 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 | ..&&.[string.compare.[$w.cget.-s |
94c0 | 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 20 20 20 20 75 70 6c 65 76 65 | tate]."disabled"]}.{......upleve |
94e0 | 6c 20 23 30 20 5b 6c 69 73 74 20 24 77 20 69 6e 76 6f 6b 65 5d 0a 09 7d 0a 20 20 20 20 7d 0a 7d | l.#0.[list.$w.invoke]..}.....}.} |
9500 | 0a 0a 7d 0a 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23 20 53 68 61 72 65 64 | ..}..##################.#.Shared |
9520 | 20 72 6f 75 74 69 6e 65 73 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 0a 23 20 | .routines.##################..#. |
9540 | 74 6b 42 75 74 74 6f 6e 49 6e 76 6f 6b 65 20 2d 2d 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 | tkButtonInvoke.--.#.The.procedur |
9560 | 65 20 62 65 6c 6f 77 20 69 73 20 63 61 6c 6c 65 64 20 77 68 65 6e 20 61 20 62 75 74 74 6f 6e 20 | e.below.is.called.when.a.button. |
9580 | 69 73 20 69 6e 76 6f 6b 65 64 20 74 68 72 6f 75 67 68 0a 23 20 74 68 65 20 6b 65 79 62 6f 61 72 | is.invoked.through.#.the.keyboar |
95a0 | 64 2e 20 20 49 74 20 73 69 6d 75 6c 61 74 65 20 61 20 70 72 65 73 73 20 6f 66 20 74 68 65 20 62 | d...It.simulate.a.press.of.the.b |
95c0 | 75 74 74 6f 6e 20 76 69 61 20 74 68 65 20 6d 6f 75 73 65 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e | utton.via.the.mouse..#.#.Argumen |
95e0 | 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 | ts:.#.w.-..The.name.of.the.widge |
9600 | 74 2e 0a 0a 70 72 6f 63 20 74 6b 42 75 74 74 6f 6e 49 6e 76 6f 6b 65 20 77 20 7b 0a 20 20 20 20 | t...proc.tkButtonInvoke.w.{..... |
9620 | 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 | if.{[string.compare.[$w.cget.-st |
9640 | 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 73 65 74 20 6f 6c 64 52 65 6c 69 | ate]."disabled"]}.{..set.oldReli |
9660 | 65 66 20 5b 24 77 20 63 67 65 74 20 2d 72 65 6c 69 65 66 5d 0a 09 73 65 74 20 6f 6c 64 53 74 61 | ef.[$w.cget.-relief]..set.oldSta |
9680 | 74 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 | te.[$w.cget.-state]..$w.configur |
96a0 | 65 20 2d 73 74 61 74 65 20 61 63 74 69 76 65 20 2d 72 65 6c 69 65 66 20 73 75 6e 6b 65 6e 0a 09 | e.-state.active.-relief.sunken.. |
96c0 | 75 70 64 61 74 65 20 69 64 6c 65 74 61 73 6b 73 0a 09 61 66 74 65 72 20 31 30 30 0a 09 24 77 20 | update.idletasks..after.100..$w. |
96e0 | 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 24 6f 6c 64 53 74 61 74 65 20 2d 72 65 6c 69 | configure.-state.$oldState.-reli |
9700 | 65 66 20 24 6f 6c 64 52 65 6c 69 65 66 0a 09 75 70 6c 65 76 65 6c 20 23 30 20 5b 6c 69 73 74 20 | ef.$oldRelief..uplevel.#0.[list. |
9720 | 24 77 20 69 6e 76 6f 6b 65 5d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 43 68 65 63 6b 52 61 64 | $w.invoke].....}.}..#.tkCheckRad |
9740 | 69 6f 49 6e 76 6f 6b 65 20 2d 2d 0a 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 62 65 6c 6f | ioInvoke.--.#.The.procedure.belo |
9760 | 77 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 62 75 74 74 | w.is.invoked.when.the.mouse.butt |
9780 | 6f 6e 20 69 73 20 70 72 65 73 73 65 64 20 69 6e 0a 23 20 61 20 63 68 65 63 6b 62 75 74 74 6f 6e | on.is.pressed.in.#.a.checkbutton |
97a0 | 20 6f 72 20 72 61 64 69 6f 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2c 20 6f 72 20 77 68 65 6e 20 | .or.radiobutton.widget,.or.when. |
97c0 | 74 68 65 20 77 69 64 67 65 74 20 69 73 20 69 6e 76 6f 6b 65 64 0a 23 20 74 68 72 6f 75 67 68 20 | the.widget.is.invoked.#.through. |
97e0 | 74 68 65 20 6b 65 79 62 6f 61 72 64 2e 20 20 49 74 20 69 6e 76 6f 6b 65 73 20 74 68 65 20 77 69 | the.keyboard...It.invokes.the.wi |
9800 | 64 67 65 74 20 69 66 20 69 74 0a 23 20 69 73 6e 27 74 20 64 69 73 61 62 6c 65 64 2e 0a 23 0a 23 | dget.if.it.#.isn't.disabled..#.# |
9820 | 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 | .Arguments:.#.w.-..The.name.of.t |
9840 | 68 65 20 77 69 64 67 65 74 2e 0a 23 20 63 6d 64 20 2d 09 09 54 68 65 20 73 75 62 63 6f 6d 6d 61 | he.widget..#.cmd.-..The.subcomma |
9860 | 6e 64 20 74 6f 20 69 6e 76 6f 6b 65 20 28 6f 6e 65 20 6f 66 20 69 6e 76 6f 6b 65 2c 20 73 65 6c | nd.to.invoke.(one.of.invoke,.sel |
9880 | 65 63 74 2c 20 6f 72 20 64 65 73 65 6c 65 63 74 29 2e 0a 0a 70 72 6f 63 20 74 6b 43 68 65 63 6b | ect,.or.deselect)...proc.tkCheck |
98a0 | 52 61 64 69 6f 49 6e 76 6f 6b 65 20 7b 77 20 7b 63 6d 64 20 69 6e 76 6f 6b 65 7d 7d 20 7b 0a 20 | RadioInvoke.{w.{cmd.invoke}}.{.. |
98c0 | 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 | ...if.{[string.compare.[$w.cget. |
98e0 | 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 75 70 6c 65 76 65 6c 20 | -state]."disabled"]}.{..uplevel. |
9900 | 23 30 20 5b 6c 69 73 74 20 24 77 20 24 63 6d 64 5d 0a 20 20 20 20 7d 0a 7d 0a 0a 00 00 17 73 23 | #0.[list.$w.$cmd].....}.}.....s# |
9920 | 20 64 69 61 6c 6f 67 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 66 69 6c 65 20 64 65 66 | .dialog.tcl.--.#.#.This.file.def |
9940 | 69 6e 65 73 20 74 68 65 20 70 72 6f 63 65 64 75 72 65 20 74 6b 5f 64 69 61 6c 6f 67 2c 20 77 68 | ines.the.procedure.tk_dialog,.wh |
9960 | 69 63 68 20 63 72 65 61 74 65 73 20 61 20 64 69 61 6c 6f 67 0a 23 20 62 6f 78 20 63 6f 6e 74 61 | ich.creates.a.dialog.#.box.conta |
9980 | 69 6e 69 6e 67 20 61 20 62 69 74 6d 61 70 2c 20 61 20 6d 65 73 73 61 67 65 2c 20 61 6e 64 20 6f | ining.a.bitmap,.a.message,.and.o |
99a0 | 6e 65 20 6f 72 20 6d 6f 72 65 20 62 75 74 74 6f 6e 73 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 | ne.or.more.buttons..#.#.RCS:.@(# |
99c0 | 29 20 24 49 64 3a 20 64 69 61 6c 6f 67 2e 74 63 6c 2c 76 20 31 2e 37 20 32 30 30 30 2f 30 31 2f | ).$Id:.dialog.tcl,v.1.7.2000/01/ |
99e0 | 31 32 20 31 31 3a 34 35 3a 31 34 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 | 12.11:45:14.hobbs.Exp.$.#.#.Copy |
9a00 | 72 69 67 68 74 20 28 63 29 20 31 39 39 32 2d 31 39 39 33 20 54 68 65 20 52 65 67 65 6e 74 73 20 | right.(c).1992-1993.The.Regents. |
9a20 | 6f 66 20 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e | of.the.University.of.California. |
9a40 | 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 37 20 53 75 6e 20 4d | .#.Copyright.(c).1994-1997.Sun.M |
9a60 | 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 65 20 74 68 65 20 66 69 | icrosystems,.Inc..#.#.See.the.fi |
9a80 | 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 | le."license.terms".for.informati |
9aa0 | 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 | on.on.usage.and.redistribution.# |
9ac0 | 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 43 4c 41 49 | .of.this.file,.and.for.a.DISCLAI |
9ae0 | 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 0a 0a 23 0a 23 20 74 6b | MER.OF.ALL.WARRANTIES..#..#.#.tk |
9b00 | 5f 64 69 61 6c 6f 67 3a 0a 23 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 64 69 73 70 | _dialog:.#.#.This.procedure.disp |
9b20 | 6c 61 79 73 20 61 20 64 69 61 6c 6f 67 20 62 6f 78 2c 20 77 61 69 74 73 20 66 6f 72 20 61 20 62 | lays.a.dialog.box,.waits.for.a.b |
9b40 | 75 74 74 6f 6e 20 69 6e 20 74 68 65 20 64 69 61 6c 6f 67 0a 23 20 74 6f 20 62 65 20 69 6e 76 6f | utton.in.the.dialog.#.to.be.invo |
9b60 | 6b 65 64 2c 20 74 68 65 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 | ked,.then.returns.the.index.of.t |
9b80 | 68 65 20 73 65 6c 65 63 74 65 64 20 62 75 74 74 6f 6e 2e 20 20 49 66 20 74 68 65 0a 23 20 64 69 | he.selected.button...If.the.#.di |
9ba0 | 61 6c 6f 67 20 73 6f 6d 65 68 6f 77 20 67 65 74 73 20 64 65 73 74 72 6f 79 65 64 2c 20 2d 31 20 | alog.somehow.gets.destroyed,.-1. |
9bc0 | 69 73 20 72 65 74 75 72 6e 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 | is.returned..#.#.Arguments:.#.w. |
9be0 | 2d 09 09 57 69 6e 64 6f 77 20 74 6f 20 75 73 65 20 66 6f 72 20 64 69 61 6c 6f 67 20 74 6f 70 2d | -..Window.to.use.for.dialog.top- |
9c00 | 6c 65 76 65 6c 2e 0a 23 20 74 69 74 6c 65 20 2d 09 54 69 74 6c 65 20 74 6f 20 64 69 73 70 6c 61 | level..#.title.-.Title.to.displa |
9c20 | 79 20 69 6e 20 64 69 61 6c 6f 67 27 73 20 64 65 63 6f 72 61 74 69 76 65 20 66 72 61 6d 65 2e 0a | y.in.dialog's.decorative.frame.. |
9c40 | 23 20 74 65 78 74 20 2d 09 4d 65 73 73 61 67 65 20 74 6f 20 64 69 73 70 6c 61 79 20 69 6e 20 64 | #.text.-.Message.to.display.in.d |
9c60 | 69 61 6c 6f 67 2e 0a 23 20 62 69 74 6d 61 70 20 2d 09 42 69 74 6d 61 70 20 74 6f 20 64 69 73 70 | ialog..#.bitmap.-.Bitmap.to.disp |
9c80 | 6c 61 79 20 69 6e 20 64 69 61 6c 6f 67 20 28 65 6d 70 74 79 20 73 74 72 69 6e 67 20 6d 65 61 6e | lay.in.dialog.(empty.string.mean |
9ca0 | 73 20 6e 6f 6e 65 29 2e 0a 23 20 64 65 66 61 75 6c 74 20 2d 09 49 6e 64 65 78 20 6f 66 20 62 75 | s.none)..#.default.-.Index.of.bu |
9cc0 | 74 74 6f 6e 20 74 68 61 74 20 69 73 20 74 6f 20 64 69 73 70 6c 61 79 20 74 68 65 20 64 65 66 61 | tton.that.is.to.display.the.defa |
9ce0 | 75 6c 74 20 72 69 6e 67 0a 23 09 09 28 2d 31 20 6d 65 61 6e 73 20 6e 6f 6e 65 29 2e 0a 23 20 61 | ult.ring.#..(-1.means.none)..#.a |
9d00 | 72 67 73 20 2d 09 4f 6e 65 20 6f 72 20 6d 6f 72 65 20 73 74 72 69 6e 67 73 20 74 6f 20 64 69 73 | rgs.-.One.or.more.strings.to.dis |
9d20 | 70 6c 61 79 20 69 6e 20 62 75 74 74 6f 6e 73 20 61 63 72 6f 73 73 20 74 68 65 0a 23 09 09 62 6f | play.in.buttons.across.the.#..bo |
9d40 | 74 74 6f 6d 20 6f 66 20 74 68 65 20 64 69 61 6c 6f 67 20 62 6f 78 2e 0a 0a 70 72 6f 63 20 74 6b | ttom.of.the.dialog.box...proc.tk |
9d60 | 5f 64 69 61 6c 6f 67 20 7b 77 20 74 69 74 6c 65 20 74 65 78 74 20 62 69 74 6d 61 70 20 64 65 66 | _dialog.{w.title.text.bitmap.def |
9d80 | 61 75 6c 74 20 61 72 67 73 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 20 74 | ault.args}.{.....global.tkPriv.t |
9da0 | 63 6c 5f 70 6c 61 74 66 6f 72 6d 0a 0a 20 20 20 20 23 20 43 68 65 63 6b 20 74 68 61 74 20 24 64 | cl_platform......#.Check.that.$d |
9dc0 | 65 66 61 75 6c 74 20 77 61 73 20 70 72 6f 70 65 72 6c 79 20 67 69 76 65 6e 0a 20 20 20 20 69 66 | efault.was.properly.given.....if |
9de0 | 20 7b 5b 73 74 72 69 6e 67 20 69 73 20 69 6e 74 20 24 64 65 66 61 75 6c 74 5d 7d 20 7b 0a 09 69 | .{[string.is.int.$default]}.{..i |
9e00 | 66 20 7b 24 64 65 66 61 75 6c 74 20 3e 3d 20 5b 6c 6c 65 6e 67 74 68 20 24 61 72 67 73 5d 7d 20 | f.{$default.>=.[llength.$args]}. |
9e20 | 7b 0a 09 20 20 20 20 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 64 65 66 61 75 | {......return.-code.error."defau |
9e40 | 6c 74 20 62 75 74 74 6f 6e 20 69 6e 64 65 78 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 6e 75 6d | lt.button.index.greater.than.num |
9e60 | 62 65 72 20 6f 66 5c 0a 09 09 20 20 20 20 62 75 74 74 6f 6e 73 20 73 70 65 63 69 66 69 65 64 20 | ber.of\.......buttons.specified. |
9e80 | 66 6f 72 20 74 6b 5f 64 69 61 6c 6f 67 22 0a 09 7d 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b | for.tk_dialog"..}.....}.elseif.{ |
9ea0 | 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 7b 7d 20 24 64 65 66 61 75 6c 74 5d 7d 20 7b 0a 09 73 | [string.equal.{}.$default]}.{..s |
9ec0 | 65 74 20 64 65 66 61 75 6c 74 20 2d 31 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 | et.default.-1.....}.else.{..set. |
9ee0 | 64 65 66 61 75 6c 74 20 5b 6c 73 65 61 72 63 68 20 2d 65 78 61 63 74 20 24 61 72 67 73 20 24 64 | default.[lsearch.-exact.$args.$d |
9f00 | 65 66 61 75 6c 74 5d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 31 2e 20 43 72 65 61 74 65 20 74 | efault].....}......#.1..Create.t |
9f20 | 68 65 20 74 6f 70 2d 6c 65 76 65 6c 20 77 69 6e 64 6f 77 20 61 6e 64 20 64 69 76 69 64 65 20 69 | he.top-level.window.and.divide.i |
9f40 | 74 20 69 6e 74 6f 20 74 6f 70 0a 20 20 20 20 23 20 61 6e 64 20 62 6f 74 74 6f 6d 20 70 61 72 74 | t.into.top.....#.and.bottom.part |
9f60 | 73 2e 0a 0a 20 20 20 20 63 61 74 63 68 20 7b 64 65 73 74 72 6f 79 20 24 77 7d 0a 20 20 20 20 74 | s.......catch.{destroy.$w}.....t |
9f80 | 6f 70 6c 65 76 65 6c 20 24 77 20 2d 63 6c 61 73 73 20 44 69 61 6c 6f 67 0a 20 20 20 20 77 6d 20 | oplevel.$w.-class.Dialog.....wm. |
9fa0 | 74 69 74 6c 65 20 24 77 20 24 74 69 74 6c 65 0a 20 20 20 20 77 6d 20 69 63 6f 6e 6e 61 6d 65 20 | title.$w.$title.....wm.iconname. |
9fc0 | 24 77 20 44 69 61 6c 6f 67 0a 20 20 20 20 77 6d 20 70 72 6f 74 6f 63 6f 6c 20 24 77 20 57 4d 5f | $w.Dialog.....wm.protocol.$w.WM_ |
9fe0 | 44 45 4c 45 54 45 5f 57 49 4e 44 4f 57 20 7b 20 7d 0a 0a 20 20 20 20 23 20 54 68 65 20 66 6f 6c | DELETE_WINDOW.{.}......#.The.fol |
a000 | 6c 6f 77 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 64 69 | lowing.command.means.that.the.di |
a020 | 61 6c 6f 67 20 77 6f 6e 27 74 20 62 65 20 70 6f 73 74 65 64 20 69 66 0a 20 20 20 20 23 20 5b 77 | alog.won't.be.posted.if.....#.[w |
a040 | 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 77 5d 20 69 73 20 69 63 6f 6e 69 66 69 65 64 2c 20 62 75 | info.parent.$w].is.iconified,.bu |
a060 | 74 20 69 74 27 73 20 72 65 61 6c 6c 79 20 6e 65 65 64 65 64 3b 20 20 6f 74 68 65 72 77 69 73 65 | t.it's.really.needed;..otherwise |
a080 | 0a 20 20 20 20 23 20 74 68 65 20 64 69 61 6c 6f 67 20 63 61 6e 20 62 65 63 6f 6d 65 20 6f 62 73 | .....#.the.dialog.can.become.obs |
a0a0 | 63 75 72 65 64 20 62 79 20 6f 74 68 65 72 20 77 69 6e 64 6f 77 73 20 69 6e 20 74 68 65 20 61 70 | cured.by.other.windows.in.the.ap |
a0c0 | 70 6c 69 63 61 74 69 6f 6e 2c 0a 20 20 20 20 23 20 65 76 65 6e 20 74 68 6f 75 67 68 20 69 74 73 | plication,.....#.even.though.its |
a0e0 | 20 67 72 61 62 20 6b 65 65 70 73 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 61 70 70 6c | .grab.keeps.the.rest.of.the.appl |
a100 | 69 63 61 74 69 6f 6e 20 66 72 6f 6d 20 62 65 69 6e 67 20 75 73 65 64 2e 0a 0a 20 20 20 20 77 6d | ication.from.being.used.......wm |
a120 | 20 74 72 61 6e 73 69 65 6e 74 20 24 77 20 5b 77 69 6e 66 6f 20 74 6f 70 6c 65 76 65 6c 20 5b 77 | .transient.$w.[winfo.toplevel.[w |
a140 | 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 77 5d 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 | info.parent.$w]].....if.{[string |
a160 | 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 | .equal.$tcl_platform(platform)." |
a180 | 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 09 75 6e 73 75 70 70 6f 72 74 65 64 31 20 73 74 79 | macintosh"]}.{..unsupported1.sty |
a1a0 | 6c 65 20 24 77 20 64 42 6f 78 50 72 6f 63 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 72 61 6d 65 20 | le.$w.dBoxProc.....}......frame. |
a1c0 | 24 77 2e 62 6f 74 0a 20 20 20 20 66 72 61 6d 65 20 24 77 2e 74 6f 70 0a 20 20 20 20 69 66 20 7b | $w.bot.....frame.$w.top.....if.{ |
a1e0 | 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 | [string.equal.$tcl_platform(plat |
a200 | 66 6f 72 6d 29 20 22 75 6e 69 78 22 5d 7d 20 7b 0a 09 24 77 2e 62 6f 74 20 63 6f 6e 66 69 67 75 | form)."unix"]}.{..$w.bot.configu |
a220 | 72 65 20 2d 72 65 6c 69 65 66 20 72 61 69 73 65 64 20 2d 62 64 20 31 0a 09 24 77 2e 74 6f 70 20 | re.-relief.raised.-bd.1..$w.top. |
a240 | 63 6f 6e 66 69 67 75 72 65 20 2d 72 65 6c 69 65 66 20 72 61 69 73 65 64 20 2d 62 64 20 31 0a 20 | configure.-relief.raised.-bd.1.. |
a260 | 20 20 20 7d 0a 20 20 20 20 70 61 63 6b 20 24 77 2e 62 6f 74 20 2d 73 69 64 65 20 62 6f 74 74 6f | ...}.....pack.$w.bot.-side.botto |
a280 | 6d 20 2d 66 69 6c 6c 20 62 6f 74 68 0a 20 20 20 20 70 61 63 6b 20 24 77 2e 74 6f 70 20 2d 73 69 | m.-fill.both.....pack.$w.top.-si |
a2a0 | 64 65 20 74 6f 70 20 2d 66 69 6c 6c 20 62 6f 74 68 20 2d 65 78 70 61 6e 64 20 31 0a 0a 20 20 20 | de.top.-fill.both.-expand.1..... |
a2c0 | 20 23 20 32 2e 20 46 69 6c 6c 20 74 68 65 20 74 6f 70 20 70 61 72 74 20 77 69 74 68 20 62 69 74 | .#.2..Fill.the.top.part.with.bit |
a2e0 | 6d 61 70 20 61 6e 64 20 6d 65 73 73 61 67 65 20 28 75 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 0a | map.and.message.(use.the.option. |
a300 | 20 20 20 20 23 20 64 61 74 61 62 61 73 65 20 66 6f 72 20 2d 77 72 61 70 6c 65 6e 67 74 68 20 61 | ....#.database.for.-wraplength.a |
a320 | 6e 64 20 2d 66 6f 6e 74 20 73 6f 20 74 68 61 74 20 74 68 65 79 20 63 61 6e 20 62 65 0a 20 20 20 | nd.-font.so.that.they.can.be.... |
a340 | 20 23 20 6f 76 65 72 72 69 64 64 65 6e 20 62 79 20 74 68 65 20 63 61 6c 6c 65 72 29 2e 0a 0a 20 | .#.overridden.by.the.caller).... |
a360 | 20 20 20 6f 70 74 69 6f 6e 20 61 64 64 20 2a 44 69 61 6c 6f 67 2e 6d 73 67 2e 77 72 61 70 4c 65 | ...option.add.*Dialog.msg.wrapLe |
a380 | 6e 67 74 68 20 33 69 20 77 69 64 67 65 74 44 65 66 61 75 6c 74 0a 20 20 20 20 69 66 20 7b 5b 73 | ngth.3i.widgetDefault.....if.{[s |
a3a0 | 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f | tring.equal.$tcl_platform(platfo |
a3c0 | 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 09 6f 70 74 69 6f 6e 20 61 64 64 20 | rm)."macintosh"]}.{..option.add. |
a3e0 | 2a 44 69 61 6c 6f 67 2e 6d 73 67 2e 66 6f 6e 74 20 73 79 73 74 65 6d 20 77 69 64 67 65 74 44 65 | *Dialog.msg.font.system.widgetDe |
a400 | 66 61 75 6c 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 6f 70 74 69 6f 6e 20 61 64 64 20 2a | fault.....}.else.{..option.add.* |
a420 | 44 69 61 6c 6f 67 2e 6d 73 67 2e 66 6f 6e 74 20 7b 54 69 6d 65 73 20 31 32 7d 20 77 69 64 67 65 | Dialog.msg.font.{Times.12}.widge |
a440 | 74 44 65 66 61 75 6c 74 0a 20 20 20 20 7d 0a 0a 20 20 20 20 6c 61 62 65 6c 20 24 77 2e 6d 73 67 | tDefault.....}......label.$w.msg |
a460 | 20 2d 6a 75 73 74 69 66 79 20 6c 65 66 74 20 2d 74 65 78 74 20 24 74 65 78 74 0a 20 20 20 20 70 | .-justify.left.-text.$text.....p |
a480 | 61 63 6b 20 24 77 2e 6d 73 67 20 2d 69 6e 20 24 77 2e 74 6f 70 20 2d 73 69 64 65 20 72 69 67 68 | ack.$w.msg.-in.$w.top.-side.righ |
a4a0 | 74 20 2d 65 78 70 61 6e 64 20 31 20 2d 66 69 6c 6c 20 62 6f 74 68 20 2d 70 61 64 78 20 33 6d 20 | t.-expand.1.-fill.both.-padx.3m. |
a4c0 | 2d 70 61 64 79 20 33 6d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 | -pady.3m.....if.{[string.compare |
a4e0 | 20 24 62 69 74 6d 61 70 20 22 22 5d 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 | .$bitmap.""]}.{..if.{[string.equ |
a500 | 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 6d 61 63 69 | al.$tcl_platform(platform)."maci |
a520 | 6e 74 6f 73 68 22 5d 20 26 26 20 5c 0a 09 09 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 62 69 | ntosh"].&&.\...[string.equal.$bi |
a540 | 74 6d 61 70 20 22 65 72 72 6f 72 22 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 62 69 74 6d 61 70 | tmap."error"]}.{......set.bitmap |
a560 | 20 22 73 74 6f 70 22 0a 09 7d 0a 09 6c 61 62 65 6c 20 24 77 2e 62 69 74 6d 61 70 20 2d 62 69 74 | ."stop"..}..label.$w.bitmap.-bit |
a580 | 6d 61 70 20 24 62 69 74 6d 61 70 0a 09 70 61 63 6b 20 24 77 2e 62 69 74 6d 61 70 20 2d 69 6e 20 | map.$bitmap..pack.$w.bitmap.-in. |
a5a0 | 24 77 2e 74 6f 70 20 2d 73 69 64 65 20 6c 65 66 74 20 2d 70 61 64 78 20 33 6d 20 2d 70 61 64 79 | $w.top.-side.left.-padx.3m.-pady |
a5c0 | 20 33 6d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 33 2e 20 43 72 65 61 74 65 20 61 20 72 6f 77 | .3m.....}......#.3..Create.a.row |
a5e0 | 20 6f 66 20 62 75 74 74 6f 6e 73 20 61 74 20 74 68 65 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 | .of.buttons.at.the.bottom.of.the |
a600 | 20 64 69 61 6c 6f 67 2e 0a 0a 20 20 20 20 73 65 74 20 69 20 30 0a 20 20 20 20 66 6f 72 65 61 63 | .dialog.......set.i.0.....foreac |
a620 | 68 20 62 75 74 20 24 61 72 67 73 20 7b 0a 09 62 75 74 74 6f 6e 20 24 77 2e 62 75 74 74 6f 6e 24 | h.but.$args.{..button.$w.button$ |
a640 | 69 20 2d 74 65 78 74 20 24 62 75 74 20 2d 63 6f 6d 6d 61 6e 64 20 5b 6c 69 73 74 20 73 65 74 20 | i.-text.$but.-command.[list.set. |
a660 | 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 29 20 24 69 5d 0a 09 69 66 20 7b 24 69 20 3d 3d 20 24 64 | tkPriv(button).$i]..if.{$i.==.$d |
a680 | 65 66 61 75 6c 74 7d 20 7b 0a 09 20 20 20 20 24 77 2e 62 75 74 74 6f 6e 24 69 20 63 6f 6e 66 69 | efault}.{......$w.button$i.confi |
a6a0 | 67 75 72 65 20 2d 64 65 66 61 75 6c 74 20 61 63 74 69 76 65 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 | gure.-default.active..}.else.{.. |
a6c0 | 20 20 20 20 24 77 2e 62 75 74 74 6f 6e 24 69 20 63 6f 6e 66 69 67 75 72 65 20 2d 64 65 66 61 75 | ....$w.button$i.configure.-defau |
a6e0 | 6c 74 20 6e 6f 72 6d 61 6c 0a 09 7d 0a 09 67 72 69 64 20 24 77 2e 62 75 74 74 6f 6e 24 69 20 2d | lt.normal..}..grid.$w.button$i.- |
a700 | 69 6e 20 24 77 2e 62 6f 74 20 2d 63 6f 6c 75 6d 6e 20 24 69 20 2d 72 6f 77 20 30 20 2d 73 74 69 | in.$w.bot.-column.$i.-row.0.-sti |
a720 | 63 6b 79 20 65 77 20 2d 70 61 64 78 20 31 30 0a 09 67 72 69 64 20 63 6f 6c 75 6d 6e 63 6f 6e 66 | cky.ew.-padx.10..grid.columnconf |
a740 | 69 67 75 72 65 20 24 77 2e 62 6f 74 20 24 69 0a 09 23 20 57 65 20 62 6f 6f 73 74 20 74 68 65 20 | igure.$w.bot.$i..#.We.boost.the. |
a760 | 73 69 7a 65 20 6f 66 20 73 6f 6d 65 20 4d 61 63 20 62 75 74 74 6f 6e 73 20 66 6f 72 20 6c 26 66 | size.of.some.Mac.buttons.for.l&f |
a780 | 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 | ..if.{[string.equal.$tcl_platfor |
a7a0 | 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 09 20 20 20 | m(platform)."macintosh"]}.{..... |
a7c0 | 20 73 65 74 20 74 6d 70 20 5b 73 74 72 69 6e 67 20 74 6f 6c 6f 77 65 72 20 24 62 75 74 5d 0a 09 | .set.tmp.[string.tolower.$but].. |
a7e0 | 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6d 70 20 22 6f 6b 22 5d | ....if.{[string.equal.$tmp."ok"] |
a800 | 20 7c 7c 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6d 70 20 22 63 61 6e 63 65 6c 22 5d | .||.[string.equal.$tmp."cancel"] |
a820 | 7d 20 7b 0a 09 09 67 72 69 64 20 63 6f 6c 75 6d 6e 63 6f 6e 66 69 67 75 72 65 20 24 77 2e 62 6f | }.{...grid.columnconfigure.$w.bo |
a840 | 74 20 24 69 20 2d 6d 69 6e 73 69 7a 65 20 5b 65 78 70 72 20 7b 35 39 20 2b 20 32 30 7d 5d 0a 09 | t.$i.-minsize.[expr.{59.+.20}].. |
a860 | 20 20 20 20 7d 0a 09 7d 0a 09 69 6e 63 72 20 69 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 34 2e | ....}..}..incr.i.....}......#.4. |
a880 | 20 43 72 65 61 74 65 20 61 20 62 69 6e 64 69 6e 67 20 66 6f 72 20 3c 52 65 74 75 72 6e 3e 20 6f | .Create.a.binding.for.<Return>.o |
a8a0 | 6e 20 74 68 65 20 64 69 61 6c 6f 67 20 69 66 20 74 68 65 72 65 20 69 73 20 61 0a 20 20 20 20 23 | n.the.dialog.if.there.is.a.....# |
a8c0 | 20 64 65 66 61 75 6c 74 20 62 75 74 74 6f 6e 2e 0a 0a 20 20 20 20 69 66 20 7b 24 64 65 66 61 75 | .default.button.......if.{$defau |
a8e0 | 6c 74 20 3e 3d 20 30 7d 20 7b 0a 09 62 69 6e 64 20 24 77 20 3c 52 65 74 75 72 6e 3e 20 22 0a 09 | lt.>=.0}.{..bind.$w.<Return>.".. |
a900 | 5b 6c 69 73 74 20 24 77 2e 62 75 74 74 6f 6e 24 64 65 66 61 75 6c 74 5d 20 63 6f 6e 66 69 67 75 | [list.$w.button$default].configu |
a920 | 72 65 20 2d 73 74 61 74 65 20 61 63 74 69 76 65 20 2d 72 65 6c 69 65 66 20 73 75 6e 6b 65 6e 0a | re.-state.active.-relief.sunken. |
a940 | 09 75 70 64 61 74 65 20 69 64 6c 65 74 61 73 6b 73 0a 09 61 66 74 65 72 20 31 30 30 0a 09 73 65 | .update.idletasks..after.100..se |
a960 | 74 20 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 29 20 24 64 65 66 61 75 6c 74 0a 09 22 0a 20 20 20 | t.tkPriv(button).$default..".... |
a980 | 20 7d 0a 0a 20 20 20 20 23 20 35 2e 20 43 72 65 61 74 65 20 61 20 3c 44 65 73 74 72 6f 79 3e 20 | .}......#.5..Create.a.<Destroy>. |
a9a0 | 62 69 6e 64 69 6e 67 20 66 6f 72 20 74 68 65 20 77 69 6e 64 6f 77 20 74 68 61 74 20 73 65 74 73 | binding.for.the.window.that.sets |
a9c0 | 20 74 68 65 0a 20 20 20 20 23 20 62 75 74 74 6f 6e 20 76 61 72 69 61 62 6c 65 20 74 6f 20 2d 31 | .the.....#.button.variable.to.-1 |
a9e0 | 3b 20 20 74 68 69 73 20 69 73 20 6e 65 65 64 65 64 20 69 6e 20 63 61 73 65 20 73 6f 6d 65 74 68 | ;..this.is.needed.in.case.someth |
aa00 | 69 6e 67 20 68 61 70 70 65 6e 73 0a 20 20 20 20 23 20 74 68 61 74 20 64 65 73 74 72 6f 79 73 20 | ing.happens.....#.that.destroys. |
aa20 | 74 68 65 20 77 69 6e 64 6f 77 2c 20 73 75 63 68 20 61 73 20 69 74 73 20 70 61 72 65 6e 74 20 77 | the.window,.such.as.its.parent.w |
aa40 | 69 6e 64 6f 77 20 62 65 69 6e 67 20 64 65 73 74 72 6f 79 65 64 2e 0a 0a 20 20 20 20 62 69 6e 64 | indow.being.destroyed.......bind |
aa60 | 20 24 77 20 3c 44 65 73 74 72 6f 79 3e 20 7b 73 65 74 20 74 6b 50 72 69 76 28 62 75 74 74 6f 6e | .$w.<Destroy>.{set.tkPriv(button |
aa80 | 29 20 2d 31 7d 0a 0a 20 20 20 20 23 20 36 2e 20 57 69 74 68 64 72 61 77 20 74 68 65 20 77 69 6e | ).-1}......#.6..Withdraw.the.win |
aaa0 | 64 6f 77 2c 20 74 68 65 6e 20 75 70 64 61 74 65 20 61 6c 6c 20 74 68 65 20 67 65 6f 6d 65 74 72 | dow,.then.update.all.the.geometr |
aac0 | 79 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 0a 20 20 20 20 23 20 73 6f 20 77 65 20 6b 6e 6f 77 20 68 | y.information.....#.so.we.know.h |
aae0 | 6f 77 20 62 69 67 20 69 74 20 77 61 6e 74 73 20 74 6f 20 62 65 2c 20 74 68 65 6e 20 63 65 6e 74 | ow.big.it.wants.to.be,.then.cent |
ab00 | 65 72 20 74 68 65 20 77 69 6e 64 6f 77 20 69 6e 20 74 68 65 0a 20 20 20 20 23 20 64 69 73 70 6c | er.the.window.in.the.....#.displ |
ab20 | 61 79 20 61 6e 64 20 64 65 2d 69 63 6f 6e 69 66 79 20 69 74 2e 0a 0a 20 20 20 20 77 6d 20 77 69 | ay.and.de-iconify.it.......wm.wi |
ab40 | 74 68 64 72 61 77 20 24 77 0a 20 20 20 20 75 70 64 61 74 65 20 69 64 6c 65 74 61 73 6b 73 0a 20 | thdraw.$w.....update.idletasks.. |
ab60 | 20 20 20 73 65 74 20 78 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 73 63 72 65 65 6e 77 69 64 | ...set.x.[expr.{[winfo.screenwid |
ab80 | 74 68 20 24 77 5d 2f 32 20 2d 20 5b 77 69 6e 66 6f 20 72 65 71 77 69 64 74 68 20 24 77 5d 2f 32 | th.$w]/2.-.[winfo.reqwidth.$w]/2 |
aba0 | 20 5c 0a 09 20 20 20 20 2d 20 5b 77 69 6e 66 6f 20 76 72 6f 6f 74 78 20 5b 77 69 6e 66 6f 20 70 | .\......-.[winfo.vrootx.[winfo.p |
abc0 | 61 72 65 6e 74 20 24 77 5d 5d 7d 5d 0a 20 20 20 20 73 65 74 20 79 20 5b 65 78 70 72 20 7b 5b 77 | arent.$w]]}].....set.y.[expr.{[w |
abe0 | 69 6e 66 6f 20 73 63 72 65 65 6e 68 65 69 67 68 74 20 24 77 5d 2f 32 20 2d 20 5b 77 69 6e 66 6f | info.screenheight.$w]/2.-.[winfo |
ac00 | 20 72 65 71 68 65 69 67 68 74 20 24 77 5d 2f 32 20 5c 0a 09 20 20 20 20 2d 20 5b 77 69 6e 66 6f | .reqheight.$w]/2.\......-.[winfo |
ac20 | 20 76 72 6f 6f 74 79 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 77 5d 5d 7d 5d 0a 20 20 20 | .vrooty.[winfo.parent.$w]]}].... |
ac40 | 20 77 6d 20 67 65 6f 6d 20 24 77 20 2b 24 78 2b 24 79 0a 20 20 20 20 77 6d 20 64 65 69 63 6f 6e | .wm.geom.$w.+$x+$y.....wm.deicon |
ac60 | 69 66 79 20 24 77 0a 0a 20 20 20 20 23 20 37 2e 20 53 65 74 20 61 20 67 72 61 62 20 61 6e 64 20 | ify.$w......#.7..Set.a.grab.and. |
ac80 | 63 6c 61 69 6d 20 74 68 65 20 66 6f 63 75 73 20 74 6f 6f 2e 0a 0a 20 20 20 20 73 65 74 20 6f 6c | claim.the.focus.too.......set.ol |
aca0 | 64 46 6f 63 75 73 20 5b 66 6f 63 75 73 5d 0a 20 20 20 20 73 65 74 20 6f 6c 64 47 72 61 62 20 5b | dFocus.[focus].....set.oldGrab.[ |
acc0 | 67 72 61 62 20 63 75 72 72 65 6e 74 20 24 77 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 | grab.current.$w].....if.{[string |
ace0 | 20 63 6f 6d 70 61 72 65 20 24 6f 6c 64 47 72 61 62 20 22 22 5d 7d 20 7b 0a 09 73 65 74 20 67 72 | .compare.$oldGrab.""]}.{..set.gr |
ad00 | 61 62 53 74 61 74 75 73 20 5b 67 72 61 62 20 73 74 61 74 75 73 20 24 6f 6c 64 47 72 61 62 5d 0a | abStatus.[grab.status.$oldGrab]. |
ad20 | 20 20 20 20 7d 0a 20 20 20 20 67 72 61 62 20 24 77 0a 20 20 20 20 69 66 20 7b 24 64 65 66 61 75 | ....}.....grab.$w.....if.{$defau |
ad40 | 6c 74 20 3e 3d 20 30 7d 20 7b 0a 09 66 6f 63 75 73 20 24 77 2e 62 75 74 74 6f 6e 24 64 65 66 61 | lt.>=.0}.{..focus.$w.button$defa |
ad60 | 75 6c 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 66 6f 63 75 73 20 24 77 0a 20 20 20 20 7d | ult.....}.else.{..focus.$w.....} |
ad80 | 0a 0a 20 20 20 20 23 20 38 2e 20 57 61 69 74 20 66 6f 72 20 74 68 65 20 75 73 65 72 20 74 6f 20 | ......#.8..Wait.for.the.user.to. |
ada0 | 72 65 73 70 6f 6e 64 2c 20 74 68 65 6e 20 72 65 73 74 6f 72 65 20 74 68 65 20 66 6f 63 75 73 20 | respond,.then.restore.the.focus. |
adc0 | 61 6e 64 0a 20 20 20 20 23 20 72 65 74 75 72 6e 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 | and.....#.return.the.index.of.th |
ade0 | 65 20 73 65 6c 65 63 74 65 64 20 62 75 74 74 6f 6e 2e 20 20 52 65 73 74 6f 72 65 20 74 68 65 20 | e.selected.button...Restore.the. |
ae00 | 66 6f 63 75 73 0a 20 20 20 20 23 20 62 65 66 6f 72 65 20 64 65 6c 65 74 69 6e 67 20 74 68 65 20 | focus.....#.before.deleting.the. |
ae20 | 77 69 6e 64 6f 77 2c 20 73 69 6e 63 65 20 6f 74 68 65 72 77 69 73 65 20 74 68 65 20 77 69 6e 64 | window,.since.otherwise.the.wind |
ae40 | 6f 77 20 6d 61 6e 61 67 65 72 0a 20 20 20 20 23 20 6d 61 79 20 74 61 6b 65 20 74 68 65 20 66 6f | ow.manager.....#.may.take.the.fo |
ae60 | 63 75 73 20 61 77 61 79 20 73 6f 20 77 65 20 63 61 6e 27 74 20 72 65 64 69 72 65 63 74 20 69 74 | cus.away.so.we.can't.redirect.it |
ae80 | 2e 20 20 46 69 6e 61 6c 6c 79 2c 0a 20 20 20 20 23 20 72 65 73 74 6f 72 65 20 61 6e 79 20 67 72 | ...Finally,.....#.restore.any.gr |
aea0 | 61 62 20 74 68 61 74 20 77 61 73 20 69 6e 20 65 66 66 65 63 74 2e 0a 0a 20 20 20 20 74 6b 77 61 | ab.that.was.in.effect.......tkwa |
aec0 | 69 74 20 76 61 72 69 61 62 6c 65 20 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 29 0a 20 20 20 20 63 | it.variable.tkPriv(button).....c |
aee0 | 61 74 63 68 20 7b 66 6f 63 75 73 20 24 6f 6c 64 46 6f 63 75 73 7d 0a 20 20 20 20 63 61 74 63 68 | atch.{focus.$oldFocus}.....catch |
af00 | 20 7b 0a 09 23 20 49 74 27 73 20 70 6f 73 73 69 62 6c 65 20 74 68 61 74 20 74 68 65 20 77 69 6e | .{..#.It's.possible.that.the.win |
af20 | 64 6f 77 20 68 61 73 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 64 65 73 74 72 6f 79 65 64 2c 0a | dow.has.already.been.destroyed,. |
af40 | 09 23 20 68 65 6e 63 65 20 74 68 69 73 20 22 63 61 74 63 68 22 2e 20 20 44 65 6c 65 74 65 20 74 | .#.hence.this."catch"...Delete.t |
af60 | 68 65 20 44 65 73 74 72 6f 79 20 68 61 6e 64 6c 65 72 20 73 6f 20 74 68 61 74 0a 09 23 20 74 6b | he.Destroy.handler.so.that..#.tk |
af80 | 50 72 69 76 28 62 75 74 74 6f 6e 29 20 64 6f 65 73 6e 27 74 20 67 65 74 20 72 65 73 65 74 20 62 | Priv(button).doesn't.get.reset.b |
afa0 | 79 20 69 74 2e 0a 0a 09 62 69 6e 64 20 24 77 20 3c 44 65 73 74 72 6f 79 3e 20 7b 7d 0a 09 64 65 | y.it....bind.$w.<Destroy>.{}..de |
afc0 | 73 74 72 6f 79 20 24 77 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 | stroy.$w.....}.....if.{[string.c |
afe0 | 6f 6d 70 61 72 65 20 24 6f 6c 64 47 72 61 62 20 22 22 5d 7d 20 7b 0a 20 20 20 20 20 20 69 66 20 | ompare.$oldGrab.""]}.{.......if. |
b000 | 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 67 72 61 62 53 74 61 74 75 73 20 22 67 6c | {[string.compare.$grabStatus."gl |
b020 | 6f 62 61 6c 22 5d 7d 20 7b 0a 09 20 20 20 20 67 72 61 62 20 24 6f 6c 64 47 72 61 62 0a 20 20 20 | obal"]}.{......grab.$oldGrab.... |
b040 | 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 67 72 61 62 20 2d 67 6c 6f 62 | ...}.else.{...........grab.-glob |
b060 | 61 6c 20 24 6f 6c 64 47 72 61 62 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 | al.$oldGrab..}.....}.....return. |
b080 | 24 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 29 0a 7d 0a 00 00 3d fa 23 20 65 6e 74 72 79 2e 74 63 | $tkPriv(button).}...=.#.entry.tc |
b0a0 | 6c 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 66 69 6c 65 20 64 65 66 69 6e 65 73 20 74 68 65 20 64 | l.--.#.#.This.file.defines.the.d |
b0c0 | 65 66 61 75 6c 74 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 54 6b 20 65 6e 74 72 79 20 77 69 64 | efault.bindings.for.Tk.entry.wid |
b0e0 | 67 65 74 73 20 61 6e 64 20 70 72 6f 76 69 64 65 73 0a 23 20 70 72 6f 63 65 64 75 72 65 73 20 74 | gets.and.provides.#.procedures.t |
b100 | 68 61 74 20 68 65 6c 70 20 69 6e 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 74 68 6f 73 65 20 62 | hat.help.in.implementing.those.b |
b120 | 69 6e 64 69 6e 67 73 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 65 6e 74 72 | indings..#.#.RCS:.@(#).$Id:.entr |
b140 | 79 2e 74 63 6c 2c 76 20 31 2e 31 31 20 32 30 30 30 2f 30 31 2f 30 36 20 30 32 3a 32 32 3a 32 34 | y.tcl,v.1.11.2000/01/06.02:22:24 |
b160 | 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 | .hobbs.Exp.$.#.#.Copyright.(c).1 |
b180 | 39 39 32 2d 31 39 39 34 20 54 68 65 20 52 65 67 65 6e 74 73 20 6f 66 20 74 68 65 20 55 6e 69 76 | 992-1994.The.Regents.of.the.Univ |
b1a0 | 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e 0a 23 20 43 6f 70 79 72 69 67 68 | ersity.of.California..#.Copyrigh |
b1c0 | 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 37 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 | t.(c).1994-1997.Sun.Microsystems |
b1e0 | 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 | ,.Inc..#.#.See.the.file."license |
b200 | 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 | .terms".for.information.on.usage |
b220 | 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 | .and.redistribution.#.of.this.fi |
b240 | 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 | le,.and.for.a.DISCLAIMER.OF.ALL. |
b260 | 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | WARRANTIES..#..#---------------- |
b280 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
b2a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 45 6c 65 6d | -------------------------.#.Elem |
b2c0 | 65 6e 74 73 20 6f 66 20 74 6b 50 72 69 76 20 74 68 61 74 20 61 72 65 20 75 73 65 64 20 69 6e 20 | ents.of.tkPriv.that.are.used.in. |
b2e0 | 74 68 69 73 20 66 69 6c 65 3a 0a 23 0a 23 20 61 66 74 65 72 49 64 20 2d 09 09 49 66 20 6e 6f 6e | this.file:.#.#.afterId.-..If.non |
b300 | 2d 6e 75 6c 6c 2c 20 69 74 20 6d 65 61 6e 73 20 74 68 61 74 20 61 75 74 6f 2d 73 63 61 6e 6e 69 | -null,.it.means.that.auto-scanni |
b320 | 6e 67 20 69 73 20 75 6e 64 65 72 77 61 79 0a 23 09 09 09 61 6e 64 20 69 74 20 67 69 76 65 73 20 | ng.is.underway.#...and.it.gives. |
b340 | 74 68 65 20 22 61 66 74 65 72 22 20 69 64 20 66 6f 72 20 74 68 65 20 6e 65 78 74 20 61 75 74 6f | the."after".id.for.the.next.auto |
b360 | 2d 73 63 61 6e 0a 23 09 09 09 63 6f 6d 6d 61 6e 64 20 74 6f 20 62 65 20 65 78 65 63 75 74 65 64 | -scan.#...command.to.be.executed |
b380 | 2e 0a 23 20 6d 6f 75 73 65 4d 6f 76 65 64 20 2d 09 09 4e 6f 6e 2d 7a 65 72 6f 20 6d 65 61 6e 73 | ..#.mouseMoved.-..Non-zero.means |
b3a0 | 20 74 68 65 20 6d 6f 75 73 65 20 68 61 73 20 6d 6f 76 65 64 20 61 20 73 69 67 6e 69 66 69 63 61 | .the.mouse.has.moved.a.significa |
b3c0 | 6e 74 0a 23 09 09 09 61 6d 6f 75 6e 74 20 73 69 6e 63 65 20 74 68 65 20 62 75 74 74 6f 6e 20 77 | nt.#...amount.since.the.button.w |
b3e0 | 65 6e 74 20 64 6f 77 6e 20 28 73 6f 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2c 0a 23 09 09 09 73 | ent.down.(so,.for.example,.#...s |
b400 | 74 61 72 74 20 64 72 61 67 67 69 6e 67 20 6f 75 74 20 61 20 73 65 6c 65 63 74 69 6f 6e 29 2e 0a | tart.dragging.out.a.selection).. |
b420 | 23 20 70 72 65 73 73 58 20 2d 09 09 58 2d 63 6f 6f 72 64 69 6e 61 74 65 20 61 74 20 77 68 69 63 | #.pressX.-..X-coordinate.at.whic |
b440 | 68 20 74 68 65 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 20 77 61 73 20 70 72 65 73 73 65 64 2e 0a | h.the.mouse.button.was.pressed.. |
b460 | 23 20 73 65 6c 65 63 74 4d 6f 64 65 20 2d 09 09 54 68 65 20 73 74 79 6c 65 20 6f 66 20 73 65 6c | #.selectMode.-..The.style.of.sel |
b480 | 65 63 74 69 6f 6e 20 63 75 72 72 65 6e 74 6c 79 20 75 6e 64 65 72 77 61 79 3a 0a 23 09 09 09 63 | ection.currently.underway:.#...c |
b4a0 | 68 61 72 2c 20 77 6f 72 64 2c 20 6f 72 20 6c 69 6e 65 2e 0a 23 20 78 2c 20 79 20 2d 09 09 4c 61 | har,.word,.or.line..#.x,.y.-..La |
b4c0 | 73 74 20 6b 6e 6f 77 6e 20 6d 6f 75 73 65 20 63 6f 6f 72 64 69 6e 61 74 65 73 20 66 6f 72 20 73 | st.known.mouse.coordinates.for.s |
b4e0 | 63 61 6e 6e 69 6e 67 0a 23 09 09 09 61 6e 64 20 61 75 74 6f 2d 73 63 61 6e 6e 69 6e 67 2e 0a 23 | canning.#...and.auto-scanning..# |
b500 | 20 64 61 74 61 20 2d 09 09 55 73 65 64 20 66 6f 72 20 43 75 74 20 61 6e 64 20 43 6f 70 79 0a 23 | .data.-..Used.for.Cut.and.Copy.# |
b520 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
b540 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
b560 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ---------..#-------------------- |
b580 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
b5a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 68 65 20 63 6f 64 65 | ---------------------.#.The.code |
b5c0 | 20 62 65 6c 6f 77 20 63 72 65 61 74 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 63 6c 61 73 73 | .below.creates.the.default.class |
b5e0 | 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 65 6e 74 72 69 65 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d | .bindings.for.entries..#-------- |
b600 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
b620 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
b640 | 2d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 3c 43 75 74 3e 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 | -.bind.Entry.<<Cut>>.{.....if.{! |
b660 | 5b 63 61 74 63 68 20 7b 74 6b 45 6e 74 72 79 47 65 74 53 65 6c 65 63 74 69 6f 6e 20 25 57 7d 20 | [catch.{tkEntryGetSelection.%W}. |
b680 | 74 6b 50 72 69 76 28 64 61 74 61 29 5d 7d 20 7b 0a 09 63 6c 69 70 62 6f 61 72 64 20 63 6c 65 61 | tkPriv(data)]}.{..clipboard.clea |
b6a0 | 72 20 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 0a 09 63 6c 69 70 62 6f 61 72 64 20 61 70 70 65 6e | r.-displayof.%W..clipboard.appen |
b6c0 | 64 20 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 20 24 74 6b 50 72 69 76 28 64 61 74 61 29 0a 09 25 | d.-displayof.%W.$tkPriv(data)..% |
b6e0 | 57 20 64 65 6c 65 74 65 20 73 65 6c 2e 66 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 0a 09 75 6e 73 | W.delete.sel.first.sel.last..uns |
b700 | 65 74 20 74 6b 50 72 69 76 28 64 61 74 61 29 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 | et.tkPriv(data).....}.}.bind.Ent |
b720 | 72 79 20 3c 3c 43 6f 70 79 3e 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 5b 63 61 74 63 68 20 7b 74 | ry.<<Copy>>.{.....if.{![catch.{t |
b740 | 6b 45 6e 74 72 79 47 65 74 53 65 6c 65 63 74 69 6f 6e 20 25 57 7d 20 74 6b 50 72 69 76 28 64 61 | kEntryGetSelection.%W}.tkPriv(da |
b760 | 74 61 29 5d 7d 20 7b 0a 09 63 6c 69 70 62 6f 61 72 64 20 63 6c 65 61 72 20 2d 64 69 73 70 6c 61 | ta)]}.{..clipboard.clear.-displa |
b780 | 79 6f 66 20 25 57 0a 09 63 6c 69 70 62 6f 61 72 64 20 61 70 70 65 6e 64 20 2d 64 69 73 70 6c 61 | yof.%W..clipboard.append.-displa |
b7a0 | 79 6f 66 20 25 57 20 24 74 6b 50 72 69 76 28 64 61 74 61 29 0a 09 75 6e 73 65 74 20 74 6b 50 72 | yof.%W.$tkPriv(data)..unset.tkPr |
b7c0 | 69 76 28 64 61 74 61 29 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 3c 50 61 | iv(data).....}.}.bind.Entry.<<Pa |
b7e0 | 73 74 65 3e 3e 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 0a | ste>>.{.....global.tcl_platform. |
b800 | 20 20 20 20 63 61 74 63 68 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 | ....catch.{..if.{[string.compare |
b820 | 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 75 6e 69 78 22 5d | .$tcl_platform(platform)."unix"] |
b840 | 7d 20 7b 0a 09 20 20 20 20 63 61 74 63 68 20 7b 0a 09 09 25 57 20 64 65 6c 65 74 65 20 73 65 6c | }.{......catch.{...%W.delete.sel |
b860 | 2e 66 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 25 57 20 69 6e | .first.sel.last......}..}..%W.in |
b880 | 73 65 72 74 20 69 6e 73 65 72 74 20 5b 73 65 6c 65 63 74 69 6f 6e 20 67 65 74 20 2d 64 69 73 70 | sert.insert.[selection.get.-disp |
b8a0 | 6c 61 79 6f 66 20 25 57 20 2d 73 65 6c 65 63 74 69 6f 6e 20 43 4c 49 50 42 4f 41 52 44 5d 0a 09 | layof.%W.-selection.CLIPBOARD].. |
b8c0 | 74 6b 45 6e 74 72 79 53 65 65 49 6e 73 65 72 74 20 25 57 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 | tkEntrySeeInsert.%W.....}.}.bind |
b8e0 | 20 45 6e 74 72 79 20 3c 3c 43 6c 65 61 72 3e 3e 20 7b 0a 20 20 20 20 25 57 20 64 65 6c 65 74 65 | .Entry.<<Clear>>.{.....%W.delete |
b900 | 20 73 65 6c 2e 66 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 | .sel.first.sel.last.}.bind.Entry |
b920 | 20 3c 3c 50 61 73 74 65 53 65 6c 65 63 74 69 6f 6e 3e 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 | .<<PasteSelection>>.{.....if.{!$ |
b940 | 74 6b 50 72 69 76 28 6d 6f 75 73 65 4d 6f 76 65 64 29 20 7c 7c 20 24 74 6b 5f 73 74 72 69 63 74 | tkPriv(mouseMoved).||.$tk_strict |
b960 | 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 45 6e 74 72 79 50 61 73 74 65 20 25 57 20 25 78 0a 20 20 20 | Motif}.{..tkEntryPaste.%W.%x.... |
b980 | 20 7d 0a 7d 0a 0a 23 20 53 74 61 6e 64 61 72 64 20 4d 6f 74 69 66 20 62 69 6e 64 69 6e 67 73 3a | .}.}..#.Standard.Motif.bindings: |
b9a0 | 0a 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 31 3e 20 7b 0a 20 20 20 20 74 6b 45 6e 74 72 79 42 75 | ..bind.Entry.<1>.{.....tkEntryBu |
b9c0 | 74 74 6f 6e 31 20 25 57 20 25 78 0a 20 20 20 20 25 57 20 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 | tton1.%W.%x.....%W.selection.cle |
b9e0 | 61 72 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 42 31 2d 4d 6f 74 69 6f 6e 3e 20 7b 0a 20 20 | ar.}.bind.Entry.<B1-Motion>.{... |
ba00 | 20 20 73 65 74 20 74 6b 50 72 69 76 28 78 29 20 25 78 0a 20 20 20 20 74 6b 45 6e 74 72 79 4d 6f | ..set.tkPriv(x).%x.....tkEntryMo |
ba20 | 75 73 65 53 65 6c 65 63 74 20 25 57 20 25 78 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 44 6f | useSelect.%W.%x.}.bind.Entry.<Do |
ba40 | 75 62 6c 65 2d 31 3e 20 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d | uble-1>.{.....set.tkPriv(selectM |
ba60 | 6f 64 65 29 20 77 6f 72 64 0a 20 20 20 20 74 6b 45 6e 74 72 79 4d 6f 75 73 65 53 65 6c 65 63 74 | ode).word.....tkEntryMouseSelect |
ba80 | 20 25 57 20 25 78 0a 20 20 20 20 63 61 74 63 68 20 7b 25 57 20 69 63 75 72 73 6f 72 20 73 65 6c | .%W.%x.....catch.{%W.icursor.sel |
baa0 | 2e 66 69 72 73 74 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 54 72 69 70 6c 65 2d 31 3e 20 | .first}.}.bind.Entry.<Triple-1>. |
bac0 | 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 6c 69 6e | {.....set.tkPriv(selectMode).lin |
bae0 | 65 0a 20 20 20 20 74 6b 45 6e 74 72 79 4d 6f 75 73 65 53 65 6c 65 63 74 20 25 57 20 25 78 0a 20 | e.....tkEntryMouseSelect.%W.%x.. |
bb00 | 20 20 20 25 57 20 69 63 75 72 73 6f 72 20 30 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 53 68 | ...%W.icursor.0.}.bind.Entry.<Sh |
bb20 | 69 66 74 2d 31 3e 20 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f | ift-1>.{.....set.tkPriv(selectMo |
bb40 | 64 65 29 20 63 68 61 72 0a 20 20 20 20 25 57 20 73 65 6c 65 63 74 69 6f 6e 20 61 64 6a 75 73 74 | de).char.....%W.selection.adjust |
bb60 | 20 40 25 78 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 44 6f 75 62 6c 65 2d 53 68 69 66 74 2d | .@%x.}.bind.Entry.<Double-Shift- |
bb80 | 31 3e 09 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 | 1>.{.....set.tkPriv(selectMode). |
bba0 | 77 6f 72 64 0a 20 20 20 20 74 6b 45 6e 74 72 79 4d 6f 75 73 65 53 65 6c 65 63 74 20 25 57 20 25 | word.....tkEntryMouseSelect.%W.% |
bbc0 | 78 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 54 72 69 70 6c 65 2d 53 68 69 66 74 2d 31 3e 09 | x.}.bind.Entry.<Triple-Shift-1>. |
bbe0 | 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 6c 69 6e | {.....set.tkPriv(selectMode).lin |
bc00 | 65 0a 20 20 20 20 74 6b 45 6e 74 72 79 4d 6f 75 73 65 53 65 6c 65 63 74 20 25 57 20 25 78 0a 7d | e.....tkEntryMouseSelect.%W.%x.} |
bc20 | 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 42 31 2d 4c 65 61 76 65 3e 20 7b 0a 20 20 20 20 73 65 74 | .bind.Entry.<B1-Leave>.{.....set |
bc40 | 20 74 6b 50 72 69 76 28 78 29 20 25 78 0a 20 20 20 20 74 6b 45 6e 74 72 79 41 75 74 6f 53 63 61 | .tkPriv(x).%x.....tkEntryAutoSca |
bc60 | 6e 20 25 57 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 42 31 2d 45 6e 74 65 72 3e 20 7b 0a 20 | n.%W.}.bind.Entry.<B1-Enter>.{.. |
bc80 | 20 20 20 74 6b 43 61 6e 63 65 6c 52 65 70 65 61 74 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c | ...tkCancelRepeat.}.bind.Entry.< |
bca0 | 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 31 3e 20 7b 0a 20 20 20 20 74 6b 43 61 6e 63 65 6c 52 | ButtonRelease-1>.{.....tkCancelR |
bcc0 | 65 70 65 61 74 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 31 3e 20 7b | epeat.}.bind.Entry.<Control-1>.{ |
bce0 | 0a 20 20 20 20 25 57 20 69 63 75 72 73 6f 72 20 40 25 78 0a 7d 0a 0a 62 69 6e 64 20 45 6e 74 72 | .....%W.icursor.@%x.}..bind.Entr |
bd00 | 79 20 3c 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 45 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 | y.<Left>.{.....tkEntrySetCursor. |
bd20 | 25 57 20 5b 65 78 70 72 20 7b 5b 25 57 20 69 6e 64 65 78 20 69 6e 73 65 72 74 5d 20 2d 20 31 7d | %W.[expr.{[%W.index.insert].-.1} |
bd40 | 5d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 6b 45 | ].}.bind.Entry.<Right>.{.....tkE |
bd60 | 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 65 78 70 72 20 7b 5b 25 57 20 69 6e 64 65 | ntrySetCursor.%W.[expr.{[%W.inde |
bd80 | 78 20 69 6e 73 65 72 74 5d 20 2b 20 31 7d 5d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 53 68 | x.insert].+.1}].}.bind.Entry.<Sh |
bda0 | 69 66 74 2d 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 45 6e 74 72 79 4b 65 79 53 65 6c 65 63 74 | ift-Left>.{.....tkEntryKeySelect |
bdc0 | 20 25 57 20 5b 65 78 70 72 20 7b 5b 25 57 20 69 6e 64 65 78 20 69 6e 73 65 72 74 5d 20 2d 20 31 | .%W.[expr.{[%W.index.insert].-.1 |
bde0 | 7d 5d 0a 20 20 20 20 74 6b 45 6e 74 72 79 53 65 65 49 6e 73 65 72 74 20 25 57 0a 7d 0a 62 69 6e | }].....tkEntrySeeInsert.%W.}.bin |
be00 | 64 20 45 6e 74 72 79 20 3c 53 68 69 66 74 2d 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 6b 45 6e | d.Entry.<Shift-Right>.{.....tkEn |
be20 | 74 72 79 4b 65 79 53 65 6c 65 63 74 20 25 57 20 5b 65 78 70 72 20 7b 5b 25 57 20 69 6e 64 65 78 | tryKeySelect.%W.[expr.{[%W.index |
be40 | 20 69 6e 73 65 72 74 5d 20 2b 20 31 7d 5d 0a 20 20 20 20 74 6b 45 6e 74 72 79 53 65 65 49 6e 73 | .insert].+.1}].....tkEntrySeeIns |
be60 | 65 72 74 20 25 57 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 4c 65 66 | ert.%W.}.bind.Entry.<Control-Lef |
be80 | 74 3e 20 7b 0a 20 20 20 20 74 6b 45 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b | t>.{.....tkEntrySetCursor.%W.[tk |
bea0 | 45 6e 74 72 79 50 72 65 76 69 6f 75 73 57 6f 72 64 20 25 57 20 69 6e 73 65 72 74 5d 0a 7d 0a 62 | EntryPreviousWord.%W.insert].}.b |
bec0 | 69 6e 64 20 45 6e 74 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 | ind.Entry.<Control-Right>.{..... |
bee0 | 74 6b 45 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b 45 6e 74 72 79 4e 65 78 74 | tkEntrySetCursor.%W.[tkEntryNext |
bf00 | 57 6f 72 64 20 25 57 20 69 6e 73 65 72 74 5d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 53 68 | Word.%W.insert].}.bind.Entry.<Sh |
bf20 | 69 66 74 2d 43 6f 6e 74 72 6f 6c 2d 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 45 6e 74 72 79 4b | ift-Control-Left>.{.....tkEntryK |
bf40 | 65 79 53 65 6c 65 63 74 20 25 57 20 5b 74 6b 45 6e 74 72 79 50 72 65 76 69 6f 75 73 57 6f 72 64 | eySelect.%W.[tkEntryPreviousWord |
bf60 | 20 25 57 20 69 6e 73 65 72 74 5d 0a 20 20 20 20 74 6b 45 6e 74 72 79 53 65 65 49 6e 73 65 72 74 | .%W.insert].....tkEntrySeeInsert |
bf80 | 20 25 57 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 53 68 69 66 74 2d 43 6f 6e 74 72 6f 6c 2d | .%W.}.bind.Entry.<Shift-Control- |
bfa0 | 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 6b 45 6e 74 72 79 4b 65 79 53 65 6c 65 63 74 20 25 57 | Right>.{.....tkEntryKeySelect.%W |
bfc0 | 20 5b 74 6b 45 6e 74 72 79 4e 65 78 74 57 6f 72 64 20 25 57 20 69 6e 73 65 72 74 5d 0a 20 20 20 | .[tkEntryNextWord.%W.insert].... |
bfe0 | 20 74 6b 45 6e 74 72 79 53 65 65 49 6e 73 65 72 74 20 25 57 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 | .tkEntrySeeInsert.%W.}.bind.Entr |
c000 | 79 20 3c 48 6f 6d 65 3e 20 7b 0a 20 20 20 20 74 6b 45 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 | y.<Home>.{.....tkEntrySetCursor. |
c020 | 25 57 20 30 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 53 68 69 66 74 2d 48 6f 6d 65 3e 20 7b | %W.0.}.bind.Entry.<Shift-Home>.{ |
c040 | 0a 20 20 20 20 74 6b 45 6e 74 72 79 4b 65 79 53 65 6c 65 63 74 20 25 57 20 30 0a 20 20 20 20 74 | .....tkEntryKeySelect.%W.0.....t |
c060 | 6b 45 6e 74 72 79 53 65 65 49 6e 73 65 72 74 20 25 57 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 | kEntrySeeInsert.%W.}.bind.Entry. |
c080 | 3c 45 6e 64 3e 20 7b 0a 20 20 20 20 74 6b 45 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 25 57 20 | <End>.{.....tkEntrySetCursor.%W. |
c0a0 | 65 6e 64 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 53 68 69 66 74 2d 45 6e 64 3e 20 7b 0a 20 | end.}.bind.Entry.<Shift-End>.{.. |
c0c0 | 20 20 20 74 6b 45 6e 74 72 79 4b 65 79 53 65 6c 65 63 74 20 25 57 20 65 6e 64 0a 20 20 20 20 74 | ...tkEntryKeySelect.%W.end.....t |
c0e0 | 6b 45 6e 74 72 79 53 65 65 49 6e 73 65 72 74 20 25 57 0a 7d 0a 0a 62 69 6e 64 20 45 6e 74 72 79 | kEntrySeeInsert.%W.}..bind.Entry |
c100 | 20 3c 44 65 6c 65 74 65 3e 20 7b 0a 20 20 20 20 69 66 20 7b 5b 25 57 20 73 65 6c 65 63 74 69 6f | .<Delete>.{.....if.{[%W.selectio |
c120 | 6e 20 70 72 65 73 65 6e 74 5d 7d 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 73 65 6c 2e 66 69 72 | n.present]}.{..%W.delete.sel.fir |
c140 | 73 74 20 73 65 6c 2e 6c 61 73 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 25 57 20 64 65 6c | st.sel.last.....}.else.{..%W.del |
c160 | 65 74 65 20 69 6e 73 65 72 74 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 42 | ete.insert.....}.}.bind.Entry.<B |
c180 | 61 63 6b 53 70 61 63 65 3e 20 7b 0a 20 20 20 20 74 6b 45 6e 74 72 79 42 61 63 6b 73 70 61 63 65 | ackSpace>.{.....tkEntryBackspace |
c1a0 | 20 25 57 0a 7d 0a 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 73 70 61 63 65 | .%W.}..bind.Entry.<Control-space |
c1c0 | 3e 20 7b 0a 20 20 20 20 25 57 20 73 65 6c 65 63 74 69 6f 6e 20 66 72 6f 6d 20 69 6e 73 65 72 74 | >.{.....%W.selection.from.insert |
c1e0 | 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 53 65 6c 65 63 74 3e 20 7b 0a 20 20 20 20 25 57 20 | .}.bind.Entry.<Select>.{.....%W. |
c200 | 73 65 6c 65 63 74 69 6f 6e 20 66 72 6f 6d 20 69 6e 73 65 72 74 0a 7d 0a 62 69 6e 64 20 45 6e 74 | selection.from.insert.}.bind.Ent |
c220 | 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 53 68 69 66 74 2d 73 70 61 63 65 3e 20 7b 0a 20 20 20 20 25 | ry.<Control-Shift-space>.{.....% |
c240 | 57 20 73 65 6c 65 63 74 69 6f 6e 20 61 64 6a 75 73 74 20 69 6e 73 65 72 74 0a 7d 0a 62 69 6e 64 | W.selection.adjust.insert.}.bind |
c260 | 20 45 6e 74 72 79 20 3c 53 68 69 66 74 2d 53 65 6c 65 63 74 3e 20 7b 0a 20 20 20 20 25 57 20 73 | .Entry.<Shift-Select>.{.....%W.s |
c280 | 65 6c 65 63 74 69 6f 6e 20 61 64 6a 75 73 74 20 69 6e 73 65 72 74 0a 7d 0a 62 69 6e 64 20 45 6e | election.adjust.insert.}.bind.En |
c2a0 | 74 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 73 6c 61 73 68 3e 20 7b 0a 20 20 20 20 25 57 20 73 65 6c | try.<Control-slash>.{.....%W.sel |
c2c0 | 65 63 74 69 6f 6e 20 72 61 6e 67 65 20 30 20 65 6e 64 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 | ection.range.0.end.}.bind.Entry. |
c2e0 | 3c 43 6f 6e 74 72 6f 6c 2d 62 61 63 6b 73 6c 61 73 68 3e 20 7b 0a 20 20 20 20 25 57 20 73 65 6c | <Control-backslash>.{.....%W.sel |
c300 | 65 63 74 69 6f 6e 20 63 6c 65 61 72 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 4b 65 79 50 72 | ection.clear.}.bind.Entry.<KeyPr |
c320 | 65 73 73 3e 20 7b 0a 20 20 20 20 74 6b 45 6e 74 72 79 49 6e 73 65 72 74 20 25 57 20 25 41 0a 7d | ess>.{.....tkEntryInsert.%W.%A.} |
c340 | 0a 0a 23 20 49 67 6e 6f 72 65 20 61 6c 6c 20 41 6c 74 2c 20 4d 65 74 61 2c 20 61 6e 64 20 43 6f | ..#.Ignore.all.Alt,.Meta,.and.Co |
c360 | 6e 74 72 6f 6c 20 6b 65 79 70 72 65 73 73 65 73 20 75 6e 6c 65 73 73 20 65 78 70 6c 69 63 69 74 | ntrol.keypresses.unless.explicit |
c380 | 6c 79 20 62 6f 75 6e 64 2e 0a 23 20 4f 74 68 65 72 77 69 73 65 2c 20 69 66 20 61 20 77 69 64 67 | ly.bound..#.Otherwise,.if.a.widg |
c3a0 | 65 74 20 62 69 6e 64 69 6e 67 20 66 6f 72 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 69 73 20 64 | et.binding.for.one.of.these.is.d |
c3c0 | 65 66 69 6e 65 64 2c 20 74 68 65 0a 23 20 3c 4b 65 79 50 72 65 73 73 3e 20 63 6c 61 73 73 20 62 | efined,.the.#.<KeyPress>.class.b |
c3e0 | 69 6e 64 69 6e 67 20 77 69 6c 6c 20 61 6c 73 6f 20 66 69 72 65 20 61 6e 64 20 69 6e 73 65 72 74 | inding.will.also.fire.and.insert |
c400 | 20 74 68 65 20 63 68 61 72 61 63 74 65 72 2c 0a 23 20 77 68 69 63 68 20 69 73 20 77 72 6f 6e 67 | .the.character,.#.which.is.wrong |
c420 | 2e 20 20 44 69 74 74 6f 20 66 6f 72 20 45 73 63 61 70 65 2c 20 52 65 74 75 72 6e 2c 20 61 6e 64 | ...Ditto.for.Escape,.Return,.and |
c440 | 20 54 61 62 2e 0a 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 41 6c 74 2d 4b 65 79 50 72 65 73 73 3e | .Tab...bind.Entry.<Alt-KeyPress> |
c460 | 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 4d 65 74 61 2d 4b 65 | .{#.nothing}.bind.Entry.<Meta-Ke |
c480 | 79 50 72 65 73 73 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c | yPress>.{#.nothing}.bind.Entry.< |
c4a0 | 43 6f 6e 74 72 6f 6c 2d 4b 65 79 50 72 65 73 73 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 62 69 | Control-KeyPress>.{#.nothing}.bi |
c4c0 | 6e 64 20 45 6e 74 72 79 20 3c 45 73 63 61 70 65 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 62 69 | nd.Entry.<Escape>.{#.nothing}.bi |
c4e0 | 6e 64 20 45 6e 74 72 79 20 3c 52 65 74 75 72 6e 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 62 69 | nd.Entry.<Return>.{#.nothing}.bi |
c500 | 6e 64 20 45 6e 74 72 79 20 3c 4b 50 5f 45 6e 74 65 72 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a | nd.Entry.<KP_Enter>.{#.nothing}. |
c520 | 62 69 6e 64 20 45 6e 74 72 79 20 3c 54 61 62 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 69 66 20 | bind.Entry.<Tab>.{#.nothing}.if. |
c540 | 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 | {[string.equal.$tcl_platform(pla |
c560 | 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 09 62 69 6e 64 20 45 6e 74 | tform)."macintosh"]}.{..bind.Ent |
c580 | 72 79 20 3c 43 6f 6d 6d 61 6e 64 2d 4b 65 79 50 72 65 73 73 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 | ry.<Command-KeyPress>.{#.nothing |
c5a0 | 7d 0a 7d 0a 0a 23 20 4f 6e 20 57 69 6e 64 6f 77 73 2c 20 70 61 73 74 65 20 69 73 20 64 6f 6e 65 | }.}..#.On.Windows,.paste.is.done |
c5c0 | 20 75 73 69 6e 67 20 53 68 69 66 74 2d 49 6e 73 65 72 74 2e 20 20 53 68 69 66 74 2d 49 6e 73 65 | .using.Shift-Insert...Shift-Inse |
c5e0 | 72 74 20 61 6c 72 65 61 64 79 0a 23 20 67 65 6e 65 72 61 74 65 73 20 74 68 65 20 3c 3c 50 61 73 | rt.already.#.generates.the.<<Pas |
c600 | 74 65 3e 3e 20 65 76 65 6e 74 2c 20 73 6f 20 77 65 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 | te>>.event,.so.we.don't.need.to. |
c620 | 64 6f 20 61 6e 79 74 68 69 6e 67 20 68 65 72 65 2e 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f | do.anything.here..if.{[string.co |
c640 | 6d 70 61 72 65 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 77 | mpare.$tcl_platform(platform)."w |
c660 | 69 6e 64 6f 77 73 22 5d 7d 20 7b 0a 20 20 20 20 62 69 6e 64 20 45 6e 74 72 79 20 3c 49 6e 73 65 | indows"]}.{.....bind.Entry.<Inse |
c680 | 72 74 3e 20 7b 0a 09 63 61 74 63 68 20 7b 74 6b 45 6e 74 72 79 49 6e 73 65 72 74 20 25 57 20 5b | rt>.{..catch.{tkEntryInsert.%W.[ |
c6a0 | 73 65 6c 65 63 74 69 6f 6e 20 67 65 74 20 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 5d 7d 0a 20 20 | selection.get.-displayof.%W]}... |
c6c0 | 20 20 7d 0a 7d 0a 0a 23 20 41 64 64 69 74 69 6f 6e 61 6c 20 65 6d 61 63 73 2d 6c 69 6b 65 20 62 | ..}.}..#.Additional.emacs-like.b |
c6e0 | 69 6e 64 69 6e 67 73 3a 0a 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 61 3e | indings:..bind.Entry.<Control-a> |
c700 | 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 | .{.....if.{!$tk_strictMotif}.{.. |
c720 | 74 6b 45 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 25 57 20 30 0a 20 20 20 20 7d 0a 7d 0a 62 69 | tkEntrySetCursor.%W.0.....}.}.bi |
c740 | 6e 64 20 45 6e 74 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 62 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 | nd.Entry.<Control-b>.{.....if.{! |
c760 | 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 45 6e 74 72 79 53 65 74 43 75 | $tk_strictMotif}.{..tkEntrySetCu |
c780 | 72 73 6f 72 20 25 57 20 5b 65 78 70 72 20 7b 5b 25 57 20 69 6e 64 65 78 20 69 6e 73 65 72 74 5d | rsor.%W.[expr.{[%W.index.insert] |
c7a0 | 20 2d 20 31 7d 5d 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 43 6f 6e 74 72 | .-.1}].....}.}.bind.Entry.<Contr |
c7c0 | 6f 6c 2d 64 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 | ol-d>.{.....if.{!$tk_strictMotif |
c7e0 | 7d 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 69 6e 73 65 72 74 0a 20 20 20 20 7d 0a 7d 0a 62 69 | }.{..%W.delete.insert.....}.}.bi |
c800 | 6e 64 20 45 6e 74 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 65 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 | nd.Entry.<Control-e>.{.....if.{! |
c820 | 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 45 6e 74 72 79 53 65 74 43 75 | $tk_strictMotif}.{..tkEntrySetCu |
c840 | 72 73 6f 72 20 25 57 20 65 6e 64 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c | rsor.%W.end.....}.}.bind.Entry.< |
c860 | 43 6f 6e 74 72 6f 6c 2d 66 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 | Control-f>.{.....if.{!$tk_strict |
c880 | 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 45 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 65 | Motif}.{..tkEntrySetCursor.%W.[e |
c8a0 | 78 70 72 20 7b 5b 25 57 20 69 6e 64 65 78 20 69 6e 73 65 72 74 5d 20 2b 20 31 7d 5d 0a 20 20 20 | xpr.{[%W.index.insert].+.1}].... |
c8c0 | 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 68 3e 20 7b 0a 20 20 | .}.}.bind.Entry.<Control-h>.{... |
c8e0 | 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 45 6e 74 | ..if.{!$tk_strictMotif}.{..tkEnt |
c900 | 72 79 42 61 63 6b 73 70 61 63 65 20 25 57 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 | ryBackspace.%W.....}.}.bind.Entr |
c920 | 79 20 3c 43 6f 6e 74 72 6f 6c 2d 6b 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 | y.<Control-k>.{.....if.{!$tk_str |
c940 | 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 69 6e 73 65 72 74 20 65 6e | ictMotif}.{..%W.delete.insert.en |
c960 | 64 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 43 6f 6e 74 72 6f 6c 2d 74 3e | d.....}.}.bind.Entry.<Control-t> |
c980 | 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 | .{.....if.{!$tk_strictMotif}.{.. |
c9a0 | 74 6b 45 6e 74 72 79 54 72 61 6e 73 70 6f 73 65 20 25 57 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 | tkEntryTranspose.%W.....}.}.bind |
c9c0 | 20 45 6e 74 72 79 20 3c 4d 65 74 61 2d 62 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 | .Entry.<Meta-b>.{.....if.{!$tk_s |
c9e0 | 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 45 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 | trictMotif}.{..tkEntrySetCursor. |
ca00 | 25 57 20 5b 74 6b 45 6e 74 72 79 50 72 65 76 69 6f 75 73 57 6f 72 64 20 25 57 20 69 6e 73 65 72 | %W.[tkEntryPreviousWord.%W.inser |
ca20 | 74 5d 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 4d 65 74 61 2d 64 3e 20 7b | t].....}.}.bind.Entry.<Meta-d>.{ |
ca40 | 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 | .....if.{!$tk_strictMotif}.{..%W |
ca60 | 20 64 65 6c 65 74 65 20 69 6e 73 65 72 74 20 5b 74 6b 45 6e 74 72 79 4e 65 78 74 57 6f 72 64 20 | .delete.insert.[tkEntryNextWord. |
ca80 | 25 57 20 69 6e 73 65 72 74 5d 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 4d | %W.insert].....}.}.bind.Entry.<M |
caa0 | 65 74 61 2d 66 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 | eta-f>.{.....if.{!$tk_strictMoti |
cac0 | 66 7d 20 7b 0a 09 74 6b 45 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b 45 6e 74 | f}.{..tkEntrySetCursor.%W.[tkEnt |
cae0 | 72 79 4e 65 78 74 57 6f 72 64 20 25 57 20 69 6e 73 65 72 74 5d 0a 20 20 20 20 7d 0a 7d 0a 62 69 | ryNextWord.%W.insert].....}.}.bi |
cb00 | 6e 64 20 45 6e 74 72 79 20 3c 4d 65 74 61 2d 42 61 63 6b 53 70 61 63 65 3e 20 7b 0a 20 20 20 20 | nd.Entry.<Meta-BackSpace>.{..... |
cb20 | 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 20 64 65 6c 65 | if.{!$tk_strictMotif}.{..%W.dele |
cb40 | 74 65 20 5b 74 6b 45 6e 74 72 79 50 72 65 76 69 6f 75 73 57 6f 72 64 20 25 57 20 69 6e 73 65 72 | te.[tkEntryPreviousWord.%W.inser |
cb60 | 74 5d 20 69 6e 73 65 72 74 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 4d 65 | t].insert.....}.}.bind.Entry.<Me |
cb80 | 74 61 2d 44 65 6c 65 74 65 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 | ta-Delete>.{.....if.{!$tk_strict |
cba0 | 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 5b 74 6b 45 6e 74 72 79 50 72 65 76 | Motif}.{..%W.delete.[tkEntryPrev |
cbc0 | 69 6f 75 73 57 6f 72 64 20 25 57 20 69 6e 73 65 72 74 5d 20 69 6e 73 65 72 74 0a 20 20 20 20 7d | iousWord.%W.insert].insert.....} |
cbe0 | 0a 7d 0a 0a 23 20 41 20 66 65 77 20 61 64 64 69 74 69 6f 6e 61 6c 20 62 69 6e 64 69 6e 67 73 20 | .}..#.A.few.additional.bindings. |
cc00 | 6f 66 20 6d 79 20 6f 77 6e 2e 0a 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 32 3e 20 7b 0a 20 20 20 | of.my.own...bind.Entry.<2>.{.... |
cc20 | 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 20 73 63 61 | .if.{!$tk_strictMotif}.{..%W.sca |
cc40 | 6e 20 6d 61 72 6b 20 25 78 0a 09 73 65 74 20 74 6b 50 72 69 76 28 78 29 20 25 78 0a 09 73 65 74 | n.mark.%x..set.tkPriv(x).%x..set |
cc60 | 20 74 6b 50 72 69 76 28 79 29 20 25 79 0a 09 73 65 74 20 74 6b 50 72 69 76 28 6d 6f 75 73 65 4d | .tkPriv(y).%y..set.tkPriv(mouseM |
cc80 | 6f 76 65 64 29 20 30 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 45 6e 74 72 79 20 3c 42 32 2d 4d | oved).0.....}.}.bind.Entry.<B2-M |
cca0 | 6f 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 | otion>.{.....if.{!$tk_strictMoti |
ccc0 | 66 7d 20 7b 0a 09 69 66 20 7b 61 62 73 28 25 78 2d 24 74 6b 50 72 69 76 28 78 29 29 20 3e 20 32 | f}.{..if.{abs(%x-$tkPriv(x)).>.2 |
cce0 | 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 6d 6f 75 73 65 4d 6f 76 65 64 29 20 | }.{......set.tkPriv(mouseMoved). |
cd00 | 31 0a 09 7d 0a 09 25 57 20 73 63 61 6e 20 64 72 61 67 74 6f 20 25 78 0a 20 20 20 20 7d 0a 7d 0a | 1..}..%W.scan.dragto.%x.....}.}. |
cd20 | 0a 23 20 74 6b 45 6e 74 72 79 43 6c 6f 73 65 73 74 47 61 70 20 2d 2d 0a 23 20 47 69 76 65 6e 20 | .#.tkEntryClosestGap.--.#.Given. |
cd40 | 78 20 61 6e 64 20 79 20 63 6f 6f 72 64 69 6e 61 74 65 73 2c 20 74 68 69 73 20 70 72 6f 63 65 64 | x.and.y.coordinates,.this.proced |
cd60 | 75 72 65 20 66 69 6e 64 73 20 74 68 65 20 63 6c 6f 73 65 73 74 20 62 6f 75 6e 64 61 72 79 0a 23 | ure.finds.the.closest.boundary.# |
cd80 | 20 62 65 74 77 65 65 6e 20 63 68 61 72 61 63 74 65 72 73 20 74 6f 20 74 68 65 20 67 69 76 65 6e | .between.characters.to.the.given |
cda0 | 20 63 6f 6f 72 64 69 6e 61 74 65 73 20 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 | .coordinates.and.returns.the.ind |
cdc0 | 65 78 0a 23 20 6f 66 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20 6a 75 73 74 20 61 66 74 65 72 | ex.#.of.the.character.just.after |
cde0 | 20 74 68 65 20 62 6f 75 6e 64 61 72 79 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 | .the.boundary..#.#.Arguments:.#. |
ce00 | 77 20 2d 09 09 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 2e 0a 23 20 78 20 2d 09 09 58 2d | w.-..The.entry.window..#.x.-..X- |
ce20 | 63 6f 6f 72 64 69 6e 61 74 65 20 77 69 74 68 69 6e 20 74 68 65 20 77 69 6e 64 6f 77 2e 0a 0a 70 | coordinate.within.the.window...p |
ce40 | 72 6f 63 20 74 6b 45 6e 74 72 79 43 6c 6f 73 65 73 74 47 61 70 20 7b 77 20 78 7d 20 7b 0a 20 20 | roc.tkEntryClosestGap.{w.x}.{... |
ce60 | 20 20 73 65 74 20 70 6f 73 20 5b 24 77 20 69 6e 64 65 78 20 40 24 78 5d 0a 20 20 20 20 73 65 74 | ..set.pos.[$w.index.@$x].....set |
ce80 | 20 62 62 6f 78 20 5b 24 77 20 62 62 6f 78 20 24 70 6f 73 5d 0a 20 20 20 20 69 66 20 7b 28 24 78 | .bbox.[$w.bbox.$pos].....if.{($x |
cea0 | 20 2d 20 5b 6c 69 6e 64 65 78 20 24 62 62 6f 78 20 30 5d 29 20 3c 20 28 5b 6c 69 6e 64 65 78 20 | .-.[lindex.$bbox.0]).<.([lindex. |
cec0 | 24 62 62 6f 78 20 32 5d 2f 32 29 7d 20 7b 0a 09 72 65 74 75 72 6e 20 24 70 6f 73 0a 20 20 20 20 | $bbox.2]/2)}.{..return.$pos..... |
cee0 | 7d 0a 20 20 20 20 69 6e 63 72 20 70 6f 73 0a 7d 0a 0a 23 20 74 6b 45 6e 74 72 79 42 75 74 74 6f | }.....incr.pos.}..#.tkEntryButto |
cf00 | 6e 31 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 | n1.--.#.This.procedure.is.invoke |
cf20 | 64 20 74 6f 20 68 61 6e 64 6c 65 20 62 75 74 74 6f 6e 2d 31 20 70 72 65 73 73 65 73 20 69 6e 20 | d.to.handle.button-1.presses.in. |
cf40 | 65 6e 74 72 79 0a 23 20 77 69 64 67 65 74 73 2e 20 20 49 74 20 6d 6f 76 65 73 20 74 68 65 20 69 | entry.#.widgets...It.moves.the.i |
cf60 | 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 2c 20 73 65 74 73 20 74 68 65 20 73 65 6c 65 63 74 | nsertion.cursor,.sets.the.select |
cf80 | 69 6f 6e 20 61 6e 63 68 6f 72 2c 0a 23 20 61 6e 64 20 63 6c 61 69 6d 73 20 74 68 65 20 69 6e 70 | ion.anchor,.#.and.claims.the.inp |
cfa0 | 75 74 20 66 6f 63 75 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 | ut.focus..#.#.Arguments:.#.w.-.. |
cfc0 | 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 62 75 | The.entry.window.in.which.the.bu |
cfe0 | 74 74 6f 6e 20 77 61 73 20 70 72 65 73 73 65 64 2e 0a 23 20 78 20 2d 09 09 54 68 65 20 78 2d 63 | tton.was.pressed..#.x.-..The.x-c |
d000 | 6f 6f 72 64 69 6e 61 74 65 20 6f 66 20 74 68 65 20 62 75 74 74 6f 6e 20 70 72 65 73 73 2e 0a 0a | oordinate.of.the.button.press... |
d020 | 70 72 6f 63 20 74 6b 45 6e 74 72 79 42 75 74 74 6f 6e 31 20 7b 77 20 78 7d 20 7b 0a 20 20 20 20 | proc.tkEntryButton1.{w.x}.{..... |
d040 | 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 | global.tkPriv......set.tkPriv(se |
d060 | 6c 65 63 74 4d 6f 64 65 29 20 63 68 61 72 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 6d 6f | lectMode).char.....set.tkPriv(mo |
d080 | 75 73 65 4d 6f 76 65 64 29 20 30 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 70 72 65 73 73 | useMoved).0.....set.tkPriv(press |
d0a0 | 58 29 20 24 78 0a 20 20 20 20 24 77 20 69 63 75 72 73 6f 72 20 5b 74 6b 45 6e 74 72 79 43 6c 6f | X).$x.....$w.icursor.[tkEntryClo |
d0c0 | 73 65 73 74 47 61 70 20 24 77 20 24 78 5d 0a 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 | sestGap.$w.$x].....$w.selection. |
d0e0 | 66 72 6f 6d 20 69 6e 73 65 72 74 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 | from.insert.....if.{[string.equa |
d100 | 6c 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 6e 6f 72 6d 61 6c 22 5d 7d 20 7b 66 | l.[$w.cget.-state]."normal"]}.{f |
d120 | 6f 63 75 73 20 24 77 7d 0a 7d 0a 0a 23 20 74 6b 45 6e 74 72 79 4d 6f 75 73 65 53 65 6c 65 63 74 | ocus.$w}.}..#.tkEntryMouseSelect |
d140 | 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 | .--.#.This.procedure.is.invoked. |
d160 | 77 68 65 6e 20 64 72 61 67 67 69 6e 67 20 6f 75 74 20 61 20 73 65 6c 65 63 74 69 6f 6e 20 77 69 | when.dragging.out.a.selection.wi |
d180 | 74 68 0a 23 20 74 68 65 20 6d 6f 75 73 65 2e 20 20 44 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 | th.#.the.mouse...Depending.on.th |
d1a0 | 65 20 73 65 6c 65 63 74 69 6f 6e 20 6d 6f 64 65 20 28 63 68 61 72 61 63 74 65 72 2c 20 77 6f 72 | e.selection.mode.(character,.wor |
d1c0 | 64 2c 0a 23 20 6c 69 6e 65 29 20 69 74 20 73 65 6c 65 63 74 73 20 69 6e 20 64 69 66 66 65 72 65 | d,.#.line).it.selects.in.differe |
d1e0 | 6e 74 2d 73 69 7a 65 64 20 75 6e 69 74 73 2e 20 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 0a | nt-sized.units...This.procedure. |
d200 | 23 20 69 67 6e 6f 72 65 73 20 6d 6f 75 73 65 20 6d 6f 74 69 6f 6e 73 20 69 6e 69 74 69 61 6c 6c | #.ignores.mouse.motions.initiall |
d220 | 79 20 75 6e 74 69 6c 20 74 68 65 20 6d 6f 75 73 65 20 68 61 73 20 6d 6f 76 65 64 20 66 72 6f 6d | y.until.the.mouse.has.moved.from |
d240 | 0a 23 20 6f 6e 65 20 63 68 61 72 61 63 74 65 72 20 74 6f 20 61 6e 6f 74 68 65 72 20 6f 72 20 75 | .#.one.character.to.another.or.u |
d260 | 6e 74 69 6c 20 74 68 65 72 65 20 68 61 76 65 20 62 65 65 6e 20 6d 75 6c 74 69 70 6c 65 20 63 6c | ntil.there.have.been.multiple.cl |
d280 | 69 63 6b 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 | icks..#.#.Arguments:.#.w.-..The. |
d2a0 | 65 6e 74 72 79 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 62 75 74 74 6f 6e | entry.window.in.which.the.button |
d2c0 | 20 77 61 73 20 70 72 65 73 73 65 64 2e 0a 23 20 78 20 2d 09 09 54 68 65 20 78 2d 63 6f 6f 72 64 | .was.pressed..#.x.-..The.x-coord |
d2e0 | 69 6e 61 74 65 20 6f 66 20 74 68 65 20 6d 6f 75 73 65 2e 0a 0a 70 72 6f 63 20 74 6b 45 6e 74 72 | inate.of.the.mouse...proc.tkEntr |
d300 | 79 4d 6f 75 73 65 53 65 6c 65 63 74 20 7b 77 20 78 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 | yMouseSelect.{w.x}.{.....global. |
d320 | 74 6b 50 72 69 76 0a 0a 20 20 20 20 73 65 74 20 63 75 72 20 5b 74 6b 45 6e 74 72 79 43 6c 6f 73 | tkPriv......set.cur.[tkEntryClos |
d340 | 65 73 74 47 61 70 20 24 77 20 24 78 5d 0a 20 20 20 20 73 65 74 20 61 6e 63 68 6f 72 20 5b 24 77 | estGap.$w.$x].....set.anchor.[$w |
d360 | 20 69 6e 64 65 78 20 61 6e 63 68 6f 72 5d 0a 20 20 20 20 69 66 20 7b 28 24 63 75 72 20 21 3d 20 | .index.anchor].....if.{($cur.!=. |
d380 | 24 61 6e 63 68 6f 72 29 20 7c 7c 20 28 61 62 73 28 24 74 6b 50 72 69 76 28 70 72 65 73 73 58 29 | $anchor).||.(abs($tkPriv(pressX) |
d3a0 | 20 2d 20 24 78 29 20 3e 3d 20 33 29 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 6d 6f 75 73 | .-.$x).>=.3)}.{..set.tkPriv(mous |
d3c0 | 65 4d 6f 76 65 64 29 20 31 0a 20 20 20 20 7d 0a 20 20 20 20 73 77 69 74 63 68 20 24 74 6b 50 72 | eMoved).1.....}.....switch.$tkPr |
d3e0 | 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 7b 0a 09 63 68 61 72 20 7b 0a 09 20 20 20 20 69 66 | iv(selectMode).{..char.{......if |
d400 | 20 7b 24 74 6b 50 72 69 76 28 6d 6f 75 73 65 4d 6f 76 65 64 29 7d 20 7b 0a 09 09 69 66 20 7b 24 | .{$tkPriv(mouseMoved)}.{...if.{$ |
d420 | 63 75 72 20 3c 20 24 61 6e 63 68 6f 72 7d 20 7b 0a 09 09 20 20 20 20 24 77 20 73 65 6c 65 63 74 | cur.<.$anchor}.{.......$w.select |
d440 | 69 6f 6e 20 72 61 6e 67 65 20 24 63 75 72 20 24 61 6e 63 68 6f 72 0a 09 09 7d 20 65 6c 73 65 69 | ion.range.$cur.$anchor...}.elsei |
d460 | 66 20 7b 24 63 75 72 20 3e 20 24 61 6e 63 68 6f 72 7d 20 7b 0a 09 09 20 20 20 20 24 77 20 73 65 | f.{$cur.>.$anchor}.{.......$w.se |
d480 | 6c 65 63 74 69 6f 6e 20 72 61 6e 67 65 20 24 61 6e 63 68 6f 72 20 24 63 75 72 0a 09 09 7d 20 65 | lection.range.$anchor.$cur...}.e |
d4a0 | 6c 73 65 20 7b 0a 09 09 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 0a 09 | lse.{.......$w.selection.clear.. |
d4c0 | 09 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 77 6f 72 64 20 7b 0a 09 20 20 20 20 69 66 20 7b 24 63 | .}......}..}..word.{......if.{$c |
d4e0 | 75 72 20 3c 20 5b 24 77 20 69 6e 64 65 78 20 61 6e 63 68 6f 72 5d 7d 20 7b 0a 09 09 73 65 74 20 | ur.<.[$w.index.anchor]}.{...set. |
d500 | 62 65 66 6f 72 65 20 5b 74 63 6c 5f 77 6f 72 64 42 72 65 61 6b 42 65 66 6f 72 65 20 5b 24 77 20 | before.[tcl_wordBreakBefore.[$w. |
d520 | 67 65 74 5d 20 24 63 75 72 5d 0a 09 09 73 65 74 20 61 66 74 65 72 20 5b 74 63 6c 5f 77 6f 72 64 | get].$cur]...set.after.[tcl_word |
d540 | 42 72 65 61 6b 41 66 74 65 72 20 5b 24 77 20 67 65 74 5d 20 5b 65 78 70 72 20 7b 24 61 6e 63 68 | BreakAfter.[$w.get].[expr.{$anch |
d560 | 6f 72 2d 31 7d 5d 5d 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 73 65 74 20 62 65 66 6f | or-1}]]......}.else.{...set.befo |
d580 | 72 65 20 5b 74 63 6c 5f 77 6f 72 64 42 72 65 61 6b 42 65 66 6f 72 65 20 5b 24 77 20 67 65 74 5d | re.[tcl_wordBreakBefore.[$w.get] |
d5a0 | 20 24 61 6e 63 68 6f 72 5d 0a 09 09 73 65 74 20 61 66 74 65 72 20 5b 74 63 6c 5f 77 6f 72 64 42 | .$anchor]...set.after.[tcl_wordB |
d5c0 | 72 65 61 6b 41 66 74 65 72 20 5b 24 77 20 67 65 74 5d 20 5b 65 78 70 72 20 7b 24 63 75 72 20 2d | reakAfter.[$w.get].[expr.{$cur.- |
d5e0 | 20 31 7d 5d 5d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 24 62 65 66 6f 72 65 20 3c 20 | .1}]]......}......if.{$before.<. |
d600 | 30 7d 20 7b 0a 09 09 73 65 74 20 62 65 66 6f 72 65 20 30 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 | 0}.{...set.before.0......}...... |
d620 | 69 66 20 7b 24 61 66 74 65 72 20 3c 20 30 7d 20 7b 0a 09 09 73 65 74 20 61 66 74 65 72 20 65 6e | if.{$after.<.0}.{...set.after.en |
d640 | 64 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 72 61 6e 67 65 | d......}......$w.selection.range |
d660 | 20 24 62 65 66 6f 72 65 20 24 61 66 74 65 72 0a 09 7d 0a 09 6c 69 6e 65 20 7b 0a 09 20 20 20 20 | .$before.$after..}..line.{...... |
d680 | 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 72 61 6e 67 65 20 30 20 65 6e 64 0a 09 7d 0a 20 20 20 20 | $w.selection.range.0.end..}..... |
d6a0 | 7d 0a 20 20 20 20 75 70 64 61 74 65 20 69 64 6c 65 74 61 73 6b 73 0a 7d 0a 0a 23 20 74 6b 45 6e | }.....update.idletasks.}..#.tkEn |
d6c0 | 74 72 79 50 61 73 74 65 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 73 65 74 | tryPaste.--.#.This.procedure.set |
d6e0 | 73 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 20 74 6f 20 74 68 65 20 63 75 | s.the.insertion.cursor.to.the.cu |
d700 | 72 72 65 6e 74 20 6d 6f 75 73 65 20 70 6f 73 69 74 69 6f 6e 2c 0a 23 20 70 61 73 74 65 73 20 74 | rrent.mouse.position,.#.pastes.t |
d720 | 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 74 68 65 72 65 2c 20 61 6e 64 20 73 65 74 73 20 74 68 65 | he.selection.there,.and.sets.the |
d740 | 20 66 6f 63 75 73 20 74 6f 20 74 68 65 20 77 69 6e 64 6f 77 2e 0a 23 0a 23 20 41 72 67 75 6d 65 | .focus.to.the.window..#.#.Argume |
d760 | 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 2e 0a 23 20 | nts:.#.w.-..The.entry.window..#. |
d780 | 78 20 2d 09 09 58 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 6d 6f 75 73 65 2e 0a 0a 70 | x.-..X.position.of.the.mouse...p |
d7a0 | 72 6f 63 20 74 6b 45 6e 74 72 79 50 61 73 74 65 20 7b 77 20 78 7d 20 7b 0a 20 20 20 20 67 6c 6f | roc.tkEntryPaste.{w.x}.{.....glo |
d7c0 | 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 24 77 20 69 63 75 72 73 6f 72 20 5b 74 6b 45 6e | bal.tkPriv......$w.icursor.[tkEn |
d7e0 | 74 72 79 43 6c 6f 73 65 73 74 47 61 70 20 24 77 20 24 78 5d 0a 20 20 20 20 63 61 74 63 68 20 7b | tryClosestGap.$w.$x].....catch.{ |
d800 | 24 77 20 69 6e 73 65 72 74 20 69 6e 73 65 72 74 20 5b 73 65 6c 65 63 74 69 6f 6e 20 67 65 74 20 | $w.insert.insert.[selection.get. |
d820 | 2d 64 69 73 70 6c 61 79 6f 66 20 24 77 5d 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 | -displayof.$w]}.....if.{[string. |
d840 | 65 71 75 61 6c 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 6e 6f 72 6d 61 6c 22 5d | equal.[$w.cget.-state]."normal"] |
d860 | 7d 20 7b 66 6f 63 75 73 20 24 77 7d 0a 7d 0a 0a 23 20 74 6b 45 6e 74 72 79 41 75 74 6f 53 63 61 | }.{focus.$w}.}..#.tkEntryAutoSca |
d880 | 6e 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 | n.--.#.This.procedure.is.invoked |
d8a0 | 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 6c 65 61 76 65 73 20 61 6e 20 65 6e 74 72 79 20 | .when.the.mouse.leaves.an.entry. |
d8c0 | 77 69 6e 64 6f 77 0a 23 20 77 69 74 68 20 62 75 74 74 6f 6e 20 31 20 64 6f 77 6e 2e 20 20 49 74 | window.#.with.button.1.down...It |
d8e0 | 20 73 63 72 6f 6c 6c 73 20 74 68 65 20 77 69 6e 64 6f 77 20 6c 65 66 74 20 6f 72 20 72 69 67 68 | .scrolls.the.window.left.or.righ |
d900 | 74 2c 0a 23 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 65 72 65 20 74 68 65 20 6d 6f 75 73 | t,.#.depending.on.where.the.mous |
d920 | 65 20 69 73 2c 20 61 6e 64 20 72 65 73 63 68 65 64 75 6c 65 73 20 69 74 73 65 6c 66 20 61 73 20 | e.is,.and.reschedules.itself.as. |
d940 | 61 6e 0a 23 20 22 61 66 74 65 72 22 20 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74 20 74 68 65 | an.#."after".command.so.that.the |
d960 | 20 77 69 6e 64 6f 77 20 63 6f 6e 74 69 6e 75 65 73 20 74 6f 20 73 63 72 6f 6c 6c 20 75 6e 74 69 | .window.continues.to.scroll.unti |
d980 | 6c 20 74 68 65 0a 23 20 6d 6f 75 73 65 20 6d 6f 76 65 73 20 62 61 63 6b 20 69 6e 74 6f 20 74 68 | l.the.#.mouse.moves.back.into.th |
d9a0 | 65 20 77 69 6e 64 6f 77 20 6f 72 20 74 68 65 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 20 69 73 20 | e.window.or.the.mouse.button.is. |
d9c0 | 72 65 6c 65 61 73 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 | released..#.#.Arguments:.#.w.-.. |
d9e0 | 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b 45 6e 74 72 79 41 | The.entry.window...proc.tkEntryA |
da00 | 75 74 6f 53 63 61 6e 20 7b 77 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a | utoScan.{w}.{.....global.tkPriv. |
da20 | 20 20 20 20 73 65 74 20 78 20 24 74 6b 50 72 69 76 28 78 29 0a 20 20 20 20 69 66 20 7b 21 5b 77 | ....set.x.$tkPriv(x).....if.{![w |
da40 | 69 6e 66 6f 20 65 78 69 73 74 73 20 24 77 5d 7d 20 72 65 74 75 72 6e 0a 20 20 20 20 69 66 20 7b | info.exists.$w]}.return.....if.{ |
da60 | 24 78 20 3e 3d 20 5b 77 69 6e 66 6f 20 77 69 64 74 68 20 24 77 5d 7d 20 7b 0a 09 24 77 20 78 76 | $x.>=.[winfo.width.$w]}.{..$w.xv |
da80 | 69 65 77 20 73 63 72 6f 6c 6c 20 32 20 75 6e 69 74 73 0a 09 74 6b 45 6e 74 72 79 4d 6f 75 73 65 | iew.scroll.2.units..tkEntryMouse |
daa0 | 53 65 6c 65 63 74 20 24 77 20 24 78 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 78 20 3c 20 | Select.$w.$x.....}.elseif.{$x.<. |
dac0 | 30 7d 20 7b 0a 09 24 77 20 78 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 32 20 75 6e 69 74 73 0a 09 | 0}.{..$w.xview.scroll.-2.units.. |
dae0 | 74 6b 45 6e 74 72 79 4d 6f 75 73 65 53 65 6c 65 63 74 20 24 77 20 24 78 0a 20 20 20 20 7d 0a 20 | tkEntryMouseSelect.$w.$x.....}.. |
db00 | 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 61 66 74 65 72 49 64 29 20 5b 61 66 74 65 72 20 35 30 | ...set.tkPriv(afterId).[after.50 |
db20 | 20 5b 6c 69 73 74 20 74 6b 45 6e 74 72 79 41 75 74 6f 53 63 61 6e 20 24 77 5d 5d 0a 7d 0a 0a 23 | .[list.tkEntryAutoScan.$w]].}..# |
db40 | 20 74 6b 45 6e 74 72 79 4b 65 79 53 65 6c 65 63 74 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 | .tkEntryKeySelect.--.#.This.proc |
db60 | 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 73 74 72 6f 6b 69 6e 67 20 6f | edure.is.invoked.when.stroking.o |
db80 | 75 74 20 73 65 6c 65 63 74 69 6f 6e 73 20 75 73 69 6e 67 20 74 68 65 0a 23 20 6b 65 79 62 6f 61 | ut.selections.using.the.#.keyboa |
dba0 | 72 64 2e 20 20 49 74 20 6d 6f 76 65 73 20 74 68 65 20 63 75 72 73 6f 72 20 74 6f 20 61 20 6e 65 | rd...It.moves.the.cursor.to.a.ne |
dbc0 | 77 20 70 6f 73 69 74 69 6f 6e 2c 20 74 68 65 6e 20 65 78 74 65 6e 64 73 0a 23 20 74 68 65 20 73 | w.position,.then.extends.#.the.s |
dbe0 | 65 6c 65 63 74 69 6f 6e 20 74 6f 20 74 68 61 74 20 70 6f 73 69 74 69 6f 6e 2e 0a 23 0a 23 20 41 | election.to.that.position..#.#.A |
dc00 | 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f | rguments:.#.w.-..The.entry.windo |
dc20 | 77 2e 0a 23 20 6e 65 77 20 2d 09 09 41 20 6e 65 77 20 70 6f 73 69 74 69 6f 6e 20 66 6f 72 20 74 | w..#.new.-..A.new.position.for.t |
dc40 | 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 20 28 74 68 65 20 63 75 72 73 6f 72 20 | he.insertion.cursor.(the.cursor. |
dc60 | 68 61 73 6e 27 74 0a 23 09 09 61 63 74 75 61 6c 6c 79 20 62 65 65 6e 20 6d 6f 76 65 64 20 74 6f | hasn't.#..actually.been.moved.to |
dc80 | 20 74 68 69 73 20 70 6f 73 69 74 69 6f 6e 20 79 65 74 29 2e 0a 0a 70 72 6f 63 20 74 6b 45 6e 74 | .this.position.yet)...proc.tkEnt |
dca0 | 72 79 4b 65 79 53 65 6c 65 63 74 20 7b 77 20 6e 65 77 7d 20 7b 0a 20 20 20 20 69 66 20 7b 21 5b | ryKeySelect.{w.new}.{.....if.{![ |
dcc0 | 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 70 72 65 73 65 6e 74 5d 7d 20 7b 0a 09 24 77 20 73 65 6c | $w.selection.present]}.{..$w.sel |
dce0 | 65 63 74 69 6f 6e 20 66 72 6f 6d 20 69 6e 73 65 72 74 0a 09 24 77 20 73 65 6c 65 63 74 69 6f 6e | ection.from.insert..$w.selection |
dd00 | 20 74 6f 20 24 6e 65 77 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 24 77 20 73 65 6c 65 63 74 | .to.$new.....}.else.{..$w.select |
dd20 | 69 6f 6e 20 61 64 6a 75 73 74 20 24 6e 65 77 0a 20 20 20 20 7d 0a 20 20 20 20 24 77 20 69 63 75 | ion.adjust.$new.....}.....$w.icu |
dd40 | 72 73 6f 72 20 24 6e 65 77 0a 7d 0a 0a 23 20 74 6b 45 6e 74 72 79 49 6e 73 65 72 74 20 2d 2d 0a | rsor.$new.}..#.tkEntryInsert.--. |
dd60 | 23 20 49 6e 73 65 72 74 20 61 20 73 74 72 69 6e 67 20 69 6e 74 6f 20 61 6e 20 65 6e 74 72 79 20 | #.Insert.a.string.into.an.entry. |
dd80 | 61 74 20 74 68 65 20 70 6f 69 6e 74 20 6f 66 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 | at.the.point.of.the.insertion.cu |
dda0 | 72 73 6f 72 2e 0a 23 20 49 66 20 74 68 65 72 65 20 69 73 20 61 20 73 65 6c 65 63 74 69 6f 6e 20 | rsor..#.If.there.is.a.selection. |
ddc0 | 69 6e 20 74 68 65 20 65 6e 74 72 79 2c 20 61 6e 64 20 69 74 20 63 6f 76 65 72 73 20 74 68 65 20 | in.the.entry,.and.it.covers.the. |
dde0 | 70 6f 69 6e 74 20 6f 66 20 74 68 65 0a 23 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 2c | point.of.the.#.insertion.cursor, |
de00 | 20 74 68 65 6e 20 64 65 6c 65 74 65 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 62 65 66 6f 72 | .then.delete.the.selection.befor |
de20 | 65 20 69 6e 73 65 72 74 69 6e 67 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 | e.inserting..#.#.Arguments:.#.w. |
de40 | 2d 09 09 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 6f 20 | -..The.entry.window.in.which.to. |
de60 | 69 6e 73 65 72 74 20 74 68 65 20 73 74 72 69 6e 67 0a 23 20 73 20 2d 09 09 54 68 65 20 73 74 72 | insert.the.string.#.s.-..The.str |
de80 | 69 6e 67 20 74 6f 20 69 6e 73 65 72 74 20 28 75 73 75 61 6c 6c 79 20 6a 75 73 74 20 61 20 73 69 | ing.to.insert.(usually.just.a.si |
dea0 | 6e 67 6c 65 20 63 68 61 72 61 63 74 65 72 29 0a 0a 70 72 6f 63 20 74 6b 45 6e 74 72 79 49 6e 73 | ngle.character)..proc.tkEntryIns |
dec0 | 65 72 74 20 7b 77 20 73 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 | ert.{w.s}.{.....if.{[string.equa |
dee0 | 6c 20 24 73 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 63 61 | l.$s.""]}.{..return.....}.....ca |
df00 | 74 63 68 20 7b 0a 09 73 65 74 20 69 6e 73 65 72 74 20 5b 24 77 20 69 6e 64 65 78 20 69 6e 73 65 | tch.{..set.insert.[$w.index.inse |
df20 | 72 74 5d 0a 09 69 66 20 7b 28 5b 24 77 20 69 6e 64 65 78 20 73 65 6c 2e 66 69 72 73 74 5d 20 3c | rt]..if.{([$w.index.sel.first].< |
df40 | 3d 20 24 69 6e 73 65 72 74 29 0a 09 09 26 26 20 28 5b 24 77 20 69 6e 64 65 78 20 73 65 6c 2e 6c | =.$insert)...&&.([$w.index.sel.l |
df60 | 61 73 74 5d 20 3e 3d 20 24 69 6e 73 65 72 74 29 7d 20 7b 0a 09 20 20 20 20 24 77 20 64 65 6c 65 | ast].>=.$insert)}.{......$w.dele |
df80 | 74 65 20 73 65 6c 2e 66 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 0a 09 7d 0a 20 20 20 20 7d 0a 20 | te.sel.first.sel.last..}.....}.. |
dfa0 | 20 20 20 24 77 20 69 6e 73 65 72 74 20 69 6e 73 65 72 74 20 24 73 0a 20 20 20 20 74 6b 45 6e 74 | ...$w.insert.insert.$s.....tkEnt |
dfc0 | 72 79 53 65 65 49 6e 73 65 72 74 20 24 77 0a 7d 0a 0a 23 20 74 6b 45 6e 74 72 79 42 61 63 6b 73 | rySeeInsert.$w.}..#.tkEntryBacks |
dfe0 | 70 61 63 65 20 2d 2d 0a 23 20 42 61 63 6b 73 70 61 63 65 20 6f 76 65 72 20 74 68 65 20 63 68 61 | pace.--.#.Backspace.over.the.cha |
e000 | 72 61 63 74 65 72 20 6a 75 73 74 20 62 65 66 6f 72 65 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e | racter.just.before.the.insertion |
e020 | 20 63 75 72 73 6f 72 2e 0a 23 20 49 66 20 62 61 63 6b 73 70 61 63 69 6e 67 20 77 6f 75 6c 64 20 | .cursor..#.If.backspacing.would. |
e040 | 6d 6f 76 65 20 74 68 65 20 63 75 72 73 6f 72 20 6f 66 66 20 74 68 65 20 6c 65 66 74 20 65 64 67 | move.the.cursor.off.the.left.edg |
e060 | 65 20 6f 66 20 74 68 65 0a 23 20 77 69 6e 64 6f 77 2c 20 72 65 70 6f 73 69 74 69 6f 6e 20 74 68 | e.of.the.#.window,.reposition.th |
e080 | 65 20 63 75 72 73 6f 72 20 61 74 20 61 62 6f 75 74 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 | e.cursor.at.about.the.middle.of. |
e0a0 | 74 68 65 20 77 69 6e 64 6f 77 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d | the.window..#.#.Arguments:.#.w.- |
e0c0 | 09 09 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 6f 20 62 | ..The.entry.window.in.which.to.b |
e0e0 | 61 63 6b 73 70 61 63 65 2e 0a 0a 70 72 6f 63 20 74 6b 45 6e 74 72 79 42 61 63 6b 73 70 61 63 65 | ackspace...proc.tkEntryBackspace |
e100 | 20 77 20 7b 0a 20 20 20 20 69 66 20 7b 5b 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 70 72 65 73 65 | .w.{.....if.{[$w.selection.prese |
e120 | 6e 74 5d 7d 20 7b 0a 09 24 77 20 64 65 6c 65 74 65 20 73 65 6c 2e 66 69 72 73 74 20 73 65 6c 2e | nt]}.{..$w.delete.sel.first.sel. |
e140 | 6c 61 73 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 78 20 5b 65 78 70 72 20 7b | last.....}.else.{..set.x.[expr.{ |
e160 | 5b 24 77 20 69 6e 64 65 78 20 69 6e 73 65 72 74 5d 20 2d 20 31 7d 5d 0a 09 69 66 20 7b 24 78 20 | [$w.index.insert].-.1}]..if.{$x. |
e180 | 3e 3d 20 30 7d 20 7b 24 77 20 64 65 6c 65 74 65 20 24 78 7d 0a 09 69 66 20 7b 5b 24 77 20 69 6e | >=.0}.{$w.delete.$x}..if.{[$w.in |
e1a0 | 64 65 78 20 40 30 5d 20 3e 3d 20 5b 24 77 20 69 6e 64 65 78 20 69 6e 73 65 72 74 5d 7d 20 7b 0a | dex.@0].>=.[$w.index.insert]}.{. |
e1c0 | 09 20 20 20 20 73 65 74 20 72 61 6e 67 65 20 5b 24 77 20 78 76 69 65 77 5d 0a 09 20 20 20 20 73 | .....set.range.[$w.xview]......s |
e1e0 | 65 74 20 6c 65 66 74 20 5b 6c 69 6e 64 65 78 20 24 72 61 6e 67 65 20 30 5d 0a 09 20 20 20 20 73 | et.left.[lindex.$range.0]......s |
e200 | 65 74 20 72 69 67 68 74 20 5b 6c 69 6e 64 65 78 20 24 72 61 6e 67 65 20 31 5d 0a 09 20 20 20 20 | et.right.[lindex.$range.1]...... |
e220 | 24 77 20 78 76 69 65 77 20 6d 6f 76 65 74 6f 20 5b 65 78 70 72 20 7b 24 6c 65 66 74 20 2d 20 28 | $w.xview.moveto.[expr.{$left.-.( |
e240 | 24 72 69 67 68 74 20 2d 20 24 6c 65 66 74 29 2f 32 2e 30 7d 5d 0a 09 7d 0a 20 20 20 20 7d 0a 7d | $right.-.$left)/2.0}]..}.....}.} |
e260 | 0a 0a 23 20 74 6b 45 6e 74 72 79 53 65 65 49 6e 73 65 72 74 20 2d 2d 0a 23 20 4d 61 6b 65 20 73 | ..#.tkEntrySeeInsert.--.#.Make.s |
e280 | 75 72 65 20 74 68 61 74 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 20 69 73 | ure.that.the.insertion.cursor.is |
e2a0 | 20 76 69 73 69 62 6c 65 20 69 6e 20 74 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 2e 0a 23 20 | .visible.in.the.entry.window..#. |
e2c0 | 49 66 20 6e 6f 74 2c 20 61 64 6a 75 73 74 20 74 68 65 20 76 69 65 77 20 73 6f 20 74 68 61 74 20 | If.not,.adjust.the.view.so.that. |
e2e0 | 69 74 20 69 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 | it.is..#.#.Arguments:.#.w.-..The |
e300 | 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b 45 6e 74 72 79 53 65 65 49 | .entry.window...proc.tkEntrySeeI |
e320 | 6e 73 65 72 74 20 77 20 7b 0a 20 20 20 20 73 65 74 20 63 20 5b 24 77 20 69 6e 64 65 78 20 69 6e | nsert.w.{.....set.c.[$w.index.in |
e340 | 73 65 72 74 5d 0a 20 20 20 20 69 66 20 7b 28 24 63 20 3c 20 5b 24 77 20 69 6e 64 65 78 20 40 30 | sert].....if.{($c.<.[$w.index.@0 |
e360 | 5d 29 20 7c 7c 20 28 24 63 20 3e 20 5b 24 77 20 69 6e 64 65 78 20 40 5b 77 69 6e 66 6f 20 77 69 | ]).||.($c.>.[$w.index.@[winfo.wi |
e380 | 64 74 68 20 24 77 5d 5d 29 7d 20 7b 0a 09 24 77 20 78 76 69 65 77 20 24 63 0a 20 20 20 20 7d 0a | dth.$w]])}.{..$w.xview.$c.....}. |
e3a0 | 7d 0a 0a 23 20 74 6b 45 6e 74 72 79 53 65 74 43 75 72 73 6f 72 20 2d 0a 23 20 4d 6f 76 65 20 74 | }..#.tkEntrySetCursor.-.#.Move.t |
e3c0 | 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 20 74 6f 20 61 20 67 69 76 65 6e 20 70 | he.insertion.cursor.to.a.given.p |
e3e0 | 6f 73 69 74 69 6f 6e 20 69 6e 20 61 6e 20 65 6e 74 72 79 2e 20 20 41 6c 73 6f 0a 23 20 63 6c 65 | osition.in.an.entry...Also.#.cle |
e400 | 61 72 73 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 2c 20 69 66 20 74 68 65 72 65 20 69 73 20 6f | ars.the.selection,.if.there.is.o |
e420 | 6e 65 20 69 6e 20 74 68 65 20 65 6e 74 72 79 2c 20 61 6e 64 20 6d 61 6b 65 73 20 73 75 72 65 0a | ne.in.the.entry,.and.makes.sure. |
e440 | 23 20 74 68 61 74 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 20 69 73 20 76 | #.that.the.insertion.cursor.is.v |
e460 | 69 73 69 62 6c 65 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 | isible..#.#.Arguments:.#.w.-..Th |
e480 | 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 2e 0a 23 20 70 6f 73 20 2d 09 09 54 68 65 20 64 65 73 | e.entry.window..#.pos.-..The.des |
e4a0 | 69 72 65 64 20 6e 65 77 20 70 6f 73 69 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 63 75 72 73 6f 72 | ired.new.position.for.the.cursor |
e4c0 | 20 69 6e 20 74 68 65 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b 45 6e 74 72 79 53 65 74 | .in.the.window...proc.tkEntrySet |
e4e0 | 43 75 72 73 6f 72 20 7b 77 20 70 6f 73 7d 20 7b 0a 20 20 20 20 24 77 20 69 63 75 72 73 6f 72 20 | Cursor.{w.pos}.{.....$w.icursor. |
e500 | 24 70 6f 73 0a 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 0a 20 20 20 20 | $pos.....$w.selection.clear..... |
e520 | 74 6b 45 6e 74 72 79 53 65 65 49 6e 73 65 72 74 20 24 77 0a 7d 0a 0a 23 20 74 6b 45 6e 74 72 79 | tkEntrySeeInsert.$w.}..#.tkEntry |
e540 | 54 72 61 6e 73 70 6f 73 65 20 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 6d 70 | Transpose.-.#.This.procedure.imp |
e560 | 6c 65 6d 65 6e 74 73 20 74 68 65 20 22 74 72 61 6e 73 70 6f 73 65 22 20 66 75 6e 63 74 69 6f 6e | lements.the."transpose".function |
e580 | 20 66 6f 72 20 65 6e 74 72 79 20 77 69 64 67 65 74 73 2e 0a 23 20 49 74 20 74 72 61 6e 70 6f 73 | .for.entry.widgets..#.It.tranpos |
e5a0 | 65 73 20 74 68 65 20 63 68 61 72 61 63 74 65 72 73 20 6f 6e 20 65 69 74 68 65 72 20 73 69 64 65 | es.the.characters.on.either.side |
e5c0 | 20 6f 66 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 2c 0a 23 20 75 6e 6c 65 | .of.the.insertion.cursor,.#.unle |
e5e0 | 73 73 20 74 68 65 20 63 75 72 73 6f 72 20 69 73 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 | ss.the.cursor.is.at.the.end.of.t |
e600 | 68 65 20 6c 69 6e 65 2e 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 20 69 74 0a 23 20 74 72 61 6e | he.line...In.this.case.it.#.tran |
e620 | 73 70 6f 73 65 73 20 74 68 65 20 74 77 6f 20 63 68 61 72 61 63 74 65 72 73 20 74 6f 20 74 68 65 | sposes.the.two.characters.to.the |
e640 | 20 6c 65 66 74 20 6f 66 20 74 68 65 20 63 75 72 73 6f 72 2e 20 20 49 6e 20 65 69 74 68 65 72 0a | .left.of.the.cursor...In.either. |
e660 | 23 20 63 61 73 65 2c 20 74 68 65 20 63 75 72 73 6f 72 20 65 6e 64 73 20 75 70 20 74 6f 20 74 68 | #.case,.the.cursor.ends.up.to.th |
e680 | 65 20 72 69 67 68 74 20 6f 66 20 74 68 65 20 74 72 61 6e 73 70 6f 73 65 64 20 63 68 61 72 61 63 | e.right.of.the.transposed.charac |
e6a0 | 74 65 72 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 | ters..#.#.Arguments:.#.w.-..The. |
e6c0 | 65 6e 74 72 79 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b 45 6e 74 72 79 54 72 61 6e 73 | entry.window...proc.tkEntryTrans |
e6e0 | 70 6f 73 65 20 77 20 7b 0a 20 20 20 20 73 65 74 20 69 20 5b 24 77 20 69 6e 64 65 78 20 69 6e 73 | pose.w.{.....set.i.[$w.index.ins |
e700 | 65 72 74 5d 0a 20 20 20 20 69 66 20 7b 24 69 20 3c 20 5b 24 77 20 69 6e 64 65 78 20 65 6e 64 5d | ert].....if.{$i.<.[$w.index.end] |
e720 | 7d 20 7b 0a 09 69 6e 63 72 20 69 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 66 69 72 73 74 20 | }.{..incr.i.....}.....set.first. |
e740 | 5b 65 78 70 72 20 7b 24 69 2d 32 7d 5d 0a 20 20 20 20 69 66 20 7b 24 66 69 72 73 74 20 3c 20 30 | [expr.{$i-2}].....if.{$first.<.0 |
e760 | 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 6e 65 77 20 5b 73 | }.{..return.....}.....set.new.[s |
e780 | 74 72 69 6e 67 20 69 6e 64 65 78 20 5b 24 77 20 67 65 74 5d 20 5b 65 78 70 72 20 7b 24 69 2d 31 | tring.index.[$w.get].[expr.{$i-1 |
e7a0 | 7d 5d 5d 5b 73 74 72 69 6e 67 20 69 6e 64 65 78 20 5b 24 77 20 67 65 74 5d 20 24 66 69 72 73 74 | }]][string.index.[$w.get].$first |
e7c0 | 5d 0a 20 20 20 20 24 77 20 64 65 6c 65 74 65 20 24 66 69 72 73 74 20 24 69 0a 20 20 20 20 24 77 | ].....$w.delete.$first.$i.....$w |
e7e0 | 20 69 6e 73 65 72 74 20 69 6e 73 65 72 74 20 24 6e 65 77 0a 20 20 20 20 74 6b 45 6e 74 72 79 53 | .insert.insert.$new.....tkEntryS |
e800 | 65 65 49 6e 73 65 72 74 20 24 77 0a 7d 0a 0a 23 20 74 6b 45 6e 74 72 79 4e 65 78 74 57 6f 72 64 | eeInsert.$w.}..#.tkEntryNextWord |
e820 | 20 2d 2d 0a 23 20 52 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 65 20 6e | .--.#.Returns.the.index.of.the.n |
e840 | 65 78 74 20 77 6f 72 64 20 70 6f 73 69 74 69 6f 6e 20 61 66 74 65 72 20 61 20 67 69 76 65 6e 20 | ext.word.position.after.a.given. |
e860 | 70 6f 73 69 74 69 6f 6e 20 69 6e 20 74 68 65 0a 23 20 65 6e 74 72 79 2e 20 20 54 68 65 20 6e 65 | position.in.the.#.entry...The.ne |
e880 | 78 74 20 77 6f 72 64 20 69 73 20 70 6c 61 74 66 6f 72 6d 20 64 65 70 65 6e 64 65 6e 74 20 61 6e | xt.word.is.platform.dependent.an |
e8a0 | 64 20 6d 61 79 20 62 65 20 65 69 74 68 65 72 20 74 68 65 20 6e 65 78 74 0a 23 20 65 6e 64 2d 6f | d.may.be.either.the.next.#.end-o |
e8c0 | 66 2d 77 6f 72 64 20 70 6f 73 69 74 69 6f 6e 20 6f 72 20 74 68 65 20 6e 65 78 74 20 73 74 61 72 | f-word.position.or.the.next.star |
e8e0 | 74 2d 6f 66 2d 77 6f 72 64 20 70 6f 73 69 74 69 6f 6e 20 61 66 74 65 72 20 74 68 65 20 6e 65 78 | t-of-word.position.after.the.nex |
e900 | 74 0a 23 20 65 6e 64 2d 6f 66 2d 77 6f 72 64 20 70 6f 73 69 74 69 6f 6e 2e 0a 23 0a 23 20 41 72 | t.#.end-of-word.position..#.#.Ar |
e920 | 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 | guments:.#.w.-..The.entry.window |
e940 | 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 63 75 72 73 6f 72 20 69 73 20 74 6f 20 6d 6f 76 65 2e | .in.which.the.cursor.is.to.move. |
e960 | 0a 23 20 73 74 61 72 74 20 2d 09 50 6f 73 69 74 69 6f 6e 20 61 74 20 77 68 69 63 68 20 74 6f 20 | .#.start.-.Position.at.which.to. |
e980 | 73 74 61 72 74 20 73 65 61 72 63 68 2e 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c | start.search...if.{[string.equal |
e9a0 | 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 77 69 6e 64 6f 77 | .$tcl_platform(platform)."window |
e9c0 | 73 22 5d 7d 20 20 7b 0a 20 20 20 20 70 72 6f 63 20 74 6b 45 6e 74 72 79 4e 65 78 74 57 6f 72 64 | s"]}..{.....proc.tkEntryNextWord |
e9e0 | 20 7b 77 20 73 74 61 72 74 7d 20 7b 0a 09 73 65 74 20 70 6f 73 20 5b 74 63 6c 5f 65 6e 64 4f 66 | .{w.start}.{..set.pos.[tcl_endOf |
ea00 | 57 6f 72 64 20 5b 24 77 20 67 65 74 5d 20 5b 24 77 20 69 6e 64 65 78 20 24 73 74 61 72 74 5d 5d | Word.[$w.get].[$w.index.$start]] |
ea20 | 0a 09 69 66 20 7b 24 70 6f 73 20 3e 3d 20 30 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 70 6f 73 20 | ..if.{$pos.>=.0}.{......set.pos. |
ea40 | 5b 74 63 6c 5f 73 74 61 72 74 4f 66 4e 65 78 74 57 6f 72 64 20 5b 24 77 20 67 65 74 5d 20 24 70 | [tcl_startOfNextWord.[$w.get].$p |
ea60 | 6f 73 5d 0a 09 7d 0a 09 69 66 20 7b 24 70 6f 73 20 3c 20 30 7d 20 7b 0a 09 20 20 20 20 72 65 74 | os]..}..if.{$pos.<.0}.{......ret |
ea80 | 75 72 6e 20 65 6e 64 0a 09 7d 0a 09 72 65 74 75 72 6e 20 24 70 6f 73 0a 20 20 20 20 7d 0a 7d 20 | urn.end..}..return.$pos.....}.}. |
eaa0 | 65 6c 73 65 20 7b 0a 20 20 20 20 70 72 6f 63 20 74 6b 45 6e 74 72 79 4e 65 78 74 57 6f 72 64 20 | else.{.....proc.tkEntryNextWord. |
eac0 | 7b 77 20 73 74 61 72 74 7d 20 7b 0a 09 73 65 74 20 70 6f 73 20 5b 74 63 6c 5f 65 6e 64 4f 66 57 | {w.start}.{..set.pos.[tcl_endOfW |
eae0 | 6f 72 64 20 5b 24 77 20 67 65 74 5d 20 5b 24 77 20 69 6e 64 65 78 20 24 73 74 61 72 74 5d 5d 0a | ord.[$w.get].[$w.index.$start]]. |
eb00 | 09 69 66 20 7b 24 70 6f 73 20 3c 20 30 7d 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e 20 65 6e 64 | .if.{$pos.<.0}.{......return.end |
eb20 | 0a 09 7d 0a 09 72 65 74 75 72 6e 20 24 70 6f 73 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 45 6e | ..}..return.$pos.....}.}..#.tkEn |
eb40 | 74 72 79 50 72 65 76 69 6f 75 73 57 6f 72 64 20 2d 2d 0a 23 0a 23 20 52 65 74 75 72 6e 73 20 74 | tryPreviousWord.--.#.#.Returns.t |
eb60 | 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 77 6f 72 64 20 70 6f | he.index.of.the.previous.word.po |
eb80 | 73 69 74 69 6f 6e 20 62 65 66 6f 72 65 20 61 20 67 69 76 65 6e 0a 23 20 70 6f 73 69 74 69 6f 6e | sition.before.a.given.#.position |
eba0 | 20 69 6e 20 74 68 65 20 65 6e 74 72 79 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 | .in.the.entry..#.#.Arguments:.#. |
ebc0 | 77 20 2d 09 09 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 | w.-..The.entry.window.in.which.t |
ebe0 | 68 65 20 63 75 72 73 6f 72 20 69 73 20 74 6f 20 6d 6f 76 65 2e 0a 23 20 73 74 61 72 74 20 2d 09 | he.cursor.is.to.move..#.start.-. |
ec00 | 50 6f 73 69 74 69 6f 6e 20 61 74 20 77 68 69 63 68 20 74 6f 20 73 74 61 72 74 20 73 65 61 72 63 | Position.at.which.to.start.searc |
ec20 | 68 2e 0a 0a 70 72 6f 63 20 74 6b 45 6e 74 72 79 50 72 65 76 69 6f 75 73 57 6f 72 64 20 7b 77 20 | h...proc.tkEntryPreviousWord.{w. |
ec40 | 73 74 61 72 74 7d 20 7b 0a 20 20 20 20 73 65 74 20 70 6f 73 20 5b 74 63 6c 5f 73 74 61 72 74 4f | start}.{.....set.pos.[tcl_startO |
ec60 | 66 50 72 65 76 69 6f 75 73 57 6f 72 64 20 5b 24 77 20 67 65 74 5d 20 5b 24 77 20 69 6e 64 65 78 | fPreviousWord.[$w.get].[$w.index |
ec80 | 20 24 73 74 61 72 74 5d 5d 0a 20 20 20 20 69 66 20 7b 24 70 6f 73 20 3c 20 30 7d 20 7b 0a 09 72 | .$start]].....if.{$pos.<.0}.{..r |
eca0 | 65 74 75 72 6e 20 30 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 70 6f 73 0a 7d 0a | eturn.0.....}.....return.$pos.}. |
ecc0 | 23 20 74 6b 45 6e 74 72 79 47 65 74 53 65 6c 65 63 74 69 6f 6e 20 2d 2d 0a 23 0a 23 20 52 65 74 | #.tkEntryGetSelection.--.#.#.Ret |
ece0 | 75 72 6e 73 20 74 68 65 20 73 65 6c 65 63 74 65 64 20 74 65 78 74 20 6f 66 20 74 68 65 20 65 6e | urns.the.selected.text.of.the.en |
ed00 | 74 72 79 20 77 69 74 68 20 72 65 73 70 65 63 74 20 74 6f 20 74 68 65 20 2d 73 68 6f 77 20 6f 70 | try.with.respect.to.the.-show.op |
ed20 | 74 69 6f 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 20 20 20 20 20 20 | tion..#.#.Arguments:.#.w.-...... |
ed40 | 20 20 20 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 20 66 72 6f 6d 20 77 68 69 63 68 20 74 | ...The.entry.window.from.which.t |
ed60 | 68 65 20 74 65 78 74 20 74 6f 20 67 65 74 0a 0a 70 72 6f 63 20 74 6b 45 6e 74 72 79 47 65 74 53 | he.text.to.get..proc.tkEntryGetS |
ed80 | 65 6c 65 63 74 69 6f 6e 20 7b 77 7d 20 7b 0a 20 20 20 20 73 65 74 20 65 6e 74 72 79 53 74 72 69 | election.{w}.{.....set.entryStri |
eda0 | 6e 67 20 5b 73 74 72 69 6e 67 20 72 61 6e 67 65 20 5b 24 77 20 67 65 74 5d 20 5b 24 77 20 69 6e | ng.[string.range.[$w.get].[$w.in |
edc0 | 64 65 78 20 73 65 6c 2e 66 69 72 73 74 5d 20 5c 0a 09 20 20 20 20 5b 65 78 70 72 20 7b 5b 24 77 | dex.sel.first].\......[expr.{[$w |
ede0 | 20 69 6e 64 65 78 20 73 65 6c 2e 6c 61 73 74 5d 20 2d 20 31 7d 5d 5d 0a 20 20 20 20 69 66 20 7b | .index.sel.last].-.1}]].....if.{ |
ee00 | 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 68 6f 77 5d 20 | [string.compare.[$w.cget.-show]. |
ee20 | 22 22 5d 7d 20 7b 0a 09 72 65 67 73 75 62 20 2d 61 6c 6c 20 2e 20 24 65 6e 74 72 79 53 74 72 69 | ""]}.{..regsub.-all...$entryStri |
ee40 | 6e 67 20 5b 73 74 72 69 6e 67 20 69 6e 64 65 78 20 5b 24 77 20 63 67 65 74 20 2d 73 68 6f 77 5d | ng.[string.index.[$w.cget.-show] |
ee60 | 20 30 5d 20 65 6e 74 72 79 53 74 72 69 6e 67 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e | .0].entryString.....}.....return |
ee80 | 20 24 65 6e 74 72 79 53 74 72 69 6e 67 0a 7d 0a 00 00 13 c5 23 20 66 6f 63 75 73 2e 74 63 6c 20 | .$entryString.}.....#.focus.tcl. |
eea0 | 2d 2d 0a 23 0a 23 20 54 68 69 73 20 66 69 6c 65 20 64 65 66 69 6e 65 73 20 73 65 76 65 72 61 6c | --.#.#.This.file.defines.several |
eec0 | 20 70 72 6f 63 65 64 75 72 65 73 20 66 6f 72 20 6d 61 6e 61 67 69 6e 67 20 74 68 65 20 69 6e 70 | .procedures.for.managing.the.inp |
eee0 | 75 74 0a 23 20 66 6f 63 75 73 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 66 | ut.#.focus..#.#.RCS:.@(#).$Id:.f |
ef00 | 6f 63 75 73 2e 74 63 6c 2c 76 20 31 2e 35 20 31 39 39 39 2f 30 39 2f 30 32 20 31 37 3a 30 32 3a | ocus.tcl,v.1.5.1999/09/02.17:02: |
ef20 | 35 32 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 | 52.hobbs.Exp.$.#.#.Copyright.(c) |
ef40 | 20 31 39 39 34 2d 31 39 39 35 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 | .1994-1995.Sun.Microsystems,.Inc |
ef60 | 2e 0a 23 0a 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d | ..#.#.See.the.file."license.term |
ef80 | 73 22 20 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 | s".for.information.on.usage.and. |
efa0 | 72 65 64 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 | redistribution.#.of.this.file,.a |
efc0 | 6e 64 20 66 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 | nd.for.a.DISCLAIMER.OF.ALL.WARRA |
efe0 | 4e 54 49 45 53 2e 0a 23 0a 0a 23 20 74 6b 5f 66 6f 63 75 73 4e 65 78 74 20 2d 2d 0a 23 20 54 68 | NTIES..#..#.tk_focusNext.--.#.Th |
f000 | 69 73 20 70 72 6f 63 65 64 75 72 65 20 72 65 74 75 72 6e 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 | is.procedure.returns.the.name.of |
f020 | 20 74 68 65 20 6e 65 78 74 20 77 69 6e 64 6f 77 20 61 66 74 65 72 20 22 77 22 20 69 6e 0a 23 20 | .the.next.window.after."w".in.#. |
f040 | 22 66 6f 63 75 73 20 6f 72 64 65 72 22 20 28 74 68 65 20 77 69 6e 64 6f 77 20 74 68 61 74 20 73 | "focus.order".(the.window.that.s |
f060 | 68 6f 75 6c 64 20 72 65 63 65 69 76 65 20 74 68 65 20 66 6f 63 75 73 20 6e 65 78 74 20 69 66 0a | hould.receive.the.focus.next.if. |
f080 | 23 20 54 61 62 20 69 73 20 74 79 70 65 64 20 69 6e 20 77 29 2e 20 20 22 4e 65 78 74 22 20 69 73 | #.Tab.is.typed.in.w)..."Next".is |
f0a0 | 20 64 65 66 69 6e 65 64 20 62 79 20 61 20 70 72 65 2d 6f 72 64 65 72 20 73 65 61 72 63 68 0a 23 | .defined.by.a.pre-order.search.# |
f0c0 | 20 6f 66 20 61 20 74 6f 70 2d 6c 65 76 65 6c 20 61 6e 64 20 69 74 73 20 6e 6f 6e 2d 74 6f 70 2d | .of.a.top-level.and.its.non-top- |
f0e0 | 6c 65 76 65 6c 20 64 65 73 63 65 6e 64 61 6e 74 73 2c 20 77 69 74 68 20 74 68 65 20 73 74 61 63 | level.descendants,.with.the.stac |
f100 | 6b 69 6e 67 0a 23 20 6f 72 64 65 72 20 64 65 74 65 72 6d 69 6e 69 6e 67 20 74 68 65 20 6f 72 64 | king.#.order.determining.the.ord |
f120 | 65 72 20 6f 66 20 73 69 62 6c 69 6e 67 73 2e 20 20 54 68 65 20 22 2d 74 61 6b 65 66 6f 63 75 73 | er.of.siblings...The."-takefocus |
f140 | 22 20 6f 70 74 69 6f 6e 73 0a 23 20 6f 6e 20 77 69 6e 64 6f 77 73 20 64 65 74 65 72 6d 69 6e 65 | ".options.#.on.windows.determine |
f160 | 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f 74 20 74 68 65 79 20 73 68 6f 75 6c 64 20 62 65 20 73 | .whether.or.not.they.should.be.s |
f180 | 6b 69 70 70 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 4e 61 | kipped..#.#.Arguments:.#.w.-..Na |
f1a0 | 6d 65 20 6f 66 20 61 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b 5f 66 6f 63 75 73 4e 65 | me.of.a.window...proc.tk_focusNe |
f1c0 | 78 74 20 77 20 7b 0a 20 20 20 20 73 65 74 20 63 75 72 20 24 77 0a 20 20 20 20 77 68 69 6c 65 20 | xt.w.{.....set.cur.$w.....while. |
f1e0 | 31 20 7b 0a 0a 09 23 20 44 65 73 63 65 6e 64 20 74 6f 20 6a 75 73 74 20 62 65 66 6f 72 65 20 74 | 1.{...#.Descend.to.just.before.t |
f200 | 68 65 20 66 69 72 73 74 20 63 68 69 6c 64 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 77 69 | he.first.child.of.the.current.wi |
f220 | 64 67 65 74 2e 0a 0a 09 73 65 74 20 70 61 72 65 6e 74 20 24 63 75 72 0a 09 73 65 74 20 63 68 69 | dget....set.parent.$cur..set.chi |
f240 | 6c 64 72 65 6e 20 5b 77 69 6e 66 6f 20 63 68 69 6c 64 72 65 6e 20 24 63 75 72 5d 0a 09 73 65 74 | ldren.[winfo.children.$cur]..set |
f260 | 20 69 20 2d 31 0a 0a 09 23 20 4c 6f 6f 6b 20 66 6f 72 20 74 68 65 20 6e 65 78 74 20 73 69 62 6c | .i.-1...#.Look.for.the.next.sibl |
f280 | 69 6e 67 20 74 68 61 74 20 69 73 6e 27 74 20 61 20 74 6f 70 2d 6c 65 76 65 6c 2e 0a 0a 09 77 68 | ing.that.isn't.a.top-level....wh |
f2a0 | 69 6c 65 20 31 20 7b 0a 09 20 20 20 20 69 6e 63 72 20 69 0a 09 20 20 20 20 69 66 20 7b 24 69 20 | ile.1.{......incr.i......if.{$i. |
f2c0 | 3c 20 5b 6c 6c 65 6e 67 74 68 20 24 63 68 69 6c 64 72 65 6e 5d 7d 20 7b 0a 09 09 73 65 74 20 63 | <.[llength.$children]}.{...set.c |
f2e0 | 75 72 20 5b 6c 69 6e 64 65 78 20 24 63 68 69 6c 64 72 65 6e 20 24 69 5d 0a 20 20 20 20 20 20 20 | ur.[lindex.$children.$i]........ |
f300 | 20 20 20 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 6e 66 6f 20 | .......if.{[string.equal.[winfo. |
f320 | 74 6f 70 6c 65 76 65 6c 20 24 63 75 72 5d 20 24 63 75 72 5d 7d 20 7b 0a 09 09 20 20 20 20 63 6f | toplevel.$cur].$cur]}.{.......co |
f340 | 6e 74 69 6e 75 65 0a 09 09 7d 20 65 6c 73 65 20 7b 0a 09 09 20 20 20 20 62 72 65 61 6b 0a 09 09 | ntinue...}.else.{.......break... |
f360 | 7d 0a 09 20 20 20 20 7d 0a 0a 09 20 20 20 20 23 20 4e 6f 20 6d 6f 72 65 20 73 69 62 6c 69 6e 67 | }......}.......#.No.more.sibling |
f380 | 73 2c 20 73 6f 20 67 6f 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 77 69 64 67 65 74 27 73 | s,.so.go.to.the.current.widget's |
f3a0 | 20 70 61 72 65 6e 74 2e 0a 09 20 20 20 20 23 20 49 66 20 69 74 27 73 20 61 20 74 6f 70 2d 6c 65 | .parent.......#.If.it's.a.top-le |
f3c0 | 76 65 6c 2c 20 62 72 65 61 6b 20 6f 75 74 20 6f 66 20 74 68 65 20 6c 6f 6f 70 2c 20 6f 74 68 65 | vel,.break.out.of.the.loop,.othe |
f3e0 | 72 77 69 73 65 0a 09 20 20 20 20 23 20 6c 6f 6f 6b 20 66 6f 72 20 69 74 73 20 6e 65 78 74 20 73 | rwise......#.look.for.its.next.s |
f400 | 69 62 6c 69 6e 67 2e 0a 0a 09 20 20 20 20 73 65 74 20 63 75 72 20 24 70 61 72 65 6e 74 0a 09 20 | ibling........set.cur.$parent... |
f420 | 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 6e 66 6f 20 74 6f 70 6c | ...if.{[string.equal.[winfo.topl |
f440 | 65 76 65 6c 20 24 63 75 72 5d 20 24 63 75 72 5d 7d 20 7b 0a 09 09 62 72 65 61 6b 0a 09 20 20 20 | evel.$cur].$cur]}.{...break..... |
f460 | 20 7d 0a 09 20 20 20 20 73 65 74 20 70 61 72 65 6e 74 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 | .}......set.parent.[winfo.parent |
f480 | 20 24 70 61 72 65 6e 74 5d 0a 09 20 20 20 20 73 65 74 20 63 68 69 6c 64 72 65 6e 20 5b 77 69 6e | .$parent]......set.children.[win |
f4a0 | 66 6f 20 63 68 69 6c 64 72 65 6e 20 24 70 61 72 65 6e 74 5d 0a 09 20 20 20 20 73 65 74 20 69 20 | fo.children.$parent]......set.i. |
f4c0 | 5b 6c 73 65 61 72 63 68 20 2d 65 78 61 63 74 20 24 63 68 69 6c 64 72 65 6e 20 24 63 75 72 5d 0a | [lsearch.-exact.$children.$cur]. |
f4e0 | 09 7d 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 77 20 24 63 75 72 5d 20 7c | .}..if.{[string.equal.$w.$cur].| |
f500 | 7c 20 5b 74 6b 46 6f 63 75 73 4f 4b 20 24 63 75 72 5d 7d 20 7b 0a 09 20 20 20 20 72 65 74 75 72 | |.[tkFocusOK.$cur]}.{......retur |
f520 | 6e 20 24 63 75 72 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 5f 66 6f 63 75 73 50 72 65 | n.$cur..}.....}.}..#.tk_focusPre |
f540 | 76 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 72 65 74 75 72 6e 73 20 74 68 | v.--.#.This.procedure.returns.th |
f560 | 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 77 69 6e 64 6f 77 20 62 65 | e.name.of.the.previous.window.be |
f580 | 66 6f 72 65 20 22 77 22 20 69 6e 0a 23 20 22 66 6f 63 75 73 20 6f 72 64 65 72 22 20 28 74 68 65 | fore."w".in.#."focus.order".(the |
f5a0 | 20 77 69 6e 64 6f 77 20 74 68 61 74 20 73 68 6f 75 6c 64 20 72 65 63 65 69 76 65 20 74 68 65 20 | .window.that.should.receive.the. |
f5c0 | 66 6f 63 75 73 20 6e 65 78 74 20 69 66 0a 23 20 53 68 69 66 74 2d 54 61 62 20 69 73 20 74 79 70 | focus.next.if.#.Shift-Tab.is.typ |
f5e0 | 65 64 20 69 6e 20 77 29 2e 20 20 22 4e 65 78 74 22 20 69 73 20 64 65 66 69 6e 65 64 20 62 79 20 | ed.in.w)..."Next".is.defined.by. |
f600 | 61 20 70 72 65 2d 6f 72 64 65 72 20 73 65 61 72 63 68 0a 23 20 6f 66 20 61 20 74 6f 70 2d 6c 65 | a.pre-order.search.#.of.a.top-le |
f620 | 76 65 6c 20 61 6e 64 20 69 74 73 20 6e 6f 6e 2d 74 6f 70 2d 6c 65 76 65 6c 20 64 65 73 63 65 6e | vel.and.its.non-top-level.descen |
f640 | 64 61 6e 74 73 2c 20 77 69 74 68 20 74 68 65 20 73 74 61 63 6b 69 6e 67 0a 23 20 6f 72 64 65 72 | dants,.with.the.stacking.#.order |
f660 | 20 64 65 74 65 72 6d 69 6e 69 6e 67 20 74 68 65 20 6f 72 64 65 72 20 6f 66 20 73 69 62 6c 69 6e | .determining.the.order.of.siblin |
f680 | 67 73 2e 20 20 54 68 65 20 22 2d 74 61 6b 65 66 6f 63 75 73 22 20 6f 70 74 69 6f 6e 73 0a 23 20 | gs...The."-takefocus".options.#. |
f6a0 | 6f 6e 20 77 69 6e 64 6f 77 73 20 64 65 74 65 72 6d 69 6e 65 20 77 68 65 74 68 65 72 20 6f 72 20 | on.windows.determine.whether.or. |
f6c0 | 6e 6f 74 20 74 68 65 79 20 73 68 6f 75 6c 64 20 62 65 20 73 6b 69 70 70 65 64 2e 0a 23 0a 23 20 | not.they.should.be.skipped..#.#. |
f6e0 | 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 4e 61 6d 65 20 6f 66 20 61 20 77 69 6e 64 | Arguments:.#.w.-..Name.of.a.wind |
f700 | 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b 5f 66 6f 63 75 73 50 72 65 76 20 77 20 7b 0a 20 20 20 20 73 | ow...proc.tk_focusPrev.w.{.....s |
f720 | 65 74 20 63 75 72 20 24 77 0a 20 20 20 20 77 68 69 6c 65 20 31 20 7b 0a 0a 09 23 20 43 6f 6c 6c | et.cur.$w.....while.1.{...#.Coll |
f740 | 65 63 74 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 65 20 63 75 72 72 65 6e | ect.information.about.the.curren |
f760 | 74 20 77 69 6e 64 6f 77 27 73 20 70 6f 73 69 74 69 6f 6e 0a 09 23 20 61 6d 6f 6e 67 20 69 74 73 | t.window's.position..#.among.its |
f780 | 20 73 69 62 6c 69 6e 67 73 2e 20 20 41 6c 73 6f 2c 20 69 66 20 74 68 65 20 77 69 6e 64 6f 77 20 | .siblings...Also,.if.the.window. |
f7a0 | 69 73 20 61 20 74 6f 70 2d 6c 65 76 65 6c 2c 0a 09 23 20 74 68 65 6e 20 72 65 70 6f 73 69 74 69 | is.a.top-level,..#.then.repositi |
f7c0 | 6f 6e 20 74 6f 20 6a 75 73 74 20 61 66 74 65 72 20 74 68 65 20 6c 61 73 74 20 63 68 69 6c 64 20 | on.to.just.after.the.last.child. |
f7e0 | 6f 66 20 74 68 65 20 77 69 6e 64 6f 77 2e 0a 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 | of.the.window....if.{[string.equ |
f800 | 61 6c 20 5b 77 69 6e 66 6f 20 74 6f 70 6c 65 76 65 6c 20 24 63 75 72 5d 20 24 63 75 72 5d 7d 20 | al.[winfo.toplevel.$cur].$cur]}. |
f820 | 20 7b 0a 09 20 20 20 20 73 65 74 20 70 61 72 65 6e 74 20 24 63 75 72 0a 09 20 20 20 20 73 65 74 | .{......set.parent.$cur......set |
f840 | 20 63 68 69 6c 64 72 65 6e 20 5b 77 69 6e 66 6f 20 63 68 69 6c 64 72 65 6e 20 24 63 75 72 5d 0a | .children.[winfo.children.$cur]. |
f860 | 09 20 20 20 20 73 65 74 20 69 20 5b 6c 6c 65 6e 67 74 68 20 24 63 68 69 6c 64 72 65 6e 5d 0a 09 | .....set.i.[llength.$children].. |
f880 | 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 73 65 74 20 70 61 72 65 6e 74 20 5b 77 69 6e 66 6f 20 | }.else.{......set.parent.[winfo. |
f8a0 | 70 61 72 65 6e 74 20 24 63 75 72 5d 0a 09 20 20 20 20 73 65 74 20 63 68 69 6c 64 72 65 6e 20 5b | parent.$cur]......set.children.[ |
f8c0 | 77 69 6e 66 6f 20 63 68 69 6c 64 72 65 6e 20 24 70 61 72 65 6e 74 5d 0a 09 20 20 20 20 73 65 74 | winfo.children.$parent]......set |
f8e0 | 20 69 20 5b 6c 73 65 61 72 63 68 20 2d 65 78 61 63 74 20 24 63 68 69 6c 64 72 65 6e 20 24 63 75 | .i.[lsearch.-exact.$children.$cu |
f900 | 72 5d 0a 09 7d 0a 0a 09 23 20 47 6f 20 74 6f 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 73 69 62 | r]..}...#.Go.to.the.previous.sib |
f920 | 6c 69 6e 67 2c 20 74 68 65 6e 20 64 65 73 63 65 6e 64 20 74 6f 20 69 74 73 20 6c 61 73 74 20 64 | ling,.then.descend.to.its.last.d |
f940 | 65 73 63 65 6e 64 61 6e 74 0a 09 23 20 28 68 69 67 68 65 73 74 20 69 6e 20 73 74 61 63 6b 69 6e | escendant..#.(highest.in.stackin |
f960 | 67 20 6f 72 64 65 72 2e 20 20 57 68 69 6c 65 20 64 6f 69 6e 67 20 74 68 69 73 2c 20 69 67 6e 6f | g.order...While.doing.this,.igno |
f980 | 72 65 20 74 6f 70 2d 6c 65 76 65 6c 73 0a 09 23 20 61 6e 64 20 74 68 65 69 72 20 64 65 73 63 65 | re.top-levels..#.and.their.desce |
f9a0 | 6e 64 61 6e 74 73 2e 20 20 57 68 65 6e 20 77 65 20 72 75 6e 20 6f 75 74 20 6f 66 20 64 65 73 63 | ndants...When.we.run.out.of.desc |
f9c0 | 65 6e 64 61 6e 74 73 2c 20 67 6f 20 75 70 0a 09 23 20 6f 6e 65 20 6c 65 76 65 6c 20 74 6f 20 74 | endants,.go.up..#.one.level.to.t |
f9e0 | 68 65 20 70 61 72 65 6e 74 2e 0a 0a 09 77 68 69 6c 65 20 7b 24 69 20 3e 20 30 7d 20 7b 0a 09 20 | he.parent....while.{$i.>.0}.{... |
fa00 | 20 20 20 69 6e 63 72 20 69 20 2d 31 0a 09 20 20 20 20 73 65 74 20 63 75 72 20 5b 6c 69 6e 64 65 | ...incr.i.-1......set.cur.[linde |
fa20 | 78 20 24 63 68 69 6c 64 72 65 6e 20 24 69 5d 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 | x.$children.$i]......if.{[string |
fa40 | 20 65 71 75 61 6c 20 5b 77 69 6e 66 6f 20 74 6f 70 6c 65 76 65 6c 20 24 63 75 72 5d 20 24 63 75 | .equal.[winfo.toplevel.$cur].$cu |
fa60 | 72 5d 7d 20 7b 0a 09 09 63 6f 6e 74 69 6e 75 65 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 73 65 74 | r]}.{...continue......}......set |
fa80 | 20 70 61 72 65 6e 74 20 24 63 75 72 0a 09 20 20 20 20 73 65 74 20 63 68 69 6c 64 72 65 6e 20 5b | .parent.$cur......set.children.[ |
faa0 | 77 69 6e 66 6f 20 63 68 69 6c 64 72 65 6e 20 24 70 61 72 65 6e 74 5d 0a 09 20 20 20 20 73 65 74 | winfo.children.$parent]......set |
fac0 | 20 69 20 5b 6c 6c 65 6e 67 74 68 20 24 63 68 69 6c 64 72 65 6e 5d 0a 09 7d 0a 09 73 65 74 20 63 | .i.[llength.$children]..}..set.c |
fae0 | 75 72 20 24 70 61 72 65 6e 74 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 77 | ur.$parent..if.{[string.equal.$w |
fb00 | 20 24 63 75 72 5d 20 7c 7c 20 5b 74 6b 46 6f 63 75 73 4f 4b 20 24 63 75 72 5d 7d 20 7b 0a 09 20 | .$cur].||.[tkFocusOK.$cur]}.{... |
fb20 | 20 20 20 72 65 74 75 72 6e 20 24 63 75 72 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 46 | ...return.$cur..}.....}.}..#.tkF |
fb40 | 6f 63 75 73 4f 4b 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 | ocusOK.--.#.#.This.procedure.is. |
fb60 | 69 6e 76 6f 6b 65 64 20 74 6f 20 64 65 63 69 64 65 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f 74 | invoked.to.decide.whether.or.not |
fb80 | 20 74 6f 20 66 6f 63 75 73 20 6f 6e 0a 23 20 61 20 67 69 76 65 6e 20 77 69 6e 64 6f 77 2e 20 20 | .to.focus.on.#.a.given.window... |
fba0 | 49 74 20 72 65 74 75 72 6e 73 20 31 20 69 66 20 69 74 27 73 20 4f 4b 20 74 6f 20 66 6f 63 75 73 | It.returns.1.if.it's.OK.to.focus |
fbc0 | 20 6f 6e 20 74 68 65 20 77 69 6e 64 6f 77 2c 0a 23 20 30 20 69 66 20 69 74 27 73 20 6e 6f 74 20 | .on.the.window,.#.0.if.it's.not. |
fbe0 | 4f 4b 2e 20 20 54 68 65 20 63 6f 64 65 20 66 69 72 73 74 20 63 68 65 63 6b 73 20 77 68 65 74 68 | OK...The.code.first.checks.wheth |
fc00 | 65 72 20 74 68 65 20 77 69 6e 64 6f 77 20 69 73 0a 23 20 76 69 65 77 61 62 6c 65 2e 20 20 49 66 | er.the.window.is.#.viewable...If |
fc20 | 20 6e 6f 74 2c 20 74 68 65 6e 20 69 74 20 6e 65 76 65 72 20 66 6f 63 75 73 65 73 20 6f 6e 20 74 | .not,.then.it.never.focuses.on.t |
fc40 | 68 65 20 77 69 6e 64 6f 77 2e 20 20 54 68 65 6e 20 69 74 0a 23 20 63 68 65 63 6b 73 20 74 68 65 | he.window...Then.it.#.checks.the |
fc60 | 20 2d 74 61 6b 65 66 6f 63 75 73 20 6f 70 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 77 69 6e 64 6f | .-takefocus.option.for.the.windo |
fc80 | 77 20 61 6e 64 20 75 73 65 73 20 69 74 20 69 66 20 69 74 27 73 0a 23 20 73 65 74 2e 20 20 49 66 | w.and.uses.it.if.it's.#.set...If |
fca0 | 20 74 68 65 72 65 27 73 20 6e 6f 20 2d 74 61 6b 65 66 6f 63 75 73 20 6f 70 74 69 6f 6e 2c 20 74 | .there's.no.-takefocus.option,.t |
fcc0 | 68 65 20 70 72 6f 63 65 64 75 72 65 20 63 68 65 63 6b 73 20 74 6f 0a 23 20 73 65 65 20 69 66 20 | he.procedure.checks.to.#.see.if. |
fce0 | 28 61 29 20 74 68 65 20 77 69 64 67 65 74 20 69 73 6e 27 74 20 64 69 73 61 62 6c 65 64 2c 20 61 | (a).the.widget.isn't.disabled,.a |
fd00 | 6e 64 20 28 62 29 20 69 74 20 68 61 73 20 73 6f 6d 65 20 6b 65 79 0a 23 20 62 69 6e 64 69 6e 67 | nd.(b).it.has.some.key.#.binding |
fd20 | 73 2e 20 20 49 66 20 61 6c 6c 20 6f 66 20 74 68 65 73 65 20 61 72 65 20 74 72 75 65 2c 20 74 68 | s...If.all.of.these.are.true,.th |
fd40 | 65 6e 20 31 20 69 73 20 72 65 74 75 72 6e 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a | en.1.is.returned..#.#.Arguments: |
fd60 | 0a 23 20 77 20 2d 09 09 4e 61 6d 65 20 6f 66 20 61 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 | .#.w.-..Name.of.a.window...proc. |
fd80 | 74 6b 46 6f 63 75 73 4f 4b 20 77 20 7b 0a 20 20 20 20 73 65 74 20 63 6f 64 65 20 5b 63 61 74 63 | tkFocusOK.w.{.....set.code.[catc |
fda0 | 68 20 7b 24 77 20 63 67 65 74 20 2d 74 61 6b 65 66 6f 63 75 73 7d 20 76 61 6c 75 65 5d 0a 20 20 | h.{$w.cget.-takefocus}.value]... |
fdc0 | 20 20 69 66 20 7b 28 24 63 6f 64 65 20 3d 3d 20 30 29 20 26 26 20 5b 73 74 72 69 6e 67 20 63 6f | ..if.{($code.==.0).&&.[string.co |
fde0 | 6d 70 61 72 65 20 24 76 61 6c 75 65 20 22 22 5d 7d 20 7b 0a 09 69 66 20 7b 24 76 61 6c 75 65 20 | mpare.$value.""]}.{..if.{$value. |
fe00 | 3d 3d 20 30 7d 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e 20 30 0a 09 7d 20 65 6c 73 65 69 66 20 | ==.0}.{......return.0..}.elseif. |
fe20 | 7b 24 76 61 6c 75 65 20 3d 3d 20 31 7d 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 77 69 6e | {$value.==.1}.{......return.[win |
fe40 | 66 6f 20 76 69 65 77 61 62 6c 65 20 24 77 5d 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 73 | fo.viewable.$w]..}.else.{......s |
fe60 | 65 74 20 76 61 6c 75 65 20 5b 75 70 6c 65 76 65 6c 20 23 30 20 24 76 61 6c 75 65 20 24 77 5d 0a | et.value.[uplevel.#0.$value.$w]. |
fe80 | 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 76 61 6c 75 65 20 | .....if.{[string.compare.$value. |
fea0 | 22 22 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 24 76 61 6c 75 65 0a 09 20 20 20 20 7d 0a 09 7d | ""]}.{...return.$value......}..} |
fec0 | 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b 77 69 6e 66 6f 20 76 69 65 77 61 62 6c 65 20 | .....}.....if.{![winfo.viewable. |
fee0 | 24 77 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 30 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 63 | $w]}.{..return.0.....}.....set.c |
ff00 | 6f 64 65 20 5b 63 61 74 63 68 20 7b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 7d 20 76 61 6c 75 | ode.[catch.{$w.cget.-state}.valu |
ff20 | 65 5d 0a 20 20 20 20 69 66 20 7b 28 24 63 6f 64 65 20 3d 3d 20 30 29 20 26 26 20 5b 73 74 72 69 | e].....if.{($code.==.0).&&.[stri |
ff40 | 6e 67 20 65 71 75 61 6c 20 24 76 61 6c 75 65 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 | ng.equal.$value."disabled"]}.{.. |
ff60 | 72 65 74 75 72 6e 20 30 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 67 65 78 70 20 4b 65 79 7c 46 6f | return.0.....}.....regexp.Key|Fo |
ff80 | 63 75 73 20 22 5b 62 69 6e 64 20 24 77 5d 20 5b 62 69 6e 64 20 5b 77 69 6e 66 6f 20 63 6c 61 73 | cus."[bind.$w].[bind.[winfo.clas |
ffa0 | 73 20 24 77 5d 5d 22 0a 7d 0a 0a 23 20 74 6b 5f 66 6f 63 75 73 46 6f 6c 6c 6f 77 73 4d 6f 75 73 | s.$w]]".}..#.tk_focusFollowsMous |
ffc0 | 65 20 2d 2d 0a 23 0a 23 20 49 66 20 74 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e | e.--.#.#.If.this.procedure.is.in |
ffe0 | 76 6f 6b 65 64 2c 20 54 6b 20 77 69 6c 6c 20 65 6e 74 65 72 20 22 66 6f 63 75 73 2d 66 6f 6c 6c | voked,.Tk.will.enter."focus-foll |
10000 | 6f 77 73 2d 6d 6f 75 73 65 22 0a 23 20 6d 6f 64 65 2c 20 77 68 65 72 65 20 74 68 65 20 66 6f 63 | ows-mouse".#.mode,.where.the.foc |
10020 | 75 73 20 69 73 20 61 6c 77 61 79 73 20 6f 6e 20 77 68 61 74 65 76 65 72 20 77 69 6e 64 6f 77 20 | us.is.always.on.whatever.window. |
10040 | 63 6f 6e 74 61 69 6e 73 20 74 68 65 0a 23 20 6d 6f 75 73 65 2e 20 20 49 66 20 74 68 69 73 20 70 | contains.the.#.mouse...If.this.p |
10060 | 72 6f 63 65 64 75 72 65 20 69 73 6e 27 74 20 69 6e 76 6f 6b 65 64 2c 20 74 68 65 6e 20 74 68 65 | rocedure.isn't.invoked,.then.the |
10080 | 20 75 73 65 72 20 74 79 70 69 63 61 6c 6c 79 0a 23 20 68 61 73 20 74 6f 20 63 6c 69 63 6b 20 6f | .user.typically.#.has.to.click.o |
100a0 | 6e 20 61 20 77 69 6e 64 6f 77 20 74 6f 20 67 69 76 65 20 69 74 20 74 68 65 20 66 6f 63 75 73 2e | n.a.window.to.give.it.the.focus. |
100c0 | 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 74 6b | .#.#.Arguments:.#.None...proc.tk |
100e0 | 5f 66 6f 63 75 73 46 6f 6c 6c 6f 77 73 4d 6f 75 73 65 20 7b 7d 20 7b 0a 20 20 20 20 73 65 74 20 | _focusFollowsMouse.{}.{.....set. |
10100 | 6f 6c 64 20 5b 62 69 6e 64 20 61 6c 6c 20 3c 45 6e 74 65 72 3e 5d 0a 20 20 20 20 73 65 74 20 73 | old.[bind.all.<Enter>].....set.s |
10120 | 63 72 69 70 74 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 22 25 64 22 20 | cript.{..if.{[string.equal."%d". |
10140 | 22 4e 6f 74 69 66 79 41 6e 63 65 73 74 6f 72 22 5d 20 5c 0a 09 09 7c 7c 20 5b 73 74 72 69 6e 67 | "NotifyAncestor"].\...||.[string |
10160 | 20 65 71 75 61 6c 20 22 25 64 22 20 22 4e 6f 74 69 66 79 4e 6f 6e 6c 69 6e 65 61 72 22 5d 20 5c | .equal."%d"."NotifyNonlinear"].\ |
10180 | 0a 09 09 7c 7c 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 22 25 64 22 20 22 4e 6f 74 69 66 79 | ...||.[string.equal."%d"."Notify |
101a0 | 49 6e 66 65 72 69 6f 72 22 5d 7d 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 74 6b 46 6f 63 75 73 4f | Inferior"]}.{......if.{[tkFocusO |
101c0 | 4b 20 25 57 5d 7d 20 7b 0a 09 09 66 6f 63 75 73 20 25 57 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 | K.%W]}.{...focus.%W......}..}... |
101e0 | 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 6f 6c 64 | ..}.....if.{[string.compare.$old |
10200 | 20 22 22 5d 7d 20 7b 0a 09 62 69 6e 64 20 61 6c 6c 20 3c 45 6e 74 65 72 3e 20 22 24 6f 6c 64 3b | .""]}.{..bind.all.<Enter>."$old; |
10220 | 20 24 73 63 72 69 70 74 22 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 62 69 6e 64 20 61 6c 6c | .$script".....}.else.{..bind.all |
10240 | 20 3c 45 6e 74 65 72 3e 20 24 73 63 72 69 70 74 0a 20 20 20 20 7d 0a 7d 0a 00 00 34 62 23 20 6c | .<Enter>.$script.....}.}...4b#.l |
10260 | 69 73 74 62 6f 78 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 66 69 6c 65 20 64 65 66 69 | istbox.tcl.--.#.#.This.file.defi |
10280 | 6e 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 54 6b 20 | nes.the.default.bindings.for.Tk. |
102a0 | 6c 69 73 74 62 6f 78 20 77 69 64 67 65 74 73 0a 23 20 61 6e 64 20 70 72 6f 76 69 64 65 73 20 70 | listbox.widgets.#.and.provides.p |
102c0 | 72 6f 63 65 64 75 72 65 73 20 74 68 61 74 20 68 65 6c 70 20 69 6e 20 69 6d 70 6c 65 6d 65 6e 74 | rocedures.that.help.in.implement |
102e0 | 69 6e 67 20 74 68 6f 73 65 20 62 69 6e 64 69 6e 67 73 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 | ing.those.bindings..#.#.RCS:.@(# |
10300 | 29 20 24 49 64 3a 20 6c 69 73 74 62 6f 78 2e 74 63 6c 2c 76 20 31 2e 31 30 20 32 30 30 30 2f 30 | ).$Id:.listbox.tcl,v.1.10.2000/0 |
10320 | 32 2f 31 30 20 30 38 3a 35 32 3a 35 30 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f | 2/10.08:52:50.hobbs.Exp.$.#.#.Co |
10340 | 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 20 54 68 65 20 52 65 67 65 6e 74 73 20 6f 66 20 | pyright.(c).1994.The.Regents.of. |
10360 | 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e 0a 23 20 | the.University.of.California..#. |
10380 | 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 35 20 53 75 6e 20 4d 69 63 72 | Copyright.(c).1994-1995.Sun.Micr |
103a0 | 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 | osystems,.Inc..#.Copyright.(c).1 |
103c0 | 39 39 38 20 62 79 20 53 63 72 69 70 74 69 63 73 20 43 6f 72 70 6f 72 61 74 69 6f 6e 2e 0a 23 0a | 998.by.Scriptics.Corporation..#. |
103e0 | 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 | #.See.the.file."license.terms".f |
10400 | 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 | or.information.on.usage.and.redi |
10420 | 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 | stribution.#.of.this.file,.and.f |
10440 | 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 | or.a.DISCLAIMER.OF.ALL.WARRANTIE |
10460 | 53 2e 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | S...#--------------------------- |
10480 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
104a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 74 6b 50 72 69 76 20 65 6c 65 6d 65 6e 74 | ---------------.#.tkPriv.element |
104c0 | 73 20 75 73 65 64 20 69 6e 20 74 68 69 73 20 66 69 6c 65 3a 0a 23 0a 23 20 61 66 74 65 72 49 64 | s.used.in.this.file:.#.#.afterId |
104e0 | 20 2d 09 09 54 6f 6b 65 6e 20 72 65 74 75 72 6e 65 64 20 62 79 20 22 61 66 74 65 72 22 20 66 6f | .-..Token.returned.by."after".fo |
10500 | 72 20 61 75 74 6f 73 63 61 6e 6e 69 6e 67 2e 0a 23 20 6c 69 73 74 62 6f 78 50 72 65 76 20 2d 09 | r.autoscanning..#.listboxPrev.-. |
10520 | 09 54 68 65 20 6c 61 73 74 20 65 6c 65 6d 65 6e 74 20 74 6f 20 62 65 20 73 65 6c 65 63 74 65 64 | .The.last.element.to.be.selected |
10540 | 20 6f 72 20 64 65 73 65 6c 65 63 74 65 64 0a 23 09 09 09 64 75 72 69 6e 67 20 61 20 73 65 6c 65 | .or.deselected.#...during.a.sele |
10560 | 63 74 69 6f 6e 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 23 20 6c 69 73 74 62 6f 78 53 65 6c 65 63 74 | ction.operation..#.listboxSelect |
10580 | 69 6f 6e 20 2d 09 41 6c 6c 20 6f 66 20 74 68 65 20 69 74 65 6d 73 20 74 68 61 74 20 77 65 72 65 | ion.-.All.of.the.items.that.were |
105a0 | 20 73 65 6c 65 63 74 65 64 20 62 65 66 6f 72 65 20 74 68 65 0a 23 09 09 09 63 75 72 72 65 6e 74 | .selected.before.the.#...current |
105c0 | 20 73 65 6c 65 63 74 69 6f 6e 20 6f 70 65 72 61 74 69 6f 6e 20 28 73 75 63 68 20 61 73 20 61 20 | .selection.operation.(such.as.a. |
105e0 | 6d 6f 75 73 65 0a 23 09 09 09 64 72 61 67 29 20 73 74 61 72 74 65 64 3b 20 20 75 73 65 64 20 74 | mouse.#...drag).started;..used.t |
10600 | 6f 20 63 61 6e 63 65 6c 20 61 6e 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d | o.cancel.an.operation..#-------- |
10620 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
10640 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
10660 | 2d 2d 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | --..#--------------------------- |
10680 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
106a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 68 65 20 63 6f 64 65 20 62 65 6c 6f 77 20 | --------------.#.The.code.below. |
106c0 | 63 72 65 61 74 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 63 6c 61 73 73 20 62 69 6e 64 69 6e | creates.the.default.class.bindin |
106e0 | 67 73 20 66 6f 72 20 6c 69 73 74 62 6f 78 65 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | gs.for.listboxes..#------------- |
10700 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
10720 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 23 20 | ----------------------------..#. |
10740 | 4e 6f 74 65 3a 20 74 68 65 20 63 68 65 63 6b 20 66 6f 72 20 65 78 69 73 74 65 6e 63 65 20 6f 66 | Note:.the.check.for.existence.of |
10760 | 20 25 57 20 62 65 6c 6f 77 20 69 73 20 62 65 63 61 75 73 65 20 74 68 69 73 20 62 69 6e 64 69 6e | .%W.below.is.because.this.bindin |
10780 | 67 0a 23 20 69 73 20 73 6f 6d 65 74 69 6d 65 73 20 69 6e 76 6f 6b 65 64 20 61 66 74 65 72 20 61 | g.#.is.sometimes.invoked.after.a |
107a0 | 20 77 69 6e 64 6f 77 20 68 61 73 20 62 65 65 6e 20 64 65 6c 65 74 65 64 20 28 65 2e 67 2e 20 62 | .window.has.been.deleted.(e.g..b |
107c0 | 65 63 61 75 73 65 0a 23 20 74 68 65 72 65 20 69 73 20 61 20 64 6f 75 62 6c 65 2d 63 6c 69 63 6b | ecause.#.there.is.a.double-click |
107e0 | 20 62 69 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 77 69 64 67 65 74 20 74 68 61 74 20 64 65 6c 65 | .binding.on.the.widget.that.dele |
10800 | 74 65 73 20 69 74 29 2e 20 20 55 73 65 72 73 0a 23 20 63 61 6e 20 70 75 74 20 22 62 72 65 61 6b | tes.it)...Users.#.can.put."break |
10820 | 22 73 20 69 6e 20 74 68 65 69 72 20 62 69 6e 64 69 6e 67 73 20 74 6f 20 61 76 6f 69 64 20 74 68 | "s.in.their.bindings.to.avoid.th |
10840 | 65 20 65 72 72 6f 72 2c 20 62 75 74 20 74 68 69 73 20 63 68 65 63 6b 0a 23 20 6d 61 6b 65 73 20 | e.error,.but.this.check.#.makes. |
10860 | 74 68 61 74 20 75 6e 6e 65 63 65 73 73 61 72 79 2e 0a 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 | that.unnecessary...bind.Listbox. |
10880 | 3c 31 3e 20 7b 0a 20 20 20 20 69 66 20 7b 5b 77 69 6e 66 6f 20 65 78 69 73 74 73 20 25 57 5d 7d | <1>.{.....if.{[winfo.exists.%W]} |
108a0 | 20 7b 0a 09 74 6b 4c 69 73 74 62 6f 78 42 65 67 69 6e 53 65 6c 65 63 74 20 25 57 20 5b 25 57 20 | .{..tkListboxBeginSelect.%W.[%W. |
108c0 | 69 6e 64 65 78 20 40 25 78 2c 25 79 5d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 49 67 6e 6f 72 65 20 | index.@%x,%y].....}.}..#.Ignore. |
108e0 | 64 6f 75 62 6c 65 20 63 6c 69 63 6b 73 20 73 6f 20 74 68 61 74 20 75 73 65 72 73 20 63 61 6e 20 | double.clicks.so.that.users.can. |
10900 | 64 65 66 69 6e 65 20 74 68 65 69 72 20 6f 77 6e 20 62 65 68 61 76 69 6f 72 73 2e 0a 23 20 41 6d | define.their.own.behaviors..#.Am |
10920 | 6f 6e 67 20 6f 74 68 65 72 20 74 68 69 6e 67 73 2c 20 74 68 69 73 20 70 72 65 76 65 6e 74 73 20 | ong.other.things,.this.prevents. |
10940 | 65 72 72 6f 72 73 20 69 66 20 74 68 65 20 75 73 65 72 20 64 65 6c 65 74 65 73 20 74 68 65 0a 23 | errors.if.the.user.deletes.the.# |
10960 | 20 6c 69 73 74 62 6f 78 20 6f 6e 20 61 20 64 6f 75 62 6c 65 20 63 6c 69 63 6b 2e 0a 0a 62 69 6e | .listbox.on.a.double.click...bin |
10980 | 64 20 4c 69 73 74 62 6f 78 20 3c 44 6f 75 62 6c 65 2d 31 3e 20 7b 0a 20 20 20 20 23 20 45 6d 70 | d.Listbox.<Double-1>.{.....#.Emp |
109a0 | 74 79 20 73 63 72 69 70 74 0a 7d 0a 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 42 31 2d 4d 6f | ty.script.}..bind.Listbox.<B1-Mo |
109c0 | 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 78 29 20 25 78 0a 20 20 20 | tion>.{.....set.tkPriv(x).%x.... |
109e0 | 20 73 65 74 20 74 6b 50 72 69 76 28 79 29 20 25 79 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 4d | .set.tkPriv(y).%y.....tkListboxM |
10a00 | 6f 74 69 6f 6e 20 25 57 20 5b 25 57 20 69 6e 64 65 78 20 40 25 78 2c 25 79 5d 0a 7d 0a 62 69 6e | otion.%W.[%W.index.@%x,%y].}.bin |
10a20 | 64 20 4c 69 73 74 62 6f 78 20 3c 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 31 3e 20 7b 0a 20 20 | d.Listbox.<ButtonRelease-1>.{... |
10a40 | 20 20 74 6b 43 61 6e 63 65 6c 52 65 70 65 61 74 0a 20 20 20 20 25 57 20 61 63 74 69 76 61 74 65 | ..tkCancelRepeat.....%W.activate |
10a60 | 20 40 25 78 2c 25 79 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 53 68 69 66 74 2d 31 3e | .@%x,%y.}.bind.Listbox.<Shift-1> |
10a80 | 20 7b 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 42 65 67 69 6e 45 78 74 65 6e 64 20 25 57 20 5b | .{.....tkListboxBeginExtend.%W.[ |
10aa0 | 25 57 20 69 6e 64 65 78 20 40 25 78 2c 25 79 5d 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 | %W.index.@%x,%y].}.bind.Listbox. |
10ac0 | 3c 43 6f 6e 74 72 6f 6c 2d 31 3e 20 7b 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 42 65 67 69 6e | <Control-1>.{.....tkListboxBegin |
10ae0 | 54 6f 67 67 6c 65 20 25 57 20 5b 25 57 20 69 6e 64 65 78 20 40 25 78 2c 25 79 5d 0a 7d 0a 62 69 | Toggle.%W.[%W.index.@%x,%y].}.bi |
10b00 | 6e 64 20 4c 69 73 74 62 6f 78 20 3c 42 31 2d 4c 65 61 76 65 3e 20 7b 0a 20 20 20 20 73 65 74 20 | nd.Listbox.<B1-Leave>.{.....set. |
10b20 | 74 6b 50 72 69 76 28 78 29 20 25 78 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 79 29 20 25 | tkPriv(x).%x.....set.tkPriv(y).% |
10b40 | 79 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 41 75 74 6f 53 63 61 6e 20 25 57 0a 7d 0a 62 69 6e | y.....tkListboxAutoScan.%W.}.bin |
10b60 | 64 20 4c 69 73 74 62 6f 78 20 3c 42 31 2d 45 6e 74 65 72 3e 20 7b 0a 20 20 20 20 74 6b 43 61 6e | d.Listbox.<B1-Enter>.{.....tkCan |
10b80 | 63 65 6c 52 65 70 65 61 74 0a 7d 0a 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 55 70 3e 20 7b | celRepeat.}..bind.Listbox.<Up>.{ |
10ba0 | 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 55 70 44 6f 77 6e 20 25 57 20 2d 31 0a 7d 0a 62 69 6e | .....tkListboxUpDown.%W.-1.}.bin |
10bc0 | 64 20 4c 69 73 74 62 6f 78 20 3c 53 68 69 66 74 2d 55 70 3e 20 7b 0a 20 20 20 20 74 6b 4c 69 73 | d.Listbox.<Shift-Up>.{.....tkLis |
10be0 | 74 62 6f 78 45 78 74 65 6e 64 55 70 44 6f 77 6e 20 25 57 20 2d 31 0a 7d 0a 62 69 6e 64 20 4c 69 | tboxExtendUpDown.%W.-1.}.bind.Li |
10c00 | 73 74 62 6f 78 20 3c 44 6f 77 6e 3e 20 7b 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 55 70 44 6f | stbox.<Down>.{.....tkListboxUpDo |
10c20 | 77 6e 20 25 57 20 31 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 53 68 69 66 74 2d 44 6f | wn.%W.1.}.bind.Listbox.<Shift-Do |
10c40 | 77 6e 3e 20 7b 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 45 78 74 65 6e 64 55 70 44 6f 77 6e 20 | wn>.{.....tkListboxExtendUpDown. |
10c60 | 25 57 20 31 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 4c 65 66 74 3e 20 7b 0a 20 20 20 | %W.1.}.bind.Listbox.<Left>.{.... |
10c80 | 20 25 57 20 78 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 31 20 75 6e 69 74 73 0a 7d 0a 62 69 6e 64 | .%W.xview.scroll.-1.units.}.bind |
10ca0 | 20 4c 69 73 74 62 6f 78 20 3c 43 6f 6e 74 72 6f 6c 2d 4c 65 66 74 3e 20 7b 0a 20 20 20 20 25 57 | .Listbox.<Control-Left>.{.....%W |
10cc0 | 20 78 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 31 20 70 61 67 65 73 0a 7d 0a 62 69 6e 64 20 4c 69 | .xview.scroll.-1.pages.}.bind.Li |
10ce0 | 73 74 62 6f 78 20 3c 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 25 57 20 78 76 69 65 77 20 73 63 72 | stbox.<Right>.{.....%W.xview.scr |
10d00 | 6f 6c 6c 20 31 20 75 6e 69 74 73 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 43 6f 6e 74 | oll.1.units.}.bind.Listbox.<Cont |
10d20 | 72 6f 6c 2d 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 25 57 20 78 76 69 65 77 20 73 63 72 6f 6c 6c | rol-Right>.{.....%W.xview.scroll |
10d40 | 20 31 20 70 61 67 65 73 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 50 72 69 6f 72 3e 20 | .1.pages.}.bind.Listbox.<Prior>. |
10d60 | 7b 0a 20 20 20 20 25 57 20 79 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 31 20 70 61 67 65 73 0a 20 | {.....%W.yview.scroll.-1.pages.. |
10d80 | 20 20 20 25 57 20 61 63 74 69 76 61 74 65 20 40 30 2c 30 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 | ...%W.activate.@0,0.}.bind.Listb |
10da0 | 6f 78 20 3c 4e 65 78 74 3e 20 7b 0a 20 20 20 20 25 57 20 79 76 69 65 77 20 73 63 72 6f 6c 6c 20 | ox.<Next>.{.....%W.yview.scroll. |
10dc0 | 31 20 70 61 67 65 73 0a 20 20 20 20 25 57 20 61 63 74 69 76 61 74 65 20 40 30 2c 30 0a 7d 0a 62 | 1.pages.....%W.activate.@0,0.}.b |
10de0 | 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 43 6f 6e 74 72 6f 6c 2d 50 72 69 6f 72 3e 20 7b 0a 20 20 | ind.Listbox.<Control-Prior>.{... |
10e00 | 20 20 25 57 20 78 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 31 20 70 61 67 65 73 0a 7d 0a 62 69 6e | ..%W.xview.scroll.-1.pages.}.bin |
10e20 | 64 20 4c 69 73 74 62 6f 78 20 3c 43 6f 6e 74 72 6f 6c 2d 4e 65 78 74 3e 20 7b 0a 20 20 20 20 25 | d.Listbox.<Control-Next>.{.....% |
10e40 | 57 20 78 76 69 65 77 20 73 63 72 6f 6c 6c 20 31 20 70 61 67 65 73 0a 7d 0a 62 69 6e 64 20 4c 69 | W.xview.scroll.1.pages.}.bind.Li |
10e60 | 73 74 62 6f 78 20 3c 48 6f 6d 65 3e 20 7b 0a 20 20 20 20 25 57 20 78 76 69 65 77 20 6d 6f 76 65 | stbox.<Home>.{.....%W.xview.move |
10e80 | 74 6f 20 30 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 45 6e 64 3e 20 7b 0a 20 20 20 20 | to.0.}.bind.Listbox.<End>.{..... |
10ea0 | 25 57 20 78 76 69 65 77 20 6d 6f 76 65 74 6f 20 31 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 | %W.xview.moveto.1.}.bind.Listbox |
10ec0 | 20 3c 43 6f 6e 74 72 6f 6c 2d 48 6f 6d 65 3e 20 7b 0a 20 20 20 20 25 57 20 61 63 74 69 76 61 74 | .<Control-Home>.{.....%W.activat |
10ee0 | 65 20 30 0a 20 20 20 20 25 57 20 73 65 65 20 30 0a 20 20 20 20 25 57 20 73 65 6c 65 63 74 69 6f | e.0.....%W.see.0.....%W.selectio |
10f00 | 6e 20 63 6c 65 61 72 20 30 20 65 6e 64 0a 20 20 20 20 25 57 20 73 65 6c 65 63 74 69 6f 6e 20 73 | n.clear.0.end.....%W.selection.s |
10f20 | 65 74 20 30 0a 20 20 20 20 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 20 25 57 20 3c 3c 4c 69 73 | et.0.....event.generate.%W.<<Lis |
10f40 | 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 53 68 69 | tboxSelect>>.}.bind.Listbox.<Shi |
10f60 | 66 74 2d 43 6f 6e 74 72 6f 6c 2d 48 6f 6d 65 3e 20 7b 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 | ft-Control-Home>.{.....tkListbox |
10f80 | 44 61 74 61 45 78 74 65 6e 64 20 25 57 20 30 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c | DataExtend.%W.0.}.bind.Listbox.< |
10fa0 | 43 6f 6e 74 72 6f 6c 2d 45 6e 64 3e 20 7b 0a 20 20 20 20 25 57 20 61 63 74 69 76 61 74 65 20 65 | Control-End>.{.....%W.activate.e |
10fc0 | 6e 64 0a 20 20 20 20 25 57 20 73 65 65 20 65 6e 64 0a 20 20 20 20 25 57 20 73 65 6c 65 63 74 69 | nd.....%W.see.end.....%W.selecti |
10fe0 | 6f 6e 20 63 6c 65 61 72 20 30 20 65 6e 64 0a 20 20 20 20 25 57 20 73 65 6c 65 63 74 69 6f 6e 20 | on.clear.0.end.....%W.selection. |
11000 | 73 65 74 20 65 6e 64 0a 20 20 20 20 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 20 25 57 20 3c 3c | set.end.....event.generate.%W.<< |
11020 | 4c 69 73 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c | ListboxSelect>>.}.bind.Listbox.< |
11040 | 53 68 69 66 74 2d 43 6f 6e 74 72 6f 6c 2d 45 6e 64 3e 20 7b 0a 20 20 20 20 74 6b 4c 69 73 74 62 | Shift-Control-End>.{.....tkListb |
11060 | 6f 78 44 61 74 61 45 78 74 65 6e 64 20 25 57 20 5b 25 57 20 69 6e 64 65 78 20 65 6e 64 5d 0a 7d | oxDataExtend.%W.[%W.index.end].} |
11080 | 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 3c 43 6f 70 79 3e 3e 20 7b 0a 20 20 20 20 69 66 20 | .bind.Listbox.<<Copy>>.{.....if. |
110a0 | 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 73 65 6c 65 63 74 69 6f 6e 20 6f 77 6e 20 2d 64 | {[string.equal.[selection.own.-d |
110c0 | 69 73 70 6c 61 79 6f 66 20 25 57 5d 20 22 25 57 22 5d 7d 20 7b 0a 09 63 6c 69 70 62 6f 61 72 64 | isplayof.%W]."%W"]}.{..clipboard |
110e0 | 20 63 6c 65 61 72 20 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 0a 09 63 6c 69 70 62 6f 61 72 64 20 | .clear.-displayof.%W..clipboard. |
11100 | 61 70 70 65 6e 64 20 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 20 5b 73 65 6c 65 63 74 69 6f 6e 20 | append.-displayof.%W.[selection. |
11120 | 67 65 74 20 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 5d 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 | get.-displayof.%W].....}.}.bind. |
11140 | 4c 69 73 74 62 6f 78 20 3c 73 70 61 63 65 3e 20 7b 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 42 | Listbox.<space>.{.....tkListboxB |
11160 | 65 67 69 6e 53 65 6c 65 63 74 20 25 57 20 5b 25 57 20 69 6e 64 65 78 20 61 63 74 69 76 65 5d 0a | eginSelect.%W.[%W.index.active]. |
11180 | 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 53 65 6c 65 63 74 3e 20 7b 0a 20 20 20 20 74 6b | }.bind.Listbox.<Select>.{.....tk |
111a0 | 4c 69 73 74 62 6f 78 42 65 67 69 6e 53 65 6c 65 63 74 20 25 57 20 5b 25 57 20 69 6e 64 65 78 20 | ListboxBeginSelect.%W.[%W.index. |
111c0 | 61 63 74 69 76 65 5d 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 43 6f 6e 74 72 6f 6c 2d | active].}.bind.Listbox.<Control- |
111e0 | 53 68 69 66 74 2d 73 70 61 63 65 3e 20 7b 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 42 65 67 69 | Shift-space>.{.....tkListboxBegi |
11200 | 6e 45 78 74 65 6e 64 20 25 57 20 5b 25 57 20 69 6e 64 65 78 20 61 63 74 69 76 65 5d 0a 7d 0a 62 | nExtend.%W.[%W.index.active].}.b |
11220 | 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 53 68 69 66 74 2d 53 65 6c 65 63 74 3e 20 7b 0a 20 20 20 | ind.Listbox.<Shift-Select>.{.... |
11240 | 20 74 6b 4c 69 73 74 62 6f 78 42 65 67 69 6e 45 78 74 65 6e 64 20 25 57 20 5b 25 57 20 69 6e 64 | .tkListboxBeginExtend.%W.[%W.ind |
11260 | 65 78 20 61 63 74 69 76 65 5d 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 45 73 63 61 70 | ex.active].}.bind.Listbox.<Escap |
11280 | 65 3e 20 7b 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 43 61 6e 63 65 6c 20 25 57 0a 7d 0a 62 69 | e>.{.....tkListboxCancel.%W.}.bi |
112a0 | 6e 64 20 4c 69 73 74 62 6f 78 20 3c 43 6f 6e 74 72 6f 6c 2d 73 6c 61 73 68 3e 20 7b 0a 20 20 20 | nd.Listbox.<Control-slash>.{.... |
112c0 | 20 74 6b 4c 69 73 74 62 6f 78 53 65 6c 65 63 74 41 6c 6c 20 25 57 0a 7d 0a 62 69 6e 64 20 4c 69 | .tkListboxSelectAll.%W.}.bind.Li |
112e0 | 73 74 62 6f 78 20 3c 43 6f 6e 74 72 6f 6c 2d 62 61 63 6b 73 6c 61 73 68 3e 20 7b 0a 20 20 20 20 | stbox.<Control-backslash>.{..... |
11300 | 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 25 57 20 63 67 65 74 20 2d 73 65 | if.{[string.compare.[%W.cget.-se |
11320 | 6c 65 63 74 6d 6f 64 65 5d 20 22 62 72 6f 77 73 65 22 5d 7d 20 7b 0a 09 25 57 20 73 65 6c 65 63 | lectmode]."browse"]}.{..%W.selec |
11340 | 74 69 6f 6e 20 63 6c 65 61 72 20 30 20 65 6e 64 0a 09 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 | tion.clear.0.end..event.generate |
11360 | 20 25 57 20 3c 3c 4c 69 73 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a 20 20 20 20 7d 0a 7d 0a 0a 23 | .%W.<<ListboxSelect>>.....}.}..# |
11380 | 20 41 64 64 69 74 69 6f 6e 61 6c 20 54 6b 20 62 69 6e 64 69 6e 67 73 20 74 68 61 74 20 61 72 65 | .Additional.Tk.bindings.that.are |
113a0 | 6e 27 74 20 70 61 72 74 20 6f 66 20 74 68 65 20 4d 6f 74 69 66 20 6c 6f 6f 6b 20 61 6e 64 20 66 | n't.part.of.the.Motif.look.and.f |
113c0 | 65 65 6c 3a 0a 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 32 3e 20 7b 0a 20 20 20 20 25 57 20 | eel:..bind.Listbox.<2>.{.....%W. |
113e0 | 73 63 61 6e 20 6d 61 72 6b 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c | scan.mark.%x.%y.}.bind.Listbox.< |
11400 | 42 32 2d 4d 6f 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 25 57 20 73 63 61 6e 20 64 72 61 67 74 6f 20 | B2-Motion>.{.....%W.scan.dragto. |
11420 | 25 78 20 25 79 0a 7d 0a 0a 23 20 54 68 65 20 4d 6f 75 73 65 57 68 65 65 6c 20 77 69 6c 6c 20 74 | %x.%y.}..#.The.MouseWheel.will.t |
11440 | 79 70 69 63 61 6c 6c 79 20 6f 6e 6c 79 20 66 69 72 65 20 6f 6e 20 57 69 6e 64 6f 77 73 2e 20 20 | ypically.only.fire.on.Windows... |
11460 | 48 6f 77 65 76 65 72 2c 0a 23 20 73 6f 6d 65 6f 6e 65 20 63 6f 75 6c 64 20 75 73 65 20 74 68 65 | However,.#.someone.could.use.the |
11480 | 20 22 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 70 72 6f | ."event.generate".command.to.pro |
114a0 | 64 75 63 65 20 6f 6e 65 0a 23 20 6f 6e 20 6f 74 68 65 72 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 0a | duce.one.#.on.other.platforms... |
114c0 | 62 69 6e 64 20 4c 69 73 74 62 6f 78 20 3c 4d 6f 75 73 65 57 68 65 65 6c 3e 20 7b 0a 20 20 20 20 | bind.Listbox.<MouseWheel>.{..... |
114e0 | 25 57 20 79 76 69 65 77 20 73 63 72 6f 6c 6c 20 5b 65 78 70 72 20 7b 2d 20 28 25 44 20 2f 20 31 | %W.yview.scroll.[expr.{-.(%D./.1 |
11500 | 32 30 29 20 2a 20 34 7d 5d 20 75 6e 69 74 73 0a 7d 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 | 20).*.4}].units.}..if.{[string.e |
11520 | 71 75 61 6c 20 22 75 6e 69 78 22 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f | qual."unix".$tcl_platform(platfo |
11540 | 72 6d 29 5d 7d 20 7b 0a 20 20 20 20 23 20 53 75 70 70 6f 72 74 20 66 6f 72 20 6d 6f 75 73 65 77 | rm)]}.{.....#.Support.for.mousew |
11560 | 68 65 65 6c 73 20 6f 6e 20 4c 69 6e 75 78 2f 55 6e 69 78 20 63 6f 6d 6d 6f 6e 6c 79 20 63 6f 6d | heels.on.Linux/Unix.commonly.com |
11580 | 65 73 20 74 68 72 6f 75 67 68 20 6d 61 70 70 69 6e 67 0a 20 20 20 20 23 20 74 68 65 20 77 68 65 | es.through.mapping.....#.the.whe |
115a0 | 65 6c 20 74 6f 20 74 68 65 20 65 78 74 65 6e 64 65 64 20 62 75 74 74 6f 6e 73 2e 20 20 49 66 20 | el.to.the.extended.buttons...If. |
115c0 | 79 6f 75 20 68 61 76 65 20 61 20 6d 6f 75 73 65 77 68 65 65 6c 2c 20 66 69 6e 64 0a 20 20 20 20 | you.have.a.mousewheel,.find..... |
115e0 | 23 20 4c 69 6e 75 78 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 69 6e 66 6f 20 61 74 3a 0a 20 | #.Linux.configuration.info.at:.. |
11600 | 20 20 20 23 09 68 74 74 70 3a 2f 2f 77 77 77 2e 69 6e 72 69 61 2e 66 72 2f 6b 6f 61 6c 61 2f 63 | ...#.http://www.inria.fr/koala/c |
11620 | 6f 6c 61 73 2f 6d 6f 75 73 65 2d 77 68 65 65 6c 2d 73 63 72 6f 6c 6c 2f 0a 20 20 20 20 62 69 6e | olas/mouse-wheel-scroll/.....bin |
11640 | 64 20 4c 69 73 74 62 6f 78 20 3c 34 3e 20 7b 0a 09 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 | d.Listbox.<4>.{..if.{!$tk_strict |
11660 | 4d 6f 74 69 66 7d 20 7b 0a 09 20 20 20 20 25 57 20 79 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 35 | Motif}.{......%W.yview.scroll.-5 |
11680 | 20 75 6e 69 74 73 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 4c 69 73 74 62 6f 78 | .units..}.....}.....bind.Listbox |
116a0 | 20 3c 35 3e 20 7b 0a 09 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a | .<5>.{..if.{!$tk_strictMotif}.{. |
116c0 | 09 20 20 20 20 25 57 20 79 76 69 65 77 20 73 63 72 6f 6c 6c 20 35 20 75 6e 69 74 73 0a 09 7d 0a | .....%W.yview.scroll.5.units..}. |
116e0 | 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4c 69 73 74 62 6f 78 42 65 67 69 6e 53 65 6c 65 63 74 20 | ....}.}..#.tkListboxBeginSelect. |
11700 | 2d 2d 0a 23 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 74 79 70 69 63 61 6c | --.#.#.This.procedure.is.typical |
11720 | 6c 79 20 69 6e 76 6f 6b 65 64 20 6f 6e 20 62 75 74 74 6f 6e 2d 31 20 70 72 65 73 73 65 73 2e 20 | ly.invoked.on.button-1.presses.. |
11740 | 20 49 74 20 62 65 67 69 6e 73 0a 23 20 74 68 65 20 70 72 6f 63 65 73 73 20 6f 66 20 6d 61 6b 69 | .It.begins.#.the.process.of.maki |
11760 | 6e 67 20 61 20 73 65 6c 65 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 6c 69 73 74 62 6f 78 2e 20 20 | ng.a.selection.in.the.listbox... |
11780 | 49 74 73 20 65 78 61 63 74 20 62 65 68 61 76 69 6f 72 0a 23 20 64 65 70 65 6e 64 73 20 6f 6e 20 | Its.exact.behavior.#.depends.on. |
117a0 | 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 6d 6f 64 65 20 63 75 72 72 65 6e 74 6c 79 20 69 6e 20 | the.selection.mode.currently.in. |
117c0 | 65 66 66 65 63 74 20 66 6f 72 20 74 68 65 20 6c 69 73 74 62 6f 78 3b 0a 23 20 73 65 65 20 74 68 | effect.for.the.listbox;.#.see.th |
117e0 | 65 20 4d 6f 74 69 66 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 64 65 74 61 69 6c | e.Motif.documentation.for.detail |
11800 | 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6c 69 73 | s..#.#.Arguments:.#.w.-..The.lis |
11820 | 74 62 6f 78 20 77 69 64 67 65 74 2e 0a 23 20 65 6c 20 2d 09 09 54 68 65 20 65 6c 65 6d 65 6e 74 | tbox.widget..#.el.-..The.element |
11840 | 20 66 6f 72 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 6f 70 65 72 61 74 69 6f 6e 20 28 74 79 | .for.the.selection.operation.(ty |
11860 | 70 69 63 61 6c 6c 79 20 74 68 65 0a 23 09 09 6f 6e 65 20 75 6e 64 65 72 20 74 68 65 20 70 6f 69 | pically.the.#..one.under.the.poi |
11880 | 6e 74 65 72 29 2e 20 20 4d 75 73 74 20 62 65 20 69 6e 20 6e 75 6d 65 72 69 63 61 6c 20 66 6f 72 | nter)...Must.be.in.numerical.for |
118a0 | 6d 2e 0a 0a 70 72 6f 63 20 74 6b 4c 69 73 74 62 6f 78 42 65 67 69 6e 53 65 6c 65 63 74 20 7b 77 | m...proc.tkListboxBeginSelect.{w |
118c0 | 20 65 6c 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 | .el}.{.....global.tkPriv.....if. |
118e0 | 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 63 67 65 74 20 2d 73 65 6c 65 63 74 6d | {[string.equal.[$w.cget.-selectm |
11900 | 6f 64 65 5d 20 22 6d 75 6c 74 69 70 6c 65 22 5d 7d 20 7b 0a 09 69 66 20 7b 5b 24 77 20 73 65 6c | ode]."multiple"]}.{..if.{[$w.sel |
11920 | 65 63 74 69 6f 6e 20 69 6e 63 6c 75 64 65 73 20 24 65 6c 5d 7d 20 7b 0a 09 20 20 20 20 24 77 20 | ection.includes.$el]}.{......$w. |
11940 | 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 20 24 65 6c 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 | selection.clear.$el..}.else.{... |
11960 | 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 73 65 74 20 24 65 6c 0a 09 7d 0a 20 20 20 20 7d | ...$w.selection.set.$el..}.....} |
11980 | 20 65 6c 73 65 20 7b 0a 09 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 20 30 20 65 6e | .else.{..$w.selection.clear.0.en |
119a0 | 64 0a 09 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 73 65 74 20 24 65 6c 0a 09 24 77 20 73 65 6c 65 | d..$w.selection.set.$el..$w.sele |
119c0 | 63 74 69 6f 6e 20 61 6e 63 68 6f 72 20 24 65 6c 0a 09 73 65 74 20 74 6b 50 72 69 76 28 6c 69 73 | ction.anchor.$el..set.tkPriv(lis |
119e0 | 74 62 6f 78 53 65 6c 65 63 74 69 6f 6e 29 20 7b 7d 0a 09 73 65 74 20 74 6b 50 72 69 76 28 6c 69 | tboxSelection).{}..set.tkPriv(li |
11a00 | 73 74 62 6f 78 50 72 65 76 29 20 24 65 6c 0a 20 20 20 20 7d 0a 20 20 20 20 65 76 65 6e 74 20 67 | stboxPrev).$el.....}.....event.g |
11a20 | 65 6e 65 72 61 74 65 20 24 77 20 3c 3c 4c 69 73 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a 7d 0a 0a | enerate.$w.<<ListboxSelect>>.}.. |
11a40 | 23 20 74 6b 4c 69 73 74 62 6f 78 4d 6f 74 69 6f 6e 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 70 72 | #.tkListboxMotion.--.#.#.This.pr |
11a60 | 6f 63 65 64 75 72 65 20 69 73 20 63 61 6c 6c 65 64 20 74 6f 20 70 72 6f 63 65 73 73 20 6d 6f 75 | ocedure.is.called.to.process.mou |
11a80 | 73 65 20 6d 6f 74 69 6f 6e 20 65 76 65 6e 74 73 20 77 68 69 6c 65 0a 23 20 62 75 74 74 6f 6e 20 | se.motion.events.while.#.button. |
11aa0 | 31 20 69 73 20 64 6f 77 6e 2e 20 20 49 74 20 6d 61 79 20 6d 6f 76 65 20 6f 72 20 65 78 74 65 6e | 1.is.down...It.may.move.or.exten |
11ac0 | 64 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 2c 20 64 65 70 65 6e 64 69 6e 67 0a 23 20 6f 6e 20 | d.the.selection,.depending.#.on. |
11ae0 | 74 68 65 20 6c 69 73 74 62 6f 78 27 73 20 73 65 6c 65 63 74 69 6f 6e 20 6d 6f 64 65 2e 0a 23 0a | the.listbox's.selection.mode..#. |
11b00 | 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6c 69 73 74 62 6f 78 20 | #.Arguments:.#.w.-..The.listbox. |
11b20 | 77 69 64 67 65 74 2e 0a 23 20 65 6c 20 2d 09 09 54 68 65 20 65 6c 65 6d 65 6e 74 20 75 6e 64 65 | widget..#.el.-..The.element.unde |
11b40 | 72 20 74 68 65 20 70 6f 69 6e 74 65 72 20 28 6d 75 73 74 20 62 65 20 61 20 6e 75 6d 62 65 72 29 | r.the.pointer.(must.be.a.number) |
11b60 | 2e 0a 0a 70 72 6f 63 20 74 6b 4c 69 73 74 62 6f 78 4d 6f 74 69 6f 6e 20 7b 77 20 65 6c 7d 20 7b | ...proc.tkListboxMotion.{w.el}.{ |
11b80 | 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 24 65 6c 20 3d | .....global.tkPriv.....if.{$el.= |
11ba0 | 3d 20 24 74 6b 50 72 69 76 28 6c 69 73 74 62 6f 78 50 72 65 76 29 7d 20 7b 0a 09 72 65 74 75 72 | =.$tkPriv(listboxPrev)}.{..retur |
11bc0 | 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 61 6e 63 68 6f 72 20 5b 24 77 20 69 6e 64 65 78 | n.....}.....set.anchor.[$w.index |
11be0 | 20 61 6e 63 68 6f 72 5d 0a 20 20 20 20 73 77 69 74 63 68 20 5b 24 77 20 63 67 65 74 20 2d 73 65 | .anchor].....switch.[$w.cget.-se |
11c00 | 6c 65 63 74 6d 6f 64 65 5d 20 7b 0a 09 62 72 6f 77 73 65 20 7b 0a 09 20 20 20 20 24 77 20 73 65 | lectmode].{..browse.{......$w.se |
11c20 | 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 20 30 20 65 6e 64 0a 09 20 20 20 20 24 77 20 73 65 6c 65 | lection.clear.0.end......$w.sele |
11c40 | 63 74 69 6f 6e 20 73 65 74 20 24 65 6c 0a 09 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 6c 69 | ction.set.$el......set.tkPriv(li |
11c60 | 73 74 62 6f 78 50 72 65 76 29 20 24 65 6c 0a 09 20 20 20 20 65 76 65 6e 74 20 67 65 6e 65 72 61 | stboxPrev).$el......event.genera |
11c80 | 74 65 20 24 77 20 3c 3c 4c 69 73 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a 09 7d 0a 09 65 78 74 65 | te.$w.<<ListboxSelect>>..}..exte |
11ca0 | 6e 64 65 64 20 7b 0a 09 20 20 20 20 73 65 74 20 69 20 24 74 6b 50 72 69 76 28 6c 69 73 74 62 6f | nded.{......set.i.$tkPriv(listbo |
11cc0 | 78 50 72 65 76 29 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 7b 7d | xPrev)......if.{[string.equal.{} |
11ce0 | 20 24 69 5d 7d 20 7b 0a 09 09 73 65 74 20 69 20 24 65 6c 0a 09 09 24 77 20 73 65 6c 65 63 74 69 | .$i]}.{...set.i.$el...$w.selecti |
11d00 | 6f 6e 20 73 65 74 20 24 65 6c 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 5b 24 77 20 73 | on.set.$el......}......if.{[$w.s |
11d20 | 65 6c 65 63 74 69 6f 6e 20 69 6e 63 6c 75 64 65 73 20 61 6e 63 68 6f 72 5d 7d 20 7b 0a 09 09 24 | election.includes.anchor]}.{...$ |
11d40 | 77 20 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 20 24 69 20 24 65 6c 0a 09 09 24 77 20 73 65 | w.selection.clear.$i.$el...$w.se |
11d60 | 6c 65 63 74 69 6f 6e 20 73 65 74 20 61 6e 63 68 6f 72 20 24 65 6c 0a 09 20 20 20 20 7d 20 65 6c | lection.set.anchor.$el......}.el |
11d80 | 73 65 20 7b 0a 09 09 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 20 24 69 20 24 65 6c | se.{...$w.selection.clear.$i.$el |
11da0 | 0a 09 09 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 20 61 6e 63 68 6f 72 20 24 65 6c | ...$w.selection.clear.anchor.$el |
11dc0 | 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 | ......}......if.{![info.exists.t |
11de0 | 6b 50 72 69 76 28 6c 69 73 74 62 6f 78 53 65 6c 65 63 74 69 6f 6e 29 5d 7d 20 7b 0a 09 09 73 65 | kPriv(listboxSelection)]}.{...se |
11e00 | 74 20 74 6b 50 72 69 76 28 6c 69 73 74 62 6f 78 53 65 6c 65 63 74 69 6f 6e 29 20 5b 24 77 20 63 | t.tkPriv(listboxSelection).[$w.c |
11e20 | 75 72 73 65 6c 65 63 74 69 6f 6e 5d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 77 68 69 6c 65 20 7b | urselection]......}......while.{ |
11e40 | 28 24 69 20 3c 20 24 65 6c 29 20 26 26 20 28 24 69 20 3c 20 24 61 6e 63 68 6f 72 29 7d 20 7b 0a | ($i.<.$el).&&.($i.<.$anchor)}.{. |
11e60 | 09 09 69 66 20 7b 5b 6c 73 65 61 72 63 68 20 24 74 6b 50 72 69 76 28 6c 69 73 74 62 6f 78 53 65 | ..if.{[lsearch.$tkPriv(listboxSe |
11e80 | 6c 65 63 74 69 6f 6e 29 20 24 69 5d 20 3e 3d 20 30 7d 20 7b 0a 09 09 20 20 20 20 24 77 20 73 65 | lection).$i].>=.0}.{.......$w.se |
11ea0 | 6c 65 63 74 69 6f 6e 20 73 65 74 20 24 69 0a 09 09 7d 0a 09 09 69 6e 63 72 20 69 0a 09 20 20 20 | lection.set.$i...}...incr.i..... |
11ec0 | 20 7d 0a 09 20 20 20 20 77 68 69 6c 65 20 7b 28 24 69 20 3e 20 24 65 6c 29 20 26 26 20 28 24 69 | .}......while.{($i.>.$el).&&.($i |
11ee0 | 20 3e 20 24 61 6e 63 68 6f 72 29 7d 20 7b 0a 09 09 69 66 20 7b 5b 6c 73 65 61 72 63 68 20 24 74 | .>.$anchor)}.{...if.{[lsearch.$t |
11f00 | 6b 50 72 69 76 28 6c 69 73 74 62 6f 78 53 65 6c 65 63 74 69 6f 6e 29 20 24 69 5d 20 3e 3d 20 30 | kPriv(listboxSelection).$i].>=.0 |
11f20 | 7d 20 7b 0a 09 09 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 73 65 74 20 24 69 0a 09 09 | }.{.......$w.selection.set.$i... |
11f40 | 7d 0a 09 09 69 6e 63 72 20 69 20 2d 31 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 73 65 74 20 74 6b | }...incr.i.-1......}......set.tk |
11f60 | 50 72 69 76 28 6c 69 73 74 62 6f 78 50 72 65 76 29 20 24 65 6c 0a 09 20 20 20 20 65 76 65 6e 74 | Priv(listboxPrev).$el......event |
11f80 | 20 67 65 6e 65 72 61 74 65 20 24 77 20 3c 3c 4c 69 73 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a 09 | .generate.$w.<<ListboxSelect>>.. |
11fa0 | 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4c 69 73 74 62 6f 78 42 65 67 69 6e 45 78 74 65 6e | }.....}.}..#.tkListboxBeginExten |
11fc0 | 64 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 74 79 70 69 63 | d.--.#.#.This.procedure.is.typic |
11fe0 | 61 6c 6c 79 20 69 6e 76 6f 6b 65 64 20 6f 6e 20 73 68 69 66 74 2d 62 75 74 74 6f 6e 2d 31 20 70 | ally.invoked.on.shift-button-1.p |
12000 | 72 65 73 73 65 73 2e 20 20 49 74 0a 23 20 62 65 67 69 6e 73 20 74 68 65 20 70 72 6f 63 65 73 73 | resses...It.#.begins.the.process |
12020 | 20 6f 66 20 65 78 74 65 6e 64 69 6e 67 20 61 20 73 65 6c 65 63 74 69 6f 6e 20 69 6e 20 74 68 65 | .of.extending.a.selection.in.the |
12040 | 20 6c 69 73 74 62 6f 78 2e 20 20 49 74 73 0a 23 20 65 78 61 63 74 20 62 65 68 61 76 69 6f 72 20 | .listbox...Its.#.exact.behavior. |
12060 | 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 6d 6f 64 65 20 63 75 | depends.on.the.selection.mode.cu |
12080 | 72 72 65 6e 74 6c 79 20 69 6e 20 65 66 66 65 63 74 0a 23 20 66 6f 72 20 74 68 65 20 6c 69 73 74 | rrently.in.effect.#.for.the.list |
120a0 | 62 6f 78 3b 20 20 73 65 65 20 74 68 65 20 4d 6f 74 69 66 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f | box;..see.the.Motif.documentatio |
120c0 | 6e 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 | n.for.details..#.#.Arguments:.#. |
120e0 | 77 20 2d 09 09 54 68 65 20 6c 69 73 74 62 6f 78 20 77 69 64 67 65 74 2e 0a 23 20 65 6c 20 2d 09 | w.-..The.listbox.widget..#.el.-. |
12100 | 09 54 68 65 20 65 6c 65 6d 65 6e 74 20 66 6f 72 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 6f | .The.element.for.the.selection.o |
12120 | 70 65 72 61 74 69 6f 6e 20 28 74 79 70 69 63 61 6c 6c 79 20 74 68 65 0a 23 09 09 6f 6e 65 20 75 | peration.(typically.the.#..one.u |
12140 | 6e 64 65 72 20 74 68 65 20 70 6f 69 6e 74 65 72 29 2e 20 20 4d 75 73 74 20 62 65 20 69 6e 20 6e | nder.the.pointer)...Must.be.in.n |
12160 | 75 6d 65 72 69 63 61 6c 20 66 6f 72 6d 2e 0a 0a 70 72 6f 63 20 74 6b 4c 69 73 74 62 6f 78 42 65 | umerical.form...proc.tkListboxBe |
12180 | 67 69 6e 45 78 74 65 6e 64 20 7b 77 20 65 6c 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 | ginExtend.{w.el}.{.....if.{[stri |
121a0 | 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 63 67 65 74 20 2d 73 65 6c 65 63 74 6d 6f 64 65 5d 20 22 | ng.equal.[$w.cget.-selectmode]." |
121c0 | 65 78 74 65 6e 64 65 64 22 5d 7d 20 7b 0a 09 69 66 20 7b 5b 24 77 20 73 65 6c 65 63 74 69 6f 6e | extended"]}.{..if.{[$w.selection |
121e0 | 20 69 6e 63 6c 75 64 65 73 20 61 6e 63 68 6f 72 5d 7d 20 7b 0a 09 20 20 20 20 74 6b 4c 69 73 74 | .includes.anchor]}.{......tkList |
12200 | 62 6f 78 4d 6f 74 69 6f 6e 20 24 77 20 24 65 6c 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 | boxMotion.$w.$el..}.else.{...... |
12220 | 23 20 4e 6f 20 73 65 6c 65 63 74 69 6f 6e 20 79 65 74 3b 20 73 69 6d 75 6c 61 74 65 20 74 68 65 | #.No.selection.yet;.simulate.the |
12240 | 20 62 65 67 69 6e 2d 73 65 6c 65 63 74 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 09 20 20 20 20 74 6b | .begin-select.operation.......tk |
12260 | 4c 69 73 74 62 6f 78 42 65 67 69 6e 53 65 6c 65 63 74 20 24 77 20 24 65 6c 0a 09 7d 0a 20 20 20 | ListboxBeginSelect.$w.$el..}.... |
12280 | 20 7d 0a 7d 0a 0a 23 20 74 6b 4c 69 73 74 62 6f 78 42 65 67 69 6e 54 6f 67 67 6c 65 20 2d 2d 0a | .}.}..#.tkListboxBeginToggle.--. |
122a0 | 23 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 74 79 70 69 63 61 6c 6c 79 20 | #.#.This.procedure.is.typically. |
122c0 | 69 6e 76 6f 6b 65 64 20 6f 6e 20 63 6f 6e 74 72 6f 6c 2d 62 75 74 74 6f 6e 2d 31 20 70 72 65 73 | invoked.on.control-button-1.pres |
122e0 | 73 65 73 2e 20 20 49 74 0a 23 20 62 65 67 69 6e 73 20 74 68 65 20 70 72 6f 63 65 73 73 20 6f 66 | ses...It.#.begins.the.process.of |
12300 | 20 74 6f 67 67 6c 69 6e 67 20 61 20 73 65 6c 65 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 6c 69 73 | .toggling.a.selection.in.the.lis |
12320 | 74 62 6f 78 2e 20 20 49 74 73 0a 23 20 65 78 61 63 74 20 62 65 68 61 76 69 6f 72 20 64 65 70 65 | tbox...Its.#.exact.behavior.depe |
12340 | 6e 64 73 20 6f 6e 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 6d 6f 64 65 20 63 75 72 72 65 6e | nds.on.the.selection.mode.curren |
12360 | 74 6c 79 20 69 6e 20 65 66 66 65 63 74 0a 23 20 66 6f 72 20 74 68 65 20 6c 69 73 74 62 6f 78 3b | tly.in.effect.#.for.the.listbox; |
12380 | 20 20 73 65 65 20 74 68 65 20 4d 6f 74 69 66 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f | ..see.the.Motif.documentation.fo |
123a0 | 72 20 64 65 74 61 69 6c 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 | r.details..#.#.Arguments:.#.w.-. |
123c0 | 09 54 68 65 20 6c 69 73 74 62 6f 78 20 77 69 64 67 65 74 2e 0a 23 20 65 6c 20 2d 09 09 54 68 65 | .The.listbox.widget..#.el.-..The |
123e0 | 20 65 6c 65 6d 65 6e 74 20 66 6f 72 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 6f 70 65 72 61 | .element.for.the.selection.opera |
12400 | 74 69 6f 6e 20 28 74 79 70 69 63 61 6c 6c 79 20 74 68 65 0a 23 09 09 6f 6e 65 20 75 6e 64 65 72 | tion.(typically.the.#..one.under |
12420 | 20 74 68 65 20 70 6f 69 6e 74 65 72 29 2e 20 20 4d 75 73 74 20 62 65 20 69 6e 20 6e 75 6d 65 72 | .the.pointer)...Must.be.in.numer |
12440 | 69 63 61 6c 20 66 6f 72 6d 2e 0a 0a 70 72 6f 63 20 74 6b 4c 69 73 74 62 6f 78 42 65 67 69 6e 54 | ical.form...proc.tkListboxBeginT |
12460 | 6f 67 67 6c 65 20 7b 77 20 65 6c 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 | oggle.{w.el}.{.....global.tkPriv |
12480 | 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 63 67 65 74 20 | .....if.{[string.equal.[$w.cget. |
124a0 | 2d 73 65 6c 65 63 74 6d 6f 64 65 5d 20 22 65 78 74 65 6e 64 65 64 22 5d 7d 20 7b 0a 09 73 65 74 | -selectmode]."extended"]}.{..set |
124c0 | 20 74 6b 50 72 69 76 28 6c 69 73 74 62 6f 78 53 65 6c 65 63 74 69 6f 6e 29 20 5b 24 77 20 63 75 | .tkPriv(listboxSelection).[$w.cu |
124e0 | 72 73 65 6c 65 63 74 69 6f 6e 5d 0a 09 73 65 74 20 74 6b 50 72 69 76 28 6c 69 73 74 62 6f 78 50 | rselection]..set.tkPriv(listboxP |
12500 | 72 65 76 29 20 24 65 6c 0a 09 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 61 6e 63 68 6f 72 20 24 65 | rev).$el..$w.selection.anchor.$e |
12520 | 6c 0a 09 69 66 20 7b 5b 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 69 6e 63 6c 75 64 65 73 20 24 65 | l..if.{[$w.selection.includes.$e |
12540 | 6c 5d 7d 20 7b 0a 09 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 20 24 65 | l]}.{......$w.selection.clear.$e |
12560 | 6c 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 73 65 | l..}.else.{......$w.selection.se |
12580 | 74 20 24 65 6c 0a 09 7d 0a 09 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 20 24 77 20 3c 3c 4c 69 | t.$el..}..event.generate.$w.<<Li |
125a0 | 73 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4c 69 73 74 62 | stboxSelect>>.....}.}..#.tkListb |
125c0 | 6f 78 41 75 74 6f 53 63 61 6e 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 | oxAutoScan.--.#.This.procedure.i |
125e0 | 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 6c 65 61 76 65 73 20 | s.invoked.when.the.mouse.leaves. |
12600 | 61 6e 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 0a 23 20 77 69 74 68 20 62 75 74 74 6f 6e 20 31 20 | an.entry.window.#.with.button.1. |
12620 | 64 6f 77 6e 2e 20 20 49 74 20 73 63 72 6f 6c 6c 73 20 74 68 65 20 77 69 6e 64 6f 77 20 75 70 2c | down...It.scrolls.the.window.up, |
12640 | 20 64 6f 77 6e 2c 20 6c 65 66 74 2c 20 6f 72 0a 23 20 72 69 67 68 74 2c 20 64 65 70 65 6e 64 69 | .down,.left,.or.#.right,.dependi |
12660 | 6e 67 20 6f 6e 20 77 68 65 72 65 20 74 68 65 20 6d 6f 75 73 65 20 6c 65 66 74 20 74 68 65 20 77 | ng.on.where.the.mouse.left.the.w |
12680 | 69 6e 64 6f 77 2c 20 61 6e 64 20 72 65 73 63 68 65 64 75 6c 65 73 0a 23 20 69 74 73 65 6c 66 20 | indow,.and.reschedules.#.itself. |
126a0 | 61 73 20 61 6e 20 22 61 66 74 65 72 22 20 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74 20 74 68 | as.an."after".command.so.that.th |
126c0 | 65 20 77 69 6e 64 6f 77 20 63 6f 6e 74 69 6e 75 65 73 20 74 6f 20 73 63 72 6f 6c 6c 20 75 6e 74 | e.window.continues.to.scroll.unt |
126e0 | 69 6c 0a 23 20 74 68 65 20 6d 6f 75 73 65 20 6d 6f 76 65 73 20 62 61 63 6b 20 69 6e 74 6f 20 74 | il.#.the.mouse.moves.back.into.t |
12700 | 68 65 20 77 69 6e 64 6f 77 20 6f 72 20 74 68 65 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 20 69 73 | he.window.or.the.mouse.button.is |
12720 | 20 72 65 6c 65 61 73 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 | .released..#.#.Arguments:.#.w.-. |
12740 | 09 54 68 65 20 65 6e 74 72 79 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b 4c 69 73 74 62 | .The.entry.window...proc.tkListb |
12760 | 6f 78 41 75 74 6f 53 63 61 6e 20 7b 77 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 | oxAutoScan.{w}.{.....global.tkPr |
12780 | 69 76 0a 20 20 20 20 69 66 20 7b 21 5b 77 69 6e 66 6f 20 65 78 69 73 74 73 20 24 77 5d 7d 20 72 | iv.....if.{![winfo.exists.$w]}.r |
127a0 | 65 74 75 72 6e 0a 20 20 20 20 73 65 74 20 78 20 24 74 6b 50 72 69 76 28 78 29 0a 20 20 20 20 73 | eturn.....set.x.$tkPriv(x).....s |
127c0 | 65 74 20 79 20 24 74 6b 50 72 69 76 28 79 29 0a 20 20 20 20 69 66 20 7b 24 79 20 3e 3d 20 5b 77 | et.y.$tkPriv(y).....if.{$y.>=.[w |
127e0 | 69 6e 66 6f 20 68 65 69 67 68 74 20 24 77 5d 7d 20 7b 0a 09 24 77 20 79 76 69 65 77 20 73 63 72 | info.height.$w]}.{..$w.yview.scr |
12800 | 6f 6c 6c 20 31 20 75 6e 69 74 73 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 79 20 3c 20 30 | oll.1.units.....}.elseif.{$y.<.0 |
12820 | 7d 20 7b 0a 09 24 77 20 79 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 31 20 75 6e 69 74 73 0a 20 20 | }.{..$w.yview.scroll.-1.units... |
12840 | 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 78 20 3e 3d 20 5b 77 69 6e 66 6f 20 77 69 64 74 68 20 24 | ..}.elseif.{$x.>=.[winfo.width.$ |
12860 | 77 5d 7d 20 7b 0a 09 24 77 20 78 76 69 65 77 20 73 63 72 6f 6c 6c 20 32 20 75 6e 69 74 73 0a 20 | w]}.{..$w.xview.scroll.2.units.. |
12880 | 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 78 20 3c 20 30 7d 20 7b 0a 09 24 77 20 78 76 69 65 77 | ...}.elseif.{$x.<.0}.{..$w.xview |
128a0 | 20 73 63 72 6f 6c 6c 20 2d 32 20 75 6e 69 74 73 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 72 | .scroll.-2.units.....}.else.{..r |
128c0 | 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 4d 6f 74 69 6f 6e 20 | eturn.....}.....tkListboxMotion. |
128e0 | 24 77 20 5b 24 77 20 69 6e 64 65 78 20 40 24 78 2c 24 79 5d 0a 20 20 20 20 73 65 74 20 74 6b 50 | $w.[$w.index.@$x,$y].....set.tkP |
12900 | 72 69 76 28 61 66 74 65 72 49 64 29 20 5b 61 66 74 65 72 20 35 30 20 5b 6c 69 73 74 20 74 6b 4c | riv(afterId).[after.50.[list.tkL |
12920 | 69 73 74 62 6f 78 41 75 74 6f 53 63 61 6e 20 24 77 5d 5d 0a 7d 0a 0a 23 20 74 6b 4c 69 73 74 62 | istboxAutoScan.$w]].}..#.tkListb |
12940 | 6f 78 55 70 44 6f 77 6e 20 2d 2d 0a 23 0a 23 20 4d 6f 76 65 73 20 74 68 65 20 6c 6f 63 61 74 69 | oxUpDown.--.#.#.Moves.the.locati |
12960 | 6f 6e 20 63 75 72 73 6f 72 20 28 61 63 74 69 76 65 20 65 6c 65 6d 65 6e 74 29 20 75 70 20 6f 72 | on.cursor.(active.element).up.or |
12980 | 20 64 6f 77 6e 20 62 79 20 6f 6e 65 20 65 6c 65 6d 65 6e 74 2c 0a 23 20 61 6e 64 20 63 68 61 6e | .down.by.one.element,.#.and.chan |
129a0 | 67 65 73 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 69 66 20 77 65 27 72 65 20 69 6e 20 62 72 | ges.the.selection.if.we're.in.br |
129c0 | 6f 77 73 65 20 6f 72 20 65 78 74 65 6e 64 65 64 20 73 65 6c 65 63 74 69 6f 6e 0a 23 20 6d 6f 64 | owse.or.extended.selection.#.mod |
129e0 | 65 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6c 69 73 | e..#.#.Arguments:.#.w.-..The.lis |
12a00 | 74 62 6f 78 20 77 69 64 67 65 74 2e 0a 23 20 61 6d 6f 75 6e 74 20 2d 09 2b 31 20 74 6f 20 6d 6f | tbox.widget..#.amount.-.+1.to.mo |
12a20 | 76 65 20 64 6f 77 6e 20 6f 6e 65 20 69 74 65 6d 2c 20 2d 31 20 74 6f 20 6d 6f 76 65 20 62 61 63 | ve.down.one.item,.-1.to.move.bac |
12a40 | 6b 20 6f 6e 65 20 69 74 65 6d 2e 0a 0a 70 72 6f 63 20 74 6b 4c 69 73 74 62 6f 78 55 70 44 6f 77 | k.one.item...proc.tkListboxUpDow |
12a60 | 6e 20 7b 77 20 61 6d 6f 75 6e 74 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 | n.{w.amount}.{.....global.tkPriv |
12a80 | 0a 20 20 20 20 24 77 20 61 63 74 69 76 61 74 65 20 5b 65 78 70 72 20 7b 5b 24 77 20 69 6e 64 65 | .....$w.activate.[expr.{[$w.inde |
12aa0 | 78 20 61 63 74 69 76 65 5d 20 2b 20 24 61 6d 6f 75 6e 74 7d 5d 0a 20 20 20 20 24 77 20 73 65 65 | x.active].+.$amount}].....$w.see |
12ac0 | 20 61 63 74 69 76 65 0a 20 20 20 20 73 77 69 74 63 68 20 5b 24 77 20 63 67 65 74 20 2d 73 65 6c | .active.....switch.[$w.cget.-sel |
12ae0 | 65 63 74 6d 6f 64 65 5d 20 7b 0a 09 62 72 6f 77 73 65 20 7b 0a 09 20 20 20 20 24 77 20 73 65 6c | ectmode].{..browse.{......$w.sel |
12b00 | 65 63 74 69 6f 6e 20 63 6c 65 61 72 20 30 20 65 6e 64 0a 09 20 20 20 20 24 77 20 73 65 6c 65 63 | ection.clear.0.end......$w.selec |
12b20 | 74 69 6f 6e 20 73 65 74 20 61 63 74 69 76 65 0a 09 20 20 20 20 65 76 65 6e 74 20 67 65 6e 65 72 | tion.set.active......event.gener |
12b40 | 61 74 65 20 24 77 20 3c 3c 4c 69 73 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a 09 7d 0a 09 65 78 74 | ate.$w.<<ListboxSelect>>..}..ext |
12b60 | 65 6e 64 65 64 20 7b 0a 09 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 20 | ended.{......$w.selection.clear. |
12b80 | 30 20 65 6e 64 0a 09 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 73 65 74 20 61 63 74 69 | 0.end......$w.selection.set.acti |
12ba0 | 76 65 0a 09 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 61 6e 63 68 6f 72 20 61 63 74 69 | ve......$w.selection.anchor.acti |
12bc0 | 76 65 0a 09 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 6c 69 73 74 62 6f 78 50 72 65 76 29 20 | ve......set.tkPriv(listboxPrev). |
12be0 | 5b 24 77 20 69 6e 64 65 78 20 61 63 74 69 76 65 5d 0a 09 20 20 20 20 73 65 74 20 74 6b 50 72 69 | [$w.index.active]......set.tkPri |
12c00 | 76 28 6c 69 73 74 62 6f 78 53 65 6c 65 63 74 69 6f 6e 29 20 7b 7d 0a 09 20 20 20 20 65 76 65 6e | v(listboxSelection).{}......even |
12c20 | 74 20 67 65 6e 65 72 61 74 65 20 24 77 20 3c 3c 4c 69 73 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a | t.generate.$w.<<ListboxSelect>>. |
12c40 | 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4c 69 73 74 62 6f 78 45 78 74 65 6e 64 55 70 44 | .}.....}.}..#.tkListboxExtendUpD |
12c60 | 6f 77 6e 20 2d 2d 0a 23 0a 23 20 44 6f 65 73 20 6e 6f 74 68 69 6e 67 20 75 6e 6c 65 73 73 20 77 | own.--.#.#.Does.nothing.unless.w |
12c80 | 65 27 72 65 20 69 6e 20 65 78 74 65 6e 64 65 64 20 73 65 6c 65 63 74 69 6f 6e 20 6d 6f 64 65 3b | e're.in.extended.selection.mode; |
12ca0 | 20 20 69 6e 20 74 68 69 73 0a 23 20 63 61 73 65 20 69 74 20 6d 6f 76 65 73 20 74 68 65 20 6c 6f | ..in.this.#.case.it.moves.the.lo |
12cc0 | 63 61 74 69 6f 6e 20 63 75 72 73 6f 72 20 28 61 63 74 69 76 65 20 65 6c 65 6d 65 6e 74 29 20 75 | cation.cursor.(active.element).u |
12ce0 | 70 20 6f 72 20 64 6f 77 6e 20 62 79 0a 23 20 6f 6e 65 20 65 6c 65 6d 65 6e 74 2c 20 61 6e 64 20 | p.or.down.by.#.one.element,.and. |
12d00 | 65 78 74 65 6e 64 73 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 74 6f 20 74 68 61 74 20 70 6f | extends.the.selection.to.that.po |
12d20 | 69 6e 74 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6c | int..#.#.Arguments:.#.w.-..The.l |
12d40 | 69 73 74 62 6f 78 20 77 69 64 67 65 74 2e 0a 23 20 61 6d 6f 75 6e 74 20 2d 09 2b 31 20 74 6f 20 | istbox.widget..#.amount.-.+1.to. |
12d60 | 6d 6f 76 65 20 64 6f 77 6e 20 6f 6e 65 20 69 74 65 6d 2c 20 2d 31 20 74 6f 20 6d 6f 76 65 20 62 | move.down.one.item,.-1.to.move.b |
12d80 | 61 63 6b 20 6f 6e 65 20 69 74 65 6d 2e 0a 0a 70 72 6f 63 20 74 6b 4c 69 73 74 62 6f 78 45 78 74 | ack.one.item...proc.tkListboxExt |
12da0 | 65 6e 64 55 70 44 6f 77 6e 20 7b 77 20 61 6d 6f 75 6e 74 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b | endUpDown.{w.amount}.{.....if.{[ |
12dc0 | 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 65 6c 65 63 74 6d | string.compare.[$w.cget.-selectm |
12de0 | 6f 64 65 5d 20 22 65 78 74 65 6e 64 65 64 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 | ode]."extended"]}.{..return..... |
12e00 | 7d 0a 20 20 20 20 73 65 74 20 61 63 74 69 76 65 20 5b 24 77 20 69 6e 64 65 78 20 61 63 74 69 76 | }.....set.active.[$w.index.activ |
12e20 | 65 5d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 6b 50 72 69 76 28 | e].....if.{![info.exists.tkPriv( |
12e40 | 6c 69 73 74 62 6f 78 53 65 6c 65 63 74 69 6f 6e 29 5d 7d 20 7b 0a 09 67 6c 6f 62 61 6c 20 74 6b | listboxSelection)]}.{..global.tk |
12e60 | 50 72 69 76 0a 09 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 73 65 74 20 24 61 63 74 69 76 65 0a 09 | Priv..$w.selection.set.$active.. |
12e80 | 73 65 74 20 74 6b 50 72 69 76 28 6c 69 73 74 62 6f 78 53 65 6c 65 63 74 69 6f 6e 29 20 5b 24 77 | set.tkPriv(listboxSelection).[$w |
12ea0 | 20 63 75 72 73 65 6c 65 63 74 69 6f 6e 5d 0a 20 20 20 20 7d 0a 20 20 20 20 24 77 20 61 63 74 69 | .curselection].....}.....$w.acti |
12ec0 | 76 61 74 65 20 5b 65 78 70 72 20 7b 24 61 63 74 69 76 65 20 2b 20 24 61 6d 6f 75 6e 74 7d 5d 0a | vate.[expr.{$active.+.$amount}]. |
12ee0 | 20 20 20 20 24 77 20 73 65 65 20 61 63 74 69 76 65 0a 20 20 20 20 74 6b 4c 69 73 74 62 6f 78 4d | ....$w.see.active.....tkListboxM |
12f00 | 6f 74 69 6f 6e 20 24 77 20 5b 24 77 20 69 6e 64 65 78 20 61 63 74 69 76 65 5d 0a 7d 0a 0a 23 20 | otion.$w.[$w.index.active].}..#. |
12f20 | 74 6b 4c 69 73 74 62 6f 78 44 61 74 61 45 78 74 65 6e 64 0a 23 0a 23 20 54 68 69 73 20 70 72 6f | tkListboxDataExtend.#.#.This.pro |
12f40 | 63 65 64 75 72 65 20 69 73 20 63 61 6c 6c 65 64 20 66 6f 72 20 6b 65 79 2d 70 72 65 73 73 65 73 | cedure.is.called.for.key-presses |
12f60 | 20 73 75 63 68 20 61 73 20 53 68 69 66 74 2d 4b 45 6e 64 44 61 74 61 2e 0a 23 20 49 66 20 74 68 | .such.as.Shift-KEndData..#.If.th |
12f80 | 65 20 73 65 6c 65 63 74 69 6f 6e 20 6d 6f 64 65 20 69 73 6e 27 74 20 6d 75 6c 74 69 70 6c 65 20 | e.selection.mode.isn't.multiple. |
12fa0 | 6f 72 20 65 78 74 65 6e 64 20 74 68 65 6e 20 69 74 20 64 6f 65 73 20 6e 6f 74 68 69 6e 67 2e 0a | or.extend.then.it.does.nothing.. |
12fc0 | 23 20 4f 74 68 65 72 77 69 73 65 20 69 74 20 6d 6f 76 65 73 20 74 68 65 20 61 63 74 69 76 65 20 | #.Otherwise.it.moves.the.active. |
12fe0 | 65 6c 65 6d 65 6e 74 20 74 6f 20 65 6c 20 61 6e 64 2c 20 69 66 20 77 65 27 72 65 20 69 6e 0a 23 | element.to.el.and,.if.we're.in.# |
13000 | 20 65 78 74 65 6e 64 65 64 20 6d 6f 64 65 2c 20 65 78 74 65 6e 64 73 20 74 68 65 20 73 65 6c 65 | .extended.mode,.extends.the.sele |
13020 | 63 74 69 6f 6e 20 74 6f 20 74 68 61 74 20 70 6f 69 6e 74 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e | ction.to.that.point..#.#.Argumen |
13040 | 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6c 69 73 74 62 6f 78 20 77 69 64 67 65 74 2e 0a 23 | ts:.#.w.-..The.listbox.widget..# |
13060 | 20 65 6c 20 2d 09 09 41 6e 20 69 6e 74 65 67 65 72 20 65 6c 65 6d 65 6e 74 20 6e 75 6d 62 65 72 | .el.-..An.integer.element.number |
13080 | 2e 0a 0a 70 72 6f 63 20 74 6b 4c 69 73 74 62 6f 78 44 61 74 61 45 78 74 65 6e 64 20 7b 77 20 65 | ...proc.tkListboxDataExtend.{w.e |
130a0 | 6c 7d 20 7b 0a 20 20 20 20 73 65 74 20 6d 6f 64 65 20 5b 24 77 20 63 67 65 74 20 2d 73 65 6c 65 | l}.{.....set.mode.[$w.cget.-sele |
130c0 | 63 74 6d 6f 64 65 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6d | ctmode].....if.{[string.equal.$m |
130e0 | 6f 64 65 20 22 65 78 74 65 6e 64 65 64 22 5d 7d 20 7b 0a 09 24 77 20 61 63 74 69 76 61 74 65 20 | ode."extended"]}.{..$w.activate. |
13100 | 24 65 6c 0a 09 24 77 20 73 65 65 20 24 65 6c 0a 20 20 20 20 20 20 20 20 69 66 20 7b 5b 24 77 20 | $el..$w.see.$el.........if.{[$w. |
13120 | 73 65 6c 65 63 74 69 6f 6e 20 69 6e 63 6c 75 64 65 73 20 61 6e 63 68 6f 72 5d 7d 20 7b 0a 09 20 | selection.includes.anchor]}.{... |
13140 | 20 20 20 74 6b 4c 69 73 74 62 6f 78 4d 6f 74 69 6f 6e 20 24 77 20 24 65 6c 0a 09 7d 0a 20 20 20 | ...tkListboxMotion.$w.$el..}.... |
13160 | 20 7d 20 65 6c 73 65 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6d 6f 64 65 20 22 | .}.elseif.{[string.equal.$mode." |
13180 | 6d 75 6c 74 69 70 6c 65 22 5d 7d 20 7b 0a 09 24 77 20 61 63 74 69 76 61 74 65 20 24 65 6c 0a 09 | multiple"]}.{..$w.activate.$el.. |
131a0 | 24 77 20 73 65 65 20 24 65 6c 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4c 69 73 74 62 6f 78 43 | $w.see.$el.....}.}..#.tkListboxC |
131c0 | 61 6e 63 65 6c 0a 23 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f | ancel.#.#.This.procedure.is.invo |
131e0 | 6b 65 64 20 74 6f 20 63 61 6e 63 65 6c 20 61 6e 20 65 78 74 65 6e 64 65 64 20 73 65 6c 65 63 74 | ked.to.cancel.an.extended.select |
13200 | 69 6f 6e 20 69 6e 0a 23 20 70 72 6f 67 72 65 73 73 2e 20 20 49 66 20 74 68 65 72 65 20 69 73 20 | ion.in.#.progress...If.there.is. |
13220 | 61 6e 20 65 78 74 65 6e 64 65 64 20 73 65 6c 65 63 74 69 6f 6e 20 69 6e 20 70 72 6f 67 72 65 73 | an.extended.selection.in.progres |
13240 | 73 2c 20 69 74 0a 23 20 72 65 73 74 6f 72 65 73 20 61 6c 6c 20 6f 66 20 74 68 65 20 69 74 65 6d | s,.it.#.restores.all.of.the.item |
13260 | 73 20 62 65 74 77 65 65 6e 20 74 68 65 20 61 63 74 69 76 65 20 6f 6e 65 20 61 6e 64 20 74 68 65 | s.between.the.active.one.and.the |
13280 | 20 61 6e 63 68 6f 72 0a 23 20 74 6f 20 74 68 65 69 72 20 70 72 65 76 69 6f 75 73 20 73 65 6c 65 | .anchor.#.to.their.previous.sele |
132a0 | 63 74 69 6f 6e 20 73 74 61 74 65 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 | ction.state..#.#.Arguments:.#.w. |
132c0 | 2d 09 09 54 68 65 20 6c 69 73 74 62 6f 78 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 4c | -..The.listbox.widget...proc.tkL |
132e0 | 69 73 74 62 6f 78 43 61 6e 63 65 6c 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 | istboxCancel.w.{.....global.tkPr |
13300 | 69 76 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 | iv.....if.{[string.compare.[$w.c |
13320 | 67 65 74 20 2d 73 65 6c 65 63 74 6d 6f 64 65 5d 20 22 65 78 74 65 6e 64 65 64 22 5d 7d 20 7b 0a | get.-selectmode]."extended"]}.{. |
13340 | 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 66 69 72 73 74 20 5b 24 77 20 | .return.....}.....set.first.[$w. |
13360 | 69 6e 64 65 78 20 61 6e 63 68 6f 72 5d 0a 20 20 20 20 73 65 74 20 6c 61 73 74 20 24 74 6b 50 72 | index.anchor].....set.last.$tkPr |
13380 | 69 76 28 6c 69 73 74 62 6f 78 50 72 65 76 29 0a 20 20 20 20 69 66 20 7b 24 66 69 72 73 74 20 3e | iv(listboxPrev).....if.{$first.> |
133a0 | 20 24 6c 61 73 74 7d 20 7b 0a 09 73 65 74 20 74 6d 70 20 24 66 69 72 73 74 0a 09 73 65 74 20 66 | .$last}.{..set.tmp.$first..set.f |
133c0 | 69 72 73 74 20 24 6c 61 73 74 0a 09 73 65 74 20 6c 61 73 74 20 24 74 6d 70 0a 20 20 20 20 7d 0a | irst.$last..set.last.$tmp.....}. |
133e0 | 20 20 20 20 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 63 6c 65 61 72 20 24 66 69 72 73 74 20 24 6c | ....$w.selection.clear.$first.$l |
13400 | 61 73 74 0a 20 20 20 20 77 68 69 6c 65 20 7b 24 66 69 72 73 74 20 3c 3d 20 24 6c 61 73 74 7d 20 | ast.....while.{$first.<=.$last}. |
13420 | 7b 0a 09 69 66 20 7b 5b 6c 73 65 61 72 63 68 20 24 74 6b 50 72 69 76 28 6c 69 73 74 62 6f 78 53 | {..if.{[lsearch.$tkPriv(listboxS |
13440 | 65 6c 65 63 74 69 6f 6e 29 20 24 66 69 72 73 74 5d 20 3e 3d 20 30 7d 20 7b 0a 09 20 20 20 20 24 | election).$first].>=.0}.{......$ |
13460 | 77 20 73 65 6c 65 63 74 69 6f 6e 20 73 65 74 20 24 66 69 72 73 74 0a 09 7d 0a 09 69 6e 63 72 20 | w.selection.set.$first..}..incr. |
13480 | 66 69 72 73 74 0a 20 20 20 20 7d 0a 20 20 20 20 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 20 24 | first.....}.....event.generate.$ |
134a0 | 77 20 3c 3c 4c 69 73 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a 7d 0a 0a 23 20 74 6b 4c 69 73 74 62 | w.<<ListboxSelect>>.}..#.tkListb |
134c0 | 6f 78 53 65 6c 65 63 74 41 6c 6c 0a 23 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 | oxSelectAll.#.#.This.procedure.i |
134e0 | 73 20 69 6e 76 6f 6b 65 64 20 74 6f 20 68 61 6e 64 6c 65 20 74 68 65 20 22 73 65 6c 65 63 74 20 | s.invoked.to.handle.the."select. |
13500 | 61 6c 6c 22 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 23 20 46 6f 72 20 73 69 6e 67 6c 65 20 61 6e 64 | all".operation..#.For.single.and |
13520 | 20 62 72 6f 77 73 65 20 6d 6f 64 65 2c 20 69 74 20 6a 75 73 74 20 73 65 6c 65 63 74 73 20 74 68 | .browse.mode,.it.just.selects.th |
13540 | 65 20 61 63 74 69 76 65 20 65 6c 65 6d 65 6e 74 2e 0a 23 20 4f 74 68 65 72 77 69 73 65 20 69 74 | e.active.element..#.Otherwise.it |
13560 | 20 73 65 6c 65 63 74 73 20 65 76 65 72 79 74 68 69 6e 67 20 69 6e 20 74 68 65 20 77 69 64 67 65 | .selects.everything.in.the.widge |
13580 | 74 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 6c 69 73 | t..#.#.Arguments:.#.w.-..The.lis |
135a0 | 74 62 6f 78 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 4c 69 73 74 62 6f 78 53 65 6c 65 | tbox.widget...proc.tkListboxSele |
135c0 | 63 74 41 6c 6c 20 77 20 7b 0a 20 20 20 20 73 65 74 20 6d 6f 64 65 20 5b 24 77 20 63 67 65 74 20 | ctAll.w.{.....set.mode.[$w.cget. |
135e0 | 2d 73 65 6c 65 63 74 6d 6f 64 65 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 | -selectmode].....if.{[string.equ |
13600 | 61 6c 20 24 6d 6f 64 65 20 22 73 69 6e 67 6c 65 22 5d 20 7c 7c 20 5b 73 74 72 69 6e 67 20 65 71 | al.$mode."single"].||.[string.eq |
13620 | 75 61 6c 20 24 6d 6f 64 65 20 22 62 72 6f 77 73 65 22 5d 7d 20 7b 0a 09 24 77 20 73 65 6c 65 63 | ual.$mode."browse"]}.{..$w.selec |
13640 | 74 69 6f 6e 20 63 6c 65 61 72 20 30 20 65 6e 64 0a 09 24 77 20 73 65 6c 65 63 74 69 6f 6e 20 73 | tion.clear.0.end..$w.selection.s |
13660 | 65 74 20 61 63 74 69 76 65 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 24 77 20 73 65 6c 65 63 | et.active.....}.else.{..$w.selec |
13680 | 74 69 6f 6e 20 73 65 74 20 30 20 65 6e 64 0a 20 20 20 20 7d 0a 20 20 20 20 65 76 65 6e 74 20 67 | tion.set.0.end.....}.....event.g |
136a0 | 65 6e 65 72 61 74 65 20 24 77 20 3c 3c 4c 69 73 74 62 6f 78 53 65 6c 65 63 74 3e 3e 0a 7d 0a 00 | enerate.$w.<<ListboxSelect>>.}.. |
136c0 | 00 8c 1e 23 20 6d 65 6e 75 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 66 69 6c 65 20 64 | ...#.menu.tcl.--.#.#.This.file.d |
136e0 | 65 66 69 6e 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 | efines.the.default.bindings.for. |
13700 | 54 6b 20 6d 65 6e 75 73 20 61 6e 64 20 6d 65 6e 75 62 75 74 74 6f 6e 73 2e 0a 23 20 49 74 20 61 | Tk.menus.and.menubuttons..#.It.a |
13720 | 6c 73 6f 20 69 6d 70 6c 65 6d 65 6e 74 73 20 6b 65 79 62 6f 61 72 64 20 74 72 61 76 65 72 73 61 | lso.implements.keyboard.traversa |
13740 | 6c 20 6f 66 20 6d 65 6e 75 73 20 61 6e 64 20 69 6d 70 6c 65 6d 65 6e 74 73 20 61 20 66 65 77 0a | l.of.menus.and.implements.a.few. |
13760 | 23 20 6f 74 68 65 72 20 75 74 69 6c 69 74 79 20 70 72 6f 63 65 64 75 72 65 73 20 72 65 6c 61 74 | #.other.utility.procedures.relat |
13780 | 65 64 20 74 6f 20 6d 65 6e 75 73 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 | ed.to.menus..#.#.RCS:.@(#).$Id:. |
137a0 | 6d 65 6e 75 2e 74 63 6c 2c 76 20 31 2e 38 20 31 39 39 39 2f 30 39 2f 30 32 20 31 37 3a 30 32 3a | menu.tcl,v.1.8.1999/09/02.17:02: |
137c0 | 35 32 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 | 52.hobbs.Exp.$.#.#.Copyright.(c) |
137e0 | 20 31 39 39 32 2d 31 39 39 34 20 54 68 65 20 52 65 67 65 6e 74 73 20 6f 66 20 74 68 65 20 55 6e | .1992-1994.The.Regents.of.the.Un |
13800 | 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e 0a 23 20 43 6f 70 79 72 69 | iversity.of.California..#.Copyri |
13820 | 67 68 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 37 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 | ght.(c).1994-1997.Sun.Microsyste |
13840 | 6d 73 2c 20 49 6e 63 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 38 2d 31 39 | ms,.Inc..#.Copyright.(c).1998-19 |
13860 | 39 39 20 62 79 20 53 63 72 69 70 74 69 63 73 20 43 6f 72 70 6f 72 61 74 69 6f 6e 2e 0a 23 0a 23 | 99.by.Scriptics.Corporation..#.# |
13880 | 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f | .See.the.file."license.terms".fo |
138a0 | 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 | r.information.on.usage.and.redis |
138c0 | 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f | tribution.#.of.this.file,.and.fo |
138e0 | 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 | r.a.DISCLAIMER.OF.ALL.WARRANTIES |
13900 | 2e 0a 23 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ..#..#-------------------------- |
13920 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
13940 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 45 6c 65 6d 65 6e 74 73 20 6f 66 20 74 6b | ---------------.#.Elements.of.tk |
13960 | 50 72 69 76 20 74 68 61 74 20 61 72 65 20 75 73 65 64 20 69 6e 20 74 68 69 73 20 66 69 6c 65 3a | Priv.that.are.used.in.this.file: |
13980 | 0a 23 0a 23 20 63 75 72 73 6f 72 20 2d 09 09 53 61 76 65 73 20 74 68 65 20 2d 63 75 72 73 6f 72 | .#.#.cursor.-..Saves.the.-cursor |
139a0 | 20 6f 70 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 70 6f 73 74 65 64 20 6d 65 6e 75 62 75 74 74 6f | .option.for.the.posted.menubutto |
139c0 | 6e 2e 0a 23 20 66 6f 63 75 73 20 2d 09 09 53 61 76 65 73 20 74 68 65 20 66 6f 63 75 73 20 64 75 | n..#.focus.-..Saves.the.focus.du |
139e0 | 72 69 6e 67 20 61 20 6d 65 6e 75 20 73 65 6c 65 63 74 69 6f 6e 20 6f 70 65 72 61 74 69 6f 6e 2e | ring.a.menu.selection.operation. |
13a00 | 0a 23 09 09 09 46 6f 63 75 73 20 67 65 74 73 20 72 65 73 74 6f 72 65 64 20 68 65 72 65 20 77 68 | .#...Focus.gets.restored.here.wh |
13a20 | 65 6e 20 74 68 65 20 6d 65 6e 75 20 69 73 20 75 6e 70 6f 73 74 65 64 2e 0a 23 20 67 72 61 62 47 | en.the.menu.is.unposted..#.grabG |
13a40 | 6c 6f 62 61 6c 20 2d 09 09 55 73 65 64 20 69 6e 20 63 6f 6e 6a 75 6e 63 74 69 6f 6e 20 77 69 74 | lobal.-..Used.in.conjunction.wit |
13a60 | 68 20 74 6b 50 72 69 76 28 6f 6c 64 47 72 61 62 29 3a 20 20 69 66 0a 23 09 09 09 74 6b 50 72 69 | h.tkPriv(oldGrab):..if.#...tkPri |
13a80 | 76 28 6f 6c 64 47 72 61 62 29 20 69 73 20 6e 6f 6e 2d 65 6d 70 74 79 2c 20 74 68 65 6e 20 74 6b | v(oldGrab).is.non-empty,.then.tk |
13aa0 | 50 72 69 76 28 67 72 61 62 47 6c 6f 62 61 6c 29 0a 23 09 09 09 63 6f 6e 74 61 69 6e 73 20 65 69 | Priv(grabGlobal).#...contains.ei |
13ac0 | 74 68 65 72 20 61 6e 20 65 6d 70 74 79 20 73 74 72 69 6e 67 20 6f 72 20 22 2d 67 6c 6f 62 61 6c | ther.an.empty.string.or."-global |
13ae0 | 22 20 74 6f 0a 23 09 09 09 69 6e 64 69 63 61 74 65 20 77 68 65 74 68 65 72 20 74 68 65 20 6f 6c | ".to.#...indicate.whether.the.ol |
13b00 | 64 20 67 72 61 62 20 77 61 73 20 61 20 6c 6f 63 61 6c 20 6f 6e 65 20 6f 72 0a 23 09 09 09 61 20 | d.grab.was.a.local.one.or.#...a. |
13b20 | 67 6c 6f 62 61 6c 20 6f 6e 65 2e 0a 23 20 69 6e 4d 65 6e 75 62 75 74 74 6f 6e 20 2d 09 54 68 65 | global.one..#.inMenubutton.-.The |
13b40 | 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 6d 65 6e 75 62 75 74 74 6f 6e 20 77 69 64 67 65 74 20 63 | .name.of.the.menubutton.widget.c |
13b60 | 6f 6e 74 61 69 6e 69 6e 67 0a 23 09 09 09 74 68 65 20 6d 6f 75 73 65 2c 20 6f 72 20 61 6e 20 65 | ontaining.#...the.mouse,.or.an.e |
13b80 | 6d 70 74 79 20 73 74 72 69 6e 67 20 69 66 20 74 68 65 20 6d 6f 75 73 65 20 69 73 0a 23 09 09 09 | mpty.string.if.the.mouse.is.#... |
13ba0 | 6e 6f 74 20 6f 76 65 72 20 61 6e 79 20 6d 65 6e 75 62 75 74 74 6f 6e 2e 0a 23 20 6d 65 6e 75 42 | not.over.any.menubutton..#.menuB |
13bc0 | 61 72 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 6d 65 6e 75 62 61 72 20 74 68 | ar.-..The.name.of.the.menubar.th |
13be0 | 61 74 20 69 73 20 74 68 65 20 72 6f 6f 74 0a 23 09 09 09 6f 66 20 74 68 65 20 63 61 73 63 61 64 | at.is.the.root.#...of.the.cascad |
13c00 | 65 20 68 69 65 72 61 72 63 68 79 20 77 68 69 63 68 20 69 73 20 63 75 72 72 65 6e 74 6c 79 0a 23 | e.hierarchy.which.is.currently.# |
13c20 | 09 09 09 70 6f 73 74 65 64 2e 20 54 68 69 73 20 69 73 20 6e 75 6c 6c 20 77 68 65 6e 20 74 68 65 | ...posted..This.is.null.when.the |
13c40 | 72 65 20 69 73 20 6e 6f 20 6d 65 6e 75 20 63 75 72 72 65 6e 74 6c 79 0a 23 09 09 09 62 65 69 6e | re.is.no.menu.currently.#...bein |
13c60 | 67 20 70 75 6c 6c 65 64 20 64 6f 77 6e 20 66 72 6f 6d 20 61 20 6d 65 6e 75 20 62 61 72 2e 0a 23 | g.pulled.down.from.a.menu.bar..# |
13c80 | 20 6f 6c 64 47 72 61 62 20 2d 09 09 57 69 6e 64 6f 77 20 74 68 61 74 20 68 61 64 20 74 68 65 20 | .oldGrab.-..Window.that.had.the. |
13ca0 | 67 72 61 62 20 62 65 66 6f 72 65 20 61 20 6d 65 6e 75 20 77 61 73 20 70 6f 73 74 65 64 2e 0a 23 | grab.before.a.menu.was.posted..# |
13cc0 | 09 09 09 55 73 65 64 20 74 6f 20 72 65 73 74 6f 72 65 20 74 68 65 20 67 72 61 62 20 73 74 61 74 | ...Used.to.restore.the.grab.stat |
13ce0 | 65 20 61 66 74 65 72 20 74 68 65 20 6d 65 6e 75 0a 23 09 09 09 69 73 20 75 6e 70 6f 73 74 65 64 | e.after.the.menu.#...is.unposted |
13d00 | 2e 20 20 45 6d 70 74 79 20 73 74 72 69 6e 67 20 6d 65 61 6e 73 20 74 68 65 72 65 20 77 61 73 20 | ...Empty.string.means.there.was. |
13d20 | 6e 6f 0a 23 09 09 09 67 72 61 62 20 70 72 65 76 69 6f 75 73 6c 79 20 73 65 74 2e 0a 23 20 70 6f | no.#...grab.previously.set..#.po |
13d40 | 70 75 70 20 2d 09 09 49 66 20 61 20 6d 65 6e 75 20 68 61 73 20 62 65 65 6e 20 70 6f 70 70 65 64 | pup.-..If.a.menu.has.been.popped |
13d60 | 20 75 70 20 76 69 61 20 74 6b 5f 70 6f 70 75 70 2c 20 74 68 69 73 0a 23 09 09 09 67 69 76 65 73 | .up.via.tk_popup,.this.#...gives |
13d80 | 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 6d 65 6e 75 2e 20 20 4f 74 68 65 72 77 69 73 | .the.name.of.the.menu...Otherwis |
13da0 | 65 20 74 68 69 73 0a 23 09 09 09 76 61 6c 75 65 20 69 73 20 65 6d 70 74 79 2e 0a 23 20 70 6f 73 | e.this.#...value.is.empty..#.pos |
13dc0 | 74 65 64 4d 62 20 2d 09 09 4e 61 6d 65 20 6f 66 20 74 68 65 20 6d 65 6e 75 62 75 74 74 6f 6e 20 | tedMb.-..Name.of.the.menubutton. |
13de0 | 77 68 6f 73 65 20 6d 65 6e 75 20 69 73 20 63 75 72 72 65 6e 74 6c 79 0a 23 09 09 09 70 6f 73 74 | whose.menu.is.currently.#...post |
13e00 | 65 64 2c 20 6f 72 20 61 6e 20 65 6d 70 74 79 20 73 74 72 69 6e 67 20 69 66 20 6e 6f 74 68 69 6e | ed,.or.an.empty.string.if.nothin |
13e20 | 67 20 69 73 20 70 6f 73 74 65 64 0a 23 09 09 09 41 20 67 72 61 62 20 69 73 20 73 65 74 20 6f 6e | g.is.posted.#...A.grab.is.set.on |
13e40 | 20 74 68 69 73 20 77 69 64 67 65 74 2e 0a 23 20 72 65 6c 69 65 66 20 2d 09 09 55 73 65 64 20 74 | .this.widget..#.relief.-..Used.t |
13e60 | 6f 20 73 61 76 65 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 72 65 6c 69 65 66 20 6f 66 20 74 68 | o.save.the.original.relief.of.th |
13e80 | 65 20 63 75 72 72 65 6e 74 0a 23 09 09 09 6d 65 6e 75 62 75 74 74 6f 6e 2e 0a 23 20 77 69 6e 64 | e.current.#...menubutton..#.wind |
13ea0 | 6f 77 20 2d 09 09 57 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 69 73 20 6f 76 65 72 20 61 20 6d | ow.-..When.the.mouse.is.over.a.m |
13ec0 | 65 6e 75 2c 20 74 68 69 73 20 68 6f 6c 64 73 20 74 68 65 0a 23 09 09 09 6e 61 6d 65 20 6f 66 20 | enu,.this.holds.the.#...name.of. |
13ee0 | 74 68 65 20 6d 65 6e 75 3b 20 20 69 74 27 73 20 63 6c 65 61 72 65 64 20 77 68 65 6e 20 74 68 65 | the.menu;..it's.cleared.when.the |
13f00 | 20 6d 6f 75 73 65 0a 23 09 09 09 6c 65 61 76 65 73 20 74 68 65 20 6d 65 6e 75 2e 0a 23 20 74 65 | .mouse.#...leaves.the.menu..#.te |
13f20 | 61 72 6f 66 66 20 2d 09 09 57 68 65 74 68 65 72 20 74 68 65 20 6c 61 73 74 20 6d 65 6e 75 20 70 | aroff.-..Whether.the.last.menu.p |
13f40 | 6f 73 74 65 64 20 77 61 73 20 61 20 74 65 61 72 6f 66 66 20 6f 72 20 6e 6f 74 2e 0a 23 09 09 09 | osted.was.a.tearoff.or.not..#... |
13f60 | 54 68 69 73 20 69 73 20 74 72 75 65 20 61 6c 77 61 79 73 20 66 6f 72 20 75 6e 69 78 2c 20 66 6f | This.is.true.always.for.unix,.fo |
13f80 | 72 20 74 65 61 72 6f 66 66 73 20 66 6f 72 20 4d 61 63 0a 23 09 09 09 61 6e 64 20 57 69 6e 64 6f | r.tearoffs.for.Mac.#...and.Windo |
13fa0 | 77 73 2e 0a 23 20 61 63 74 69 76 65 4d 65 6e 75 20 2d 09 09 54 68 69 73 20 69 73 20 74 68 65 20 | ws..#.activeMenu.-..This.is.the. |
13fc0 | 6c 61 73 74 20 61 63 74 69 76 65 20 6d 65 6e 75 20 66 6f 72 20 75 73 65 0a 23 09 09 09 77 69 74 | last.active.menu.for.use.#...wit |
13fe0 | 68 20 74 68 65 20 3c 3c 4d 65 6e 75 53 65 6c 65 63 74 3e 3e 20 76 69 72 74 75 61 6c 20 65 76 65 | h.the.<<MenuSelect>>.virtual.eve |
14000 | 6e 74 2e 0a 23 20 61 63 74 69 76 65 49 74 65 6d 20 2d 09 09 54 68 69 73 20 69 73 20 74 68 65 20 | nt..#.activeItem.-..This.is.the. |
14020 | 6c 61 73 74 20 61 63 74 69 76 65 20 6d 65 6e 75 20 69 74 65 6d 20 66 6f 72 0a 23 09 09 09 75 73 | last.active.menu.item.for.#...us |
14040 | 65 20 77 69 74 68 20 74 68 65 20 3c 3c 4d 65 6e 75 53 65 6c 65 63 74 3e 3e 20 76 69 72 74 75 61 | e.with.the.<<MenuSelect>>.virtua |
14060 | 6c 20 65 76 65 6e 74 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | l.event..#---------------------- |
14080 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
140a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------..#---------- |
140c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
140e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a | -------------------------------. |
14100 | 23 20 4f 76 65 72 61 6c 6c 20 6e 6f 74 65 3a 0a 23 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 74 | #.Overall.note:.#.This.file.is.t |
14120 | 72 69 63 6b 79 20 62 65 63 61 75 73 65 20 74 68 65 72 65 20 61 72 65 20 66 69 76 65 20 64 69 66 | ricky.because.there.are.five.dif |
14140 | 66 65 72 65 6e 74 20 77 61 79 73 20 74 68 61 74 20 6d 65 6e 75 73 0a 23 20 63 61 6e 20 62 65 20 | ferent.ways.that.menus.#.can.be. |
14160 | 75 73 65 64 3a 0a 23 0a 23 20 31 2e 20 41 73 20 61 20 70 75 6c 6c 64 6f 77 6e 20 66 72 6f 6d 20 | used:.#.#.1..As.a.pulldown.from. |
14180 | 61 20 6d 65 6e 75 62 75 74 74 6f 6e 2e 20 49 6e 20 74 68 69 73 20 73 74 79 6c 65 2c 20 74 68 65 | a.menubutton..In.this.style,.the |
141a0 | 20 76 61 72 69 61 62 6c 65 20 0a 23 20 20 20 20 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d 62 29 | .variable..#....tkPriv(postedMb) |
141c0 | 20 69 64 65 6e 74 69 66 69 65 73 20 74 68 65 20 70 6f 73 74 65 64 20 6d 65 6e 75 62 75 74 74 6f | .identifies.the.posted.menubutto |
141e0 | 6e 2e 0a 23 20 32 2e 20 41 73 20 61 20 74 6f 72 6e 2d 6f 66 66 20 6d 65 6e 75 20 63 6f 70 69 65 | n..#.2..As.a.torn-off.menu.copie |
14200 | 64 20 66 72 6f 6d 20 73 6f 6d 65 20 6f 74 68 65 72 20 6d 65 6e 75 2e 20 20 49 6e 20 74 68 69 73 | d.from.some.other.menu...In.this |
14220 | 20 73 74 79 6c 65 0a 23 20 20 20 20 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d 62 29 20 69 73 20 | .style.#....tkPriv(postedMb).is. |
14240 | 65 6d 70 74 79 2c 20 61 6e 64 20 6d 65 6e 75 27 73 20 74 79 70 65 20 69 73 20 22 74 65 61 72 6f | empty,.and.menu's.type.is."tearo |
14260 | 66 66 22 2e 0a 23 20 33 2e 20 41 73 20 61 6e 20 6f 70 74 69 6f 6e 20 6d 65 6e 75 2c 20 74 72 69 | ff"..#.3..As.an.option.menu,.tri |
14280 | 67 67 65 72 65 64 20 66 72 6f 6d 20 61 6e 20 6f 70 74 69 6f 6e 20 6d 65 6e 75 62 75 74 74 6f 6e | ggered.from.an.option.menubutton |
142a0 | 2e 20 20 49 6e 20 74 68 69 73 0a 23 20 20 20 20 73 74 79 6c 65 20 74 6b 50 72 69 76 28 70 6f 73 | ...In.this.#....style.tkPriv(pos |
142c0 | 74 65 64 4d 62 29 20 69 64 65 6e 74 69 66 69 65 73 20 74 68 65 20 70 6f 73 74 65 64 20 6d 65 6e | tedMb).identifies.the.posted.men |
142e0 | 75 62 75 74 74 6f 6e 2e 0a 23 20 34 2e 20 41 73 20 61 20 70 6f 70 75 70 20 6d 65 6e 75 2e 20 20 | ubutton..#.4..As.a.popup.menu... |
14300 | 49 6e 20 74 68 69 73 20 73 74 79 6c 65 20 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d 62 29 20 69 | In.this.style.tkPriv(postedMb).i |
14320 | 73 20 65 6d 70 74 79 20 61 6e 64 0a 23 20 20 20 20 74 68 65 20 74 6f 70 2d 6c 65 76 65 6c 20 6d | s.empty.and.#....the.top-level.m |
14340 | 65 6e 75 27 73 20 74 79 70 65 20 69 73 20 22 6e 6f 72 6d 61 6c 22 2e 0a 23 20 35 2e 20 41 73 20 | enu's.type.is."normal"..#.5..As. |
14360 | 61 20 70 75 6c 6c 64 6f 77 6e 20 66 72 6f 6d 20 61 20 6d 65 6e 75 62 61 72 2e 20 54 68 65 20 76 | a.pulldown.from.a.menubar..The.v |
14380 | 61 72 69 61 62 6c 65 20 74 6b 50 72 69 76 28 6d 65 6e 75 62 61 72 29 20 68 61 73 0a 23 20 20 20 | ariable.tkPriv(menubar).has.#... |
143a0 | 20 74 68 65 20 6f 77 6e 69 6e 67 20 6d 65 6e 75 62 61 72 2c 20 61 6e 64 20 74 68 65 20 6d 65 6e | .the.owning.menubar,.and.the.men |
143c0 | 75 20 69 74 73 65 6c 66 20 69 73 20 6f 66 20 74 79 70 65 20 22 6e 6f 72 6d 61 6c 22 2e 0a 23 0a | u.itself.is.of.type."normal"..#. |
143e0 | 23 20 54 68 65 20 76 61 72 69 6f 75 73 20 62 69 6e 64 69 6e 67 20 70 72 6f 63 65 64 75 72 65 73 | #.The.various.binding.procedures |
14400 | 20 75 73 65 20 74 68 65 20 20 73 74 61 74 65 20 64 65 73 63 72 69 62 65 64 20 61 62 6f 76 65 20 | .use.the..state.described.above. |
14420 | 74 6f 0a 23 20 64 69 73 74 69 6e 67 75 69 73 68 20 74 68 65 20 76 61 72 69 6f 75 73 20 63 61 73 | to.#.distinguish.the.various.cas |
14440 | 65 73 20 61 6e 64 20 74 61 6b 65 20 64 69 66 66 65 72 65 6e 74 20 61 63 74 69 6f 6e 73 20 69 6e | es.and.take.different.actions.in |
14460 | 20 65 61 63 68 0a 23 20 63 61 73 65 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .each.#.case..#----------------- |
14480 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
144a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 23 2d 2d 2d 2d 2d | ------------------------..#----- |
144c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
144e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
14500 | 2d 2d 2d 2d 0a 23 20 54 68 65 20 63 6f 64 65 20 62 65 6c 6f 77 20 63 72 65 61 74 65 73 20 74 68 | ----.#.The.code.below.creates.th |
14520 | 65 20 64 65 66 61 75 6c 74 20 63 6c 61 73 73 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 6d 65 6e | e.default.class.bindings.for.men |
14540 | 75 73 0a 23 20 61 6e 64 20 6d 65 6e 75 62 75 74 74 6f 6e 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d | us.#.and.menubuttons..#--------- |
14560 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
14580 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
145a0 | 0a 0a 62 69 6e 64 20 4d 65 6e 75 62 75 74 74 6f 6e 20 3c 46 6f 63 75 73 49 6e 3e 20 7b 7d 0a 62 | ..bind.Menubutton.<FocusIn>.{}.b |
145c0 | 69 6e 64 20 4d 65 6e 75 62 75 74 74 6f 6e 20 3c 45 6e 74 65 72 3e 20 7b 0a 20 20 20 20 74 6b 4d | ind.Menubutton.<Enter>.{.....tkM |
145e0 | 62 45 6e 74 65 72 20 25 57 0a 7d 0a 62 69 6e 64 20 4d 65 6e 75 62 75 74 74 6f 6e 20 3c 4c 65 61 | bEnter.%W.}.bind.Menubutton.<Lea |
14600 | 76 65 3e 20 7b 0a 20 20 20 20 74 6b 4d 62 4c 65 61 76 65 20 25 57 0a 7d 0a 62 69 6e 64 20 4d 65 | ve>.{.....tkMbLeave.%W.}.bind.Me |
14620 | 6e 75 62 75 74 74 6f 6e 20 3c 31 3e 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 | nubutton.<1>.{.....if.{[string.c |
14640 | 6f 6d 70 61 72 65 20 24 74 6b 50 72 69 76 28 69 6e 4d 65 6e 75 62 75 74 74 6f 6e 29 20 22 22 5d | ompare.$tkPriv(inMenubutton).""] |
14660 | 7d 20 7b 0a 09 74 6b 4d 62 50 6f 73 74 20 24 74 6b 50 72 69 76 28 69 6e 4d 65 6e 75 62 75 74 74 | }.{..tkMbPost.$tkPriv(inMenubutt |
14680 | 6f 6e 29 20 25 58 20 25 59 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 4d 65 6e 75 62 75 74 74 6f | on).%X.%Y.....}.}.bind.Menubutto |
146a0 | 6e 20 3c 4d 6f 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 74 6b 4d 62 4d 6f 74 69 6f 6e 20 25 57 20 75 | n.<Motion>.{.....tkMbMotion.%W.u |
146c0 | 70 20 25 58 20 25 59 0a 7d 0a 62 69 6e 64 20 4d 65 6e 75 62 75 74 74 6f 6e 20 3c 42 31 2d 4d 6f | p.%X.%Y.}.bind.Menubutton.<B1-Mo |
146e0 | 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 74 6b 4d 62 4d 6f 74 69 6f 6e 20 25 57 20 64 6f 77 6e 20 25 | tion>.{.....tkMbMotion.%W.down.% |
14700 | 58 20 25 59 0a 7d 0a 62 69 6e 64 20 4d 65 6e 75 62 75 74 74 6f 6e 20 3c 42 75 74 74 6f 6e 52 65 | X.%Y.}.bind.Menubutton.<ButtonRe |
14720 | 6c 65 61 73 65 2d 31 3e 20 7b 0a 20 20 20 20 74 6b 4d 62 42 75 74 74 6f 6e 55 70 20 25 57 0a 7d | lease-1>.{.....tkMbButtonUp.%W.} |
14740 | 0a 62 69 6e 64 20 4d 65 6e 75 62 75 74 74 6f 6e 20 3c 73 70 61 63 65 3e 20 7b 0a 20 20 20 20 74 | .bind.Menubutton.<space>.{.....t |
14760 | 6b 4d 62 50 6f 73 74 20 25 57 0a 20 20 20 20 74 6b 4d 65 6e 75 46 69 72 73 74 45 6e 74 72 79 20 | kMbPost.%W.....tkMenuFirstEntry. |
14780 | 5b 25 57 20 63 67 65 74 20 2d 6d 65 6e 75 5d 0a 7d 0a 0a 23 20 4d 75 73 74 20 73 65 74 20 66 6f | [%W.cget.-menu].}..#.Must.set.fo |
147a0 | 63 75 73 20 77 68 65 6e 20 6d 6f 75 73 65 20 65 6e 74 65 72 73 20 61 20 6d 65 6e 75 2c 20 69 6e | cus.when.mouse.enters.a.menu,.in |
147c0 | 20 6f 72 64 65 72 20 74 6f 20 61 6c 6c 6f 77 0a 23 20 6d 69 78 65 64 2d 6d 6f 64 65 20 70 72 6f | .order.to.allow.#.mixed-mode.pro |
147e0 | 63 65 73 73 69 6e 67 20 75 73 69 6e 67 20 62 6f 74 68 20 74 68 65 20 6d 6f 75 73 65 20 61 6e 64 | cessing.using.both.the.mouse.and |
14800 | 20 74 68 65 20 6b 65 79 62 6f 61 72 64 2e 0a 23 20 44 6f 6e 27 74 20 73 65 74 20 74 68 65 20 66 | .the.keyboard..#.Don't.set.the.f |
14820 | 6f 63 75 73 20 69 66 20 74 68 65 20 65 76 65 6e 74 20 63 6f 6d 65 73 20 66 72 6f 6d 20 61 20 67 | ocus.if.the.event.comes.from.a.g |
14840 | 72 61 62 20 72 65 6c 65 61 73 65 2c 0a 23 20 74 68 6f 75 67 68 3a 20 20 73 75 63 68 20 61 6e 20 | rab.release,.#.though:..such.an. |
14860 | 65 76 65 6e 74 20 63 61 6e 20 68 61 70 70 65 6e 20 61 66 74 65 72 20 61 73 20 70 61 72 74 20 6f | event.can.happen.after.as.part.o |
14880 | 66 20 75 6e 70 6f 73 74 69 6e 67 0a 23 20 61 20 63 61 73 63 61 64 65 64 20 63 68 61 69 6e 20 6f | f.unposting.#.a.cascaded.chain.o |
148a0 | 66 20 6d 65 6e 75 73 2c 20 61 66 74 65 72 20 74 68 65 20 66 6f 63 75 73 20 68 61 73 20 61 6c 72 | f.menus,.after.the.focus.has.alr |
148c0 | 65 61 64 79 20 62 65 65 6e 0a 23 20 72 65 73 74 6f 72 65 64 20 74 6f 20 77 68 65 72 65 76 65 72 | eady.been.#.restored.to.wherever |
148e0 | 20 69 74 20 77 61 73 20 62 65 66 6f 72 65 20 6d 65 6e 75 20 73 65 6c 65 63 74 69 6f 6e 20 73 74 | .it.was.before.menu.selection.st |
14900 | 61 72 74 65 64 2e 0a 0a 62 69 6e 64 20 4d 65 6e 75 20 3c 46 6f 63 75 73 49 6e 3e 20 7b 7d 0a 0a | arted...bind.Menu.<FocusIn>.{}.. |
14920 | 62 69 6e 64 20 4d 65 6e 75 20 3c 45 6e 74 65 72 3e 20 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 | bind.Menu.<Enter>.{.....set.tkPr |
14940 | 69 76 28 77 69 6e 64 6f 77 29 20 25 57 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 | iv(window).%W.....if.{[string.eq |
14960 | 75 61 6c 20 5b 25 57 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 74 65 61 72 6f 66 66 22 5d 7d 20 | ual.[%W.cget.-type]."tearoff"]}. |
14980 | 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 22 25 6d 22 20 22 4e 6f 74 | {..if.{[string.compare."%m"."Not |
149a0 | 69 66 79 55 6e 67 72 61 62 22 5d 7d 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 | ifyUngrab"]}.{......if.{[string. |
149c0 | 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 75 | equal.$tcl_platform(platform)."u |
149e0 | 6e 69 78 22 5d 7d 20 7b 0a 09 09 74 6b 5f 6d 65 6e 75 53 65 74 46 6f 63 75 73 20 25 57 0a 09 20 | nix"]}.{...tk_menuSetFocus.%W... |
14a00 | 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 74 6b 4d 65 6e 75 4d 6f 74 69 6f 6e 20 25 | ...}..}.....}.....tkMenuMotion.% |
14a20 | 57 20 25 78 20 25 79 20 25 73 0a 7d 0a 0a 62 69 6e 64 20 4d 65 6e 75 20 3c 4c 65 61 76 65 3e 20 | W.%x.%y.%s.}..bind.Menu.<Leave>. |
14a40 | 7b 0a 20 20 20 20 74 6b 4d 65 6e 75 4c 65 61 76 65 20 25 57 20 25 58 20 25 59 20 25 73 0a 7d 0a | {.....tkMenuLeave.%W.%X.%Y.%s.}. |
14a60 | 62 69 6e 64 20 4d 65 6e 75 20 3c 4d 6f 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 74 6b 4d 65 6e 75 4d | bind.Menu.<Motion>.{.....tkMenuM |
14a80 | 6f 74 69 6f 6e 20 25 57 20 25 78 20 25 79 20 25 73 0a 7d 0a 62 69 6e 64 20 4d 65 6e 75 20 3c 42 | otion.%W.%x.%y.%s.}.bind.Menu.<B |
14aa0 | 75 74 74 6f 6e 50 72 65 73 73 3e 20 7b 0a 20 20 20 20 74 6b 4d 65 6e 75 42 75 74 74 6f 6e 44 6f | uttonPress>.{.....tkMenuButtonDo |
14ac0 | 77 6e 20 25 57 0a 7d 0a 62 69 6e 64 20 4d 65 6e 75 20 3c 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 | wn.%W.}.bind.Menu.<ButtonRelease |
14ae0 | 3e 20 7b 0a 20 20 20 74 6b 4d 65 6e 75 49 6e 76 6f 6b 65 20 25 57 20 31 0a 7d 0a 62 69 6e 64 20 | >.{....tkMenuInvoke.%W.1.}.bind. |
14b00 | 4d 65 6e 75 20 3c 73 70 61 63 65 3e 20 7b 0a 20 20 20 20 74 6b 4d 65 6e 75 49 6e 76 6f 6b 65 20 | Menu.<space>.{.....tkMenuInvoke. |
14b20 | 25 57 20 30 0a 7d 0a 62 69 6e 64 20 4d 65 6e 75 20 3c 52 65 74 75 72 6e 3e 20 7b 0a 20 20 20 20 | %W.0.}.bind.Menu.<Return>.{..... |
14b40 | 74 6b 4d 65 6e 75 49 6e 76 6f 6b 65 20 25 57 20 30 0a 7d 0a 62 69 6e 64 20 4d 65 6e 75 20 3c 45 | tkMenuInvoke.%W.0.}.bind.Menu.<E |
14b60 | 73 63 61 70 65 3e 20 7b 0a 20 20 20 20 74 6b 4d 65 6e 75 45 73 63 61 70 65 20 25 57 0a 7d 0a 62 | scape>.{.....tkMenuEscape.%W.}.b |
14b80 | 69 6e 64 20 4d 65 6e 75 20 3c 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 4d 65 6e 75 4c 65 66 74 | ind.Menu.<Left>.{.....tkMenuLeft |
14ba0 | 41 72 72 6f 77 20 25 57 0a 7d 0a 62 69 6e 64 20 4d 65 6e 75 20 3c 52 69 67 68 74 3e 20 7b 0a 20 | Arrow.%W.}.bind.Menu.<Right>.{.. |
14bc0 | 20 20 20 74 6b 4d 65 6e 75 52 69 67 68 74 41 72 72 6f 77 20 25 57 0a 7d 0a 62 69 6e 64 20 4d 65 | ...tkMenuRightArrow.%W.}.bind.Me |
14be0 | 6e 75 20 3c 55 70 3e 20 7b 0a 20 20 20 20 74 6b 4d 65 6e 75 55 70 41 72 72 6f 77 20 25 57 0a 7d | nu.<Up>.{.....tkMenuUpArrow.%W.} |
14c00 | 0a 62 69 6e 64 20 4d 65 6e 75 20 3c 44 6f 77 6e 3e 20 7b 0a 20 20 20 20 74 6b 4d 65 6e 75 44 6f | .bind.Menu.<Down>.{.....tkMenuDo |
14c20 | 77 6e 41 72 72 6f 77 20 25 57 0a 7d 0a 62 69 6e 64 20 4d 65 6e 75 20 3c 4b 65 79 50 72 65 73 73 | wnArrow.%W.}.bind.Menu.<KeyPress |
14c40 | 3e 20 7b 0a 20 20 20 20 74 6b 54 72 61 76 65 72 73 65 57 69 74 68 69 6e 4d 65 6e 75 20 25 57 20 | >.{.....tkTraverseWithinMenu.%W. |
14c60 | 25 41 0a 7d 0a 0a 23 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 62 69 6e 64 69 6e 67 73 20 61 | %A.}..#.The.following.bindings.a |
14c80 | 70 70 6c 79 20 74 6f 20 61 6c 6c 20 77 69 6e 64 6f 77 73 2c 20 61 6e 64 20 61 72 65 20 75 73 65 | pply.to.all.windows,.and.are.use |
14ca0 | 64 20 74 6f 0a 23 20 69 6d 70 6c 65 6d 65 6e 74 20 6b 65 79 62 6f 61 72 64 20 6d 65 6e 75 20 74 | d.to.#.implement.keyboard.menu.t |
14cc0 | 72 61 76 65 72 73 61 6c 2e 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 | raversal...if.{[string.equal.$tc |
14ce0 | 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 75 6e 69 78 22 5d 7d 20 7b 0a | l_platform(platform)."unix"]}.{. |
14d00 | 20 20 20 20 62 69 6e 64 20 61 6c 6c 20 3c 41 6c 74 2d 4b 65 79 50 72 65 73 73 3e 20 7b 0a 09 74 | ....bind.all.<Alt-KeyPress>.{..t |
14d20 | 6b 54 72 61 76 65 72 73 65 54 6f 4d 65 6e 75 20 25 57 20 25 41 0a 20 20 20 20 7d 0a 0a 20 20 20 | kTraverseToMenu.%W.%A.....}..... |
14d40 | 20 62 69 6e 64 20 61 6c 6c 20 3c 46 31 30 3e 20 7b 0a 09 74 6b 46 69 72 73 74 4d 65 6e 75 20 25 | .bind.all.<F10>.{..tkFirstMenu.% |
14d60 | 57 0a 20 20 20 20 7d 0a 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 62 69 6e 64 20 4d 65 6e 75 62 75 | W.....}.}.else.{.....bind.Menubu |
14d80 | 74 74 6f 6e 20 3c 41 6c 74 2d 4b 65 79 50 72 65 73 73 3e 20 7b 0a 09 74 6b 54 72 61 76 65 72 73 | tton.<Alt-KeyPress>.{..tkTravers |
14da0 | 65 54 6f 4d 65 6e 75 20 25 57 20 25 41 0a 20 20 20 20 7d 0a 0a 20 20 20 20 62 69 6e 64 20 4d 65 | eToMenu.%W.%A.....}......bind.Me |
14dc0 | 6e 75 62 75 74 74 6f 6e 20 3c 46 31 30 3e 20 7b 0a 09 74 6b 46 69 72 73 74 4d 65 6e 75 20 25 57 | nubutton.<F10>.{..tkFirstMenu.%W |
14de0 | 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4d 62 45 6e 74 65 72 20 2d 2d 0a 23 20 54 68 69 73 20 | .....}.}..#.tkMbEnter.--.#.This. |
14e00 | 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f | procedure.is.invoked.when.the.mo |
14e20 | 75 73 65 20 65 6e 74 65 72 73 20 61 20 6d 65 6e 75 62 75 74 74 6f 6e 0a 23 20 77 69 64 67 65 74 | use.enters.a.menubutton.#.widget |
14e40 | 2e 20 20 49 74 20 61 63 74 69 76 61 74 65 73 20 74 68 65 20 77 69 64 67 65 74 20 75 6e 6c 65 73 | ...It.activates.the.widget.unles |
14e60 | 73 20 69 74 20 69 73 20 64 69 73 61 62 6c 65 64 2e 20 20 4e 6f 74 65 3a 0a 23 20 74 68 69 73 20 | s.it.is.disabled...Note:.#.this. |
14e80 | 70 72 6f 63 65 64 75 72 65 20 69 73 20 6f 6e 6c 79 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 6d | procedure.is.only.invoked.when.m |
14ea0 | 6f 75 73 65 20 62 75 74 74 6f 6e 20 31 20 69 73 20 2a 6e 6f 74 2a 20 64 6f 77 6e 2e 0a 23 20 54 | ouse.button.1.is.*not*.down..#.T |
14ec0 | 68 65 20 70 72 6f 63 65 64 75 72 65 20 74 6b 4d 62 42 31 45 6e 74 65 72 20 69 73 20 69 6e 76 6f | he.procedure.tkMbB1Enter.is.invo |
14ee0 | 6b 65 64 20 69 66 20 74 68 65 20 62 75 74 74 6f 6e 20 69 73 20 64 6f 77 6e 2e 0a 23 0a 23 20 41 | ked.if.the.button.is.down..#.#.A |
14f00 | 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 54 68 65 20 20 6e 61 6d 65 20 6f 66 20 74 | rguments:.#.w.-...The..name.of.t |
14f20 | 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 4d 62 45 6e 74 65 72 20 77 20 7b 0a 20 | he.widget...proc.tkMbEnter.w.{.. |
14f40 | 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e | ...global.tkPriv......if.{[strin |
14f60 | 67 20 63 6f 6d 70 61 72 65 20 24 74 6b 50 72 69 76 28 69 6e 4d 65 6e 75 62 75 74 74 6f 6e 29 20 | g.compare.$tkPriv(inMenubutton). |
14f80 | 22 22 5d 7d 20 7b 0a 09 74 6b 4d 62 4c 65 61 76 65 20 24 74 6b 50 72 69 76 28 69 6e 4d 65 6e 75 | ""]}.{..tkMbLeave.$tkPriv(inMenu |
14fa0 | 62 75 74 74 6f 6e 29 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 69 6e 4d | button).....}.....set.tkPriv(inM |
14fc0 | 65 6e 75 62 75 74 74 6f 6e 29 20 24 77 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f | enubutton).$w.....if.{[string.co |
14fe0 | 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 | mpare.[$w.cget.-state]."disabled |
15000 | 22 5d 7d 20 7b 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 61 63 74 69 76 | "]}.{..$w.configure.-state.activ |
15020 | 65 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4d 62 4c 65 61 76 65 20 2d 2d 0a 23 20 54 68 69 73 | e.....}.}..#.tkMbLeave.--.#.This |
15040 | 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 65 20 6d | .procedure.is.invoked.when.the.m |
15060 | 6f 75 73 65 20 6c 65 61 76 65 73 20 61 20 6d 65 6e 75 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2e | ouse.leaves.a.menubutton.widget. |
15080 | 0a 23 20 49 74 20 64 65 2d 61 63 74 69 76 61 74 65 73 20 74 68 65 20 77 69 64 67 65 74 2c 20 69 | .#.It.de-activates.the.widget,.i |
150a0 | 66 20 74 68 65 20 77 69 64 67 65 74 20 73 74 69 6c 6c 20 65 78 69 73 74 73 2e 0a 23 0a 23 20 41 | f.the.widget.still.exists..#.#.A |
150c0 | 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 54 68 65 20 20 6e 61 6d 65 20 6f 66 20 74 | rguments:.#.w.-...The..name.of.t |
150e0 | 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 4d 62 4c 65 61 76 65 20 77 20 7b 0a 20 | he.widget...proc.tkMbLeave.w.{.. |
15100 | 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 | ...global.tkPriv......set.tkPriv |
15120 | 28 69 6e 4d 65 6e 75 62 75 74 74 6f 6e 29 20 7b 7d 0a 20 20 20 20 69 66 20 7b 21 5b 77 69 6e 66 | (inMenubutton).{}.....if.{![winf |
15140 | 6f 20 65 78 69 73 74 73 20 24 77 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 | o.exists.$w]}.{..return.....}... |
15160 | 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 63 67 65 74 20 2d 73 74 | ..if.{[string.equal.[$w.cget.-st |
15180 | 61 74 65 5d 20 22 61 63 74 69 76 65 22 5d 7d 20 7b 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 | ate]."active"]}.{..$w.configure. |
151a0 | 2d 73 74 61 74 65 20 6e 6f 72 6d 61 6c 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4d 62 50 6f 73 | -state.normal.....}.}..#.tkMbPos |
151c0 | 74 20 2d 2d 0a 23 20 47 69 76 65 6e 20 61 20 6d 65 6e 75 62 75 74 74 6f 6e 2c 20 74 68 69 73 20 | t.--.#.Given.a.menubutton,.this. |
151e0 | 70 72 6f 63 65 64 75 72 65 20 64 6f 65 73 20 61 6c 6c 20 74 68 65 20 77 6f 72 6b 20 6f 66 20 70 | procedure.does.all.the.work.of.p |
15200 | 6f 73 74 69 6e 67 0a 23 20 69 74 73 20 61 73 73 6f 63 69 61 74 65 64 20 6d 65 6e 75 20 61 6e 64 | osting.#.its.associated.menu.and |
15220 | 20 75 6e 70 6f 73 74 69 6e 67 20 61 6e 79 20 6f 74 68 65 72 20 6d 65 6e 75 20 74 68 61 74 20 69 | .unposting.any.other.menu.that.i |
15240 | 73 20 63 75 72 72 65 6e 74 6c 79 0a 23 20 70 6f 73 74 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 | s.currently.#.posted..#.#.Argume |
15260 | 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 6d 65 6e | nts:.#.w.-...The.name.of.the.men |
15280 | 75 62 75 74 74 6f 6e 20 77 69 64 67 65 74 20 77 68 6f 73 65 20 6d 65 6e 75 0a 23 09 09 09 69 73 | ubutton.widget.whose.menu.#...is |
152a0 | 20 74 6f 20 62 65 20 70 6f 73 74 65 64 2e 0a 23 20 78 2c 20 79 20 2d 09 09 52 6f 6f 74 20 63 6f | .to.be.posted..#.x,.y.-..Root.co |
152c0 | 6f 72 64 69 6e 61 74 65 73 20 6f 66 20 63 75 72 73 6f 72 2c 20 75 73 65 64 20 66 6f 72 20 70 6f | ordinates.of.cursor,.used.for.po |
152e0 | 73 69 74 69 6f 6e 69 6e 67 0a 23 09 09 09 6f 70 74 69 6f 6e 20 6d 65 6e 75 73 2e 20 20 49 66 20 | sitioning.#...option.menus...If. |
15300 | 6e 6f 74 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 6e 20 74 68 65 20 63 65 6e 74 65 72 0a 23 | not.specified,.then.the.center.# |
15320 | 09 09 09 6f 66 20 74 68 65 20 6d 65 6e 75 62 75 74 74 6f 6e 20 69 73 20 75 73 65 64 20 66 6f 72 | ...of.the.menubutton.is.used.for |
15340 | 20 61 6e 20 6f 70 74 69 6f 6e 20 6d 65 6e 75 2e 0a 0a 70 72 6f 63 20 74 6b 4d 62 50 6f 73 74 20 | .an.option.menu...proc.tkMbPost. |
15360 | 7b 77 20 7b 78 20 7b 7d 7d 20 7b 79 20 7b 7d 7d 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 | {w.{x.{}}.{y.{}}}.{.....global.t |
15380 | 6b 50 72 69 76 20 65 72 72 6f 72 49 6e 66 6f 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 70 | kPriv.errorInfo.....global.tcl_p |
153a0 | 6c 61 74 66 6f 72 6d 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b | latform......if.{[string.equal.[ |
153c0 | 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 20 7c 7c 20 5c | $w.cget.-state]."disabled"].||.\ |
153e0 | 0a 09 20 20 20 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 77 20 24 74 6b 50 72 69 76 28 70 | ......[string.equal.$w.$tkPriv(p |
15400 | 6f 73 74 65 64 4d 62 29 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 | ostedMb)]}.{..return.....}.....s |
15420 | 65 74 20 6d 65 6e 75 20 5b 24 77 20 63 67 65 74 20 2d 6d 65 6e 75 5d 0a 20 20 20 20 69 66 20 7b | et.menu.[$w.cget.-menu].....if.{ |
15440 | 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6d 65 6e 75 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 | [string.equal.$menu.""]}.{..retu |
15460 | 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 74 65 61 72 6f 66 66 20 5b 65 78 70 72 20 7b | rn.....}.....set.tearoff.[expr.{ |
15480 | 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 | [string.equal.$tcl_platform(plat |
154a0 | 66 6f 72 6d 29 20 22 75 6e 69 78 22 5d 20 5c 0a 09 20 20 20 20 7c 7c 20 5b 73 74 72 69 6e 67 20 | form)."unix"].\......||.[string. |
154c0 | 65 71 75 61 6c 20 5b 24 6d 65 6e 75 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 74 65 61 72 6f 66 | equal.[$menu.cget.-type]."tearof |
154e0 | 66 22 5d 7d 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 66 69 72 73 74 20 24 77 20 24 | f"]}].....if.{[string.first.$w.$ |
15500 | 6d 65 6e 75 5d 20 21 3d 20 30 7d 20 7b 0a 09 65 72 72 6f 72 20 22 63 61 6e 27 74 20 70 6f 73 74 | menu].!=.0}.{..error."can't.post |
15520 | 20 24 6d 65 6e 75 3a 20 20 69 74 20 69 73 6e 27 74 20 61 20 64 65 73 63 65 6e 64 61 6e 74 20 6f | .$menu:..it.isn't.a.descendant.o |
15540 | 66 20 24 77 20 28 74 68 69 73 20 69 73 20 61 20 6e 65 77 20 72 65 71 75 69 72 65 6d 65 6e 74 20 | f.$w.(this.is.a.new.requirement. |
15560 | 69 6e 20 54 6b 20 76 65 72 73 69 6f 6e 73 20 33 2e 30 20 61 6e 64 20 6c 61 74 65 72 29 22 0a 20 | in.Tk.versions.3.0.and.later)".. |
15580 | 20 20 20 7d 0a 20 20 20 20 73 65 74 20 63 75 72 20 24 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d | ...}.....set.cur.$tkPriv(postedM |
155a0 | 62 29 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 63 75 72 20 | b).....if.{[string.compare.$cur. |
155c0 | 22 22 5d 7d 20 7b 0a 09 74 6b 4d 65 6e 75 55 6e 70 6f 73 74 20 7b 7d 0a 20 20 20 20 7d 0a 20 20 | ""]}.{..tkMenuUnpost.{}.....}... |
155e0 | 20 20 73 65 74 20 74 6b 50 72 69 76 28 63 75 72 73 6f 72 29 20 5b 24 77 20 63 67 65 74 20 2d 63 | ..set.tkPriv(cursor).[$w.cget.-c |
15600 | 75 72 73 6f 72 5d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 20 5b 24 | ursor].....set.tkPriv(relief).[$ |
15620 | 77 20 63 67 65 74 20 2d 72 65 6c 69 65 66 5d 0a 20 20 20 20 24 77 20 63 6f 6e 66 69 67 75 72 65 | w.cget.-relief].....$w.configure |
15640 | 20 2d 63 75 72 73 6f 72 20 61 72 72 6f 77 0a 20 20 20 20 24 77 20 63 6f 6e 66 69 67 75 72 65 20 | .-cursor.arrow.....$w.configure. |
15660 | 2d 72 65 6c 69 65 66 20 72 61 69 73 65 64 0a 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 70 | -relief.raised......set.tkPriv(p |
15680 | 6f 73 74 65 64 4d 62 29 20 24 77 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 66 6f 63 75 73 | ostedMb).$w.....set.tkPriv(focus |
156a0 | 29 20 5b 66 6f 63 75 73 5d 0a 20 20 20 20 24 6d 65 6e 75 20 61 63 74 69 76 61 74 65 20 6e 6f 6e | ).[focus].....$menu.activate.non |
156c0 | 65 0a 20 20 20 20 74 6b 47 65 6e 65 72 61 74 65 4d 65 6e 75 53 65 6c 65 63 74 20 24 6d 65 6e 75 | e.....tkGenerateMenuSelect.$menu |
156e0 | 0a 0a 20 20 20 20 23 20 49 66 20 74 68 69 73 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 61 6e 20 6f 70 | ......#.If.this.looks.like.an.op |
15700 | 74 69 6f 6e 20 6d 65 6e 75 62 75 74 74 6f 6e 20 74 68 65 6e 20 70 6f 73 74 20 74 68 65 20 6d 65 | tion.menubutton.then.post.the.me |
15720 | 6e 75 20 73 6f 0a 20 20 20 20 23 20 74 68 61 74 20 74 68 65 20 63 75 72 72 65 6e 74 20 65 6e 74 | nu.so.....#.that.the.current.ent |
15740 | 72 79 20 69 73 20 6f 6e 20 74 6f 70 20 6f 66 20 74 68 65 20 6d 6f 75 73 65 2e 20 20 4f 74 68 65 | ry.is.on.top.of.the.mouse...Othe |
15760 | 72 77 69 73 65 20 70 6f 73 74 0a 20 20 20 20 23 20 74 68 65 20 6d 65 6e 75 20 6a 75 73 74 20 62 | rwise.post.....#.the.menu.just.b |
15780 | 65 6c 6f 77 20 74 68 65 20 6d 65 6e 75 62 75 74 74 6f 6e 2c 20 61 73 20 66 6f 72 20 61 20 70 75 | elow.the.menubutton,.as.for.a.pu |
157a0 | 6c 6c 2d 64 6f 77 6e 2e 0a 0a 20 20 20 20 75 70 64 61 74 65 20 69 64 6c 65 74 61 73 6b 73 0a 20 | ll-down.......update.idletasks.. |
157c0 | 20 20 20 69 66 20 7b 5b 63 61 74 63 68 20 7b 0a 09 73 77 69 74 63 68 20 5b 24 77 20 63 67 65 74 | ...if.{[catch.{..switch.[$w.cget |
157e0 | 20 2d 64 69 72 65 63 74 69 6f 6e 5d 20 7b 0a 20 20 20 20 09 20 20 20 20 61 62 6f 76 65 20 7b 0a | .-direction].{..........above.{. |
15800 | 20 20 20 20 09 20 20 20 20 09 73 65 74 20 78 20 5b 77 69 6e 66 6f 20 72 6f 6f 74 78 20 24 77 5d | ..........set.x.[winfo.rootx.$w] |
15820 | 0a 20 20 20 20 09 20 20 20 20 09 73 65 74 20 79 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 72 | ...........set.y.[expr.{[winfo.r |
15840 | 6f 6f 74 79 20 24 77 5d 20 2d 20 5b 77 69 6e 66 6f 20 72 65 71 68 65 69 67 68 74 20 24 6d 65 6e | ooty.$w].-.[winfo.reqheight.$men |
15860 | 75 5d 7d 5d 0a 20 20 20 20 09 20 20 20 20 09 24 6d 65 6e 75 20 70 6f 73 74 20 24 78 20 24 79 0a | u]}]...........$menu.post.$x.$y. |
15880 | 20 20 20 20 09 20 20 20 20 7d 0a 20 20 20 20 09 20 20 20 20 62 65 6c 6f 77 20 7b 0a 20 20 20 20 | .........}..........below.{..... |
158a0 | 09 20 20 20 20 09 73 65 74 20 78 20 5b 77 69 6e 66 6f 20 72 6f 6f 74 78 20 24 77 5d 0a 20 20 20 | ......set.x.[winfo.rootx.$w].... |
158c0 | 20 09 20 20 20 20 09 73 65 74 20 79 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 72 6f 6f 74 79 | .......set.y.[expr.{[winfo.rooty |
158e0 | 20 24 77 5d 20 2b 20 5b 77 69 6e 66 6f 20 68 65 69 67 68 74 20 24 77 5d 7d 5d 0a 20 20 20 20 09 | .$w].+.[winfo.height.$w]}]...... |
15900 | 20 20 20 20 09 24 6d 65 6e 75 20 70 6f 73 74 20 24 78 20 24 79 0a 20 20 20 20 09 20 20 20 20 7d | .....$menu.post.$x.$y..........} |
15920 | 0a 20 20 20 20 09 20 20 20 20 6c 65 66 74 20 7b 0a 20 20 20 20 09 20 20 20 20 09 73 65 74 20 78 | ..........left.{...........set.x |
15940 | 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 72 6f 6f 74 78 20 24 77 5d 20 2d 20 5b 77 69 6e 66 | .[expr.{[winfo.rootx.$w].-.[winf |
15960 | 6f 20 72 65 71 77 69 64 74 68 20 24 6d 65 6e 75 5d 7d 5d 0a 20 20 20 20 09 20 20 20 20 09 73 65 | o.reqwidth.$menu]}]...........se |
15980 | 74 20 79 20 5b 65 78 70 72 20 7b 28 32 20 2a 20 5b 77 69 6e 66 6f 20 72 6f 6f 74 79 20 24 77 5d | t.y.[expr.{(2.*.[winfo.rooty.$w] |
159a0 | 20 2b 20 5b 77 69 6e 66 6f 20 68 65 69 67 68 74 20 24 77 5d 29 20 2f 20 32 7d 5d 0a 20 20 20 20 | .+.[winfo.height.$w])./.2}]..... |
159c0 | 09 20 20 20 20 09 73 65 74 20 65 6e 74 72 79 20 5b 74 6b 4d 65 6e 75 46 69 6e 64 4e 61 6d 65 20 | ......set.entry.[tkMenuFindName. |
159e0 | 24 6d 65 6e 75 20 5b 24 77 20 63 67 65 74 20 2d 74 65 78 74 5d 5d 0a 20 20 20 20 09 20 20 20 20 | $menu.[$w.cget.-text]].......... |
15a00 | 09 69 66 20 7b 5b 24 77 20 63 67 65 74 20 2d 69 6e 64 69 63 61 74 6f 72 6f 6e 5d 7d 20 7b 0a 09 | .if.{[$w.cget.-indicatoron]}.{.. |
15a20 | 09 20 20 20 20 69 66 20 7b 24 65 6e 74 72 79 20 3d 3d 20 5b 24 6d 65 6e 75 20 69 6e 64 65 78 20 | .....if.{$entry.==.[$menu.index. |
15a40 | 6c 61 73 74 5d 7d 20 7b 0a 09 09 20 20 20 20 09 69 6e 63 72 20 79 20 5b 65 78 70 72 20 7b 2d 28 | last]}.{........incr.y.[expr.{-( |
15a60 | 5b 24 6d 65 6e 75 20 79 70 6f 73 69 74 69 6f 6e 20 24 65 6e 74 72 79 5d 20 5c 0a 09 09 09 20 20 | [$menu.yposition.$entry].\...... |
15a80 | 20 20 09 2b 20 5b 77 69 6e 66 6f 20 72 65 71 68 65 69 67 68 74 20 24 6d 65 6e 75 5d 29 2f 32 7d | ...+.[winfo.reqheight.$menu])/2} |
15aa0 | 5d 0a 09 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 20 20 20 20 09 69 6e 63 72 20 79 20 5b | ].......}.else.{........incr.y.[ |
15ac0 | 65 78 70 72 20 7b 2d 28 5b 24 6d 65 6e 75 20 79 70 6f 73 69 74 69 6f 6e 20 24 65 6e 74 72 79 5d | expr.{-([$menu.yposition.$entry] |
15ae0 | 20 5c 0a 09 09 09 20 20 20 20 20 20 20 20 2b 20 5b 24 6d 65 6e 75 20 79 70 6f 73 69 74 69 6f 6e | .\............+.[$menu.yposition |
15b00 | 20 5b 65 78 70 72 20 7b 24 65 6e 74 72 79 2b 31 7d 5d 5d 29 2f 32 7d 5d 0a 09 09 20 20 20 20 7d | .[expr.{$entry+1}]])/2}].......} |
15b20 | 0a 20 20 20 20 09 20 20 20 20 09 7d 0a 20 20 20 20 09 20 20 20 20 09 24 6d 65 6e 75 20 70 6f 73 | ...........}...........$menu.pos |
15b40 | 74 20 24 78 20 24 79 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 65 | t.$x.$y...if.{[string.compare.$e |
15b60 | 6e 74 72 79 20 7b 7d 5d 20 26 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 6d 65 | ntry.{}].&&.[string.compare.[$me |
15b80 | 6e 75 20 65 6e 74 72 79 63 67 65 74 20 24 65 6e 74 72 79 20 2d 73 74 61 74 65 5d 20 22 64 69 73 | nu.entrycget.$entry.-state]."dis |
15ba0 | 61 62 6c 65 64 22 5d 7d 20 7b 0a 20 20 20 20 09 20 20 20 20 09 20 20 20 20 24 6d 65 6e 75 20 61 | abled"]}.{...............$menu.a |
15bc0 | 63 74 69 76 61 74 65 20 24 65 6e 74 72 79 0a 09 09 20 20 20 20 74 6b 47 65 6e 65 72 61 74 65 4d | ctivate.$entry.......tkGenerateM |
15be0 | 65 6e 75 53 65 6c 65 63 74 20 24 6d 65 6e 75 0a 20 20 20 20 09 20 20 20 20 09 7d 0a 20 20 20 20 | enuSelect.$menu...........}..... |
15c00 | 09 20 20 20 20 7d 0a 20 20 20 20 09 20 20 20 20 72 69 67 68 74 20 7b 0a 20 20 20 20 09 20 20 20 | .....}..........right.{......... |
15c20 | 20 09 73 65 74 20 78 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 72 6f 6f 74 78 20 24 77 5d 20 | ..set.x.[expr.{[winfo.rootx.$w]. |
15c40 | 2b 20 5b 77 69 6e 66 6f 20 77 69 64 74 68 20 24 77 5d 7d 5d 0a 20 20 20 20 09 20 20 20 20 09 73 | +.[winfo.width.$w]}]...........s |
15c60 | 65 74 20 79 20 5b 65 78 70 72 20 7b 28 32 20 2a 20 5b 77 69 6e 66 6f 20 72 6f 6f 74 79 20 24 77 | et.y.[expr.{(2.*.[winfo.rooty.$w |
15c80 | 5d 20 2b 20 5b 77 69 6e 66 6f 20 68 65 69 67 68 74 20 24 77 5d 29 20 2f 20 32 7d 5d 0a 20 20 20 | ].+.[winfo.height.$w])./.2}].... |
15ca0 | 20 09 20 20 20 20 09 73 65 74 20 65 6e 74 72 79 20 5b 74 6b 4d 65 6e 75 46 69 6e 64 4e 61 6d 65 | .......set.entry.[tkMenuFindName |
15cc0 | 20 24 6d 65 6e 75 20 5b 24 77 20 63 67 65 74 20 2d 74 65 78 74 5d 5d 0a 20 20 20 20 09 20 20 20 | .$menu.[$w.cget.-text]]......... |
15ce0 | 20 09 69 66 20 7b 5b 24 77 20 63 67 65 74 20 2d 69 6e 64 69 63 61 74 6f 72 6f 6e 5d 7d 20 7b 0a | ..if.{[$w.cget.-indicatoron]}.{. |
15d00 | 09 09 20 20 20 20 69 66 20 7b 24 65 6e 74 72 79 20 3d 3d 20 5b 24 6d 65 6e 75 20 69 6e 64 65 78 | ......if.{$entry.==.[$menu.index |
15d20 | 20 6c 61 73 74 5d 7d 20 7b 0a 09 09 20 20 20 20 09 69 6e 63 72 20 79 20 5b 65 78 70 72 20 7b 2d | .last]}.{........incr.y.[expr.{- |
15d40 | 28 5b 24 6d 65 6e 75 20 79 70 6f 73 69 74 69 6f 6e 20 24 65 6e 74 72 79 5d 20 5c 0a 09 09 09 20 | ([$menu.yposition.$entry].\..... |
15d60 | 20 20 20 09 2b 20 5b 77 69 6e 66 6f 20 72 65 71 68 65 69 67 68 74 20 24 6d 65 6e 75 5d 29 2f 32 | ....+.[winfo.reqheight.$menu])/2 |
15d80 | 7d 5d 0a 09 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 20 20 20 20 09 69 6e 63 72 20 79 20 | }].......}.else.{........incr.y. |
15da0 | 5b 65 78 70 72 20 7b 2d 28 5b 24 6d 65 6e 75 20 79 70 6f 73 69 74 69 6f 6e 20 24 65 6e 74 72 79 | [expr.{-([$menu.yposition.$entry |
15dc0 | 5d 20 5c 0a 09 09 09 20 20 20 20 20 20 20 20 2b 20 5b 24 6d 65 6e 75 20 79 70 6f 73 69 74 69 6f | ].\............+.[$menu.ypositio |
15de0 | 6e 20 5b 65 78 70 72 20 7b 24 65 6e 74 72 79 2b 31 7d 5d 5d 29 2f 32 7d 5d 0a 09 09 20 20 20 20 | n.[expr.{$entry+1}]])/2}]....... |
15e00 | 7d 0a 20 20 20 20 09 20 20 20 20 09 7d 0a 20 20 20 20 09 20 20 20 20 09 24 6d 65 6e 75 20 70 6f | }...........}...........$menu.po |
15e20 | 73 74 20 24 78 20 24 79 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 | st.$x.$y...if.{[string.compare.$ |
15e40 | 65 6e 74 72 79 20 7b 7d 5d 20 26 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 6d | entry.{}].&&.[string.compare.[$m |
15e60 | 65 6e 75 20 65 6e 74 72 79 63 67 65 74 20 24 65 6e 74 72 79 20 2d 73 74 61 74 65 5d 20 22 64 69 | enu.entrycget.$entry.-state]."di |
15e80 | 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 20 20 20 20 09 20 20 20 20 09 20 20 20 20 24 6d 65 6e 75 20 | sabled"]}.{...............$menu. |
15ea0 | 61 63 74 69 76 61 74 65 20 24 65 6e 74 72 79 0a 09 09 20 20 20 20 74 6b 47 65 6e 65 72 61 74 65 | activate.$entry.......tkGenerate |
15ec0 | 4d 65 6e 75 53 65 6c 65 63 74 20 24 6d 65 6e 75 0a 20 20 20 20 09 20 20 20 20 09 7d 0a 20 20 20 | MenuSelect.$menu...........}.... |
15ee0 | 20 09 20 20 20 20 7d 0a 20 20 20 20 09 20 20 20 20 64 65 66 61 75 6c 74 20 7b 0a 20 20 20 20 09 | ......}..........default.{...... |
15f00 | 20 20 20 20 09 69 66 20 7b 5b 24 77 20 63 67 65 74 20 2d 69 6e 64 69 63 61 74 6f 72 6f 6e 5d 7d | .....if.{[$w.cget.-indicatoron]} |
15f20 | 20 7b 0a 09 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 79 20 7b 7d | .{.......if.{[string.equal.$y.{} |
15f40 | 5d 7d 20 7b 0a 09 09 09 73 65 74 20 78 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 72 6f 6f 74 | ]}.{....set.x.[expr.{[winfo.root |
15f60 | 78 20 24 77 5d 20 2b 20 5b 77 69 6e 66 6f 20 77 69 64 74 68 20 24 77 5d 2f 32 7d 5d 0a 09 09 09 | x.$w].+.[winfo.width.$w]/2}].... |
15f80 | 73 65 74 20 79 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 72 6f 6f 74 79 20 24 77 5d 20 2b 20 | set.y.[expr.{[winfo.rooty.$w].+. |
15fa0 | 5b 77 69 6e 66 6f 20 68 65 69 67 68 74 20 24 77 5d 2f 32 7d 5d 0a 09 20 20 20 20 09 20 20 20 20 | [winfo.height.$w]/2}]........... |
15fc0 | 7d 0a 09 20 20 20 20 20 20 20 20 20 20 20 20 74 6b 50 6f 73 74 4f 76 65 72 50 6f 69 6e 74 20 24 | }..............tkPostOverPoint.$ |
15fe0 | 6d 65 6e 75 20 24 78 20 24 79 20 5b 74 6b 4d 65 6e 75 46 69 6e 64 4e 61 6d 65 20 24 6d 65 6e 75 | menu.$x.$y.[tkMenuFindName.$menu |
16000 | 20 5b 24 77 20 63 67 65 74 20 2d 74 65 78 74 5d 5d 0a 09 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 | .[$w.cget.-text]]...}.else.{.... |
16020 | 20 20 09 20 20 20 20 24 6d 65 6e 75 20 70 6f 73 74 20 5b 77 69 6e 66 6f 20 72 6f 6f 74 78 20 24 | .......$menu.post.[winfo.rootx.$ |
16040 | 77 5d 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 72 6f 6f 74 79 20 24 77 5d 2b 5b 77 69 6e 66 | w].[expr.{[winfo.rooty.$w]+[winf |
16060 | 6f 20 68 65 69 67 68 74 20 24 77 5d 7d 5d 0a 20 20 20 20 09 20 20 20 20 09 7d 20 20 0a 20 20 20 | o.height.$w]}]...........}...... |
16080 | 20 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 20 6d 73 67 5d 7d 20 7b 0a 09 23 20 45 72 72 6f | ......}..}.....}.msg]}.{..#.Erro |
160a0 | 72 20 70 6f 73 74 69 6e 67 20 6d 65 6e 75 20 28 65 2e 67 2e 20 62 6f 67 75 73 20 2d 70 6f 73 74 | r.posting.menu.(e.g..bogus.-post |
160c0 | 63 6f 6d 6d 61 6e 64 29 2e 20 55 6e 70 6f 73 74 20 69 74 20 61 6e 64 0a 09 23 20 72 65 66 6c 65 | command)..Unpost.it.and..#.refle |
160e0 | 63 74 20 74 68 65 20 65 72 72 6f 72 2e 0a 09 0a 09 73 65 74 20 73 61 76 65 64 49 6e 66 6f 20 24 | ct.the.error.....set.savedInfo.$ |
16100 | 65 72 72 6f 72 49 6e 66 6f 0a 09 74 6b 4d 65 6e 75 55 6e 70 6f 73 74 20 7b 7d 0a 09 65 72 72 6f | errorInfo..tkMenuUnpost.{}..erro |
16120 | 72 20 24 6d 73 67 20 24 73 61 76 65 64 49 6e 66 6f 0a 0a 20 20 20 20 7d 0a 0a 20 20 20 20 73 65 | r.$msg.$savedInfo......}......se |
16140 | 74 20 74 6b 50 72 69 76 28 74 65 61 72 6f 66 66 29 20 24 74 65 61 72 6f 66 66 0a 20 20 20 20 69 | t.tkPriv(tearoff).$tearoff.....i |
16160 | 66 20 7b 24 74 65 61 72 6f 66 66 20 21 3d 20 30 7d 20 7b 0a 20 20 20 20 09 66 6f 63 75 73 20 24 | f.{$tearoff.!=.0}.{......focus.$ |
16180 | 6d 65 6e 75 0a 20 20 20 20 09 74 6b 53 61 76 65 47 72 61 62 49 6e 66 6f 20 24 77 0a 20 20 20 20 | menu......tkSaveGrabInfo.$w..... |
161a0 | 09 67 72 61 62 20 2d 67 6c 6f 62 61 6c 20 24 77 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4d 65 | .grab.-global.$w.....}.}..#.tkMe |
161c0 | 6e 75 55 6e 70 6f 73 74 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 75 6e 70 | nuUnpost.--.#.This.procedure.unp |
161e0 | 6f 73 74 73 20 61 20 67 69 76 65 6e 20 6d 65 6e 75 2c 20 70 6c 75 73 20 61 6c 6c 20 6f 66 20 69 | osts.a.given.menu,.plus.all.of.i |
16200 | 74 73 20 61 6e 63 65 73 74 6f 72 73 20 75 70 0a 23 20 74 6f 20 28 61 6e 64 20 69 6e 63 6c 75 64 | ts.ancestors.up.#.to.(and.includ |
16220 | 69 6e 67 29 20 61 20 6d 65 6e 75 62 75 74 74 6f 6e 2c 20 69 66 20 61 6e 79 2e 20 20 49 74 20 61 | ing).a.menubutton,.if.any...It.a |
16240 | 6c 73 6f 20 72 65 73 74 6f 72 65 73 20 76 61 72 69 6f 75 73 0a 23 20 76 61 6c 75 65 73 20 74 6f | lso.restores.various.#.values.to |
16260 | 20 77 68 61 74 20 74 68 65 79 20 77 65 72 65 20 62 65 66 6f 72 65 20 74 68 65 20 6d 65 6e 75 20 | .what.they.were.before.the.menu. |
16280 | 77 61 73 20 70 6f 73 74 65 64 2c 20 61 6e 64 20 72 65 6c 65 61 73 65 73 0a 23 20 61 20 67 72 61 | was.posted,.and.releases.#.a.gra |
162a0 | 62 20 69 66 20 74 68 65 72 65 27 73 20 61 20 6d 65 6e 75 62 75 74 74 6f 6e 20 69 6e 76 6f 6c 76 | b.if.there's.a.menubutton.involv |
162c0 | 65 64 2e 20 20 53 70 65 63 69 61 6c 20 6e 6f 74 65 73 3a 0a 23 20 31 2e 20 49 74 27 73 20 69 6d | ed...Special.notes:.#.1..It's.im |
162e0 | 70 6f 72 74 61 6e 74 20 74 6f 20 75 6e 70 6f 73 74 20 61 6c 6c 20 6d 65 6e 75 73 20 62 65 66 6f | portant.to.unpost.all.menus.befo |
16300 | 72 65 20 72 65 6c 65 61 73 69 6e 67 20 74 68 65 20 67 72 61 62 2c 20 73 6f 0a 23 20 20 20 20 74 | re.releasing.the.grab,.so.#....t |
16320 | 68 61 74 20 61 6e 79 20 45 6e 74 65 72 2d 4c 65 61 76 65 20 65 76 65 6e 74 73 20 28 65 2e 67 2e | hat.any.Enter-Leave.events.(e.g. |
16340 | 20 66 72 6f 6d 20 6d 65 6e 75 20 62 61 63 6b 20 74 6f 20 6d 61 69 6e 0a 23 20 20 20 20 61 70 70 | .from.menu.back.to.main.#....app |
16360 | 6c 69 63 61 74 69 6f 6e 29 20 68 61 76 65 20 6d 6f 64 65 20 4e 6f 74 69 66 79 47 72 61 62 2e 0a | lication).have.mode.NotifyGrab.. |
16380 | 23 20 32 2e 20 42 65 20 73 75 72 65 20 74 6f 20 65 6e 63 6c 6f 73 65 20 76 61 72 69 6f 75 73 20 | #.2..Be.sure.to.enclose.various. |
163a0 | 67 72 6f 75 70 73 20 6f 66 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 20 22 63 61 74 63 68 22 20 73 6f | groups.of.commands.in."catch".so |
163c0 | 20 74 68 61 74 0a 23 20 20 20 20 74 68 65 20 70 72 6f 63 65 64 75 72 65 20 77 69 6c 6c 20 63 6f | .that.#....the.procedure.will.co |
163e0 | 6d 70 6c 65 74 65 20 65 76 65 6e 20 69 66 20 74 68 65 20 6d 65 6e 75 62 75 74 74 6f 6e 20 6f 72 | mplete.even.if.the.menubutton.or |
16400 | 20 74 68 65 20 6d 65 6e 75 0a 23 20 20 20 20 6f 72 20 74 68 65 20 67 72 61 62 20 77 69 6e 64 6f | .the.menu.#....or.the.grab.windo |
16420 | 77 20 68 61 73 20 62 65 65 6e 20 64 65 6c 65 74 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 | w.has.been.deleted..#.#.Argument |
16440 | 73 3a 0a 23 20 6d 65 6e 75 20 2d 09 09 4e 61 6d 65 20 6f 66 20 61 20 6d 65 6e 75 20 74 6f 20 75 | s:.#.menu.-..Name.of.a.menu.to.u |
16460 | 6e 70 6f 73 74 2e 20 20 49 67 6e 6f 72 65 64 20 69 66 20 74 68 65 72 65 0a 23 09 09 09 69 73 20 | npost...Ignored.if.there.#...is. |
16480 | 61 20 70 6f 73 74 65 64 20 6d 65 6e 75 62 75 74 74 6f 6e 2e 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e | a.posted.menubutton...proc.tkMen |
164a0 | 75 55 6e 70 6f 73 74 20 6d 65 6e 75 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 70 6c | uUnpost.menu.{.....global.tcl_pl |
164c0 | 61 74 66 6f 72 6d 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 73 65 74 | atform.....global.tkPriv.....set |
164e0 | 20 6d 62 20 24 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d 62 29 0a 0a 20 20 20 20 23 20 52 65 73 | .mb.$tkPriv(postedMb)......#.Res |
16500 | 74 6f 72 65 20 66 6f 63 75 73 20 72 69 67 68 74 20 61 77 61 79 20 28 6f 74 68 65 72 77 69 73 65 | tore.focus.right.away.(otherwise |
16520 | 20 58 20 77 69 6c 6c 20 74 61 6b 65 20 66 6f 63 75 73 20 61 77 61 79 20 77 68 65 6e 0a 20 20 20 | .X.will.take.focus.away.when.... |
16540 | 20 23 20 74 68 65 20 6d 65 6e 75 20 69 73 20 75 6e 6d 61 70 70 65 64 20 61 6e 64 20 75 6e 64 65 | .#.the.menu.is.unmapped.and.unde |
16560 | 72 20 73 6f 6d 65 20 77 69 6e 64 6f 77 20 6d 61 6e 61 67 65 72 73 20 28 65 2e 67 2e 20 6f 6c 76 | r.some.window.managers.(e.g..olv |
16580 | 77 6d 29 0a 20 20 20 20 23 20 77 65 27 6c 6c 20 6c 6f 73 65 20 74 68 65 20 66 6f 63 75 73 20 63 | wm).....#.we'll.lose.the.focus.c |
165a0 | 6f 6d 70 6c 65 74 65 6c 79 29 2e 0a 0a 20 20 20 20 63 61 74 63 68 20 7b 66 6f 63 75 73 20 24 74 | ompletely).......catch.{focus.$t |
165c0 | 6b 50 72 69 76 28 66 6f 63 75 73 29 7d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 66 6f 63 | kPriv(focus)}.....set.tkPriv(foc |
165e0 | 75 73 29 20 22 22 0a 0a 20 20 20 20 23 20 55 6e 70 6f 73 74 20 6d 65 6e 75 28 73 29 20 61 6e 64 | us).""......#.Unpost.menu(s).and |
16600 | 20 72 65 73 74 6f 72 65 20 73 6f 6d 65 20 73 74 75 66 66 20 74 68 61 74 27 73 20 64 65 70 65 6e | .restore.some.stuff.that's.depen |
16620 | 64 65 6e 74 20 6f 6e 0a 20 20 20 20 23 20 77 68 61 74 20 77 61 73 20 70 6f 73 74 65 64 2e 0a 0a | dent.on.....#.what.was.posted... |
16640 | 20 20 20 20 63 61 74 63 68 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 | ....catch.{..if.{[string.compare |
16660 | 20 24 6d 62 20 22 22 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 6d 65 6e 75 20 5b 24 6d 62 20 63 | .$mb.""]}.{......set.menu.[$mb.c |
16680 | 67 65 74 20 2d 6d 65 6e 75 5d 0a 09 20 20 20 20 24 6d 65 6e 75 20 75 6e 70 6f 73 74 0a 09 20 20 | get.-menu]......$menu.unpost.... |
166a0 | 20 20 73 65 74 20 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d 62 29 20 7b 7d 0a 09 20 20 20 20 24 | ..set.tkPriv(postedMb).{}......$ |
166c0 | 6d 62 20 63 6f 6e 66 69 67 75 72 65 20 2d 63 75 72 73 6f 72 20 24 74 6b 50 72 69 76 28 63 75 72 | mb.configure.-cursor.$tkPriv(cur |
166e0 | 73 6f 72 29 0a 09 20 20 20 20 24 6d 62 20 63 6f 6e 66 69 67 75 72 65 20 2d 72 65 6c 69 65 66 20 | sor)......$mb.configure.-relief. |
16700 | 24 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 0a 09 7d 20 65 6c 73 65 69 66 20 7b 5b 73 74 72 69 | $tkPriv(relief)..}.elseif.{[stri |
16720 | 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 6b 50 72 69 76 28 70 6f 70 75 70 29 20 22 22 5d 7d 20 7b | ng.compare.$tkPriv(popup).""]}.{ |
16740 | 0a 09 20 20 20 20 24 74 6b 50 72 69 76 28 70 6f 70 75 70 29 20 75 6e 70 6f 73 74 0a 09 20 20 20 | ......$tkPriv(popup).unpost..... |
16760 | 20 73 65 74 20 74 6b 50 72 69 76 28 70 6f 70 75 70 29 20 7b 7d 0a 09 7d 20 65 6c 73 65 69 66 20 | .set.tkPriv(popup).{}..}.elseif. |
16780 | 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 6d 65 6e 75 20 63 67 65 74 20 2d 74 79 | {[string.compare.[$menu.cget.-ty |
167a0 | 70 65 5d 20 22 6d 65 6e 75 62 61 72 22 5d 20 5c 0a 09 09 26 26 20 5b 73 74 72 69 6e 67 20 63 6f | pe]."menubar"].\...&&.[string.co |
167c0 | 6d 70 61 72 65 20 5b 24 6d 65 6e 75 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 74 65 61 72 6f 66 | mpare.[$menu.cget.-type]."tearof |
167e0 | 66 22 5d 7d 20 7b 0a 09 20 20 20 20 23 20 57 65 27 72 65 20 69 6e 20 61 20 63 61 73 63 61 64 65 | f"]}.{......#.We're.in.a.cascade |
16800 | 64 20 73 75 62 2d 6d 65 6e 75 20 66 72 6f 6d 20 61 20 74 6f 72 6e 2d 6f 66 66 20 6d 65 6e 75 20 | d.sub-menu.from.a.torn-off.menu. |
16820 | 6f 72 20 70 6f 70 75 70 2e 0a 09 20 20 20 20 23 20 55 6e 70 6f 73 74 20 61 6c 6c 20 74 68 65 20 | or.popup.......#.Unpost.all.the. |
16840 | 6d 65 6e 75 73 20 75 70 20 74 6f 20 74 68 65 20 74 6f 70 6c 65 76 65 6c 20 6f 6e 65 20 28 62 75 | menus.up.to.the.toplevel.one.(bu |
16860 | 74 20 6e 6f 74 0a 09 20 20 20 20 23 20 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 74 6f 70 2d 6c | t.not......#.including.the.top-l |
16880 | 65 76 65 6c 20 74 6f 72 6e 2d 6f 66 66 20 6f 6e 65 29 20 61 6e 64 20 64 65 61 63 74 69 76 61 74 | evel.torn-off.one).and.deactivat |
168a0 | 65 20 74 68 65 0a 09 20 20 20 20 23 20 74 6f 70 2d 6c 65 76 65 6c 20 74 6f 72 6e 20 6f 66 66 20 | e.the......#.top-level.torn.off. |
168c0 | 6d 65 6e 75 20 69 66 20 74 68 65 72 65 20 69 73 20 6f 6e 65 2e 0a 0a 09 20 20 20 20 77 68 69 6c | menu.if.there.is.one........whil |
168e0 | 65 20 31 20 7b 0a 09 09 73 65 74 20 70 61 72 65 6e 74 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 | e.1.{...set.parent.[winfo.parent |
16900 | 20 24 6d 65 6e 75 5d 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 77 | .$menu]...if.{[string.compare.[w |
16920 | 69 6e 66 6f 20 63 6c 61 73 73 20 24 70 61 72 65 6e 74 5d 20 22 4d 65 6e 75 22 5d 20 5c 0a 09 09 | info.class.$parent]."Menu"].\... |
16940 | 09 7c 7c 20 21 5b 77 69 6e 66 6f 20 69 73 6d 61 70 70 65 64 20 24 70 61 72 65 6e 74 5d 7d 20 7b | .||.![winfo.ismapped.$parent]}.{ |
16960 | 0a 09 09 20 20 20 20 62 72 65 61 6b 0a 09 09 7d 0a 09 09 24 70 61 72 65 6e 74 20 61 63 74 69 76 | .......break...}...$parent.activ |
16980 | 61 74 65 20 6e 6f 6e 65 0a 09 09 24 70 61 72 65 6e 74 20 70 6f 73 74 63 61 73 63 61 64 65 20 6e | ate.none...$parent.postcascade.n |
169a0 | 6f 6e 65 0a 09 09 74 6b 47 65 6e 65 72 61 74 65 4d 65 6e 75 53 65 6c 65 63 74 20 24 70 61 72 65 | one...tkGenerateMenuSelect.$pare |
169c0 | 6e 74 0a 09 09 73 65 74 20 74 79 70 65 20 5b 24 70 61 72 65 6e 74 20 63 67 65 74 20 2d 74 79 70 | nt...set.type.[$parent.cget.-typ |
169e0 | 65 5d 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 79 70 65 20 22 6d 65 | e]...if.{[string.equal.$type."me |
16a00 | 6e 75 62 61 72 22 5d 20 7c 7c 20 5c 0a 09 09 09 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 | nubar"].||.\....[string.equal.$t |
16a20 | 79 70 65 20 22 74 65 61 72 6f 66 66 22 5d 7d 20 7b 0a 09 09 20 20 20 20 62 72 65 61 6b 0a 09 09 | ype."tearoff"]}.{.......break... |
16a40 | 7d 0a 09 09 73 65 74 20 6d 65 6e 75 20 24 70 61 72 65 6e 74 0a 09 20 20 20 20 7d 0a 09 20 20 20 | }...set.menu.$parent......}..... |
16a60 | 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 6d 65 6e 75 20 63 67 65 74 | .if.{[string.compare.[$menu.cget |
16a80 | 20 2d 74 79 70 65 5d 20 22 6d 65 6e 75 62 61 72 22 5d 7d 20 7b 0a 09 09 24 6d 65 6e 75 20 75 6e | .-type]."menubar"]}.{...$menu.un |
16aa0 | 70 6f 73 74 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 69 66 20 7b 28 24 | post......}..}.....}......if.{($ |
16ac0 | 74 6b 50 72 69 76 28 74 65 61 72 6f 66 66 29 20 21 3d 20 30 29 20 7c 7c 20 5b 73 74 72 69 6e 67 | tkPriv(tearoff).!=.0).||.[string |
16ae0 | 20 63 6f 6d 70 61 72 65 20 24 74 6b 50 72 69 76 28 6d 65 6e 75 42 61 72 29 20 22 22 5d 7d 20 7b | .compare.$tkPriv(menuBar).""]}.{ |
16b00 | 0a 20 20 20 20 09 23 20 52 65 6c 65 61 73 65 20 67 72 61 62 2c 20 69 66 20 61 6e 79 2c 20 61 6e | ......#.Release.grab,.if.any,.an |
16b20 | 64 20 72 65 73 74 6f 72 65 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 67 72 61 62 2c 20 69 66 20 | d.restore.the.previous.grab,.if. |
16b40 | 74 68 65 72 65 0a 20 20 20 20 09 23 20 77 61 73 20 6f 6e 65 2e 0a 09 69 66 20 7b 5b 73 74 72 69 | there......#.was.one...if.{[stri |
16b60 | 6e 67 20 63 6f 6d 70 61 72 65 20 24 6d 65 6e 75 20 22 22 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 | ng.compare.$menu.""]}.{......set |
16b80 | 20 67 72 61 62 20 5b 67 72 61 62 20 63 75 72 72 65 6e 74 20 24 6d 65 6e 75 5d 0a 09 20 20 20 20 | .grab.[grab.current.$menu]...... |
16ba0 | 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 67 72 61 62 20 22 22 5d 7d 20 7b | if.{[string.compare.$grab.""]}.{ |
16bc0 | 0a 09 09 67 72 61 62 20 72 65 6c 65 61 73 65 20 24 67 72 61 62 0a 09 20 20 20 20 7d 0a 09 7d 0a | ...grab.release.$grab......}..}. |
16be0 | 09 74 6b 52 65 73 74 6f 72 65 4f 6c 64 47 72 61 62 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 | .tkRestoreOldGrab..if.{[string.c |
16c00 | 6f 6d 70 61 72 65 20 24 74 6b 50 72 69 76 28 6d 65 6e 75 42 61 72 29 20 22 22 5d 7d 20 7b 0a 09 | ompare.$tkPriv(menuBar).""]}.{.. |
16c20 | 20 20 20 20 24 74 6b 50 72 69 76 28 6d 65 6e 75 42 61 72 29 20 63 6f 6e 66 69 67 75 72 65 20 2d | ....$tkPriv(menuBar).configure.- |
16c40 | 63 75 72 73 6f 72 20 24 74 6b 50 72 69 76 28 63 75 72 73 6f 72 29 0a 09 20 20 20 20 73 65 74 20 | cursor.$tkPriv(cursor)......set. |
16c60 | 74 6b 50 72 69 76 28 6d 65 6e 75 42 61 72 29 20 7b 7d 0a 09 7d 0a 09 69 66 20 7b 5b 73 74 72 69 | tkPriv(menuBar).{}..}..if.{[stri |
16c80 | 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 | ng.compare.$tcl_platform(platfor |
16ca0 | 6d 29 20 22 75 6e 69 78 22 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 74 65 | m)."unix"]}.{......set.tkPriv(te |
16cc0 | 61 72 6f 66 66 29 20 30 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4d 62 4d 6f 74 69 6f | aroff).0..}.....}.}..#.tkMbMotio |
16ce0 | 6e 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 68 61 6e 64 6c 65 73 20 6d 6f | n.--.#.This.procedure.handles.mo |
16d00 | 75 73 65 20 6d 6f 74 69 6f 6e 20 65 76 65 6e 74 73 20 69 6e 73 69 64 65 20 6d 65 6e 75 62 75 74 | use.motion.events.inside.menubut |
16d20 | 74 6f 6e 73 2c 20 61 6e 64 0a 23 20 61 6c 73 6f 20 6f 75 74 73 69 64 65 20 6d 65 6e 75 62 75 74 | tons,.and.#.also.outside.menubut |
16d40 | 74 6f 6e 73 20 77 68 65 6e 20 61 20 6d 65 6e 75 62 75 74 74 6f 6e 20 68 61 73 20 61 20 67 72 61 | tons.when.a.menubutton.has.a.gra |
16d60 | 62 20 28 65 2e 67 2e 20 77 68 65 6e 20 61 0a 23 20 6d 65 6e 75 20 73 65 6c 65 63 74 69 6f 6e 20 | b.(e.g..when.a.#.menu.selection. |
16d80 | 6f 70 65 72 61 74 69 6f 6e 20 69 73 20 69 6e 20 70 72 6f 67 72 65 73 73 29 2e 0a 23 0a 23 20 41 | operation.is.in.progress)..#.#.A |
16da0 | 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 | rguments:.#.w.-...The.name.of.th |
16dc0 | 65 20 6d 65 6e 75 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2e 0a 23 20 75 70 44 6f 77 6e 20 2d 20 | e.menubutton.widget..#.upDown.-. |
16de0 | 09 09 22 64 6f 77 6e 22 20 6d 65 61 6e 73 20 62 75 74 74 6f 6e 20 31 20 69 73 20 70 72 65 73 73 | .."down".means.button.1.is.press |
16e00 | 65 64 2c 20 22 75 70 22 20 6d 65 61 6e 73 0a 23 09 09 09 69 74 20 69 73 6e 27 74 2e 0a 23 20 72 | ed,."up".means.#...it.isn't..#.r |
16e20 | 6f 6f 74 78 2c 20 72 6f 6f 74 79 20 2d 09 43 6f 6f 72 64 69 6e 61 74 65 73 20 6f 66 20 6d 6f 75 | ootx,.rooty.-.Coordinates.of.mou |
16e40 | 73 65 2c 20 69 6e 20 28 76 69 72 74 75 61 6c 3f 29 20 72 6f 6f 74 20 77 69 6e 64 6f 77 2e 0a 0a | se,.in.(virtual?).root.window... |
16e60 | 70 72 6f 63 20 74 6b 4d 62 4d 6f 74 69 6f 6e 20 7b 77 20 75 70 44 6f 77 6e 20 72 6f 6f 74 78 20 | proc.tkMbMotion.{w.upDown.rootx. |
16e80 | 72 6f 6f 74 79 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 | rooty}.{.....global.tkPriv...... |
16ea0 | 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 69 6e 4d 65 6e 75 | if.{[string.equal.$tkPriv(inMenu |
16ec0 | 62 75 74 74 6f 6e 29 20 24 77 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 | button).$w]}.{..return.....}.... |
16ee0 | 20 73 65 74 20 6e 65 77 20 5b 77 69 6e 66 6f 20 63 6f 6e 74 61 69 6e 69 6e 67 20 24 72 6f 6f 74 | .set.new.[winfo.containing.$root |
16f00 | 78 20 24 72 6f 6f 74 79 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 | x.$rooty].....if.{[string.compar |
16f20 | 65 20 24 6e 65 77 20 24 74 6b 50 72 69 76 28 69 6e 4d 65 6e 75 62 75 74 74 6f 6e 29 5d 20 5c 0a | e.$new.$tkPriv(inMenubutton)].\. |
16f40 | 09 20 20 20 20 26 26 20 28 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6e 65 77 20 22 22 5d 20 | .....&&.([string.equal.$new.""]. |
16f60 | 5c 0a 09 20 20 20 20 7c 7c 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 6e 66 6f 20 74 | \......||.[string.equal.[winfo.t |
16f80 | 6f 70 6c 65 76 65 6c 20 24 6e 65 77 5d 20 5b 77 69 6e 66 6f 20 74 6f 70 6c 65 76 65 6c 20 24 77 | oplevel.$new].[winfo.toplevel.$w |
16fa0 | 5d 5d 29 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 6b 50 | ]])}.{..if.{[string.compare.$tkP |
16fc0 | 72 69 76 28 69 6e 4d 65 6e 75 62 75 74 74 6f 6e 29 20 22 22 5d 7d 20 7b 0a 09 20 20 20 20 74 6b | riv(inMenubutton).""]}.{......tk |
16fe0 | 4d 62 4c 65 61 76 65 20 24 74 6b 50 72 69 76 28 69 6e 4d 65 6e 75 62 75 74 74 6f 6e 29 0a 09 7d | MbLeave.$tkPriv(inMenubutton)..} |
17000 | 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 6e 65 77 20 22 22 5d 20 5c | ..if.{[string.compare.$new.""].\ |
17020 | 0a 09 09 26 26 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 | ...&&.[string.equal.[winfo.class |
17040 | 20 24 6e 65 77 5d 20 22 4d 65 6e 75 62 75 74 74 6f 6e 22 5d 20 5c 0a 09 09 26 26 20 28 5b 24 6e | .$new]."Menubutton"].\...&&.([$n |
17060 | 65 77 20 63 67 65 74 20 2d 69 6e 64 69 63 61 74 6f 72 6f 6e 5d 20 3d 3d 20 30 29 20 5c 0a 09 09 | ew.cget.-indicatoron].==.0).\... |
17080 | 26 26 20 28 5b 24 77 20 63 67 65 74 20 2d 69 6e 64 69 63 61 74 6f 72 6f 6e 5d 20 3d 3d 20 30 29 | &&.([$w.cget.-indicatoron].==.0) |
170a0 | 7d 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 75 70 44 6f | }.{......if.{[string.equal.$upDo |
170c0 | 77 6e 20 22 64 6f 77 6e 22 5d 7d 20 7b 0a 09 09 74 6b 4d 62 50 6f 73 74 20 24 6e 65 77 20 24 72 | wn."down"]}.{...tkMbPost.$new.$r |
170e0 | 6f 6f 74 78 20 24 72 6f 6f 74 79 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 74 6b 4d 62 | ootx.$rooty......}.else.{...tkMb |
17100 | 45 6e 74 65 72 20 24 6e 65 77 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 | Enter.$new......}..}.....}.}..#. |
17120 | 74 6b 4d 62 42 75 74 74 6f 6e 55 70 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 | tkMbButtonUp.--.#.This.procedure |
17140 | 20 69 73 20 69 6e 76 6f 6b 65 64 20 74 6f 20 68 61 6e 64 6c 65 20 62 75 74 74 6f 6e 20 31 20 72 | .is.invoked.to.handle.button.1.r |
17160 | 65 6c 65 61 73 65 73 20 66 6f 72 20 6d 65 6e 75 62 75 74 74 6f 6e 73 2e 0a 23 20 49 66 20 74 68 | eleases.for.menubuttons..#.If.th |
17180 | 65 20 72 65 6c 65 61 73 65 20 68 61 70 70 65 6e 73 20 69 6e 73 69 64 65 20 74 68 65 20 6d 65 6e | e.release.happens.inside.the.men |
171a0 | 75 62 75 74 74 6f 6e 20 74 68 65 6e 20 6c 65 61 76 65 20 69 74 73 20 6d 65 6e 75 0a 23 20 70 6f | ubutton.then.leave.its.menu.#.po |
171c0 | 73 74 65 64 20 77 69 74 68 20 65 6c 65 6d 65 6e 74 20 30 20 61 63 74 69 76 61 74 65 64 2e 20 20 | sted.with.element.0.activated... |
171e0 | 4f 74 68 65 72 77 69 73 65 2c 20 75 6e 70 6f 73 74 20 74 68 65 20 6d 65 6e 75 2e 0a 23 0a 23 20 | Otherwise,.unpost.the.menu..#.#. |
17200 | 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 | Arguments:.#.w.-...The.name.of.t |
17220 | 68 65 20 6d 65 6e 75 62 75 74 74 6f 6e 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 4d 62 | he.menubutton.widget...proc.tkMb |
17240 | 42 75 74 74 6f 6e 55 70 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 | ButtonUp.w.{.....global.tkPriv.. |
17260 | 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 0a 0a 20 20 20 20 73 65 74 20 | ...global.tcl_platform......set. |
17280 | 6d 65 6e 75 20 5b 24 77 20 63 67 65 74 20 2d 6d 65 6e 75 5d 0a 20 20 20 20 73 65 74 20 74 65 61 | menu.[$w.cget.-menu].....set.tea |
172a0 | 72 6f 66 66 20 5b 65 78 70 72 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 | roff.[expr.{[string.equal.$tcl_p |
172c0 | 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 75 6e 69 78 22 5d 20 7c 7c 20 5c 0a 09 | latform(platform)."unix"].||.\.. |
172e0 | 20 20 20 20 28 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 6d 65 6e 75 20 7b 7d 5d 20 26 | ....([string.compare.$menu.{}].& |
17300 | 26 20 5c 0a 09 20 20 20 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 6d 65 6e 75 20 63 67 | &.\......[string.equal.[$menu.cg |
17320 | 65 74 20 2d 74 79 70 65 5d 20 22 74 65 61 72 6f 66 66 22 5d 29 7d 5d 0a 20 20 20 20 69 66 20 7b | et.-type]."tearoff"])}].....if.{ |
17340 | 28 24 74 65 61 72 6f 66 66 20 21 3d 20 30 29 20 26 26 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c | ($tearoff.!=.0).&&.[string.equal |
17360 | 20 24 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d 62 29 20 24 77 5d 20 5c 0a 09 20 20 20 20 26 26 | .$tkPriv(postedMb).$w].\......&& |
17380 | 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 69 6e 4d 65 6e 75 62 75 74 | .[string.equal.$tkPriv(inMenubut |
173a0 | 74 6f 6e 29 20 24 77 5d 7d 20 7b 0a 09 74 6b 4d 65 6e 75 46 69 72 73 74 45 6e 74 72 79 20 5b 24 | ton).$w]}.{..tkMenuFirstEntry.[$ |
173c0 | 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d 62 29 20 63 67 65 74 20 2d 6d 65 6e 75 5d 0a 20 20 20 | tkPriv(postedMb).cget.-menu].... |
173e0 | 20 7d 20 65 6c 73 65 20 7b 0a 09 74 6b 4d 65 6e 75 55 6e 70 6f 73 74 20 7b 7d 0a 20 20 20 20 7d | .}.else.{..tkMenuUnpost.{}.....} |
17400 | 0a 7d 0a 0a 23 20 74 6b 4d 65 6e 75 4d 6f 74 69 6f 6e 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f | .}..#.tkMenuMotion.--.#.This.pro |
17420 | 63 65 64 75 72 65 20 69 73 20 63 61 6c 6c 65 64 20 74 6f 20 68 61 6e 64 6c 65 20 6d 6f 75 73 65 | cedure.is.called.to.handle.mouse |
17440 | 20 6d 6f 74 69 6f 6e 20 65 76 65 6e 74 73 20 66 6f 72 20 6d 65 6e 75 73 2e 0a 23 20 49 74 20 64 | .motion.events.for.menus..#.It.d |
17460 | 6f 65 73 20 74 77 6f 20 74 68 69 6e 67 73 2e 20 20 46 69 72 73 74 2c 20 69 74 20 72 65 73 65 74 | oes.two.things...First,.it.reset |
17480 | 73 20 74 68 65 20 61 63 74 69 76 65 20 65 6c 65 6d 65 6e 74 20 69 6e 20 74 68 65 0a 23 20 6d 65 | s.the.active.element.in.the.#.me |
174a0 | 6e 75 2c 20 69 66 20 74 68 65 20 6d 6f 75 73 65 20 69 73 20 6f 76 65 72 20 74 68 65 20 6d 65 6e | nu,.if.the.mouse.is.over.the.men |
174c0 | 75 2e 20 20 53 65 63 6f 6e 64 2c 20 69 66 20 61 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 0a 23 20 | u...Second,.if.a.mouse.button.#. |
174e0 | 69 73 20 64 6f 77 6e 2c 20 69 74 20 70 6f 73 74 73 20 61 6e 64 20 75 6e 70 6f 73 74 73 20 63 61 | is.down,.it.posts.and.unposts.ca |
17500 | 73 63 61 64 65 20 65 6e 74 72 69 65 73 20 74 6f 20 6d 61 74 63 68 20 74 68 65 20 6d 6f 75 73 65 | scade.entries.to.match.the.mouse |
17520 | 0a 23 20 70 6f 73 69 74 69 6f 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 6d 65 | .#.position..#.#.Arguments:.#.me |
17540 | 6e 75 20 2d 09 09 54 68 65 20 6d 65 6e 75 20 77 69 6e 64 6f 77 2e 0a 23 20 78 20 2d 09 09 09 54 | nu.-..The.menu.window..#.x.-...T |
17560 | 68 65 20 78 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 6d 6f 75 73 65 2e 0a 23 20 79 20 | he.x.position.of.the.mouse..#.y. |
17580 | 2d 09 09 09 54 68 65 20 79 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 6d 6f 75 73 65 2e | -...The.y.position.of.the.mouse. |
175a0 | 0a 23 20 73 74 61 74 65 20 2d 09 09 4d 6f 64 69 66 69 65 72 20 73 74 61 74 65 20 28 74 65 6c 6c | .#.state.-..Modifier.state.(tell |
175c0 | 73 20 77 68 65 74 68 65 72 20 62 75 74 74 6f 6e 73 20 61 72 65 20 64 6f 77 6e 29 2e 0a 0a 70 72 | s.whether.buttons.are.down)...pr |
175e0 | 6f 63 20 74 6b 4d 65 6e 75 4d 6f 74 69 6f 6e 20 7b 6d 65 6e 75 20 78 20 79 20 73 74 61 74 65 7d | oc.tkMenuMotion.{menu.x.y.state} |
17600 | 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 5b 73 74 | .{.....global.tkPriv.....if.{[st |
17620 | 72 69 6e 67 20 65 71 75 61 6c 20 24 6d 65 6e 75 20 24 74 6b 50 72 69 76 28 77 69 6e 64 6f 77 29 | ring.equal.$menu.$tkPriv(window) |
17640 | 5d 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 6d 65 6e 75 20 63 | ]}.{..if.{[string.equal.[$menu.c |
17660 | 67 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 6e 75 62 61 72 22 5d 7d 20 7b 0a 09 20 20 20 20 69 66 | get.-type]."menubar"]}.{......if |
17680 | 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 6b 50 72 69 76 28 66 6f 63 75 73 29 5d 20 26 26 | .{[info.exists.tkPriv(focus)].&& |
176a0 | 20 5c 0a 09 09 20 20 20 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 6d 65 6e 75 20 24 | .\.......[string.compare.$menu.$ |
176c0 | 74 6b 50 72 69 76 28 66 6f 63 75 73 29 5d 7d 20 7b 0a 09 09 24 6d 65 6e 75 20 61 63 74 69 76 61 | tkPriv(focus)]}.{...$menu.activa |
176e0 | 74 65 20 40 24 78 2c 24 79 0a 09 09 74 6b 47 65 6e 65 72 61 74 65 4d 65 6e 75 53 65 6c 65 63 74 | te.@$x,$y...tkGenerateMenuSelect |
17700 | 20 24 6d 65 6e 75 0a 09 20 20 20 20 7d 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 24 6d 65 | .$menu......}..}.else.{......$me |
17720 | 6e 75 20 61 63 74 69 76 61 74 65 20 40 24 78 2c 24 79 0a 09 20 20 20 20 74 6b 47 65 6e 65 72 61 | nu.activate.@$x,$y......tkGenera |
17740 | 74 65 4d 65 6e 75 53 65 6c 65 63 74 20 24 6d 65 6e 75 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 | teMenuSelect.$menu..}.....}..... |
17760 | 69 66 20 7b 28 24 73 74 61 74 65 20 26 20 30 78 31 66 30 30 29 20 21 3d 20 30 7d 20 7b 0a 09 24 | if.{($state.&.0x1f00).!=.0}.{..$ |
17780 | 6d 65 6e 75 20 70 6f 73 74 63 61 73 63 61 64 65 20 61 63 74 69 76 65 0a 20 20 20 20 7d 0a 7d 0a | menu.postcascade.active.....}.}. |
177a0 | 0a 23 20 74 6b 4d 65 6e 75 42 75 74 74 6f 6e 44 6f 77 6e 20 2d 2d 0a 23 20 48 61 6e 64 6c 65 73 | .#.tkMenuButtonDown.--.#.Handles |
177c0 | 20 62 75 74 74 6f 6e 20 70 72 65 73 73 65 73 20 69 6e 20 6d 65 6e 75 73 2e 20 20 54 68 65 72 65 | .button.presses.in.menus...There |
177e0 | 20 61 72 65 20 61 20 63 6f 75 70 6c 65 20 6f 66 20 74 72 69 63 6b 79 20 74 68 69 6e 67 73 0a 23 | .are.a.couple.of.tricky.things.# |
17800 | 20 68 65 72 65 3a 0a 23 20 31 2e 20 43 68 61 6e 67 65 20 74 68 65 20 70 6f 73 74 65 64 20 63 61 | .here:.#.1..Change.the.posted.ca |
17820 | 73 63 61 64 65 20 65 6e 74 72 79 20 28 69 66 20 61 6e 79 29 20 74 6f 20 6d 61 74 63 68 20 74 68 | scade.entry.(if.any).to.match.th |
17840 | 65 20 6d 6f 75 73 65 20 70 6f 73 69 74 69 6f 6e 2e 0a 23 20 32 2e 20 49 66 20 74 68 65 72 65 20 | e.mouse.position..#.2..If.there. |
17860 | 69 73 20 61 20 70 6f 73 74 65 64 20 6d 65 6e 75 62 75 74 74 6f 6e 2c 20 6d 75 73 74 20 67 72 61 | is.a.posted.menubutton,.must.gra |
17880 | 62 20 74 6f 20 74 68 65 20 6d 65 6e 75 62 75 74 74 6f 6e 3b 20 20 74 68 69 73 0a 23 20 20 20 20 | b.to.the.menubutton;..this.#.... |
178a0 | 6f 76 65 72 72 72 69 64 65 73 20 74 68 65 20 69 6d 70 6c 69 63 69 74 20 67 72 61 62 20 6f 6e 20 | overrrides.the.implicit.grab.on. |
178c0 | 62 75 74 74 6f 6e 20 70 72 65 73 73 2c 20 73 6f 20 74 68 61 74 20 74 68 65 20 6d 65 6e 75 0a 23 | button.press,.so.that.the.menu.# |
178e0 | 20 20 20 20 62 75 74 74 6f 6e 20 63 61 6e 20 74 72 61 63 6b 20 6d 6f 75 73 65 20 6d 6f 74 69 6f | ....button.can.track.mouse.motio |
17900 | 6e 73 20 6f 76 65 72 20 6f 74 68 65 72 20 6d 65 6e 75 62 75 74 74 6f 6e 73 20 61 6e 64 20 63 68 | ns.over.other.menubuttons.and.ch |
17920 | 61 6e 67 65 0a 23 20 20 20 20 74 68 65 20 70 6f 73 74 65 64 20 6d 65 6e 75 2e 0a 23 20 33 2e 20 | ange.#....the.posted.menu..#.3.. |
17940 | 49 66 20 74 68 65 72 65 27 73 20 6e 6f 20 70 6f 73 74 65 64 20 6d 65 6e 75 62 75 74 74 6f 6e 20 | If.there's.no.posted.menubutton. |
17960 | 28 65 2e 67 2e 20 62 65 63 61 75 73 65 20 77 65 27 72 65 20 61 20 74 6f 72 6e 2d 6f 66 66 20 6d | (e.g..because.we're.a.torn-off.m |
17980 | 65 6e 75 0a 23 20 20 20 20 6f 72 20 6f 6e 65 20 6f 66 20 69 74 73 20 64 65 73 63 65 6e 64 61 6e | enu.#....or.one.of.its.descendan |
179a0 | 74 73 29 20 6d 75 73 74 20 67 72 61 62 20 74 6f 20 74 68 65 20 74 6f 70 2d 6c 65 76 65 6c 20 6d | ts).must.grab.to.the.top-level.m |
179c0 | 65 6e 75 20 73 6f 20 74 68 61 74 0a 23 20 20 20 20 77 65 20 63 61 6e 20 74 72 61 63 6b 20 6d 6f | enu.so.that.#....we.can.track.mo |
179e0 | 75 73 65 20 6d 6f 74 69 6f 6e 73 20 61 63 72 6f 73 73 20 74 68 65 20 65 6e 74 69 72 65 20 6d 65 | use.motions.across.the.entire.me |
17a00 | 6e 75 20 68 69 65 72 61 72 63 68 79 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 6d | nu.hierarchy..#.#.Arguments:.#.m |
17a20 | 65 6e 75 20 2d 09 09 54 68 65 20 6d 65 6e 75 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b | enu.-..The.menu.window...proc.tk |
17a40 | 4d 65 6e 75 42 75 74 74 6f 6e 44 6f 77 6e 20 6d 65 6e 75 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c | MenuButtonDown.menu.{.....global |
17a60 | 20 74 6b 50 72 69 76 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 0a | .tkPriv.....global.tcl_platform. |
17a80 | 0a 20 20 20 20 69 66 20 7b 21 5b 77 69 6e 66 6f 20 76 69 65 77 61 62 6c 65 20 24 6d 65 6e 75 5d | .....if.{![winfo.viewable.$menu] |
17aa0 | 7d 20 7b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 24 6d 65 | }.{.........return.....}.....$me |
17ac0 | 6e 75 20 70 6f 73 74 63 61 73 63 61 64 65 20 61 63 74 69 76 65 0a 20 20 20 20 69 66 20 7b 5b 73 | nu.postcascade.active.....if.{[s |
17ae0 | 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d 62 29 20 | tring.compare.$tkPriv(postedMb). |
17b00 | 22 22 5d 7d 20 7b 0a 09 67 72 61 62 20 2d 67 6c 6f 62 61 6c 20 24 74 6b 50 72 69 76 28 70 6f 73 | ""]}.{..grab.-global.$tkPriv(pos |
17b20 | 74 65 64 4d 62 29 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 77 68 69 6c 65 20 7b 5b 73 74 72 | tedMb).....}.else.{..while.{[str |
17b40 | 69 6e 67 20 65 71 75 61 6c 20 5b 24 6d 65 6e 75 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 6e 6f | ing.equal.[$menu.cget.-type]."no |
17b60 | 72 6d 61 6c 22 5d 20 5c 0a 09 09 26 26 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 6e | rmal"].\...&&.[string.equal.[win |
17b80 | 66 6f 20 63 6c 61 73 73 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 6d 65 6e 75 5d 5d 20 22 | fo.class.[winfo.parent.$menu]]." |
17ba0 | 4d 65 6e 75 22 5d 20 5c 0a 09 09 26 26 20 5b 77 69 6e 66 6f 20 69 73 6d 61 70 70 65 64 20 5b 77 | Menu"].\...&&.[winfo.ismapped.[w |
17bc0 | 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 6d 65 6e 75 5d 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 | info.parent.$menu]]}.{......set. |
17be0 | 6d 65 6e 75 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 6d 65 6e 75 5d 0a 09 7d 0a 0a 09 69 | menu.[winfo.parent.$menu]..}...i |
17c00 | 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 6d 65 6e 75 42 61 72 | f.{[string.equal.$tkPriv(menuBar |
17c20 | 29 20 7b 7d 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 6d 65 6e 75 42 61 72 | ).{}]}.{......set.tkPriv(menuBar |
17c40 | 29 20 24 6d 65 6e 75 0a 09 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 63 75 72 73 6f 72 29 20 | ).$menu......set.tkPriv(cursor). |
17c60 | 5b 24 6d 65 6e 75 20 63 67 65 74 20 2d 63 75 72 73 6f 72 5d 0a 09 20 20 20 20 24 6d 65 6e 75 20 | [$menu.cget.-cursor]......$menu. |
17c80 | 63 6f 6e 66 69 67 75 72 65 20 2d 63 75 72 73 6f 72 20 61 72 72 6f 77 0a 20 20 20 20 20 20 20 20 | configure.-cursor.arrow......... |
17ca0 | 7d 0a 0a 09 23 20 44 6f 6e 27 74 20 75 70 64 61 74 65 20 67 72 61 62 20 69 6e 66 6f 72 6d 61 74 | }...#.Don't.update.grab.informat |
17cc0 | 69 6f 6e 20 69 66 20 74 68 65 20 67 72 61 62 20 77 69 6e 64 6f 77 20 69 73 6e 27 74 20 63 68 61 | ion.if.the.grab.window.isn't.cha |
17ce0 | 6e 67 69 6e 67 2e 0a 09 23 20 4f 74 68 65 72 77 69 73 65 2c 20 77 65 27 6c 6c 20 67 65 74 20 61 | nging...#.Otherwise,.we'll.get.a |
17d00 | 6e 20 65 72 72 6f 72 20 77 68 65 6e 20 77 65 20 75 6e 70 6f 73 74 20 74 68 65 20 6d 65 6e 75 73 | n.error.when.we.unpost.the.menus |
17d20 | 20 61 6e 64 0a 09 23 20 72 65 73 74 6f 72 65 20 74 68 65 20 67 72 61 62 2c 20 73 69 6e 63 65 20 | .and..#.restore.the.grab,.since. |
17d40 | 74 68 65 20 6f 6c 64 20 67 72 61 62 20 77 69 6e 64 6f 77 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 | the.old.grab.window.will.not.be. |
17d60 | 76 69 65 77 61 62 6c 65 0a 09 23 20 61 6e 79 6d 6f 72 65 2e 0a 0a 09 69 66 20 7b 5b 73 74 72 69 | viewable..#.anymore....if.{[stri |
17d80 | 6e 67 20 63 6f 6d 70 61 72 65 20 24 6d 65 6e 75 20 5b 67 72 61 62 20 63 75 72 72 65 6e 74 20 24 | ng.compare.$menu.[grab.current.$ |
17da0 | 6d 65 6e 75 5d 5d 7d 20 7b 0a 09 20 20 20 20 74 6b 53 61 76 65 47 72 61 62 49 6e 66 6f 20 24 6d | menu]]}.{......tkSaveGrabInfo.$m |
17dc0 | 65 6e 75 0a 09 7d 0a 0a 09 23 20 4d 75 73 74 20 72 65 2d 67 72 61 62 20 65 76 65 6e 20 69 66 20 | enu..}...#.Must.re-grab.even.if. |
17de0 | 74 68 65 20 67 72 61 62 20 77 69 6e 64 6f 77 20 68 61 73 6e 27 74 20 63 68 61 6e 67 65 64 2c 20 | the.grab.window.hasn't.changed,. |
17e00 | 69 6e 20 6f 72 64 65 72 0a 09 23 20 74 6f 20 72 65 6c 65 61 73 65 20 74 68 65 20 69 6d 70 6c 69 | in.order..#.to.release.the.impli |
17e20 | 63 69 74 20 67 72 61 62 20 66 72 6f 6d 20 74 68 65 20 62 75 74 74 6f 6e 20 70 72 65 73 73 2e 0a | cit.grab.from.the.button.press.. |
17e40 | 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 | ..if.{[string.equal.$tcl_platfor |
17e60 | 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 75 6e 69 78 22 5d 7d 20 7b 0a 09 20 20 20 20 67 72 61 62 | m(platform)."unix"]}.{......grab |
17e80 | 20 2d 67 6c 6f 62 61 6c 20 24 6d 65 6e 75 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4d | .-global.$menu..}.....}.}..#.tkM |
17ea0 | 65 6e 75 4c 65 61 76 65 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 | enuLeave.--.#.This.procedure.is. |
17ec0 | 69 6e 76 6f 6b 65 64 20 74 6f 20 68 61 6e 64 6c 65 20 4c 65 61 76 65 20 65 76 65 6e 74 73 20 66 | invoked.to.handle.Leave.events.f |
17ee0 | 6f 72 20 61 20 6d 65 6e 75 2e 20 20 49 74 0a 23 20 64 65 61 63 74 69 76 61 74 65 73 20 65 76 65 | or.a.menu...It.#.deactivates.eve |
17f00 | 72 79 74 68 69 6e 67 20 75 6e 6c 65 73 73 20 74 68 65 20 61 63 74 69 76 65 20 65 6c 65 6d 65 6e | rything.unless.the.active.elemen |
17f20 | 74 20 69 73 20 61 20 63 61 73 63 61 64 65 20 65 6c 65 6d 65 6e 74 0a 23 20 61 6e 64 20 74 68 65 | t.is.a.cascade.element.#.and.the |
17f40 | 20 6d 6f 75 73 65 20 69 73 20 6e 6f 77 20 6f 76 65 72 20 74 68 65 20 73 75 62 6d 65 6e 75 2e 0a | .mouse.is.now.over.the.submenu.. |
17f60 | 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 6d 65 6e 75 20 2d 09 09 54 68 65 20 6d 65 6e | #.#.Arguments:.#.menu.-..The.men |
17f80 | 75 20 77 69 6e 64 6f 77 2e 0a 23 20 72 6f 6f 74 78 2c 20 72 6f 6f 74 79 20 2d 09 52 6f 6f 74 20 | u.window..#.rootx,.rooty.-.Root. |
17fa0 | 63 6f 6f 72 64 69 6e 61 74 65 73 20 6f 66 20 6d 6f 75 73 65 2e 0a 23 20 73 74 61 74 65 20 2d 09 | coordinates.of.mouse..#.state.-. |
17fc0 | 09 4d 6f 64 69 66 69 65 72 20 73 74 61 74 65 2e 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e 75 4c 65 61 | .Modifier.state...proc.tkMenuLea |
17fe0 | 76 65 20 7b 6d 65 6e 75 20 72 6f 6f 74 78 20 72 6f 6f 74 79 20 73 74 61 74 65 7d 20 7b 0a 20 20 | ve.{menu.rootx.rooty.state}.{... |
18000 | 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 77 | ..global.tkPriv.....set.tkPriv(w |
18020 | 69 6e 64 6f 77 29 20 7b 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 | indow).{}.....if.{[string.equal. |
18040 | 5b 24 6d 65 6e 75 20 69 6e 64 65 78 20 61 63 74 69 76 65 5d 20 22 6e 6f 6e 65 22 5d 7d 20 7b 0a | [$menu.index.active]."none"]}.{. |
18060 | 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 | .return.....}.....if.{[string.eq |
18080 | 75 61 6c 20 5b 24 6d 65 6e 75 20 74 79 70 65 20 61 63 74 69 76 65 5d 20 22 63 61 73 63 61 64 65 | ual.[$menu.type.active]."cascade |
180a0 | 22 5d 0a 20 20 20 20 20 20 20 20 20 20 26 26 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 | "]...........&&.[string.equal.[w |
180c0 | 69 6e 66 6f 20 63 6f 6e 74 61 69 6e 69 6e 67 20 24 72 6f 6f 74 78 20 24 72 6f 6f 74 79 5d 20 5c | info.containing.$rootx.$rooty].\ |
180e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5b 24 6d 65 6e 75 20 65 6e 74 72 79 63 | ...................[$menu.entryc |
18100 | 67 65 74 20 61 63 74 69 76 65 20 2d 6d 65 6e 75 5d 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 | get.active.-menu]]}.{..return... |
18120 | 20 20 7d 0a 20 20 20 20 24 6d 65 6e 75 20 61 63 74 69 76 61 74 65 20 6e 6f 6e 65 0a 20 20 20 20 | ..}.....$menu.activate.none..... |
18140 | 74 6b 47 65 6e 65 72 61 74 65 4d 65 6e 75 53 65 6c 65 63 74 20 24 6d 65 6e 75 0a 7d 0a 0a 23 20 | tkGenerateMenuSelect.$menu.}..#. |
18160 | 74 6b 4d 65 6e 75 49 6e 76 6f 6b 65 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 | tkMenuInvoke.--.#.This.procedure |
18180 | 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 62 75 74 74 6f 6e 20 31 20 69 73 20 72 65 6c | .is.invoked.when.button.1.is.rel |
181a0 | 65 61 73 65 64 20 6f 76 65 72 20 61 20 6d 65 6e 75 2e 0a 23 20 49 74 20 69 6e 76 6f 6b 65 73 20 | eased.over.a.menu..#.It.invokes. |
181c0 | 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 6d 65 6e 75 20 61 63 74 69 6f 6e 20 61 6e 64 20 | the.appropriate.menu.action.and. |
181e0 | 75 6e 70 6f 73 74 73 20 74 68 65 20 6d 65 6e 75 20 69 66 0a 23 20 69 74 20 63 61 6d 65 20 66 72 | unposts.the.menu.if.#.it.came.fr |
18200 | 6f 6d 20 61 20 6d 65 6e 75 62 75 74 74 6f 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a | om.a.menubutton..#.#.Arguments:. |
18220 | 23 20 77 20 2d 09 09 09 4e 61 6d 65 20 6f 66 20 74 68 65 20 6d 65 6e 75 20 77 69 64 67 65 74 2e | #.w.-...Name.of.the.menu.widget. |
18240 | 0a 23 20 62 75 74 74 6f 6e 52 65 6c 65 61 73 65 20 2d 09 31 20 6d 65 61 6e 73 20 74 68 69 73 20 | .#.buttonRelease.-.1.means.this. |
18260 | 70 72 6f 63 65 64 75 72 65 20 69 73 20 63 61 6c 6c 65 64 20 62 65 63 61 75 73 65 20 6f 66 0a 23 | procedure.is.called.because.of.# |
18280 | 09 09 09 61 20 62 75 74 74 6f 6e 20 72 65 6c 65 61 73 65 3b 20 20 30 20 6d 65 61 6e 73 20 62 65 | ...a.button.release;..0.means.be |
182a0 | 63 61 75 73 65 20 6f 66 20 6b 65 79 73 74 72 6f 6b 65 2e 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e 75 | cause.of.keystroke...proc.tkMenu |
182c0 | 49 6e 76 6f 6b 65 20 7b 77 20 62 75 74 74 6f 6e 52 65 6c 65 61 73 65 7d 20 7b 0a 20 20 20 20 67 | Invoke.{w.buttonRelease}.{.....g |
182e0 | 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 69 66 20 7b 24 62 75 74 74 6f 6e 52 65 6c | lobal.tkPriv......if.{$buttonRel |
18300 | 65 61 73 65 20 26 26 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 77 69 | ease.&&.[string.equal.$tkPriv(wi |
18320 | 6e 64 6f 77 29 20 7b 7d 5d 7d 20 7b 0a 09 23 20 4d 6f 75 73 65 20 77 61 73 20 70 72 65 73 73 65 | ndow).{}]}.{..#.Mouse.was.presse |
18340 | 64 20 6f 76 65 72 20 61 20 6d 65 6e 75 20 77 69 74 68 6f 75 74 20 61 20 6d 65 6e 75 20 62 75 74 | d.over.a.menu.without.a.menu.but |
18360 | 74 6f 6e 2c 20 74 68 65 6e 0a 09 23 20 64 72 61 67 67 65 64 20 6f 66 66 20 74 68 65 20 6d 65 6e | ton,.then..#.dragged.off.the.men |
18380 | 75 20 28 70 6f 73 73 69 62 6c 79 20 77 69 74 68 20 61 20 63 61 73 63 61 64 65 20 70 6f 73 74 65 | u.(possibly.with.a.cascade.poste |
183a0 | 64 29 20 61 6e 64 0a 09 23 20 72 65 6c 65 61 73 65 64 2e 20 20 55 6e 70 6f 73 74 20 65 76 65 72 | d).and..#.released...Unpost.ever |
183c0 | 79 74 68 69 6e 67 20 61 6e 64 20 71 75 69 74 2e 0a 0a 09 24 77 20 70 6f 73 74 63 61 73 63 61 64 | ything.and.quit....$w.postcascad |
183e0 | 65 20 6e 6f 6e 65 0a 09 24 77 20 61 63 74 69 76 61 74 65 20 6e 6f 6e 65 0a 09 65 76 65 6e 74 20 | e.none..$w.activate.none..event. |
18400 | 67 65 6e 65 72 61 74 65 20 24 77 20 3c 3c 4d 65 6e 75 53 65 6c 65 63 74 3e 3e 0a 09 74 6b 4d 65 | generate.$w.<<MenuSelect>>..tkMe |
18420 | 6e 75 55 6e 70 6f 73 74 20 24 77 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 | nuUnpost.$w..return.....}.....if |
18440 | 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 74 79 70 65 20 61 63 74 69 76 65 5d | .{[string.equal.[$w.type.active] |
18460 | 20 22 63 61 73 63 61 64 65 22 5d 7d 20 7b 0a 09 24 77 20 70 6f 73 74 63 61 73 63 61 64 65 20 61 | ."cascade"]}.{..$w.postcascade.a |
18480 | 63 74 69 76 65 0a 09 73 65 74 20 6d 65 6e 75 20 5b 24 77 20 65 6e 74 72 79 63 67 65 74 20 61 63 | ctive..set.menu.[$w.entrycget.ac |
184a0 | 74 69 76 65 20 2d 6d 65 6e 75 5d 0a 09 74 6b 4d 65 6e 75 46 69 72 73 74 45 6e 74 72 79 20 24 6d | tive.-menu]..tkMenuFirstEntry.$m |
184c0 | 65 6e 75 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 | enu.....}.elseif.{[string.equal. |
184e0 | 5b 24 77 20 74 79 70 65 20 61 63 74 69 76 65 5d 20 22 74 65 61 72 6f 66 66 22 5d 7d 20 7b 0a 09 | [$w.type.active]."tearoff"]}.{.. |
18500 | 74 6b 4d 65 6e 75 55 6e 70 6f 73 74 20 24 77 0a 09 74 6b 54 65 61 72 4f 66 66 4d 65 6e 75 20 24 | tkMenuUnpost.$w..tkTearOffMenu.$ |
18520 | 77 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 | w.....}.elseif.{[string.equal.[$ |
18540 | 77 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 6e 75 62 61 72 22 5d 7d 20 7b 0a 09 24 77 20 | w.cget.-type]."menubar"]}.{..$w. |
18560 | 70 6f 73 74 63 61 73 63 61 64 65 20 6e 6f 6e 65 0a 09 24 77 20 61 63 74 69 76 61 74 65 20 6e 6f | postcascade.none..$w.activate.no |
18580 | 6e 65 0a 09 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 20 24 77 20 3c 3c 4d 65 6e 75 53 65 6c 65 | ne..event.generate.$w.<<MenuSele |
185a0 | 63 74 3e 3e 0a 09 74 6b 4d 65 6e 75 55 6e 70 6f 73 74 20 24 77 0a 20 20 20 20 7d 20 65 6c 73 65 | ct>>..tkMenuUnpost.$w.....}.else |
185c0 | 20 7b 0a 09 74 6b 4d 65 6e 75 55 6e 70 6f 73 74 20 24 77 0a 09 75 70 6c 65 76 65 6c 20 23 30 20 | .{..tkMenuUnpost.$w..uplevel.#0. |
185e0 | 5b 6c 69 73 74 20 24 77 20 69 6e 76 6f 6b 65 20 61 63 74 69 76 65 5d 0a 20 20 20 20 7d 0a 7d 0a | [list.$w.invoke.active].....}.}. |
18600 | 0a 23 20 74 6b 4d 65 6e 75 45 73 63 61 70 65 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 | .#.tkMenuEscape.--.#.This.proced |
18620 | 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 66 6f 72 20 74 68 65 20 43 61 6e 63 65 6c 20 28 6f | ure.is.invoked.for.the.Cancel.(o |
18640 | 72 20 45 73 63 61 70 65 29 20 6b 65 79 2e 20 20 49 74 20 75 6e 70 6f 73 74 73 0a 23 20 74 68 65 | r.Escape).key...It.unposts.#.the |
18660 | 20 67 69 76 65 6e 20 6d 65 6e 75 20 61 6e 64 2c 20 69 66 20 69 74 20 69 73 20 74 68 65 20 74 6f | .given.menu.and,.if.it.is.the.to |
18680 | 70 2d 6c 65 76 65 6c 20 6d 65 6e 75 20 66 6f 72 20 61 20 6d 65 6e 75 20 62 75 74 74 6f 6e 2c 0a | p-level.menu.for.a.menu.button,. |
186a0 | 23 20 75 6e 70 6f 73 74 73 20 74 68 65 20 6d 65 6e 75 20 62 75 74 74 6f 6e 20 61 73 20 77 65 6c | #.unposts.the.menu.button.as.wel |
186c0 | 6c 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 6d 65 6e 75 20 2d 09 09 4e 61 6d 65 | l..#.#.Arguments:.#.menu.-..Name |
186e0 | 20 6f 66 20 74 68 65 20 6d 65 6e 75 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e | .of.the.menu.window...proc.tkMen |
18700 | 75 45 73 63 61 70 65 20 6d 65 6e 75 20 7b 0a 20 20 20 20 73 65 74 20 70 61 72 65 6e 74 20 5b 77 | uEscape.menu.{.....set.parent.[w |
18720 | 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 6d 65 6e 75 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 | info.parent.$menu].....if.{[stri |
18740 | 6e 67 20 63 6f 6d 70 61 72 65 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 24 70 61 72 65 6e 74 5d | ng.compare.[winfo.class.$parent] |
18760 | 20 22 4d 65 6e 75 22 5d 7d 20 7b 0a 09 74 6b 4d 65 6e 75 55 6e 70 6f 73 74 20 24 6d 65 6e 75 0a | ."Menu"]}.{..tkMenuUnpost.$menu. |
18780 | 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 70 61 | ....}.elseif.{[string.equal.[$pa |
187a0 | 72 65 6e 74 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 6e 75 62 61 72 22 5d 7d 20 7b 0a 09 | rent.cget.-type]."menubar"]}.{.. |
187c0 | 74 6b 4d 65 6e 75 55 6e 70 6f 73 74 20 24 6d 65 6e 75 0a 09 74 6b 52 65 73 74 6f 72 65 4f 6c 64 | tkMenuUnpost.$menu..tkRestoreOld |
187e0 | 47 72 61 62 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 74 6b 4d 65 6e 75 4e 65 78 74 4d 65 6e | Grab.....}.else.{..tkMenuNextMen |
18800 | 75 20 24 6d 65 6e 75 20 6c 65 66 74 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 54 68 65 20 66 6f 6c 6c | u.$menu.left.....}.}..#.The.foll |
18820 | 6f 77 69 6e 67 20 72 6f 75 74 69 6e 65 73 20 68 61 6e 64 6c 65 20 61 72 72 6f 77 20 6b 65 79 73 | owing.routines.handle.arrow.keys |
18840 | 2e 20 41 72 72 6f 77 20 6b 65 79 73 20 62 65 68 61 76 65 0a 23 20 64 69 66 66 65 72 65 6e 74 6c | ..Arrow.keys.behave.#.differentl |
18860 | 79 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 65 74 68 65 72 20 74 68 65 20 6d 65 6e 75 20 | y.depending.on.whether.the.menu. |
18880 | 69 73 20 61 20 6d 65 6e 75 20 62 61 72 20 6f 72 20 6e 6f 74 2e 0a 0a 70 72 6f 63 20 74 6b 4d 65 | is.a.menu.bar.or.not...proc.tkMe |
188a0 | 6e 75 55 70 41 72 72 6f 77 20 7b 6d 65 6e 75 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 | nuUpArrow.{menu}.{.....if.{[stri |
188c0 | 6e 67 20 65 71 75 61 6c 20 5b 24 6d 65 6e 75 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 6e | ng.equal.[$menu.cget.-type]."men |
188e0 | 75 62 61 72 22 5d 7d 20 7b 0a 09 74 6b 4d 65 6e 75 4e 65 78 74 4d 65 6e 75 20 24 6d 65 6e 75 20 | ubar"]}.{..tkMenuNextMenu.$menu. |
18900 | 6c 65 66 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 74 6b 4d 65 6e 75 4e 65 78 74 45 6e 74 | left.....}.else.{..tkMenuNextEnt |
18920 | 72 79 20 24 6d 65 6e 75 20 2d 31 0a 20 20 20 20 7d 0a 7d 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e 75 | ry.$menu.-1.....}.}..proc.tkMenu |
18940 | 44 6f 77 6e 41 72 72 6f 77 20 7b 6d 65 6e 75 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 | DownArrow.{menu}.{.....if.{[stri |
18960 | 6e 67 20 65 71 75 61 6c 20 5b 24 6d 65 6e 75 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 6e | ng.equal.[$menu.cget.-type]."men |
18980 | 75 62 61 72 22 5d 7d 20 7b 0a 09 74 6b 4d 65 6e 75 4e 65 78 74 4d 65 6e 75 20 24 6d 65 6e 75 20 | ubar"]}.{..tkMenuNextMenu.$menu. |
189a0 | 72 69 67 68 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 74 6b 4d 65 6e 75 4e 65 78 74 45 6e | right.....}.else.{..tkMenuNextEn |
189c0 | 74 72 79 20 24 6d 65 6e 75 20 31 0a 20 20 20 20 7d 0a 7d 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e 75 | try.$menu.1.....}.}..proc.tkMenu |
189e0 | 4c 65 66 74 41 72 72 6f 77 20 7b 6d 65 6e 75 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 | LeftArrow.{menu}.{.....if.{[stri |
18a00 | 6e 67 20 65 71 75 61 6c 20 5b 24 6d 65 6e 75 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 6e | ng.equal.[$menu.cget.-type]."men |
18a20 | 75 62 61 72 22 5d 7d 20 7b 0a 09 74 6b 4d 65 6e 75 4e 65 78 74 45 6e 74 72 79 20 24 6d 65 6e 75 | ubar"]}.{..tkMenuNextEntry.$menu |
18a40 | 20 2d 31 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 74 6b 4d 65 6e 75 4e 65 78 74 4d 65 6e 75 | .-1.....}.else.{..tkMenuNextMenu |
18a60 | 20 24 6d 65 6e 75 20 6c 65 66 74 0a 20 20 20 20 7d 0a 7d 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e 75 | .$menu.left.....}.}..proc.tkMenu |
18a80 | 52 69 67 68 74 41 72 72 6f 77 20 7b 6d 65 6e 75 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 | RightArrow.{menu}.{.....if.{[str |
18aa0 | 69 6e 67 20 65 71 75 61 6c 20 5b 24 6d 65 6e 75 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 | ing.equal.[$menu.cget.-type]."me |
18ac0 | 6e 75 62 61 72 22 5d 7d 20 7b 0a 09 74 6b 4d 65 6e 75 4e 65 78 74 45 6e 74 72 79 20 24 6d 65 6e | nubar"]}.{..tkMenuNextEntry.$men |
18ae0 | 75 20 31 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 74 6b 4d 65 6e 75 4e 65 78 74 4d 65 6e 75 | u.1.....}.else.{..tkMenuNextMenu |
18b00 | 20 24 6d 65 6e 75 20 72 69 67 68 74 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4d 65 6e 75 4e 65 | .$menu.right.....}.}..#.tkMenuNe |
18b20 | 78 74 4d 65 6e 75 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e | xtMenu.--.#.This.procedure.is.in |
18b40 | 76 6f 6b 65 64 20 74 6f 20 68 61 6e 64 6c 65 20 22 6c 65 66 74 22 20 61 6e 64 20 22 72 69 67 68 | voked.to.handle."left".and."righ |
18b60 | 74 22 20 74 72 61 76 65 72 73 61 6c 0a 23 20 6d 6f 74 69 6f 6e 73 20 69 6e 20 6d 65 6e 75 73 2e | t".traversal.#.motions.in.menus. |
18b80 | 20 20 49 74 20 74 72 61 76 65 72 73 65 73 20 74 6f 20 74 68 65 20 6e 65 78 74 20 6d 65 6e 75 20 | ..It.traverses.to.the.next.menu. |
18ba0 | 69 6e 20 61 20 6d 65 6e 75 20 62 61 72 2c 0a 23 20 6f 72 20 69 6e 74 6f 20 6f 72 20 6f 75 74 20 | in.a.menu.bar,.#.or.into.or.out. |
18bc0 | 6f 66 20 61 20 63 61 73 63 61 64 65 64 20 6d 65 6e 75 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 | of.a.cascaded.menu..#.#.Argument |
18be0 | 73 3a 0a 23 20 6d 65 6e 75 20 2d 09 09 54 68 65 20 6d 65 6e 75 20 74 68 61 74 20 72 65 63 65 69 | s:.#.menu.-..The.menu.that.recei |
18c00 | 76 65 64 20 74 68 65 20 6b 65 79 62 6f 61 72 64 0a 23 09 09 09 65 76 65 6e 74 2e 0a 23 20 64 69 | ved.the.keyboard.#...event..#.di |
18c20 | 72 65 63 74 69 6f 6e 20 2d 09 09 44 69 72 65 63 74 69 6f 6e 20 69 6e 20 77 68 69 63 68 20 74 6f | rection.-..Direction.in.which.to |
18c40 | 20 6d 6f 76 65 3a 20 22 6c 65 66 74 22 20 6f 72 20 22 72 69 67 68 74 22 0a 0a 70 72 6f 63 20 74 | .move:."left".or."right"..proc.t |
18c60 | 6b 4d 65 6e 75 4e 65 78 74 4d 65 6e 75 20 7b 6d 65 6e 75 20 64 69 72 65 63 74 69 6f 6e 7d 20 7b | kMenuNextMenu.{menu.direction}.{ |
18c80 | 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 23 20 46 69 72 73 74 20 | .....global.tkPriv......#.First. |
18ca0 | 68 61 6e 64 6c 65 20 74 72 61 76 65 72 73 61 6c 73 20 69 6e 74 6f 20 61 6e 64 20 6f 75 74 20 6f | handle.traversals.into.and.out.o |
18cc0 | 66 20 63 61 73 63 61 64 65 64 20 6d 65 6e 75 73 2e 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 | f.cascaded.menus.......if.{[stri |
18ce0 | 6e 67 20 65 71 75 61 6c 20 24 64 69 72 65 63 74 69 6f 6e 20 22 72 69 67 68 74 22 5d 7d 20 7b 0a | ng.equal.$direction."right"]}.{. |
18d00 | 09 73 65 74 20 63 6f 75 6e 74 20 31 0a 09 73 65 74 20 70 61 72 65 6e 74 20 5b 77 69 6e 66 6f 20 | .set.count.1..set.parent.[winfo. |
18d20 | 70 61 72 65 6e 74 20 24 6d 65 6e 75 5d 0a 09 73 65 74 20 63 6c 61 73 73 20 5b 77 69 6e 66 6f 20 | parent.$menu]..set.class.[winfo. |
18d40 | 63 6c 61 73 73 20 24 70 61 72 65 6e 74 5d 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 | class.$parent]..if.{[string.equa |
18d60 | 6c 20 5b 24 6d 65 6e 75 20 74 79 70 65 20 61 63 74 69 76 65 5d 20 22 63 61 73 63 61 64 65 22 5d | l.[$menu.type.active]."cascade"] |
18d80 | 7d 20 7b 0a 09 20 20 20 20 24 6d 65 6e 75 20 70 6f 73 74 63 61 73 63 61 64 65 20 61 63 74 69 76 | }.{......$menu.postcascade.activ |
18da0 | 65 0a 09 20 20 20 20 73 65 74 20 6d 32 20 5b 24 6d 65 6e 75 20 65 6e 74 72 79 63 67 65 74 20 61 | e......set.m2.[$menu.entrycget.a |
18dc0 | 63 74 69 76 65 20 2d 6d 65 6e 75 5d 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f | ctive.-menu]......if.{[string.co |
18de0 | 6d 70 61 72 65 20 24 6d 32 20 22 22 5d 7d 20 7b 0a 09 09 74 6b 4d 65 6e 75 46 69 72 73 74 45 6e | mpare.$m2.""]}.{...tkMenuFirstEn |
18e00 | 74 72 79 20 24 6d 32 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 72 65 74 75 72 6e 0a 09 7d 20 65 6c | try.$m2......}......return..}.el |
18e20 | 73 65 20 7b 0a 09 20 20 20 20 73 65 74 20 70 61 72 65 6e 74 20 5b 77 69 6e 66 6f 20 70 61 72 65 | se.{......set.parent.[winfo.pare |
18e40 | 6e 74 20 24 6d 65 6e 75 5d 0a 09 20 20 20 20 77 68 69 6c 65 20 7b 5b 73 74 72 69 6e 67 20 63 6f | nt.$menu]......while.{[string.co |
18e60 | 6d 70 61 72 65 20 24 70 61 72 65 6e 74 20 22 2e 22 5d 7d 20 7b 0a 09 09 69 66 20 7b 5b 73 74 72 | mpare.$parent."."]}.{...if.{[str |
18e80 | 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 24 70 61 72 65 6e 74 5d 20 | ing.equal.[winfo.class.$parent]. |
18ea0 | 22 4d 65 6e 75 22 5d 20 5c 0a 09 09 09 26 26 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 | "Menu"].\....&&.[string.equal.[$ |
18ec0 | 70 61 72 65 6e 74 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 6e 75 62 61 72 22 5d 7d 20 7b | parent.cget.-type]."menubar"]}.{ |
18ee0 | 0a 09 09 20 20 20 20 74 6b 5f 6d 65 6e 75 53 65 74 46 6f 63 75 73 20 24 70 61 72 65 6e 74 0a 09 | .......tk_menuSetFocus.$parent.. |
18f00 | 09 20 20 20 20 74 6b 4d 65 6e 75 4e 65 78 74 45 6e 74 72 79 20 24 70 61 72 65 6e 74 20 31 0a 09 | .....tkMenuNextEntry.$parent.1.. |
18f20 | 09 20 20 20 20 72 65 74 75 72 6e 0a 09 09 7d 0a 09 09 73 65 74 20 70 61 72 65 6e 74 20 5b 77 69 | .....return...}...set.parent.[wi |
18f40 | 6e 66 6f 20 70 61 72 65 6e 74 20 24 70 61 72 65 6e 74 5d 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 | nfo.parent.$parent]......}..}... |
18f60 | 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 63 6f 75 6e 74 20 2d 31 0a 09 73 65 74 20 6d 32 | ..}.else.{..set.count.-1..set.m2 |
18f80 | 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 6d 65 6e 75 5d 0a 09 69 66 20 7b 5b 73 74 72 69 | .[winfo.parent.$menu]..if.{[stri |
18fa0 | 6e 67 20 65 71 75 61 6c 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 24 6d 32 5d 20 22 4d 65 6e 75 | ng.equal.[winfo.class.$m2]."Menu |
18fc0 | 22 5d 7d 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b | "]}.{......if.{[string.compare.[ |
18fe0 | 24 6d 32 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 6e 75 62 61 72 22 5d 7d 20 7b 0a 09 09 | $m2.cget.-type]."menubar"]}.{... |
19000 | 24 6d 65 6e 75 20 61 63 74 69 76 61 74 65 20 6e 6f 6e 65 0a 09 09 74 6b 47 65 6e 65 72 61 74 65 | $menu.activate.none...tkGenerate |
19020 | 4d 65 6e 75 53 65 6c 65 63 74 20 24 6d 65 6e 75 0a 09 09 74 6b 5f 6d 65 6e 75 53 65 74 46 6f 63 | MenuSelect.$menu...tk_menuSetFoc |
19040 | 75 73 20 24 6d 32 0a 09 09 0a 09 09 23 20 54 68 69 73 20 63 6f 64 65 20 75 6e 70 6f 73 74 73 20 | us.$m2......#.This.code.unposts. |
19060 | 61 6e 79 20 70 6f 73 74 65 64 20 73 75 62 6d 65 6e 75 20 69 6e 20 74 68 65 20 70 61 72 65 6e 74 | any.posted.submenu.in.the.parent |
19080 | 2e 0a 09 09 0a 09 09 73 65 74 20 74 6d 70 20 5b 24 6d 32 20 69 6e 64 65 78 20 61 63 74 69 76 65 | .......set.tmp.[$m2.index.active |
190a0 | 5d 0a 09 09 24 6d 32 20 61 63 74 69 76 61 74 65 20 6e 6f 6e 65 0a 09 09 24 6d 32 20 61 63 74 69 | ]...$m2.activate.none...$m2.acti |
190c0 | 76 61 74 65 20 24 74 6d 70 0a 09 09 72 65 74 75 72 6e 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 | vate.$tmp...return......}..}.... |
190e0 | 20 7d 0a 0a 20 20 20 20 23 20 43 61 6e 27 74 20 74 72 61 76 65 72 73 65 20 69 6e 74 6f 20 6f 72 | .}......#.Can't.traverse.into.or |
19100 | 20 6f 75 74 20 6f 66 20 61 20 63 61 73 63 61 64 65 64 20 6d 65 6e 75 2e 20 20 47 6f 20 74 6f 20 | .out.of.a.cascaded.menu...Go.to. |
19120 | 74 68 65 20 6e 65 78 74 0a 20 20 20 20 23 20 6f 72 20 70 72 65 76 69 6f 75 73 20 6d 65 6e 75 62 | the.next.....#.or.previous.menub |
19140 | 75 74 74 6f 6e 2c 20 69 66 20 74 68 61 74 20 6d 61 6b 65 73 20 73 65 6e 73 65 2e 0a 0a 20 20 20 | utton,.if.that.makes.sense...... |
19160 | 20 73 65 74 20 6d 32 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 6d 65 6e 75 5d 0a 20 20 20 | .set.m2.[winfo.parent.$menu].... |
19180 | 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 | .if.{[string.equal.[winfo.class. |
191a0 | 24 6d 32 5d 20 22 4d 65 6e 75 22 5d 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 | $m2]."Menu"]}.{..if.{[string.equ |
191c0 | 61 6c 20 5b 24 6d 32 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 6e 75 62 61 72 22 5d 7d 20 | al.[$m2.cget.-type]."menubar"]}. |
191e0 | 7b 0a 09 20 20 20 20 74 6b 5f 6d 65 6e 75 53 65 74 46 6f 63 75 73 20 24 6d 32 0a 09 20 20 20 20 | {......tk_menuSetFocus.$m2...... |
19200 | 74 6b 4d 65 6e 75 4e 65 78 74 45 6e 74 72 79 20 24 6d 32 20 2d 31 0a 09 20 20 20 20 72 65 74 75 | tkMenuNextEntry.$m2.-1......retu |
19220 | 72 6e 0a 09 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 73 65 74 20 77 20 24 74 6b 50 72 69 76 28 70 | rn..}.....}......set.w.$tkPriv(p |
19240 | 6f 73 74 65 64 4d 62 29 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 | ostedMb).....if.{[string.equal.$ |
19260 | 77 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 62 | w.""]}.{..return.....}.....set.b |
19280 | 75 74 74 6f 6e 73 20 5b 77 69 6e 66 6f 20 63 68 69 6c 64 72 65 6e 20 5b 77 69 6e 66 6f 20 70 61 | uttons.[winfo.children.[winfo.pa |
192a0 | 72 65 6e 74 20 24 77 5d 5d 0a 20 20 20 20 73 65 74 20 6c 65 6e 67 74 68 20 5b 6c 6c 65 6e 67 74 | rent.$w]].....set.length.[llengt |
192c0 | 68 20 24 62 75 74 74 6f 6e 73 5d 0a 20 20 20 20 73 65 74 20 69 20 5b 65 78 70 72 20 7b 5b 6c 73 | h.$buttons].....set.i.[expr.{[ls |
192e0 | 65 61 72 63 68 20 2d 65 78 61 63 74 20 24 62 75 74 74 6f 6e 73 20 24 77 5d 20 2b 20 24 63 6f 75 | earch.-exact.$buttons.$w].+.$cou |
19300 | 6e 74 7d 5d 0a 20 20 20 20 77 68 69 6c 65 20 31 20 7b 0a 09 77 68 69 6c 65 20 7b 24 69 20 3c 20 | nt}].....while.1.{..while.{$i.<. |
19320 | 30 7d 20 7b 0a 09 20 20 20 20 69 6e 63 72 20 69 20 24 6c 65 6e 67 74 68 0a 09 7d 0a 09 77 68 69 | 0}.{......incr.i.$length..}..whi |
19340 | 6c 65 20 7b 24 69 20 3e 3d 20 24 6c 65 6e 67 74 68 7d 20 7b 0a 09 20 20 20 20 69 6e 63 72 20 69 | le.{$i.>=.$length}.{......incr.i |
19360 | 20 2d 24 6c 65 6e 67 74 68 0a 09 7d 0a 09 73 65 74 20 6d 62 20 5b 6c 69 6e 64 65 78 20 24 62 75 | .-$length..}..set.mb.[lindex.$bu |
19380 | 74 74 6f 6e 73 20 24 69 5d 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 | ttons.$i]..if.{[string.equal.[wi |
193a0 | 6e 66 6f 20 63 6c 61 73 73 20 24 6d 62 5d 20 22 4d 65 6e 75 62 75 74 74 6f 6e 22 5d 20 5c 0a 09 | nfo.class.$mb]."Menubutton"].\.. |
193c0 | 09 26 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 6d 62 20 63 67 65 74 20 2d 73 | .&&.[string.compare.[$mb.cget.-s |
193e0 | 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 20 5c 0a 09 09 26 26 20 5b 73 74 72 69 6e 67 | tate]."disabled"].\...&&.[string |
19400 | 20 63 6f 6d 70 61 72 65 20 5b 24 6d 62 20 63 67 65 74 20 2d 6d 65 6e 75 5d 20 22 22 5d 20 5c 0a | .compare.[$mb.cget.-menu].""].\. |
19420 | 09 09 26 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 5b 24 6d 62 20 63 67 65 74 20 | ..&&.[string.compare.[[$mb.cget. |
19440 | 2d 6d 65 6e 75 5d 20 69 6e 64 65 78 20 6c 61 73 74 5d 20 22 6e 6f 6e 65 22 5d 7d 20 7b 0a 09 20 | -menu].index.last]."none"]}.{... |
19460 | 20 20 20 62 72 65 61 6b 0a 09 7d 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 | ...break..}..if.{[string.equal.$ |
19480 | 6d 62 20 24 77 5d 7d 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e 0a 09 7d 0a 09 69 6e 63 72 20 69 | mb.$w]}.{......return..}..incr.i |
194a0 | 20 24 63 6f 75 6e 74 0a 20 20 20 20 7d 0a 20 20 20 20 74 6b 4d 62 50 6f 73 74 20 24 6d 62 0a 20 | .$count.....}.....tkMbPost.$mb.. |
194c0 | 20 20 20 74 6b 4d 65 6e 75 46 69 72 73 74 45 6e 74 72 79 20 5b 24 6d 62 20 63 67 65 74 20 2d 6d | ...tkMenuFirstEntry.[$mb.cget.-m |
194e0 | 65 6e 75 5d 0a 7d 0a 0a 23 20 74 6b 4d 65 6e 75 4e 65 78 74 45 6e 74 72 79 20 2d 2d 0a 23 20 41 | enu].}..#.tkMenuNextEntry.--.#.A |
19500 | 63 74 69 76 61 74 65 20 74 68 65 20 6e 65 78 74 20 68 69 67 68 65 72 20 6f 72 20 6c 6f 77 65 72 | ctivate.the.next.higher.or.lower |
19520 | 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 70 6f 73 74 65 64 20 6d 65 6e 75 2c 0a 23 20 77 72 61 | .entry.in.the.posted.menu,.#.wra |
19540 | 70 70 69 6e 67 20 61 72 6f 75 6e 64 20 61 74 20 74 68 65 20 65 6e 64 73 2e 20 20 44 69 73 61 62 | pping.around.at.the.ends...Disab |
19560 | 6c 65 64 20 65 6e 74 72 69 65 73 20 61 72 65 20 73 6b 69 70 70 65 64 2e 0a 23 0a 23 20 41 72 67 | led.entries.are.skipped..#.#.Arg |
19580 | 75 6d 65 6e 74 73 3a 0a 23 20 6d 65 6e 75 20 2d 09 09 09 4d 65 6e 75 20 77 69 6e 64 6f 77 20 74 | uments:.#.menu.-...Menu.window.t |
195a0 | 68 61 74 20 72 65 63 65 69 76 65 64 20 74 68 65 20 6b 65 79 73 74 72 6f 6b 65 2e 0a 23 20 63 6f | hat.received.the.keystroke..#.co |
195c0 | 75 6e 74 20 2d 09 09 09 31 20 6d 65 61 6e 73 20 67 6f 20 74 6f 20 74 68 65 20 6e 65 78 74 20 6c | unt.-...1.means.go.to.the.next.l |
195e0 | 6f 77 65 72 20 65 6e 74 72 79 2c 0a 23 09 09 09 09 2d 31 20 6d 65 61 6e 73 20 67 6f 20 74 6f 20 | ower.entry,.#....-1.means.go.to. |
19600 | 74 68 65 20 6e 65 78 74 20 68 69 67 68 65 72 20 65 6e 74 72 79 2e 0a 0a 70 72 6f 63 20 74 6b 4d | the.next.higher.entry...proc.tkM |
19620 | 65 6e 75 4e 65 78 74 45 6e 74 72 79 20 7b 6d 65 6e 75 20 63 6f 75 6e 74 7d 20 7b 0a 20 20 20 20 | enuNextEntry.{menu.count}.{..... |
19640 | 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 | global.tkPriv......if.{[string.e |
19660 | 71 75 61 6c 20 5b 24 6d 65 6e 75 20 69 6e 64 65 78 20 6c 61 73 74 5d 20 22 6e 6f 6e 65 22 5d 7d | qual.[$menu.index.last]."none"]} |
19680 | 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 6c 65 6e 67 74 68 20 | .{..return.....}.....set.length. |
196a0 | 5b 65 78 70 72 20 7b 5b 24 6d 65 6e 75 20 69 6e 64 65 78 20 6c 61 73 74 5d 2b 31 7d 5d 0a 20 20 | [expr.{[$menu.index.last]+1}]... |
196c0 | 20 20 73 65 74 20 71 75 69 74 41 66 74 65 72 20 24 6c 65 6e 67 74 68 0a 20 20 20 20 73 65 74 20 | ..set.quitAfter.$length.....set. |
196e0 | 61 63 74 69 76 65 20 5b 24 6d 65 6e 75 20 69 6e 64 65 78 20 61 63 74 69 76 65 5d 0a 20 20 20 20 | active.[$menu.index.active]..... |
19700 | 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 61 63 74 69 76 65 20 22 6e 6f 6e 65 22 | if.{[string.equal.$active."none" |
19720 | 5d 7d 20 7b 0a 09 73 65 74 20 69 20 30 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 | ]}.{..set.i.0.....}.else.{..set. |
19740 | 69 20 5b 65 78 70 72 20 7b 24 61 63 74 69 76 65 20 2b 20 24 63 6f 75 6e 74 7d 5d 0a 20 20 20 20 | i.[expr.{$active.+.$count}]..... |
19760 | 7d 0a 20 20 20 20 77 68 69 6c 65 20 31 20 7b 0a 09 69 66 20 7b 24 71 75 69 74 41 66 74 65 72 20 | }.....while.1.{..if.{$quitAfter. |
19780 | 3c 3d 20 30 7d 20 7b 0a 09 20 20 20 20 23 20 57 65 27 76 65 20 74 72 69 65 64 20 65 76 65 72 79 | <=.0}.{......#.We've.tried.every |
197a0 | 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 6d 65 6e 75 2e 20 20 45 69 74 68 65 72 20 74 68 65 72 | .entry.in.the.menu...Either.ther |
197c0 | 65 20 61 72 65 0a 09 20 20 20 20 23 20 6e 6f 6e 65 2c 20 6f 72 20 74 68 65 79 27 72 65 20 61 6c | e.are......#.none,.or.they're.al |
197e0 | 6c 20 64 69 73 61 62 6c 65 64 2e 20 20 4a 75 73 74 20 67 69 76 65 20 75 70 2e 0a 0a 09 20 20 20 | l.disabled...Just.give.up....... |
19800 | 20 72 65 74 75 72 6e 0a 09 7d 0a 09 77 68 69 6c 65 20 7b 24 69 20 3c 20 30 7d 20 7b 0a 09 20 20 | .return..}..while.{$i.<.0}.{.... |
19820 | 20 20 69 6e 63 72 20 69 20 24 6c 65 6e 67 74 68 0a 09 7d 0a 09 77 68 69 6c 65 20 7b 24 69 20 3e | ..incr.i.$length..}..while.{$i.> |
19840 | 3d 20 24 6c 65 6e 67 74 68 7d 20 7b 0a 09 20 20 20 20 69 6e 63 72 20 69 20 2d 24 6c 65 6e 67 74 | =.$length}.{......incr.i.-$lengt |
19860 | 68 0a 09 7d 0a 09 69 66 20 7b 5b 63 61 74 63 68 20 7b 24 6d 65 6e 75 20 65 6e 74 72 79 63 67 65 | h..}..if.{[catch.{$menu.entrycge |
19880 | 74 20 24 69 20 2d 73 74 61 74 65 7d 20 73 74 61 74 65 5d 20 3d 3d 20 30 7d 20 7b 0a 09 20 20 20 | t.$i.-state}.state].==.0}.{..... |
198a0 | 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 73 74 61 74 65 20 22 64 69 73 | .if.{[string.compare.$state."dis |
198c0 | 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 09 62 72 65 61 6b 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 69 66 | abled"]}.{...break......}..}..if |
198e0 | 20 7b 24 69 20 3d 3d 20 24 61 63 74 69 76 65 7d 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e 0a 09 | .{$i.==.$active}.{......return.. |
19900 | 7d 0a 09 69 6e 63 72 20 69 20 24 63 6f 75 6e 74 0a 09 69 6e 63 72 20 71 75 69 74 41 66 74 65 72 | }..incr.i.$count..incr.quitAfter |
19920 | 20 2d 31 0a 20 20 20 20 7d 0a 20 20 20 20 24 6d 65 6e 75 20 61 63 74 69 76 61 74 65 20 24 69 0a | .-1.....}.....$menu.activate.$i. |
19940 | 20 20 20 20 74 6b 47 65 6e 65 72 61 74 65 4d 65 6e 75 53 65 6c 65 63 74 20 24 6d 65 6e 75 0a 20 | ....tkGenerateMenuSelect.$menu.. |
19960 | 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 6d 65 6e 75 20 74 79 70 65 | ...if.{[string.equal.[$menu.type |
19980 | 20 24 69 5d 20 22 63 61 73 63 61 64 65 22 5d 7d 20 7b 0a 09 73 65 74 20 63 61 73 63 61 64 65 20 | .$i]."cascade"]}.{..set.cascade. |
199a0 | 5b 24 6d 65 6e 75 20 65 6e 74 72 79 63 67 65 74 20 24 69 20 2d 6d 65 6e 75 5d 0a 09 69 66 20 7b | [$menu.entrycget.$i.-menu]..if.{ |
199c0 | 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 63 61 73 63 61 64 65 20 22 22 5d 7d 20 7b 0a | [string.compare.$cascade.""]}.{. |
199e0 | 09 20 20 20 20 23 20 48 65 72 65 20 77 65 20 61 75 74 6f 2d 70 6f 73 74 20 61 20 63 61 73 63 61 | .....#.Here.we.auto-post.a.casca |
19a00 | 64 65 2e 20 20 54 68 69 73 20 69 73 20 6e 65 63 65 73 73 61 72 79 20 77 68 65 6e 0a 09 20 20 20 | de...This.is.necessary.when..... |
19a20 | 20 23 20 77 65 20 74 72 61 76 65 72 73 65 20 6c 65 66 74 2f 72 69 67 68 74 20 69 6e 20 74 68 65 | .#.we.traverse.left/right.in.the |
19a40 | 20 6d 65 6e 75 62 61 72 2c 20 62 75 74 20 75 6e 64 65 73 69 72 61 62 6c 65 20 77 68 65 6e 0a 09 | .menubar,.but.undesirable.when.. |
19a60 | 20 20 20 20 23 20 77 65 20 74 72 61 76 65 72 73 65 20 75 70 2f 64 6f 77 6e 20 69 6e 20 61 20 6d | ....#.we.traverse.up/down.in.a.m |
19a80 | 65 6e 75 2e 0a 09 20 20 20 20 24 6d 65 6e 75 20 70 6f 73 74 63 61 73 63 61 64 65 20 24 69 0a 09 | enu.......$menu.postcascade.$i.. |
19aa0 | 20 20 20 20 74 6b 4d 65 6e 75 46 69 72 73 74 45 6e 74 72 79 20 24 63 61 73 63 61 64 65 0a 09 7d | ....tkMenuFirstEntry.$cascade..} |
19ac0 | 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4d 65 6e 75 46 69 6e 64 20 2d 2d 0a 23 20 54 68 69 73 | .....}.}..#.tkMenuFind.--.#.This |
19ae0 | 20 70 72 6f 63 65 64 75 72 65 20 73 65 61 72 63 68 65 73 20 74 68 65 20 65 6e 74 69 72 65 20 77 | .procedure.searches.the.entire.w |
19b00 | 69 6e 64 6f 77 20 68 69 65 72 61 72 63 68 79 20 75 6e 64 65 72 20 77 20 66 6f 72 0a 23 20 61 20 | indow.hierarchy.under.w.for.#.a. |
19b20 | 6d 65 6e 75 62 75 74 74 6f 6e 20 74 68 61 74 20 69 73 6e 27 74 20 64 69 73 61 62 6c 65 64 20 61 | menubutton.that.isn't.disabled.a |
19b40 | 6e 64 20 77 68 6f 73 65 20 75 6e 64 65 72 6c 69 6e 65 64 20 63 68 61 72 61 63 74 65 72 0a 23 20 | nd.whose.underlined.character.#. |
19b60 | 69 73 20 22 63 68 61 72 22 20 6f 72 20 61 6e 20 65 6e 74 72 79 20 69 6e 20 61 20 6d 65 6e 75 62 | is."char".or.an.entry.in.a.menub |
19b80 | 61 72 20 74 68 61 74 20 69 73 6e 27 74 20 64 69 73 61 62 6c 65 64 20 61 6e 64 20 77 68 6f 73 65 | ar.that.isn't.disabled.and.whose |
19ba0 | 0a 23 20 75 6e 64 65 72 6c 69 6e 65 64 20 63 68 61 72 61 63 74 65 72 20 69 73 20 22 63 68 61 72 | .#.underlined.character.is."char |
19bc0 | 22 2e 0a 23 20 49 74 20 72 65 74 75 72 6e 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 61 74 | "..#.It.returns.the.name.of.that |
19be0 | 20 77 69 6e 64 6f 77 2c 20 69 66 20 66 6f 75 6e 64 2c 20 6f 72 20 61 6e 0a 23 20 65 6d 70 74 79 | .window,.if.found,.or.an.#.empty |
19c00 | 20 73 74 72 69 6e 67 20 69 66 20 6e 6f 20 6d 61 74 63 68 69 6e 67 20 77 69 6e 64 6f 77 20 77 61 | .string.if.no.matching.window.wa |
19c20 | 73 20 66 6f 75 6e 64 2e 20 20 49 66 20 22 63 68 61 72 22 20 69 73 20 61 6e 0a 23 20 65 6d 70 74 | s.found...If."char".is.an.#.empt |
19c40 | 79 20 73 74 72 69 6e 67 20 74 68 65 6e 20 74 68 65 20 70 72 6f 63 65 64 75 72 65 20 72 65 74 75 | y.string.then.the.procedure.retu |
19c60 | 72 6e 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 66 69 72 73 74 0a 23 20 6d 65 6e 75 | rns.the.name.of.the.first.#.menu |
19c80 | 62 75 74 74 6f 6e 20 66 6f 75 6e 64 20 74 68 61 74 20 69 73 6e 27 74 20 64 69 73 61 62 6c 65 64 | button.found.that.isn't.disabled |
19ca0 | 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 09 4e 61 6d 65 20 6f | ..#.#.Arguments:.#.w.-....Name.o |
19cc0 | 66 20 77 69 6e 64 6f 77 20 77 68 65 72 65 20 6b 65 79 20 77 61 73 20 74 79 70 65 64 2e 0a 23 20 | f.window.where.key.was.typed..#. |
19ce0 | 63 68 61 72 20 2d 09 09 09 55 6e 64 65 72 6c 69 6e 65 64 20 63 68 61 72 61 63 74 65 72 20 74 6f | char.-...Underlined.character.to |
19d00 | 20 73 65 61 72 63 68 20 66 6f 72 3b 0a 23 09 09 09 09 6d 61 79 20 62 65 20 65 69 74 68 65 72 20 | .search.for;.#....may.be.either. |
19d20 | 75 70 70 65 72 20 6f 72 20 6c 6f 77 65 72 20 63 61 73 65 2c 20 61 6e 64 0a 23 09 09 09 09 77 69 | upper.or.lower.case,.and.#....wi |
19d40 | 6c 6c 20 6d 61 74 63 68 20 65 69 74 68 65 72 20 75 70 70 65 72 20 6f 72 20 6c 6f 77 65 72 20 63 | ll.match.either.upper.or.lower.c |
19d60 | 61 73 65 2e 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e 75 46 69 6e 64 20 7b 77 20 63 68 61 72 7d 20 7b | ase...proc.tkMenuFind.{w.char}.{ |
19d80 | 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 73 65 74 20 63 68 61 72 20 | .....global.tkPriv.....set.char. |
19da0 | 5b 73 74 72 69 6e 67 20 74 6f 6c 6f 77 65 72 20 24 63 68 61 72 5d 0a 20 20 20 20 73 65 74 20 77 | [string.tolower.$char].....set.w |
19dc0 | 69 6e 64 6f 77 6c 69 73 74 20 5b 77 69 6e 66 6f 20 63 68 69 6c 64 20 24 77 5d 0a 0a 20 20 20 20 | indowlist.[winfo.child.$w]...... |
19de0 | 66 6f 72 65 61 63 68 20 63 68 69 6c 64 20 24 77 69 6e 64 6f 77 6c 69 73 74 20 7b 0a 09 23 20 44 | foreach.child.$windowlist.{..#.D |
19e00 | 6f 6e 27 74 20 64 65 73 63 65 6e 64 20 69 6e 74 6f 20 6f 74 68 65 72 20 74 6f 70 6c 65 76 65 6c | on't.descend.into.other.toplevel |
19e20 | 73 2e 0a 20 20 20 20 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b | s..........if.{[string.compare.[ |
19e40 | 77 69 6e 66 6f 20 74 6f 70 6c 65 76 65 6c 20 5b 66 6f 63 75 73 5d 5d 20 5c 0a 09 09 5b 77 69 6e | winfo.toplevel.[focus]].\...[win |
19e60 | 66 6f 20 74 6f 70 6c 65 76 65 6c 20 24 63 68 69 6c 64 5d 5d 7d 20 7b 0a 09 20 20 20 20 63 6f 6e | fo.toplevel.$child]]}.{......con |
19e80 | 74 69 6e 75 65 0a 09 7d 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 6e | tinue..}..if.{[string.equal.[win |
19ea0 | 66 6f 20 63 6c 61 73 73 20 24 63 68 69 6c 64 5d 20 22 4d 65 6e 75 22 5d 20 26 26 20 5c 0a 09 09 | fo.class.$child]."Menu"].&&.\... |
19ec0 | 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 63 68 69 6c 64 20 63 67 65 74 20 2d 74 79 70 65 | [string.equal.[$child.cget.-type |
19ee0 | 5d 20 22 6d 65 6e 75 62 61 72 22 5d 7d 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 | ]."menubar"]}.{......if.{[string |
19f00 | 20 65 71 75 61 6c 20 24 63 68 61 72 20 22 22 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 24 63 68 | .equal.$char.""]}.{...return.$ch |
19f20 | 69 6c 64 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 73 65 74 20 6c 61 73 74 20 5b 24 63 68 69 6c 64 | ild......}......set.last.[$child |
19f40 | 20 69 6e 64 65 78 20 6c 61 73 74 5d 0a 09 20 20 20 20 66 6f 72 20 7b 73 65 74 20 69 20 5b 24 63 | .index.last]......for.{set.i.[$c |
19f60 | 68 69 6c 64 20 63 67 65 74 20 2d 74 65 61 72 6f 66 66 5d 7d 20 7b 24 69 20 3c 3d 20 24 6c 61 73 | hild.cget.-tearoff]}.{$i.<=.$las |
19f80 | 74 7d 20 7b 69 6e 63 72 20 69 7d 20 7b 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 | t}.{incr.i}.{...if.{[string.equa |
19fa0 | 6c 20 5b 24 63 68 69 6c 64 20 74 79 70 65 20 24 69 5d 20 22 73 65 70 61 72 61 74 6f 72 22 5d 7d | l.[$child.type.$i]."separator"]} |
19fc0 | 20 7b 0a 09 09 20 20 20 20 63 6f 6e 74 69 6e 75 65 0a 09 09 7d 0a 09 09 73 65 74 20 63 68 61 72 | .{.......continue...}...set.char |
19fe0 | 32 20 5b 73 74 72 69 6e 67 20 69 6e 64 65 78 20 5b 24 63 68 69 6c 64 20 65 6e 74 72 79 63 67 65 | 2.[string.index.[$child.entrycge |
1a000 | 74 20 24 69 20 2d 6c 61 62 65 6c 5d 20 5c 0a 09 09 09 5b 24 63 68 69 6c 64 20 65 6e 74 72 79 63 | t.$i.-label].\....[$child.entryc |
1a020 | 67 65 74 20 24 69 20 2d 75 6e 64 65 72 6c 69 6e 65 5d 5d 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e | get.$i.-underline]]...if.{[strin |
1a040 | 67 20 65 71 75 61 6c 20 24 63 68 61 72 20 5b 73 74 72 69 6e 67 20 74 6f 6c 6f 77 65 72 20 24 63 | g.equal.$char.[string.tolower.$c |
1a060 | 68 61 72 32 5d 5d 20 5c 0a 09 09 09 7c 7c 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 63 68 | har2]].\....||.[string.equal.$ch |
1a080 | 61 72 20 22 22 5d 7d 20 7b 0a 09 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 | ar.""]}.{.......if.{[string.comp |
1a0a0 | 61 72 65 20 5b 24 63 68 69 6c 64 20 65 6e 74 72 79 63 67 65 74 20 24 69 20 2d 73 74 61 74 65 5d | are.[$child.entrycget.$i.-state] |
1a0c0 | 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 09 09 72 65 74 75 72 6e 20 24 63 68 69 6c 64 | ."disabled"]}.{....return.$child |
1a0e0 | 0a 09 09 20 20 20 20 7d 0a 09 09 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 0a 20 20 | .......}...}......}..}.....}.... |
1a100 | 20 20 66 6f 72 65 61 63 68 20 63 68 69 6c 64 20 24 77 69 6e 64 6f 77 6c 69 73 74 20 7b 0a 09 23 | ..foreach.child.$windowlist.{..# |
1a120 | 20 44 6f 6e 27 74 20 64 65 73 63 65 6e 64 20 69 6e 74 6f 20 6f 74 68 65 72 20 74 6f 70 6c 65 76 | .Don't.descend.into.other.toplev |
1a140 | 65 6c 73 2e 0a 20 20 20 20 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 | els..........if.{[string.compare |
1a160 | 20 5b 77 69 6e 66 6f 20 74 6f 70 6c 65 76 65 6c 20 5b 66 6f 63 75 73 5d 5d 20 5c 0a 09 09 5b 77 | .[winfo.toplevel.[focus]].\...[w |
1a180 | 69 6e 66 6f 20 74 6f 70 6c 65 76 65 6c 20 24 63 68 69 6c 64 5d 5d 7d 20 7b 0a 09 20 20 20 20 63 | info.toplevel.$child]]}.{......c |
1a1a0 | 6f 6e 74 69 6e 75 65 0a 09 7d 0a 09 73 77 69 74 63 68 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 | ontinue..}..switch.[winfo.class. |
1a1c0 | 24 63 68 69 6c 64 5d 20 7b 0a 09 20 20 20 20 4d 65 6e 75 62 75 74 74 6f 6e 20 7b 0a 09 09 73 65 | $child].{......Menubutton.{...se |
1a1e0 | 74 20 63 68 61 72 32 20 5b 73 74 72 69 6e 67 20 69 6e 64 65 78 20 5b 24 63 68 69 6c 64 20 63 67 | t.char2.[string.index.[$child.cg |
1a200 | 65 74 20 2d 74 65 78 74 5d 20 5c 0a 09 09 09 5b 24 63 68 69 6c 64 20 63 67 65 74 20 2d 75 6e 64 | et.-text].\....[$child.cget.-und |
1a220 | 65 72 6c 69 6e 65 5d 5d 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 63 68 | erline]]...if.{[string.equal.$ch |
1a240 | 61 72 20 5b 73 74 72 69 6e 67 20 74 6f 6c 6f 77 65 72 20 24 63 68 61 72 32 5d 5d 20 5c 0a 09 09 | ar.[string.tolower.$char2]].\... |
1a260 | 09 7c 7c 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 63 68 61 72 20 22 22 5d 7d 20 7b 0a 09 | .||.[string.equal.$char.""]}.{.. |
1a280 | 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 63 68 69 6c 64 | .....if.{[string.compare.[$child |
1a2a0 | 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 09 09 | .cget.-state]."disabled"]}.{.... |
1a2c0 | 72 65 74 75 72 6e 20 24 63 68 69 6c 64 0a 09 09 20 20 20 20 7d 0a 09 09 7d 0a 09 20 20 20 20 7d | return.$child.......}...}......} |
1a2e0 | 0a 0a 09 20 20 20 20 64 65 66 61 75 6c 74 20 7b 0a 09 09 73 65 74 20 6d 61 74 63 68 20 5b 74 6b | .......default.{...set.match.[tk |
1a300 | 4d 65 6e 75 46 69 6e 64 20 24 63 68 69 6c 64 20 24 63 68 61 72 5d 0a 09 09 69 66 20 7b 5b 73 74 | MenuFind.$child.$char]...if.{[st |
1a320 | 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 6d 61 74 63 68 20 22 22 5d 7d 20 7b 0a 09 09 20 20 20 | ring.compare.$match.""]}.{...... |
1a340 | 20 72 65 74 75 72 6e 20 24 6d 61 74 63 68 0a 09 09 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 | .return.$match...}......}..}.... |
1a360 | 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 7b 7d 0a 7d 0a 0a 23 20 74 6b 54 72 61 76 65 72 73 65 | .}.....return.{}.}..#.tkTraverse |
1a380 | 54 6f 4d 65 6e 75 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 6d 70 6c 65 | ToMenu.--.#.This.procedure.imple |
1a3a0 | 6d 65 6e 74 73 20 6b 65 79 62 6f 61 72 64 20 74 72 61 76 65 72 73 61 6c 20 6f 66 20 6d 65 6e 75 | ments.keyboard.traversal.of.menu |
1a3c0 | 73 2e 20 20 47 69 76 65 6e 20 61 6e 0a 23 20 41 53 43 49 49 20 63 68 61 72 61 63 74 65 72 20 22 | s...Given.an.#.ASCII.character." |
1a3e0 | 63 68 61 72 22 2c 20 69 74 20 6c 6f 6f 6b 73 20 66 6f 72 20 61 20 6d 65 6e 75 62 75 74 74 6f 6e | char",.it.looks.for.a.menubutton |
1a400 | 20 77 69 74 68 20 74 68 61 74 20 63 68 61 72 61 63 74 65 72 0a 23 20 75 6e 64 65 72 6c 69 6e 65 | .with.that.character.#.underline |
1a420 | 64 2e 20 20 49 66 20 6f 6e 65 20 69 73 20 66 6f 75 6e 64 2c 20 69 74 20 70 6f 73 74 73 20 74 68 | d...If.one.is.found,.it.posts.th |
1a440 | 65 20 6d 65 6e 75 62 75 74 74 6f 6e 27 73 20 6d 65 6e 75 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 | e.menubutton's.menu.#.#.Argument |
1a460 | 73 3a 0a 23 20 77 20 2d 09 09 09 09 57 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 | s:.#.w.-....Window.in.which.the. |
1a480 | 6b 65 79 20 77 61 73 20 74 79 70 65 64 20 28 73 65 6c 65 63 74 73 0a 23 09 09 09 09 61 20 74 6f | key.was.typed.(selects.#....a.to |
1a4a0 | 70 6c 65 76 65 6c 20 77 69 6e 64 6f 77 29 2e 0a 23 20 63 68 61 72 20 2d 09 09 09 43 68 61 72 61 | plevel.window)..#.char.-...Chara |
1a4c0 | 63 74 65 72 20 74 68 61 74 20 73 65 6c 65 63 74 73 20 61 20 6d 65 6e 75 2e 20 20 54 68 65 20 63 | cter.that.selects.a.menu...The.c |
1a4e0 | 61 73 65 0a 23 09 09 09 09 69 73 20 69 67 6e 6f 72 65 64 2e 20 20 49 66 20 61 6e 20 65 6d 70 74 | ase.#....is.ignored...If.an.empt |
1a500 | 79 20 73 74 72 69 6e 67 2c 20 6e 6f 74 68 69 6e 67 0a 23 09 09 09 09 68 61 70 70 65 6e 73 2e 0a | y.string,.nothing.#....happens.. |
1a520 | 0a 70 72 6f 63 20 74 6b 54 72 61 76 65 72 73 65 54 6f 4d 65 6e 75 20 7b 77 20 63 68 61 72 7d 20 | .proc.tkTraverseToMenu.{w.char}. |
1a540 | 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 | {.....global.tkPriv.....if.{[str |
1a560 | 69 6e 67 20 65 71 75 61 6c 20 24 63 68 61 72 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 | ing.equal.$char.""]}.{..return.. |
1a580 | 20 20 20 7d 0a 20 20 20 20 77 68 69 6c 65 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 | ...}.....while.{[string.equal.[w |
1a5a0 | 69 6e 66 6f 20 63 6c 61 73 73 20 24 77 5d 20 22 4d 65 6e 75 22 5d 7d 20 7b 0a 09 69 66 20 7b 5b | info.class.$w]."Menu"]}.{..if.{[ |
1a5c0 | 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 77 20 63 67 65 74 20 2d 74 79 70 65 5d 20 22 | string.compare.[$w.cget.-type]." |
1a5e0 | 6d 65 6e 75 62 61 72 22 5d 20 5c 0a 09 09 26 26 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 | menubar"].\...&&.[string.equal.$ |
1a600 | 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d 62 29 20 22 22 5d 7d 20 7b 0a 09 20 20 20 20 72 65 74 | tkPriv(postedMb).""]}.{......ret |
1a620 | 75 72 6e 0a 09 7d 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 63 67 | urn..}..if.{[string.equal.[$w.cg |
1a640 | 65 74 20 2d 74 79 70 65 5d 20 22 6d 65 6e 75 62 61 72 22 5d 7d 20 7b 0a 09 20 20 20 20 62 72 65 | et.-type]."menubar"]}.{......bre |
1a660 | 61 6b 0a 09 7d 0a 09 73 65 74 20 77 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 77 5d 0a 20 | ak..}..set.w.[winfo.parent.$w].. |
1a680 | 20 20 20 7d 0a 20 20 20 20 73 65 74 20 77 20 5b 74 6b 4d 65 6e 75 46 69 6e 64 20 5b 77 69 6e 66 | ...}.....set.w.[tkMenuFind.[winf |
1a6a0 | 6f 20 74 6f 70 6c 65 76 65 6c 20 24 77 5d 20 24 63 68 61 72 5d 0a 20 20 20 20 69 66 20 7b 5b 73 | o.toplevel.$w].$char].....if.{[s |
1a6c0 | 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 77 20 22 22 5d 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 | tring.compare.$w.""]}.{..if.{[st |
1a6e0 | 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 24 77 5d 20 22 4d 65 6e | ring.equal.[winfo.class.$w]."Men |
1a700 | 75 22 5d 7d 20 7b 0a 09 20 20 20 20 74 6b 5f 6d 65 6e 75 53 65 74 46 6f 63 75 73 20 24 77 0a 09 | u"]}.{......tk_menuSetFocus.$w.. |
1a720 | 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 77 69 6e 64 6f 77 29 20 24 77 0a 09 20 20 20 20 74 | ....set.tkPriv(window).$w......t |
1a740 | 6b 53 61 76 65 47 72 61 62 49 6e 66 6f 20 24 77 0a 09 20 20 20 20 67 72 61 62 20 2d 67 6c 6f 62 | kSaveGrabInfo.$w......grab.-glob |
1a760 | 61 6c 20 24 77 0a 09 20 20 20 20 74 6b 54 72 61 76 65 72 73 65 57 69 74 68 69 6e 4d 65 6e 75 20 | al.$w......tkTraverseWithinMenu. |
1a780 | 24 77 20 24 63 68 61 72 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 74 6b 4d 62 50 6f 73 74 | $w.$char..}.else.{......tkMbPost |
1a7a0 | 20 24 77 0a 09 20 20 20 20 74 6b 4d 65 6e 75 46 69 72 73 74 45 6e 74 72 79 20 5b 24 77 20 63 67 | .$w......tkMenuFirstEntry.[$w.cg |
1a7c0 | 65 74 20 2d 6d 65 6e 75 5d 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 46 69 72 73 74 4d | et.-menu]..}.....}.}..#.tkFirstM |
1a7e0 | 65 6e 75 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 74 72 61 76 65 72 73 65 | enu.--.#.This.procedure.traverse |
1a800 | 73 20 74 6f 20 74 68 65 20 66 69 72 73 74 20 6d 65 6e 75 62 75 74 74 6f 6e 20 69 6e 20 74 68 65 | s.to.the.first.menubutton.in.the |
1a820 | 20 74 6f 70 6c 65 76 65 6c 0a 23 20 66 6f 72 20 61 20 67 69 76 65 6e 20 77 69 6e 64 6f 77 2c 20 | .toplevel.#.for.a.given.window,. |
1a840 | 61 6e 64 20 70 6f 73 74 73 20 74 68 61 74 20 6d 65 6e 75 62 75 74 74 6f 6e 27 73 20 6d 65 6e 75 | and.posts.that.menubutton's.menu |
1a860 | 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 09 4e 61 6d 65 20 6f | ..#.#.Arguments:.#.w.-....Name.o |
1a880 | 66 20 61 20 77 69 6e 64 6f 77 2e 20 20 53 65 6c 65 63 74 73 20 77 68 69 63 68 20 74 6f 70 6c 65 | f.a.window...Selects.which.tople |
1a8a0 | 76 65 6c 0a 23 09 09 09 09 74 6f 20 73 65 61 72 63 68 20 66 6f 72 20 6d 65 6e 75 62 75 74 74 6f | vel.#....to.search.for.menubutto |
1a8c0 | 6e 73 2e 0a 0a 70 72 6f 63 20 74 6b 46 69 72 73 74 4d 65 6e 75 20 77 20 7b 0a 20 20 20 20 73 65 | ns...proc.tkFirstMenu.w.{.....se |
1a8e0 | 74 20 77 20 5b 74 6b 4d 65 6e 75 46 69 6e 64 20 5b 77 69 6e 66 6f 20 74 6f 70 6c 65 76 65 6c 20 | t.w.[tkMenuFind.[winfo.toplevel. |
1a900 | 24 77 5d 20 22 22 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 | $w].""].....if.{[string.compare. |
1a920 | 24 77 20 22 22 5d 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 77 69 | $w.""]}.{..if.{[string.equal.[wi |
1a940 | 6e 66 6f 20 63 6c 61 73 73 20 24 77 5d 20 22 4d 65 6e 75 22 5d 7d 20 7b 0a 09 20 20 20 20 74 6b | nfo.class.$w]."Menu"]}.{......tk |
1a960 | 5f 6d 65 6e 75 53 65 74 46 6f 63 75 73 20 24 77 0a 09 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 | _menuSetFocus.$w......set.tkPriv |
1a980 | 28 77 69 6e 64 6f 77 29 20 24 77 0a 09 20 20 20 20 74 6b 53 61 76 65 47 72 61 62 49 6e 66 6f 20 | (window).$w......tkSaveGrabInfo. |
1a9a0 | 24 77 0a 09 20 20 20 20 67 72 61 62 20 2d 67 6c 6f 62 61 6c 20 24 77 0a 09 20 20 20 20 74 6b 4d | $w......grab.-global.$w......tkM |
1a9c0 | 65 6e 75 46 69 72 73 74 45 6e 74 72 79 20 24 77 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 | enuFirstEntry.$w..}.else.{...... |
1a9e0 | 74 6b 4d 62 50 6f 73 74 20 24 77 0a 09 20 20 20 20 74 6b 4d 65 6e 75 46 69 72 73 74 45 6e 74 72 | tkMbPost.$w......tkMenuFirstEntr |
1aa00 | 79 20 5b 24 77 20 63 67 65 74 20 2d 6d 65 6e 75 5d 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 | y.[$w.cget.-menu]..}.....}.}..#. |
1aa20 | 74 6b 54 72 61 76 65 72 73 65 57 69 74 68 69 6e 4d 65 6e 75 0a 23 20 54 68 69 73 20 70 72 6f 63 | tkTraverseWithinMenu.#.This.proc |
1aa40 | 65 64 75 72 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 6b 65 79 62 6f 61 72 64 20 74 72 61 76 65 72 | edure.implements.keyboard.traver |
1aa60 | 73 61 6c 20 77 69 74 68 69 6e 20 61 20 6d 65 6e 75 2e 20 20 49 74 0a 23 20 73 65 61 72 63 68 65 | sal.within.a.menu...It.#.searche |
1aa80 | 73 20 66 6f 72 20 61 6e 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 6d 65 6e 75 20 74 68 61 74 20 | s.for.an.entry.in.the.menu.that. |
1aaa0 | 68 61 73 20 22 63 68 61 72 22 20 75 6e 64 65 72 6c 69 6e 65 64 2e 20 20 49 66 0a 23 20 73 75 63 | has."char".underlined...If.#.suc |
1aac0 | 68 20 61 6e 20 65 6e 74 72 79 20 69 73 20 66 6f 75 6e 64 2c 20 69 74 20 69 73 20 69 6e 76 6f 6b | h.an.entry.is.found,.it.is.invok |
1aae0 | 65 64 20 61 6e 64 20 74 68 65 20 6d 65 6e 75 20 69 73 20 75 6e 70 6f 73 74 65 64 2e 0a 23 0a 23 | ed.and.the.menu.is.unposted..#.# |
1ab00 | 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 | .Arguments:.#.w.-....The.name.of |
1ab20 | 20 74 68 65 20 6d 65 6e 75 20 77 69 64 67 65 74 2e 0a 23 20 63 68 61 72 20 2d 09 09 09 54 68 65 | .the.menu.widget..#.char.-...The |
1ab40 | 20 63 68 61 72 61 63 74 65 72 20 74 6f 20 6c 6f 6f 6b 20 66 6f 72 3b 20 20 63 61 73 65 20 69 73 | .character.to.look.for;..case.is |
1ab60 | 0a 23 09 09 09 09 69 67 6e 6f 72 65 64 2e 20 20 49 66 20 74 68 65 20 73 74 72 69 6e 67 20 69 73 | .#....ignored...If.the.string.is |
1ab80 | 20 65 6d 70 74 79 20 74 68 65 6e 0a 23 09 09 09 09 6e 6f 74 68 69 6e 67 20 68 61 70 70 65 6e 73 | .empty.then.#....nothing.happens |
1aba0 | 2e 0a 0a 70 72 6f 63 20 74 6b 54 72 61 76 65 72 73 65 57 69 74 68 69 6e 4d 65 6e 75 20 7b 77 20 | ...proc.tkTraverseWithinMenu.{w. |
1abc0 | 63 68 61 72 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 63 | char}.{.....if.{[string.equal.$c |
1abe0 | 68 61 72 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 | har.""]}.{..return.....}.....set |
1ac00 | 20 63 68 61 72 20 5b 73 74 72 69 6e 67 20 74 6f 6c 6f 77 65 72 20 24 63 68 61 72 5d 0a 20 20 20 | .char.[string.tolower.$char].... |
1ac20 | 20 73 65 74 20 6c 61 73 74 20 5b 24 77 20 69 6e 64 65 78 20 6c 61 73 74 5d 0a 20 20 20 20 69 66 | .set.last.[$w.index.last].....if |
1ac40 | 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6c 61 73 74 20 22 6e 6f 6e 65 22 5d 7d 20 7b | .{[string.equal.$last."none"]}.{ |
1ac60 | 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 20 7b 73 65 74 20 69 20 30 7d | ..return.....}.....for.{set.i.0} |
1ac80 | 20 7b 24 69 20 3c 3d 20 24 6c 61 73 74 7d 20 7b 69 6e 63 72 20 69 7d 20 7b 0a 09 69 66 20 7b 5b | .{$i.<=.$last}.{incr.i}.{..if.{[ |
1aca0 | 63 61 74 63 68 20 7b 73 65 74 20 63 68 61 72 32 20 5b 73 74 72 69 6e 67 20 69 6e 64 65 78 20 5c | catch.{set.char2.[string.index.\ |
1acc0 | 0a 09 09 5b 24 77 20 65 6e 74 72 79 63 67 65 74 20 24 69 20 2d 6c 61 62 65 6c 5d 20 5b 24 77 20 | ...[$w.entrycget.$i.-label].[$w. |
1ace0 | 65 6e 74 72 79 63 67 65 74 20 24 69 20 2d 75 6e 64 65 72 6c 69 6e 65 5d 5d 7d 5d 7d 20 7b 0a 09 | entrycget.$i.-underline]]}]}.{.. |
1ad00 | 20 20 20 20 63 6f 6e 74 69 6e 75 65 0a 09 7d 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 | ....continue..}..if.{[string.equ |
1ad20 | 61 6c 20 24 63 68 61 72 20 5b 73 74 72 69 6e 67 20 74 6f 6c 6f 77 65 72 20 24 63 68 61 72 32 5d | al.$char.[string.tolower.$char2] |
1ad40 | 5d 7d 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 | ]}.{......if.{[string.equal.[$w. |
1ad60 | 74 79 70 65 20 24 69 5d 20 22 63 61 73 63 61 64 65 22 5d 7d 20 7b 0a 09 09 24 77 20 61 63 74 69 | type.$i]."cascade"]}.{...$w.acti |
1ad80 | 76 61 74 65 20 24 69 0a 09 09 24 77 20 70 6f 73 74 63 61 73 63 61 64 65 20 61 63 74 69 76 65 0a | vate.$i...$w.postcascade.active. |
1ada0 | 09 09 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 20 24 77 20 3c 3c 4d 65 6e 75 53 65 6c 65 63 74 | ..event.generate.$w.<<MenuSelect |
1adc0 | 3e 3e 0a 09 09 73 65 74 20 6d 32 20 5b 24 77 20 65 6e 74 72 79 63 67 65 74 20 24 69 20 2d 6d 65 | >>...set.m2.[$w.entrycget.$i.-me |
1ade0 | 6e 75 5d 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 6d 32 20 22 22 | nu]...if.{[string.compare.$m2."" |
1ae00 | 5d 7d 20 7b 0a 09 09 20 20 20 20 74 6b 4d 65 6e 75 46 69 72 73 74 45 6e 74 72 79 20 24 6d 32 0a | ]}.{.......tkMenuFirstEntry.$m2. |
1ae20 | 09 09 7d 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 74 6b 4d 65 6e 75 55 6e 70 6f 73 74 | ..}......}.else.{...tkMenuUnpost |
1ae40 | 20 24 77 0a 09 09 75 70 6c 65 76 65 6c 20 23 30 20 5b 6c 69 73 74 20 24 77 20 69 6e 76 6f 6b 65 | .$w...uplevel.#0.[list.$w.invoke |
1ae60 | 20 24 69 5d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 72 65 74 75 72 6e 0a 09 7d 0a 20 20 20 20 7d | .$i]......}......return..}.....} |
1ae80 | 0a 7d 0a 0a 23 20 74 6b 4d 65 6e 75 46 69 72 73 74 45 6e 74 72 79 20 2d 2d 0a 23 20 47 69 76 65 | .}..#.tkMenuFirstEntry.--.#.Give |
1aea0 | 6e 20 61 20 6d 65 6e 75 2c 20 74 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 66 69 6e 64 73 20 74 | n.a.menu,.this.procedure.finds.t |
1aec0 | 68 65 20 66 69 72 73 74 20 65 6e 74 72 79 20 74 68 61 74 20 69 73 6e 27 74 0a 23 20 64 69 73 61 | he.first.entry.that.isn't.#.disa |
1aee0 | 62 6c 65 64 20 6f 72 20 61 20 74 65 61 72 2d 6f 66 66 20 6f 72 20 73 65 70 61 72 61 74 6f 72 2c | bled.or.a.tear-off.or.separator, |
1af00 | 20 61 6e 64 20 61 63 74 69 76 61 74 65 73 20 74 68 61 74 20 65 6e 74 72 79 2e 0a 23 20 48 6f 77 | .and.activates.that.entry..#.How |
1af20 | 65 76 65 72 2c 20 69 66 20 74 68 65 72 65 20 69 73 20 61 6c 72 65 61 64 79 20 61 6e 20 61 63 74 | ever,.if.there.is.already.an.act |
1af40 | 69 76 65 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 6d 65 6e 75 20 28 65 2e 67 2e 2c 0a 23 20 62 | ive.entry.in.the.menu.(e.g.,.#.b |
1af60 | 65 63 61 75 73 65 20 6f 66 20 61 20 70 72 65 76 69 6f 75 73 20 63 61 6c 6c 20 74 6f 20 74 6b 50 | ecause.of.a.previous.call.to.tkP |
1af80 | 6f 73 74 4f 76 65 72 50 6f 69 6e 74 29 20 74 68 65 6e 20 74 68 65 20 61 63 74 69 76 65 0a 23 20 | ostOverPoint).then.the.active.#. |
1afa0 | 65 6e 74 72 79 20 69 73 6e 27 74 20 63 68 61 6e 67 65 64 2e 20 20 54 68 69 73 20 70 72 6f 63 65 | entry.isn't.changed...This.proce |
1afc0 | 64 75 72 65 20 61 6c 73 6f 20 73 65 74 73 20 74 68 65 20 69 6e 70 75 74 20 66 6f 63 75 73 0a 23 | dure.also.sets.the.input.focus.# |
1afe0 | 20 74 6f 20 74 68 65 20 6d 65 6e 75 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 6d | .to.the.menu..#.#.Arguments:.#.m |
1b000 | 65 6e 75 20 2d 09 09 4e 61 6d 65 20 6f 66 20 74 68 65 20 6d 65 6e 75 20 77 69 6e 64 6f 77 20 28 | enu.-..Name.of.the.menu.window.( |
1b020 | 70 6f 73 73 69 62 6c 79 20 65 6d 70 74 79 29 2e 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e 75 46 69 72 | possibly.empty)...proc.tkMenuFir |
1b040 | 73 74 45 6e 74 72 79 20 6d 65 6e 75 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 | stEntry.menu.{.....if.{[string.e |
1b060 | 71 75 61 6c 20 24 6d 65 6e 75 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a | qual.$menu.""]}.{..return.....}. |
1b080 | 20 20 20 20 74 6b 5f 6d 65 6e 75 53 65 74 46 6f 63 75 73 20 24 6d 65 6e 75 0a 20 20 20 20 69 66 | ....tk_menuSetFocus.$menu.....if |
1b0a0 | 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 6d 65 6e 75 20 69 6e 64 65 78 20 61 | .{[string.compare.[$menu.index.a |
1b0c0 | 63 74 69 76 65 5d 20 22 6e 6f 6e 65 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a | ctive]."none"]}.{..return.....}. |
1b0e0 | 20 20 20 20 73 65 74 20 6c 61 73 74 20 5b 24 6d 65 6e 75 20 69 6e 64 65 78 20 6c 61 73 74 5d 0a | ....set.last.[$menu.index.last]. |
1b100 | 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6c 61 73 74 20 22 6e 6f 6e | ....if.{[string.equal.$last."non |
1b120 | 65 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 20 7b 73 65 | e"]}.{..return.....}.....for.{se |
1b140 | 74 20 69 20 30 7d 20 7b 24 69 20 3c 3d 20 24 6c 61 73 74 7d 20 7b 69 6e 63 72 20 69 7d 20 7b 0a | t.i.0}.{$i.<=.$last}.{incr.i}.{. |
1b160 | 09 69 66 20 7b 28 5b 63 61 74 63 68 20 7b 73 65 74 20 73 74 61 74 65 20 5b 24 6d 65 6e 75 20 65 | .if.{([catch.{set.state.[$menu.e |
1b180 | 6e 74 72 79 63 67 65 74 20 24 69 20 2d 73 74 61 74 65 5d 7d 5d 20 3d 3d 20 30 29 20 5c 0a 09 09 | ntrycget.$i.-state]}].==.0).\... |
1b1a0 | 26 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 73 74 61 74 65 20 22 64 69 73 61 62 | &&.[string.compare.$state."disab |
1b1c0 | 6c 65 64 22 5d 20 5c 0a 09 09 26 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 6d | led"].\...&&.[string.compare.[$m |
1b1e0 | 65 6e 75 20 74 79 70 65 20 24 69 5d 20 22 74 65 61 72 6f 66 66 22 5d 7d 20 7b 0a 09 20 20 20 20 | enu.type.$i]."tearoff"]}.{...... |
1b200 | 24 6d 65 6e 75 20 61 63 74 69 76 61 74 65 20 24 69 0a 09 20 20 20 20 74 6b 47 65 6e 65 72 61 74 | $menu.activate.$i......tkGenerat |
1b220 | 65 4d 65 6e 75 53 65 6c 65 63 74 20 24 6d 65 6e 75 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 | eMenuSelect.$menu......if.{[stri |
1b240 | 6e 67 20 65 71 75 61 6c 20 5b 24 6d 65 6e 75 20 74 79 70 65 20 24 69 5d 20 22 63 61 73 63 61 64 | ng.equal.[$menu.type.$i]."cascad |
1b260 | 65 22 5d 7d 20 7b 0a 09 09 73 65 74 20 63 61 73 63 61 64 65 20 5b 24 6d 65 6e 75 20 65 6e 74 72 | e"]}.{...set.cascade.[$menu.entr |
1b280 | 79 63 67 65 74 20 24 69 20 2d 6d 65 6e 75 5d 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f | ycget.$i.-menu]...if.{[string.co |
1b2a0 | 6d 70 61 72 65 20 24 63 61 73 63 61 64 65 20 22 22 5d 7d 20 7b 0a 09 09 20 20 20 20 24 6d 65 6e | mpare.$cascade.""]}.{.......$men |
1b2c0 | 75 20 70 6f 73 74 63 61 73 63 61 64 65 20 24 69 0a 09 09 20 20 20 20 74 6b 4d 65 6e 75 46 69 72 | u.postcascade.$i.......tkMenuFir |
1b2e0 | 73 74 45 6e 74 72 79 20 24 63 61 73 63 61 64 65 0a 09 09 7d 0a 09 20 20 20 20 7d 0a 09 20 20 20 | stEntry.$cascade...}......}..... |
1b300 | 20 72 65 74 75 72 6e 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 4d 65 6e 75 46 69 6e 64 | .return..}.....}.}..#.tkMenuFind |
1b320 | 4e 61 6d 65 20 2d 2d 0a 23 20 47 69 76 65 6e 20 61 20 6d 65 6e 75 20 61 6e 64 20 61 20 74 65 78 | Name.--.#.Given.a.menu.and.a.tex |
1b340 | 74 20 73 74 72 69 6e 67 2c 20 72 65 74 75 72 6e 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 | t.string,.return.the.index.of.th |
1b360 | 65 20 6d 65 6e 75 20 65 6e 74 72 79 0a 23 20 74 68 61 74 20 64 69 73 70 6c 61 79 73 20 74 68 65 | e.menu.entry.#.that.displays.the |
1b380 | 20 73 74 72 69 6e 67 20 61 73 20 69 74 73 20 6c 61 62 65 6c 2e 20 20 49 66 20 74 68 65 72 65 20 | .string.as.its.label...If.there. |
1b3a0 | 69 73 20 6e 6f 20 73 75 63 68 20 65 6e 74 72 79 2c 0a 23 20 72 65 74 75 72 6e 20 61 6e 20 65 6d | is.no.such.entry,.#.return.an.em |
1b3c0 | 70 74 79 20 73 74 72 69 6e 67 2e 20 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 74 | pty.string...This.procedure.is.t |
1b3e0 | 72 69 63 6b 79 20 62 65 63 61 75 73 65 20 73 6f 6d 65 20 6e 61 6d 65 73 0a 23 20 6c 69 6b 65 20 | ricky.because.some.names.#.like. |
1b400 | 22 61 63 74 69 76 65 22 20 68 61 76 65 20 61 20 73 70 65 63 69 61 6c 20 6d 65 61 6e 69 6e 67 20 | "active".have.a.special.meaning. |
1b420 | 69 6e 20 6d 65 6e 75 20 63 6f 6d 6d 61 6e 64 73 2c 20 73 6f 20 77 65 20 63 61 6e 27 74 0a 23 20 | in.menu.commands,.so.we.can't.#. |
1b440 | 61 6c 77 61 79 73 20 75 73 65 20 74 68 65 20 22 69 6e 64 65 78 22 20 77 69 64 67 65 74 20 63 6f | always.use.the."index".widget.co |
1b460 | 6d 6d 61 6e 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 6d 65 6e 75 20 2d 09 09 | mmand..#.#.Arguments:.#.menu.-.. |
1b480 | 4e 61 6d 65 20 6f 66 20 74 68 65 20 6d 65 6e 75 20 77 69 64 67 65 74 2e 0a 23 20 73 20 2d 09 09 | Name.of.the.menu.widget..#.s.-.. |
1b4a0 | 09 53 74 72 69 6e 67 20 74 6f 20 6c 6f 6f 6b 20 66 6f 72 2e 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e | .String.to.look.for...proc.tkMen |
1b4c0 | 75 46 69 6e 64 4e 61 6d 65 20 7b 6d 65 6e 75 20 73 7d 20 7b 0a 20 20 20 20 73 65 74 20 69 20 22 | uFindName.{menu.s}.{.....set.i." |
1b4e0 | 22 0a 20 20 20 20 69 66 20 7b 21 5b 72 65 67 65 78 70 20 7b 5e 61 63 74 69 76 65 24 7c 5e 6c 61 | ".....if.{![regexp.{^active$|^la |
1b500 | 73 74 24 7c 5e 6e 6f 6e 65 24 7c 5e 5b 30 2d 39 5d 7c 5e 40 7d 20 24 73 5d 7d 20 7b 0a 09 63 61 | st$|^none$|^[0-9]|^@}.$s]}.{..ca |
1b520 | 74 63 68 20 7b 73 65 74 20 69 20 5b 24 6d 65 6e 75 20 69 6e 64 65 78 20 24 73 5d 7d 0a 09 72 65 | tch.{set.i.[$menu.index.$s]}..re |
1b540 | 74 75 72 6e 20 24 69 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 6c 61 73 74 20 5b 24 6d 65 6e | turn.$i.....}.....set.last.[$men |
1b560 | 75 20 69 6e 64 65 78 20 6c 61 73 74 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 | u.index.last].....if.{[string.eq |
1b580 | 75 61 6c 20 24 6c 61 73 74 20 22 6e 6f 6e 65 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 | ual.$last."none"]}.{..return.... |
1b5a0 | 20 7d 0a 20 20 20 20 66 6f 72 20 7b 73 65 74 20 69 20 30 7d 20 7b 24 69 20 3c 3d 20 24 6c 61 73 | .}.....for.{set.i.0}.{$i.<=.$las |
1b5c0 | 74 7d 20 7b 69 6e 63 72 20 69 7d 20 7b 0a 09 69 66 20 7b 21 5b 63 61 74 63 68 20 7b 24 6d 65 6e | t}.{incr.i}.{..if.{![catch.{$men |
1b5e0 | 75 20 65 6e 74 72 79 63 67 65 74 20 24 69 20 2d 6c 61 62 65 6c 7d 20 6c 61 62 65 6c 5d 7d 20 7b | u.entrycget.$i.-label}.label]}.{ |
1b600 | 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6c 61 62 65 6c 20 24 | ......if.{[string.equal.$label.$ |
1b620 | 73 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 24 69 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 | s]}.{...return.$i......}..}..... |
1b640 | 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 22 22 0a 7d 0a 0a 23 20 74 6b 50 6f 73 74 4f 76 65 72 50 | }.....return."".}..#.tkPostOverP |
1b660 | 6f 69 6e 74 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 70 6f 73 74 73 20 61 | oint.--.#.This.procedure.posts.a |
1b680 | 20 67 69 76 65 6e 20 6d 65 6e 75 20 73 75 63 68 20 74 68 61 74 20 61 20 67 69 76 65 6e 20 65 6e | .given.menu.such.that.a.given.en |
1b6a0 | 74 72 79 20 69 6e 20 74 68 65 0a 23 20 6d 65 6e 75 20 69 73 20 63 65 6e 74 65 72 65 64 20 6f 76 | try.in.the.#.menu.is.centered.ov |
1b6c0 | 65 72 20 61 20 67 69 76 65 6e 20 70 6f 69 6e 74 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 77 69 6e | er.a.given.point.in.the.root.win |
1b6e0 | 64 6f 77 2e 20 20 49 74 20 61 6c 73 6f 0a 23 20 61 63 74 69 76 61 74 65 73 20 74 68 65 20 67 69 | dow...It.also.#.activates.the.gi |
1b700 | 76 65 6e 20 65 6e 74 72 79 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 6d 65 6e 75 | ven.entry..#.#.Arguments:.#.menu |
1b720 | 20 2d 09 09 4d 65 6e 75 20 74 6f 20 70 6f 73 74 2e 0a 23 20 78 2c 20 79 20 2d 09 09 52 6f 6f 74 | .-..Menu.to.post..#.x,.y.-..Root |
1b740 | 20 63 6f 6f 72 64 69 6e 61 74 65 73 20 6f 66 20 70 6f 69 6e 74 2e 0a 23 20 65 6e 74 72 79 20 2d | .coordinates.of.point..#.entry.- |
1b760 | 09 09 49 6e 64 65 78 20 6f 66 20 65 6e 74 72 79 20 77 69 74 68 69 6e 20 6d 65 6e 75 20 74 6f 20 | ..Index.of.entry.within.menu.to. |
1b780 | 63 65 6e 74 65 72 20 6f 76 65 72 20 28 78 2c 79 29 2e 0a 23 09 09 09 49 66 20 6f 6d 69 74 74 65 | center.over.(x,y)..#...If.omitte |
1b7a0 | 64 20 6f 72 20 73 70 65 63 69 66 69 65 64 20 61 73 20 7b 7d 2c 20 74 68 65 6e 20 74 68 65 20 6d | d.or.specified.as.{},.then.the.m |
1b7c0 | 65 6e 75 27 73 0a 23 09 09 09 75 70 70 65 72 2d 6c 65 66 74 20 63 6f 72 6e 65 72 20 67 6f 65 73 | enu's.#...upper-left.corner.goes |
1b7e0 | 20 61 74 20 28 78 2c 79 29 2e 0a 0a 70 72 6f 63 20 74 6b 50 6f 73 74 4f 76 65 72 50 6f 69 6e 74 | .at.(x,y)...proc.tkPostOverPoint |
1b800 | 20 7b 6d 65 6e 75 20 78 20 79 20 7b 65 6e 74 72 79 20 7b 7d 7d 7d 20 20 7b 0a 20 20 20 20 67 6c | .{menu.x.y.{entry.{}}}..{.....gl |
1b820 | 6f 62 61 6c 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 0a 20 20 20 20 0a 20 20 20 20 69 66 20 7b 5b | obal.tcl_platform..........if.{[ |
1b840 | 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 65 6e 74 72 79 20 7b 7d 5d 7d 20 7b 0a 09 69 66 | string.compare.$entry.{}]}.{..if |
1b860 | 20 7b 24 65 6e 74 72 79 20 3d 3d 20 5b 24 6d 65 6e 75 20 69 6e 64 65 78 20 6c 61 73 74 5d 7d 20 | .{$entry.==.[$menu.index.last]}. |
1b880 | 7b 0a 09 20 20 20 20 69 6e 63 72 20 79 20 5b 65 78 70 72 20 7b 2d 28 5b 24 6d 65 6e 75 20 79 70 | {......incr.y.[expr.{-([$menu.yp |
1b8a0 | 6f 73 69 74 69 6f 6e 20 24 65 6e 74 72 79 5d 20 5c 0a 09 09 20 20 20 20 2b 20 5b 77 69 6e 66 6f | osition.$entry].\.......+.[winfo |
1b8c0 | 20 72 65 71 68 65 69 67 68 74 20 24 6d 65 6e 75 5d 29 2f 32 7d 5d 0a 09 7d 20 65 6c 73 65 20 7b | .reqheight.$menu])/2}]..}.else.{ |
1b8e0 | 0a 09 20 20 20 20 69 6e 63 72 20 79 20 5b 65 78 70 72 20 7b 2d 28 5b 24 6d 65 6e 75 20 79 70 6f | ......incr.y.[expr.{-([$menu.ypo |
1b900 | 73 69 74 69 6f 6e 20 24 65 6e 74 72 79 5d 20 5c 0a 09 09 20 20 20 20 2b 20 5b 24 6d 65 6e 75 20 | sition.$entry].\.......+.[$menu. |
1b920 | 79 70 6f 73 69 74 69 6f 6e 20 5b 65 78 70 72 20 7b 24 65 6e 74 72 79 2b 31 7d 5d 5d 29 2f 32 7d | yposition.[expr.{$entry+1}]])/2} |
1b940 | 5d 0a 09 7d 0a 09 69 6e 63 72 20 78 20 5b 65 78 70 72 20 7b 2d 5b 77 69 6e 66 6f 20 72 65 71 77 | ]..}..incr.x.[expr.{-[winfo.reqw |
1b960 | 69 64 74 68 20 24 6d 65 6e 75 5d 2f 32 7d 5d 0a 20 20 20 20 7d 0a 20 20 20 20 24 6d 65 6e 75 20 | idth.$menu]/2}].....}.....$menu. |
1b980 | 70 6f 73 74 20 24 78 20 24 79 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 | post.$x.$y.....if.{[string.compa |
1b9a0 | 72 65 20 24 65 6e 74 72 79 20 7b 7d 5d 20 5c 0a 09 20 20 20 20 26 26 20 5b 73 74 72 69 6e 67 20 | re.$entry.{}].\......&&.[string. |
1b9c0 | 63 6f 6d 70 61 72 65 20 5b 24 6d 65 6e 75 20 65 6e 74 72 79 63 67 65 74 20 24 65 6e 74 72 79 20 | compare.[$menu.entrycget.$entry. |
1b9e0 | 2d 73 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 24 6d 65 6e 75 20 61 63 | -state]."disabled"]}.{..$menu.ac |
1ba00 | 74 69 76 61 74 65 20 24 65 6e 74 72 79 0a 09 74 6b 47 65 6e 65 72 61 74 65 4d 65 6e 75 53 65 6c | tivate.$entry..tkGenerateMenuSel |
1ba20 | 65 63 74 20 24 6d 65 6e 75 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 53 61 76 65 47 72 61 62 49 | ect.$menu.....}.}..#.tkSaveGrabI |
1ba40 | 6e 66 6f 20 2d 2d 0a 23 20 53 65 74 73 20 74 68 65 20 76 61 72 69 61 62 6c 65 73 20 74 6b 50 72 | nfo.--.#.Sets.the.variables.tkPr |
1ba60 | 69 76 28 6f 6c 64 47 72 61 62 29 20 61 6e 64 20 74 6b 50 72 69 76 28 67 72 61 62 53 74 61 74 75 | iv(oldGrab).and.tkPriv(grabStatu |
1ba80 | 73 29 20 74 6f 20 72 65 63 6f 72 64 0a 23 20 74 68 65 20 73 74 61 74 65 20 6f 66 20 61 6e 79 20 | s).to.record.#.the.state.of.any. |
1baa0 | 65 78 69 73 74 69 6e 67 20 67 72 61 62 20 6f 6e 20 74 68 65 20 77 27 73 20 64 69 73 70 6c 61 79 | existing.grab.on.the.w's.display |
1bac0 | 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 4e 61 6d 65 20 6f 66 | ..#.#.Arguments:.#.w.-...Name.of |
1bae0 | 20 61 20 77 69 6e 64 6f 77 3b 20 20 75 73 65 64 20 74 6f 20 73 65 6c 65 63 74 20 74 68 65 20 64 | .a.window;..used.to.select.the.d |
1bb00 | 69 73 70 6c 61 79 0a 23 09 09 09 77 68 6f 73 65 20 67 72 61 62 20 69 6e 66 6f 72 6d 61 74 69 6f | isplay.#...whose.grab.informatio |
1bb20 | 6e 20 69 73 20 74 6f 20 62 65 20 72 65 63 6f 72 64 65 64 2e 0a 0a 70 72 6f 63 20 74 6b 53 61 76 | n.is.to.be.recorded...proc.tkSav |
1bb40 | 65 47 72 61 62 49 6e 66 6f 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a | eGrabInfo.w.{.....global.tkPriv. |
1bb60 | 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 6f 6c 64 47 72 61 62 29 20 5b 67 72 61 62 20 63 75 | ....set.tkPriv(oldGrab).[grab.cu |
1bb80 | 72 72 65 6e 74 20 24 77 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 | rrent.$w].....if.{[string.compar |
1bba0 | 65 20 24 74 6b 50 72 69 76 28 6f 6c 64 47 72 61 62 29 20 22 22 5d 7d 20 7b 0a 09 73 65 74 20 74 | e.$tkPriv(oldGrab).""]}.{..set.t |
1bbc0 | 6b 50 72 69 76 28 67 72 61 62 53 74 61 74 75 73 29 20 5b 67 72 61 62 20 73 74 61 74 75 73 20 24 | kPriv(grabStatus).[grab.status.$ |
1bbe0 | 74 6b 50 72 69 76 28 6f 6c 64 47 72 61 62 29 5d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 52 65 | tkPriv(oldGrab)].....}.}..#.tkRe |
1bc00 | 73 74 6f 72 65 4f 6c 64 47 72 61 62 20 2d 2d 0a 23 20 52 65 73 74 6f 72 65 73 20 74 68 65 20 67 | storeOldGrab.--.#.Restores.the.g |
1bc20 | 72 61 62 20 74 6f 20 77 68 61 74 20 69 74 20 77 61 73 20 62 65 66 6f 72 65 20 54 6b 53 61 76 65 | rab.to.what.it.was.before.TkSave |
1bc40 | 47 72 61 62 49 6e 66 6f 20 77 61 73 20 63 61 6c 6c 65 64 2e 0a 23 0a 0a 70 72 6f 63 20 74 6b 52 | GrabInfo.was.called..#..proc.tkR |
1bc60 | 65 73 74 6f 72 65 4f 6c 64 47 72 61 62 20 7b 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b | estoreOldGrab.{}.{.....global.tk |
1bc80 | 50 72 69 76 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 | Priv......if.{[string.compare.$t |
1bca0 | 6b 50 72 69 76 28 6f 6c 64 47 72 61 62 29 20 22 22 5d 7d 20 7b 0a 0a 20 20 20 20 09 23 20 42 65 | kPriv(oldGrab).""]}.{.......#.Be |
1bcc0 | 20 63 61 72 65 66 75 6c 20 72 65 73 74 6f 72 69 6e 67 20 74 68 65 20 6f 6c 64 20 67 72 61 62 2c | .careful.restoring.the.old.grab, |
1bce0 | 20 73 69 6e 63 65 20 69 74 27 73 20 77 69 6e 64 6f 77 20 6d 61 79 20 6e 6f 74 0a 09 23 20 62 65 | .since.it's.window.may.not..#.be |
1bd00 | 20 76 69 73 69 62 6c 65 20 61 6e 79 6d 6f 72 65 2e 0a 0a 09 63 61 74 63 68 20 7b 0a 20 20 20 20 | .visible.anymore....catch.{..... |
1bd20 | 20 20 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 | ......if.{[string.equal.$tkPriv( |
1bd40 | 67 72 61 62 53 74 61 74 75 73 29 20 22 67 6c 6f 62 61 6c 22 5d 7d 20 7b 0a 09 09 67 72 61 62 20 | grabStatus)."global"]}.{...grab. |
1bd60 | 73 65 74 20 2d 67 6c 6f 62 61 6c 20 24 74 6b 50 72 69 76 28 6f 6c 64 47 72 61 62 29 0a 09 20 20 | set.-global.$tkPriv(oldGrab).... |
1bd80 | 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 67 72 61 62 20 73 65 74 20 24 74 6b 50 72 69 76 28 6f 6c | ..}.else.{...grab.set.$tkPriv(ol |
1bda0 | 64 47 72 61 62 29 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 73 65 74 20 74 6b 50 72 69 76 28 6f 6c 64 | dGrab)......}..}..set.tkPriv(old |
1bdc0 | 47 72 61 62 29 20 22 22 0a 20 20 20 20 7d 0a 7d 0a 0a 70 72 6f 63 20 74 6b 5f 6d 65 6e 75 53 65 | Grab)."".....}.}..proc.tk_menuSe |
1bde0 | 74 46 6f 63 75 73 20 7b 6d 65 6e 75 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 | tFocus.{menu}.{.....global.tkPri |
1be00 | 76 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 6b 50 72 69 76 28 66 | v.....if.{![info.exists.tkPriv(f |
1be20 | 6f 63 75 73 29 5d 20 7c 7c 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 | ocus)].||.[string.equal.$tkPriv( |
1be40 | 66 6f 63 75 73 29 20 7b 7d 5d 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 66 6f 63 75 73 29 | focus).{}]}.{..set.tkPriv(focus) |
1be60 | 20 5b 66 6f 63 75 73 5d 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 63 75 73 20 24 6d 65 6e 75 0a 7d | .[focus].....}.....focus.$menu.} |
1be80 | 0a 20 20 20 20 0a 70 72 6f 63 20 74 6b 47 65 6e 65 72 61 74 65 4d 65 6e 75 53 65 6c 65 63 74 20 | ......proc.tkGenerateMenuSelect. |
1bea0 | 7b 6d 65 6e 75 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 | {menu}.{.....global.tkPriv...... |
1bec0 | 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 61 63 74 69 76 65 | if.{[string.equal.$tkPriv(active |
1bee0 | 4d 65 6e 75 29 20 24 6d 65 6e 75 5d 20 5c 0a 20 20 20 20 20 20 20 20 20 20 26 26 20 5b 73 74 72 | Menu).$menu].\...........&&.[str |
1bf00 | 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 61 63 74 69 76 65 49 74 65 6d 29 20 5b 24 | ing.equal.$tkPriv(activeItem).[$ |
1bf20 | 6d 65 6e 75 20 69 6e 64 65 78 20 61 63 74 69 76 65 5d 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 | menu.index.active]]}.{..return.. |
1bf40 | 20 20 20 7d 0a 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 61 63 74 69 76 65 4d 65 6e 75 29 | ...}......set.tkPriv(activeMenu) |
1bf60 | 20 24 6d 65 6e 75 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 61 63 74 69 76 65 49 74 65 6d | .$menu.....set.tkPriv(activeItem |
1bf80 | 29 20 5b 24 6d 65 6e 75 20 69 6e 64 65 78 20 61 63 74 69 76 65 5d 0a 20 20 20 20 65 76 65 6e 74 | ).[$menu.index.active].....event |
1bfa0 | 20 67 65 6e 65 72 61 74 65 20 24 6d 65 6e 75 20 3c 3c 4d 65 6e 75 53 65 6c 65 63 74 3e 3e 0a 7d | .generate.$menu.<<MenuSelect>>.} |
1bfc0 | 0a 0a 23 20 74 6b 5f 70 6f 70 75 70 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 | ..#.tk_popup.--.#.This.procedure |
1bfe0 | 20 70 6f 70 73 20 75 70 20 61 20 6d 65 6e 75 20 61 6e 64 20 73 65 74 73 20 74 68 69 6e 67 73 20 | .pops.up.a.menu.and.sets.things. |
1c000 | 75 70 20 66 6f 72 20 74 72 61 76 65 72 73 69 6e 67 0a 23 20 74 68 65 20 6d 65 6e 75 20 61 6e 64 | up.for.traversing.#.the.menu.and |
1c020 | 20 69 74 73 20 73 75 62 6d 65 6e 75 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 | .its.submenus..#.#.Arguments:.#. |
1c040 | 6d 65 6e 75 20 2d 09 09 4e 61 6d 65 20 6f 66 20 74 68 65 20 6d 65 6e 75 20 74 6f 20 62 65 20 70 | menu.-..Name.of.the.menu.to.be.p |
1c060 | 6f 70 70 65 64 20 75 70 2e 0a 23 20 78 2c 20 79 20 2d 09 09 52 6f 6f 74 20 63 6f 6f 72 64 69 6e | opped.up..#.x,.y.-..Root.coordin |
1c080 | 61 74 65 73 20 61 74 20 77 68 69 63 68 20 74 6f 20 70 6f 70 20 75 70 20 74 68 65 0a 23 09 09 09 | ates.at.which.to.pop.up.the.#... |
1c0a0 | 6d 65 6e 75 2e 0a 23 20 65 6e 74 72 79 20 2d 09 09 49 6e 64 65 78 20 6f 66 20 61 20 6d 65 6e 75 | menu..#.entry.-..Index.of.a.menu |
1c0c0 | 20 65 6e 74 72 79 20 74 6f 20 63 65 6e 74 65 72 20 6f 76 65 72 20 28 78 2c 79 29 2e 0a 23 09 09 | .entry.to.center.over.(x,y)..#.. |
1c0e0 | 09 49 66 20 6f 6d 69 74 74 65 64 20 6f 72 20 73 70 65 63 69 66 69 65 64 20 61 73 20 7b 7d 2c 20 | .If.omitted.or.specified.as.{},. |
1c100 | 74 68 65 6e 20 6d 65 6e 75 27 73 0a 23 09 09 09 75 70 70 65 72 2d 6c 65 66 74 20 63 6f 72 6e 65 | then.menu's.#...upper-left.corne |
1c120 | 72 20 67 6f 65 73 20 61 74 20 28 78 2c 79 29 2e 0a 0a 70 72 6f 63 20 74 6b 5f 70 6f 70 75 70 20 | r.goes.at.(x,y)...proc.tk_popup. |
1c140 | 7b 6d 65 6e 75 20 78 20 79 20 7b 65 6e 74 72 79 20 7b 7d 7d 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 | {menu.x.y.{entry.{}}}.{.....glob |
1c160 | 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 70 6c 61 74 66 6f 72 | al.tkPriv.....global.tcl_platfor |
1c180 | 6d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 6b 50 72 69 | m.....if.{[string.compare.$tkPri |
1c1a0 | 76 28 70 6f 70 75 70 29 20 22 22 5d 20 5c 0a 09 20 20 20 20 7c 7c 20 5b 73 74 72 69 6e 67 20 63 | v(popup).""].\......||.[string.c |
1c1c0 | 6f 6d 70 61 72 65 20 24 74 6b 50 72 69 76 28 70 6f 73 74 65 64 4d 62 29 20 22 22 5d 7d 20 7b 0a | ompare.$tkPriv(postedMb).""]}.{. |
1c1e0 | 09 74 6b 4d 65 6e 75 55 6e 70 6f 73 74 20 7b 7d 0a 20 20 20 20 7d 0a 20 20 20 20 74 6b 50 6f 73 | .tkMenuUnpost.{}.....}.....tkPos |
1c200 | 74 4f 76 65 72 50 6f 69 6e 74 20 24 6d 65 6e 75 20 24 78 20 24 79 20 24 65 6e 74 72 79 0a 20 20 | tOverPoint.$menu.$x.$y.$entry... |
1c220 | 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 | ..if.{[string.equal.$tcl_platfor |
1c240 | 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 75 6e 69 78 22 5d 20 5c 0a 09 20 20 20 20 26 26 20 5b 77 | m(platform)."unix"].\......&&.[w |
1c260 | 69 6e 66 6f 20 76 69 65 77 61 62 6c 65 20 24 6d 65 6e 75 5d 7d 20 7b 0a 20 20 20 20 20 20 20 20 | info.viewable.$menu]}.{......... |
1c280 | 74 6b 53 61 76 65 47 72 61 62 49 6e 66 6f 20 24 6d 65 6e 75 0a 09 67 72 61 62 20 2d 67 6c 6f 62 | tkSaveGrabInfo.$menu..grab.-glob |
1c2a0 | 61 6c 20 24 6d 65 6e 75 0a 09 73 65 74 20 74 6b 50 72 69 76 28 70 6f 70 75 70 29 20 24 6d 65 6e | al.$menu..set.tkPriv(popup).$men |
1c2c0 | 75 0a 09 74 6b 5f 6d 65 6e 75 53 65 74 46 6f 63 75 73 20 24 6d 65 6e 75 0a 20 20 20 20 7d 0a 7d | u..tk_menuSetFocus.$menu.....}.} |
1c2e0 | 0a 00 00 06 7b 23 20 6f 70 74 4d 65 6e 75 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 66 | ....{#.optMenu.tcl.--.#.#.This.f |
1c300 | 69 6c 65 20 64 65 66 69 6e 65 73 20 74 68 65 20 70 72 6f 63 65 64 75 72 65 20 74 6b 5f 6f 70 74 | ile.defines.the.procedure.tk_opt |
1c320 | 69 6f 6e 4d 65 6e 75 2c 20 77 68 69 63 68 20 63 72 65 61 74 65 73 0a 23 20 61 6e 20 6f 70 74 69 | ionMenu,.which.creates.#.an.opti |
1c340 | 6f 6e 20 62 75 74 74 6f 6e 20 61 6e 64 20 69 74 73 20 61 73 73 6f 63 69 61 74 65 64 20 6d 65 6e | on.button.and.its.associated.men |
1c360 | 75 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 6f 70 74 4d 65 6e 75 2e 74 63 | u..#.#.RCS:.@(#).$Id:.optMenu.tc |
1c380 | 6c 2c 76 20 31 2e 33 20 31 39 39 38 2f 30 39 2f 31 34 20 31 38 3a 32 33 3a 32 34 20 73 74 61 6e | l,v.1.3.1998/09/14.18:23:24.stan |
1c3a0 | 74 6f 6e 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 | ton.Exp.$.#.#.Copyright.(c).1994 |
1c3c0 | 20 54 68 65 20 52 65 67 65 6e 74 73 20 6f 66 20 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f | .The.Regents.of.the.University.o |
1c3e0 | 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 | f.California..#.Copyright.(c).19 |
1c400 | 39 34 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 | 94.Sun.Microsystems,.Inc..#.#.Se |
1c420 | 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 | e.the.file."license.terms".for.i |
1c440 | 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 | nformation.on.usage.and.redistri |
1c460 | 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 | bution.#.of.this.file,.and.for.a |
1c480 | 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 | .DISCLAIMER.OF.ALL.WARRANTIES..# |
1c4a0 | 0a 0a 23 20 74 6b 5f 6f 70 74 69 6f 6e 4d 65 6e 75 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 | ..#.tk_optionMenu.--.#.This.proc |
1c4c0 | 65 64 75 72 65 20 63 72 65 61 74 65 73 20 61 6e 20 6f 70 74 69 6f 6e 20 62 75 74 74 6f 6e 20 6e | edure.creates.an.option.button.n |
1c4e0 | 61 6d 65 64 20 24 77 20 61 6e 64 20 61 6e 20 61 73 73 6f 63 69 61 74 65 64 0a 23 20 6d 65 6e 75 | amed.$w.and.an.associated.#.menu |
1c500 | 2e 20 20 54 6f 67 65 74 68 65 72 20 74 68 65 79 20 70 72 6f 76 69 64 65 20 74 68 65 20 66 75 6e | ...Together.they.provide.the.fun |
1c520 | 63 74 69 6f 6e 61 6c 69 74 79 20 6f 66 20 4d 6f 74 69 66 20 6f 70 74 69 6f 6e 20 6d 65 6e 75 73 | ctionality.of.Motif.option.menus |
1c540 | 3a 0a 23 20 74 68 65 79 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 73 65 6c 65 63 74 20 6f | :.#.they.can.be.used.to.select.o |
1c560 | 6e 65 20 6f 66 20 6d 61 6e 79 20 76 61 6c 75 65 73 2c 20 61 6e 64 20 74 68 65 20 63 75 72 72 65 | ne.of.many.values,.and.the.curre |
1c580 | 6e 74 20 76 61 6c 75 65 0a 23 20 61 70 70 65 61 72 73 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c | nt.value.#.appears.in.the.global |
1c5a0 | 20 76 61 72 69 61 62 6c 65 20 76 61 72 4e 61 6d 65 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 69 6e | .variable.varName,.as.well.as.in |
1c5c0 | 20 74 68 65 20 74 65 78 74 20 6f 66 0a 23 20 74 68 65 20 6f 70 74 69 6f 6e 20 6d 65 6e 75 62 75 | .the.text.of.#.the.option.menubu |
1c5e0 | 74 74 6f 6e 2e 20 20 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 6d 65 6e 75 20 69 73 20 72 | tton...The.name.of.the.menu.is.r |
1c600 | 65 74 75 72 6e 65 64 20 61 73 20 74 68 65 0a 23 20 70 72 6f 63 65 64 75 72 65 27 73 20 72 65 73 | eturned.as.the.#.procedure's.res |
1c620 | 75 6c 74 2c 20 73 6f 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 65 72 20 63 61 6e 20 75 73 65 20 | ult,.so.that.the.caller.can.use. |
1c640 | 69 74 20 74 6f 20 63 68 61 6e 67 65 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 0a 23 20 6f 70 74 | it.to.change.configuration.#.opt |
1c660 | 69 6f 6e 73 20 6f 6e 20 74 68 65 20 6d 65 6e 75 20 6f 72 20 6f 74 68 65 72 77 69 73 65 20 6d 61 | ions.on.the.menu.or.otherwise.ma |
1c680 | 6e 69 70 75 6c 61 74 65 20 69 74 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 | nipulate.it..#.#.Arguments:.#.w. |
1c6a0 | 2d 09 09 09 54 68 65 20 6e 61 6d 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 65 20 6d 65 6e 75 | -...The.name.to.use.for.the.menu |
1c6c0 | 62 75 74 74 6f 6e 2e 0a 23 20 76 61 72 4e 61 6d 65 20 2d 09 09 47 6c 6f 62 61 6c 20 76 61 72 69 | button..#.varName.-..Global.vari |
1c6e0 | 61 62 6c 65 20 74 6f 20 68 6f 6c 64 20 74 68 65 20 63 75 72 72 65 6e 74 6c 79 20 73 65 6c 65 63 | able.to.hold.the.currently.selec |
1c700 | 74 65 64 20 76 61 6c 75 65 2e 0a 23 20 66 69 72 73 74 56 61 6c 75 65 20 2d 09 09 46 69 72 73 74 | ted.value..#.firstValue.-..First |
1c720 | 20 6f 66 20 6c 65 67 61 6c 20 76 61 6c 75 65 73 20 66 6f 72 20 6f 70 74 69 6f 6e 20 28 6d 75 73 | .of.legal.values.for.option.(mus |
1c740 | 74 20 62 65 20 3e 3d 20 31 29 2e 0a 23 20 61 72 67 73 20 2d 09 09 41 6e 79 20 6e 75 6d 62 65 72 | t.be.>=.1)..#.args.-..Any.number |
1c760 | 20 6f 66 20 61 64 64 69 74 69 6f 6e 61 6c 20 76 61 6c 75 65 73 2e 0a 0a 70 72 6f 63 20 74 6b 5f | .of.additional.values...proc.tk_ |
1c780 | 6f 70 74 69 6f 6e 4d 65 6e 75 20 7b 77 20 76 61 72 4e 61 6d 65 20 66 69 72 73 74 56 61 6c 75 65 | optionMenu.{w.varName.firstValue |
1c7a0 | 20 61 72 67 73 7d 20 7b 0a 20 20 20 20 75 70 76 61 72 20 23 30 20 24 76 61 72 4e 61 6d 65 20 76 | .args}.{.....upvar.#0.$varName.v |
1c7c0 | 61 72 0a 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 76 61 72 5d 7d 20 | ar......if.{![info.exists.var]}. |
1c7e0 | 7b 0a 09 73 65 74 20 76 61 72 20 24 66 69 72 73 74 56 61 6c 75 65 0a 20 20 20 20 7d 0a 20 20 20 | {..set.var.$firstValue.....}.... |
1c800 | 20 6d 65 6e 75 62 75 74 74 6f 6e 20 24 77 20 2d 74 65 78 74 76 61 72 69 61 62 6c 65 20 24 76 61 | .menubutton.$w.-textvariable.$va |
1c820 | 72 4e 61 6d 65 20 2d 69 6e 64 69 63 61 74 6f 72 6f 6e 20 31 20 2d 6d 65 6e 75 20 24 77 2e 6d 65 | rName.-indicatoron.1.-menu.$w.me |
1c840 | 6e 75 20 5c 0a 09 20 20 20 20 2d 72 65 6c 69 65 66 20 72 61 69 73 65 64 20 2d 62 64 20 32 20 2d | nu.\......-relief.raised.-bd.2.- |
1c860 | 68 69 67 68 6c 69 67 68 74 74 68 69 63 6b 6e 65 73 73 20 32 20 2d 61 6e 63 68 6f 72 20 63 20 5c | highlightthickness.2.-anchor.c.\ |
1c880 | 0a 09 20 20 20 20 2d 64 69 72 65 63 74 69 6f 6e 20 66 6c 75 73 68 0a 20 20 20 20 6d 65 6e 75 20 | ......-direction.flush.....menu. |
1c8a0 | 24 77 2e 6d 65 6e 75 20 2d 74 65 61 72 6f 66 66 20 30 0a 20 20 20 20 24 77 2e 6d 65 6e 75 20 61 | $w.menu.-tearoff.0.....$w.menu.a |
1c8c0 | 64 64 20 72 61 64 69 6f 62 75 74 74 6f 6e 20 2d 6c 61 62 65 6c 20 24 66 69 72 73 74 56 61 6c 75 | dd.radiobutton.-label.$firstValu |
1c8e0 | 65 20 2d 76 61 72 69 61 62 6c 65 20 24 76 61 72 4e 61 6d 65 0a 20 20 20 20 66 6f 72 65 61 63 68 | e.-variable.$varName.....foreach |
1c900 | 20 69 20 24 61 72 67 73 20 7b 0a 20 20 20 20 09 24 77 2e 6d 65 6e 75 20 61 64 64 20 72 61 64 69 | .i.$args.{......$w.menu.add.radi |
1c920 | 6f 62 75 74 74 6f 6e 20 2d 6c 61 62 65 6c 20 24 69 20 2d 76 61 72 69 61 62 6c 65 20 24 76 61 72 | obutton.-label.$i.-variable.$var |
1c940 | 4e 61 6d 65 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 77 2e 6d 65 6e 75 0a 7d 0a | Name.....}.....return.$w.menu.}. |
1c960 | 00 00 1c e4 23 20 70 61 6c 65 74 74 65 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 66 69 | ....#.palette.tcl.--.#.#.This.fi |
1c980 | 6c 65 20 63 6f 6e 74 61 69 6e 73 20 70 72 6f 63 65 64 75 72 65 73 20 74 68 61 74 20 63 68 61 6e | le.contains.procedures.that.chan |
1c9a0 | 67 65 20 74 68 65 20 63 6f 6c 6f 72 20 70 61 6c 65 74 74 65 20 75 73 65 64 0a 23 20 62 79 20 54 | ge.the.color.palette.used.#.by.T |
1c9c0 | 6b 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 70 61 6c 65 74 74 65 2e 74 63 | k..#.#.RCS:.@(#).$Id:.palette.tc |
1c9e0 | 6c 2c 76 20 31 2e 35 20 31 39 39 39 2f 30 39 2f 30 32 20 31 37 3a 30 32 3a 35 33 20 68 6f 62 62 | l,v.1.5.1999/09/02.17:02:53.hobb |
1ca00 | 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 35 2d 31 | s.Exp.$.#.#.Copyright.(c).1995-1 |
1ca20 | 39 39 37 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 | 997.Sun.Microsystems,.Inc..#.#.S |
1ca40 | 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 | ee.the.file."license.terms".for. |
1ca60 | 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 | information.on.usage.and.redistr |
1ca80 | 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 | ibution.#.of.this.file,.and.for. |
1caa0 | 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a | a.DISCLAIMER.OF.ALL.WARRANTIES.. |
1cac0 | 23 0a 0a 23 20 74 6b 5f 73 65 74 50 61 6c 65 74 74 65 20 2d 2d 0a 23 20 43 68 61 6e 67 65 73 20 | #..#.tk_setPalette.--.#.Changes. |
1cae0 | 74 68 65 20 64 65 66 61 75 6c 74 20 63 6f 6c 6f 72 20 73 63 68 65 6d 65 20 66 6f 72 20 61 20 54 | the.default.color.scheme.for.a.T |
1cb00 | 6b 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 62 79 20 73 65 74 74 69 6e 67 0a 23 20 64 65 66 61 75 | k.application.by.setting.#.defau |
1cb20 | 6c 74 20 63 6f 6c 6f 72 73 20 69 6e 20 74 68 65 20 6f 70 74 69 6f 6e 20 64 61 74 61 62 61 73 65 | lt.colors.in.the.option.database |
1cb40 | 20 61 6e 64 20 62 79 20 6d 6f 64 69 66 79 69 6e 67 20 61 6c 6c 20 6f 66 20 74 68 65 0a 23 20 63 | .and.by.modifying.all.of.the.#.c |
1cb60 | 6f 6c 6f 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 65 78 69 73 74 69 6e 67 20 77 69 64 67 65 74 | olor.options.for.existing.widget |
1cb80 | 73 20 74 68 61 74 20 68 61 76 65 20 74 68 65 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 2e 0a 23 | s.that.have.the.default.value..# |
1cba0 | 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 54 68 65 20 61 72 67 75 6d 65 6e 74 73 20 63 6f | .#.Arguments:.#.The.arguments.co |
1cbc0 | 6e 73 69 73 74 20 6f 66 20 65 69 74 68 65 72 20 61 20 73 69 6e 67 6c 65 20 63 6f 6c 6f 72 20 6e | nsist.of.either.a.single.color.n |
1cbe0 | 61 6d 65 2c 20 77 68 69 63 68 0a 23 20 77 69 6c 6c 20 62 65 20 75 73 65 64 20 61 73 20 74 68 65 | ame,.which.#.will.be.used.as.the |
1cc00 | 20 6e 65 77 20 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 20 28 61 6c 6c 20 6f 74 68 65 72 | .new.background.color.(all.other |
1cc20 | 20 63 6f 6c 6f 72 73 20 77 69 6c 6c 0a 23 20 62 65 20 63 6f 6d 70 75 74 65 64 20 66 72 6f 6d 20 | .colors.will.#.be.computed.from. |
1cc40 | 74 68 69 73 29 20 6f 72 20 61 6e 20 65 76 65 6e 20 6e 75 6d 62 65 72 20 6f 66 20 76 61 6c 75 65 | this).or.an.even.number.of.value |
1cc60 | 73 20 63 6f 6e 73 69 73 74 69 6e 67 20 6f 66 0a 23 20 6f 70 74 69 6f 6e 20 6e 61 6d 65 73 20 61 | s.consisting.of.#.option.names.a |
1cc80 | 6e 64 20 76 61 6c 75 65 73 2e 20 20 54 68 65 20 6e 61 6d 65 20 66 6f 72 20 61 6e 20 6f 70 74 69 | nd.values...The.name.for.an.opti |
1cca0 | 6f 6e 20 69 73 20 74 68 65 20 6f 6e 65 20 75 73 65 64 0a 23 20 66 6f 72 20 74 68 65 20 6f 70 74 | on.is.the.one.used.#.for.the.opt |
1ccc0 | 69 6f 6e 20 64 61 74 61 62 61 73 65 2c 20 73 75 63 68 20 61 73 20 61 63 74 69 76 65 46 6f 72 65 | ion.database,.such.as.activeFore |
1cce0 | 67 72 6f 75 6e 64 2c 20 6e 6f 74 20 2d 61 63 74 69 76 65 66 6f 72 65 67 72 6f 75 6e 64 2e 0a 0a | ground,.not.-activeforeground... |
1cd00 | 70 72 6f 63 20 74 6b 5f 73 65 74 50 61 6c 65 74 74 65 20 7b 61 72 67 73 7d 20 7b 0a 20 20 20 20 | proc.tk_setPalette.{args}.{..... |
1cd20 | 69 66 20 7b 5b 77 69 6e 66 6f 20 64 65 70 74 68 20 2e 5d 20 3d 3d 20 31 7d 20 7b 0a 09 23 20 4a | if.{[winfo.depth..].==.1}.{..#.J |
1cd40 | 75 73 74 20 72 65 74 75 72 6e 20 6f 6e 20 6d 6f 6e 6f 63 68 72 6f 6d 65 20 64 69 73 70 6c 61 79 | ust.return.on.monochrome.display |
1cd60 | 73 2c 20 6f 74 68 65 72 77 69 73 65 20 65 72 72 6f 72 73 20 77 69 6c 6c 20 6f 63 63 75 72 0a 09 | s,.otherwise.errors.will.occur.. |
1cd80 | 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 61 6c 65 74 | return.....}......global.tkPalet |
1cda0 | 74 65 0a 0a 20 20 20 20 23 20 43 72 65 61 74 65 20 61 6e 20 61 72 72 61 79 20 74 68 61 74 20 68 | te......#.Create.an.array.that.h |
1cdc0 | 61 73 20 74 68 65 20 63 6f 6d 70 6c 65 74 65 20 6e 65 77 20 70 61 6c 65 74 74 65 2e 20 20 49 66 | as.the.complete.new.palette...If |
1cde0 | 20 73 6f 6d 65 20 63 6f 6c 6f 72 73 0a 20 20 20 20 23 20 61 72 65 6e 27 74 20 73 70 65 63 69 66 | .some.colors.....#.aren't.specif |
1ce00 | 69 65 64 2c 20 63 6f 6d 70 75 74 65 20 74 68 65 6d 20 66 72 6f 6d 20 6f 74 68 65 72 20 63 6f 6c | ied,.compute.them.from.other.col |
1ce20 | 6f 72 73 20 74 68 61 74 20 61 72 65 20 73 70 65 63 69 66 69 65 64 2e 0a 0a 20 20 20 20 69 66 20 | ors.that.are.specified.......if. |
1ce40 | 7b 5b 6c 6c 65 6e 67 74 68 20 24 61 72 67 73 5d 20 3d 3d 20 31 7d 20 7b 0a 09 73 65 74 20 6e 65 | {[llength.$args].==.1}.{..set.ne |
1ce60 | 77 28 62 61 63 6b 67 72 6f 75 6e 64 29 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 30 5d 0a 20 | w(background).[lindex.$args.0].. |
1ce80 | 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 61 72 72 61 79 20 73 65 74 20 6e 65 77 20 24 61 72 67 73 | ...}.else.{..array.set.new.$args |
1cea0 | 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 6e 65 77 | .....}.....if.{![info.exists.new |
1cec0 | 28 62 61 63 6b 67 72 6f 75 6e 64 29 5d 7d 20 7b 0a 09 65 72 72 6f 72 20 22 6d 75 73 74 20 73 70 | (background)]}.{..error."must.sp |
1cee0 | 65 63 69 66 79 20 61 20 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 22 0a 20 20 20 20 7d 0a | ecify.a.background.color".....}. |
1cf00 | 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 6e 65 77 28 66 6f 72 65 67 72 | ....if.{![info.exists.new(foregr |
1cf20 | 6f 75 6e 64 29 5d 7d 20 7b 0a 09 73 65 74 20 6e 65 77 28 66 6f 72 65 67 72 6f 75 6e 64 29 20 62 | ound)]}.{..set.new(foreground).b |
1cf40 | 6c 61 63 6b 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 62 67 20 5b 77 69 6e 66 6f 20 72 67 62 | lack.....}.....set.bg.[winfo.rgb |
1cf60 | 20 2e 20 24 6e 65 77 28 62 61 63 6b 67 72 6f 75 6e 64 29 5d 0a 20 20 20 20 73 65 74 20 66 67 20 | ...$new(background)].....set.fg. |
1cf80 | 5b 77 69 6e 66 6f 20 72 67 62 20 2e 20 24 6e 65 77 28 66 6f 72 65 67 72 6f 75 6e 64 29 5d 0a 20 | [winfo.rgb...$new(foreground)].. |
1cfa0 | 20 20 20 73 65 74 20 64 61 72 6b 65 72 42 67 20 5b 66 6f 72 6d 61 74 20 23 25 30 32 78 25 30 32 | ...set.darkerBg.[format.#%02x%02 |
1cfc0 | 78 25 30 32 78 20 5b 65 78 70 72 20 7b 28 39 2a 5b 6c 69 6e 64 65 78 20 24 62 67 20 30 5d 29 2f | x%02x.[expr.{(9*[lindex.$bg.0])/ |
1cfe0 | 32 35 36 30 7d 5d 20 5c 0a 09 20 20 20 20 5b 65 78 70 72 20 7b 28 39 2a 5b 6c 69 6e 64 65 78 20 | 2560}].\......[expr.{(9*[lindex. |
1d000 | 24 62 67 20 31 5d 29 2f 32 35 36 30 7d 5d 20 5b 65 78 70 72 20 7b 28 39 2a 5b 6c 69 6e 64 65 78 | $bg.1])/2560}].[expr.{(9*[lindex |
1d020 | 20 24 62 67 20 32 5d 29 2f 32 35 36 30 7d 5d 5d 0a 20 20 20 20 66 6f 72 65 61 63 68 20 69 20 7b | .$bg.2])/2560}]].....foreach.i.{ |
1d040 | 61 63 74 69 76 65 46 6f 72 65 67 72 6f 75 6e 64 20 69 6e 73 65 72 74 42 61 63 6b 67 72 6f 75 6e | activeForeground.insertBackgroun |
1d060 | 64 20 73 65 6c 65 63 74 46 6f 72 65 67 72 6f 75 6e 64 20 5c 0a 09 20 20 20 20 68 69 67 68 6c 69 | d.selectForeground.\......highli |
1d080 | 67 68 74 43 6f 6c 6f 72 7d 20 7b 0a 09 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 6e | ghtColor}.{..if.{![info.exists.n |
1d0a0 | 65 77 28 24 69 29 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 6e 65 77 28 24 69 29 20 24 6e 65 77 | ew($i)]}.{......set.new($i).$new |
1d0c0 | 28 66 6f 72 65 67 72 6f 75 6e 64 29 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b | (foreground)..}.....}.....if.{![ |
1d0e0 | 69 6e 66 6f 20 65 78 69 73 74 73 20 6e 65 77 28 64 69 73 61 62 6c 65 64 46 6f 72 65 67 72 6f 75 | info.exists.new(disabledForegrou |
1d100 | 6e 64 29 5d 7d 20 7b 0a 09 73 65 74 20 6e 65 77 28 64 69 73 61 62 6c 65 64 46 6f 72 65 67 72 6f | nd)]}.{..set.new(disabledForegro |
1d120 | 75 6e 64 29 20 5b 66 6f 72 6d 61 74 20 23 25 30 32 78 25 30 32 78 25 30 32 78 20 5c 0a 09 09 5b | und).[format.#%02x%02x%02x.\...[ |
1d140 | 65 78 70 72 20 7b 28 33 2a 5b 6c 69 6e 64 65 78 20 24 62 67 20 30 5d 20 2b 20 5b 6c 69 6e 64 65 | expr.{(3*[lindex.$bg.0].+.[linde |
1d160 | 78 20 24 66 67 20 30 5d 29 2f 31 30 32 34 7d 5d 20 5c 0a 09 09 5b 65 78 70 72 20 7b 28 33 2a 5b | x.$fg.0])/1024}].\...[expr.{(3*[ |
1d180 | 6c 69 6e 64 65 78 20 24 62 67 20 31 5d 20 2b 20 5b 6c 69 6e 64 65 78 20 24 66 67 20 31 5d 29 2f | lindex.$bg.1].+.[lindex.$fg.1])/ |
1d1a0 | 31 30 32 34 7d 5d 20 5c 0a 09 09 5b 65 78 70 72 20 7b 28 33 2a 5b 6c 69 6e 64 65 78 20 24 62 67 | 1024}].\...[expr.{(3*[lindex.$bg |
1d1c0 | 20 32 5d 20 2b 20 5b 6c 69 6e 64 65 78 20 24 66 67 20 32 5d 29 2f 31 30 32 34 7d 5d 5d 0a 20 20 | .2].+.[lindex.$fg.2])/1024}]]... |
1d1e0 | 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 6e 65 77 28 68 69 | ..}.....if.{![info.exists.new(hi |
1d200 | 67 68 6c 69 67 68 74 42 61 63 6b 67 72 6f 75 6e 64 29 5d 7d 20 7b 0a 09 73 65 74 20 6e 65 77 28 | ghlightBackground)]}.{..set.new( |
1d220 | 68 69 67 68 6c 69 67 68 74 42 61 63 6b 67 72 6f 75 6e 64 29 20 24 6e 65 77 28 62 61 63 6b 67 72 | highlightBackground).$new(backgr |
1d240 | 6f 75 6e 64 29 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 | ound).....}.....if.{![info.exist |
1d260 | 73 20 6e 65 77 28 61 63 74 69 76 65 42 61 63 6b 67 72 6f 75 6e 64 29 5d 7d 20 7b 0a 09 23 20 50 | s.new(activeBackground)]}.{..#.P |
1d280 | 69 63 6b 20 61 20 64 65 66 61 75 6c 74 20 61 63 74 69 76 65 20 62 61 63 6b 67 72 6f 75 6e 64 20 | ick.a.default.active.background. |
1d2a0 | 74 68 61 74 20 69 73 6c 69 67 68 74 65 72 20 74 68 61 6e 20 74 68 65 0a 09 23 20 6e 6f 72 6d 61 | that.islighter.than.the..#.norma |
1d2c0 | 6c 20 62 61 63 6b 67 72 6f 75 6e 64 2e 20 20 54 6f 20 64 6f 20 74 68 69 73 2c 20 72 6f 75 6e 64 | l.background...To.do.this,.round |
1d2e0 | 20 65 61 63 68 20 63 6f 6c 6f 72 20 63 6f 6d 70 6f 6e 65 6e 74 0a 09 23 20 75 70 20 62 79 20 31 | .each.color.component..#.up.by.1 |
1d300 | 35 25 20 6f 72 20 31 2f 33 20 6f 66 20 74 68 65 20 77 61 79 20 74 6f 20 66 75 6c 6c 20 77 68 69 | 5%.or.1/3.of.the.way.to.full.whi |
1d320 | 74 65 2c 20 77 68 69 63 68 65 76 65 72 20 69 73 0a 09 23 20 67 72 65 61 74 65 72 2e 0a 0a 09 66 | te,.whichever.is..#.greater....f |
1d340 | 6f 72 65 61 63 68 20 69 20 7b 30 20 31 20 32 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 6c 69 67 68 | oreach.i.{0.1.2}.{......set.ligh |
1d360 | 74 28 24 69 29 20 5b 65 78 70 72 20 7b 5b 6c 69 6e 64 65 78 20 24 62 67 20 24 69 5d 2f 32 35 36 | t($i).[expr.{[lindex.$bg.$i]/256 |
1d380 | 7d 5d 0a 09 20 20 20 20 73 65 74 20 69 6e 63 31 20 5b 65 78 70 72 20 7b 28 24 6c 69 67 68 74 28 | }]......set.inc1.[expr.{($light( |
1d3a0 | 24 69 29 2a 31 35 29 2f 31 30 30 7d 5d 0a 09 20 20 20 20 73 65 74 20 69 6e 63 32 20 5b 65 78 70 | $i)*15)/100}]......set.inc2.[exp |
1d3c0 | 72 20 7b 28 32 35 35 2d 24 6c 69 67 68 74 28 24 69 29 29 2f 33 7d 5d 0a 09 20 20 20 20 69 66 20 | r.{(255-$light($i))/3}]......if. |
1d3e0 | 7b 24 69 6e 63 31 20 3e 20 24 69 6e 63 32 7d 20 7b 0a 09 09 69 6e 63 72 20 6c 69 67 68 74 28 24 | {$inc1.>.$inc2}.{...incr.light($ |
1d400 | 69 29 20 24 69 6e 63 31 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 69 6e 63 72 20 6c 69 | i).$inc1......}.else.{...incr.li |
1d420 | 67 68 74 28 24 69 29 20 24 69 6e 63 32 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 24 6c | ght($i).$inc2......}......if.{$l |
1d440 | 69 67 68 74 28 24 69 29 20 3e 20 32 35 35 7d 20 7b 0a 09 09 73 65 74 20 6c 69 67 68 74 28 24 69 | ight($i).>.255}.{...set.light($i |
1d460 | 29 20 32 35 35 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 73 65 74 20 6e 65 77 28 61 63 74 69 76 65 42 | ).255......}..}..set.new(activeB |
1d480 | 61 63 6b 67 72 6f 75 6e 64 29 20 5b 66 6f 72 6d 61 74 20 23 25 30 32 78 25 30 32 78 25 30 32 78 | ackground).[format.#%02x%02x%02x |
1d4a0 | 20 24 6c 69 67 68 74 28 30 29 20 5c 0a 09 09 24 6c 69 67 68 74 28 31 29 20 24 6c 69 67 68 74 28 | .$light(0).\...$light(1).$light( |
1d4c0 | 32 29 5d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 | 2)].....}.....if.{![info.exists. |
1d4e0 | 6e 65 77 28 73 65 6c 65 63 74 42 61 63 6b 67 72 6f 75 6e 64 29 5d 7d 20 7b 0a 09 73 65 74 20 6e | new(selectBackground)]}.{..set.n |
1d500 | 65 77 28 73 65 6c 65 63 74 42 61 63 6b 67 72 6f 75 6e 64 29 20 24 64 61 72 6b 65 72 42 67 0a 20 | ew(selectBackground).$darkerBg.. |
1d520 | 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 6e 65 77 28 74 | ...}.....if.{![info.exists.new(t |
1d540 | 72 6f 75 67 68 43 6f 6c 6f 72 29 5d 7d 20 7b 0a 09 73 65 74 20 6e 65 77 28 74 72 6f 75 67 68 43 | roughColor)]}.{..set.new(troughC |
1d560 | 6f 6c 6f 72 29 20 24 64 61 72 6b 65 72 42 67 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b | olor).$darkerBg.....}.....if.{![ |
1d580 | 69 6e 66 6f 20 65 78 69 73 74 73 20 6e 65 77 28 73 65 6c 65 63 74 43 6f 6c 6f 72 29 5d 7d 20 7b | info.exists.new(selectColor)]}.{ |
1d5a0 | 0a 09 73 65 74 20 6e 65 77 28 73 65 6c 65 63 74 43 6f 6c 6f 72 29 20 23 62 30 33 30 36 30 0a 20 | ..set.new(selectColor).#b03060.. |
1d5c0 | 20 20 20 7d 0a 0a 20 20 20 20 23 20 6c 65 74 27 73 20 6d 61 6b 65 20 6f 6e 65 20 6f 66 20 65 61 | ...}......#.let's.make.one.of.ea |
1d5e0 | 63 68 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 73 20 73 6f 20 77 65 20 6b 6e 6f 77 20 77 68 61 | ch.of.the.widgets.so.we.know.wha |
1d600 | 74 20 74 68 65 20 0a 20 20 20 20 23 20 64 65 66 61 75 6c 74 73 20 61 72 65 20 63 75 72 72 65 6e | t.the......#.defaults.are.curren |
1d620 | 74 6c 79 20 66 6f 72 20 74 68 69 73 20 70 6c 61 74 66 6f 72 6d 2e 0a 20 20 20 20 74 6f 70 6c 65 | tly.for.this.platform......tople |
1d640 | 76 65 6c 20 2e 5f 5f 5f 74 6b 5f 73 65 74 5f 70 61 6c 65 74 74 65 0a 20 20 20 20 77 6d 20 77 69 | vel..___tk_set_palette.....wm.wi |
1d660 | 74 68 64 72 61 77 20 2e 5f 5f 5f 74 6b 5f 73 65 74 5f 70 61 6c 65 74 74 65 0a 20 20 20 20 66 6f | thdraw..___tk_set_palette.....fo |
1d680 | 72 65 61 63 68 20 71 20 7b 62 75 74 74 6f 6e 20 63 61 6e 76 61 73 20 63 68 65 63 6b 62 75 74 74 | reach.q.{button.canvas.checkbutt |
1d6a0 | 6f 6e 20 65 6e 74 72 79 20 66 72 61 6d 65 20 6c 61 62 65 6c 20 6c 69 73 74 62 6f 78 20 5c 0a 09 | on.entry.frame.label.listbox.\.. |
1d6c0 | 20 20 20 20 6d 65 6e 75 62 75 74 74 6f 6e 20 6d 65 6e 75 20 6d 65 73 73 61 67 65 20 72 61 64 69 | ....menubutton.menu.message.radi |
1d6e0 | 6f 62 75 74 74 6f 6e 20 73 63 61 6c 65 20 73 63 72 6f 6c 6c 62 61 72 20 74 65 78 74 7d 20 7b 0a | obutton.scale.scrollbar.text}.{. |
1d700 | 09 24 71 20 2e 5f 5f 5f 74 6b 5f 73 65 74 5f 70 61 6c 65 74 74 65 2e 24 71 0a 20 20 20 20 7d 0a | .$q..___tk_set_palette.$q.....}. |
1d720 | 0a 20 20 20 20 23 20 57 61 6c 6b 20 74 68 65 20 77 69 64 67 65 74 20 68 69 65 72 61 72 63 68 79 | .....#.Walk.the.widget.hierarchy |
1d740 | 2c 20 72 65 63 6f 6c 6f 72 69 6e 67 20 61 6c 6c 20 65 78 69 73 74 69 6e 67 20 77 69 6e 64 6f 77 | ,.recoloring.all.existing.window |
1d760 | 73 2e 0a 20 20 20 20 23 20 54 68 65 20 6f 70 74 69 6f 6e 20 64 61 74 61 62 61 73 65 20 6d 75 73 | s......#.The.option.database.mus |
1d780 | 74 20 62 65 20 73 65 74 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 77 68 61 74 20 77 65 20 64 6f | t.be.set.according.to.what.we.do |
1d7a0 | 20 68 65 72 65 2c 20 0a 20 20 20 20 23 20 62 75 74 20 69 74 20 62 72 65 61 6b 73 20 74 68 69 6e | .here,......#.but.it.breaks.thin |
1d7c0 | 67 73 20 69 66 20 77 65 20 73 65 74 20 74 68 69 6e 67 73 20 69 6e 20 74 68 65 20 64 61 74 61 62 | gs.if.we.set.things.in.the.datab |
1d7e0 | 61 73 65 20 77 68 69 6c 65 20 0a 20 20 20 20 23 20 77 65 20 61 72 65 20 63 68 61 6e 67 69 6e 67 | ase.while......#.we.are.changing |
1d800 | 20 63 6f 6c 6f 72 73 2e 2e 2e 73 6f 2c 20 74 6b 52 65 63 6f 6c 6f 72 54 72 65 65 20 6e 6f 77 20 | .colors...so,.tkRecolorTree.now. |
1d820 | 72 65 74 75 72 6e 73 20 74 68 65 0a 20 20 20 20 23 20 6f 70 74 69 6f 6e 20 64 61 74 61 62 61 73 | returns.the.....#.option.databas |
1d840 | 65 20 63 68 61 6e 67 65 73 20 74 68 61 74 20 6e 65 65 64 20 74 6f 20 62 65 20 6d 61 64 65 2c 20 | e.changes.that.need.to.be.made,. |
1d860 | 61 6e 64 20 74 68 65 79 0a 20 20 20 20 23 20 6e 65 65 64 20 74 6f 20 62 65 20 65 76 61 6c 6c 65 | and.they.....#.need.to.be.evalle |
1d880 | 64 20 68 65 72 65 20 74 6f 20 74 61 6b 65 20 65 66 66 65 63 74 2e 0a 20 20 20 20 23 20 57 65 20 | d.here.to.take.effect......#.We. |
1d8a0 | 68 61 76 65 20 74 6f 20 77 61 6c 6b 20 74 68 65 20 77 68 6f 6c 65 20 77 69 64 67 65 74 20 74 72 | have.to.walk.the.whole.widget.tr |
1d8c0 | 65 65 20 69 6e 73 74 65 61 64 20 6f 66 20 6a 75 73 74 20 0a 20 20 20 20 23 20 72 65 6c 79 69 6e | ee.instead.of.just......#.relyin |
1d8e0 | 67 20 6f 6e 20 74 68 65 20 77 69 64 67 65 74 73 20 77 65 27 76 65 20 63 72 65 61 74 65 64 20 61 | g.on.the.widgets.we've.created.a |
1d900 | 62 6f 76 65 20 74 6f 20 64 6f 20 74 68 65 20 77 6f 72 6b 0a 20 20 20 20 23 20 62 65 63 61 75 73 | bove.to.do.the.work.....#.becaus |
1d920 | 65 20 64 69 66 66 65 72 65 6e 74 20 65 78 74 65 6e 73 69 6f 6e 73 20 6d 61 79 20 70 72 6f 76 69 | e.different.extensions.may.provi |
1d940 | 64 65 20 6f 74 68 65 72 20 6b 69 6e 64 73 0a 20 20 20 20 23 20 6f 66 20 77 69 64 67 65 74 73 20 | de.other.kinds.....#.of.widgets. |
1d960 | 74 68 61 74 20 77 65 20 64 6f 6e 27 74 20 63 75 72 72 65 6e 74 6c 79 20 6b 6e 6f 77 20 61 62 6f | that.we.don't.currently.know.abo |
1d980 | 75 74 2c 20 73 6f 20 77 65 27 6c 6c 0a 20 20 20 20 23 20 77 61 6c 6b 20 74 68 65 20 77 68 6f 6c | ut,.so.we'll.....#.walk.the.whol |
1d9a0 | 65 20 68 69 65 72 61 72 63 68 79 20 6a 75 73 74 20 69 6e 20 63 61 73 65 2e 0a 0a 20 20 20 20 65 | e.hierarchy.just.in.case.......e |
1d9c0 | 76 61 6c 20 5b 74 6b 52 65 63 6f 6c 6f 72 54 72 65 65 20 2e 20 6e 65 77 5d 0a 0a 20 20 20 20 63 | val.[tkRecolorTree...new]......c |
1d9e0 | 61 74 63 68 20 7b 64 65 73 74 72 6f 79 20 2e 5f 5f 5f 74 6b 5f 73 65 74 5f 70 61 6c 65 74 74 65 | atch.{destroy..___tk_set_palette |
1da00 | 7d 0a 0a 20 20 20 20 23 20 43 68 61 6e 67 65 20 74 68 65 20 6f 70 74 69 6f 6e 20 64 61 74 61 62 | }......#.Change.the.option.datab |
1da20 | 61 73 65 20 73 6f 20 74 68 61 74 20 66 75 74 75 72 65 20 77 69 6e 64 6f 77 73 20 77 69 6c 6c 20 | ase.so.that.future.windows.will. |
1da40 | 67 65 74 20 74 68 65 0a 20 20 20 20 23 20 73 61 6d 65 20 63 6f 6c 6f 72 73 2e 0a 0a 20 20 20 20 | get.the.....#.same.colors....... |
1da60 | 66 6f 72 65 61 63 68 20 6f 70 74 69 6f 6e 20 5b 61 72 72 61 79 20 6e 61 6d 65 73 20 6e 65 77 5d | foreach.option.[array.names.new] |
1da80 | 20 7b 0a 09 6f 70 74 69 6f 6e 20 61 64 64 20 2a 24 6f 70 74 69 6f 6e 20 24 6e 65 77 28 24 6f 70 | .{..option.add.*$option.$new($op |
1daa0 | 74 69 6f 6e 29 20 77 69 64 67 65 74 44 65 66 61 75 6c 74 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 | tion).widgetDefault.....}......# |
1dac0 | 20 53 61 76 65 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 | .Save.the.options.in.the.global. |
1dae0 | 76 61 72 69 61 62 6c 65 20 74 6b 50 61 6c 65 74 74 65 2c 20 66 6f 72 20 75 73 65 20 74 68 65 0a | variable.tkPalette,.for.use.the. |
1db00 | 20 20 20 20 23 20 6e 65 78 74 20 74 69 6d 65 20 77 65 20 63 68 61 6e 67 65 20 74 68 65 20 6f 70 | ....#.next.time.we.change.the.op |
1db20 | 74 69 6f 6e 73 2e 0a 0a 20 20 20 20 61 72 72 61 79 20 73 65 74 20 74 6b 50 61 6c 65 74 74 65 20 | tions.......array.set.tkPalette. |
1db40 | 5b 61 72 72 61 79 20 67 65 74 20 6e 65 77 5d 0a 7d 0a 0a 23 20 74 6b 52 65 63 6f 6c 6f 72 54 72 | [array.get.new].}..#.tkRecolorTr |
1db60 | 65 65 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 63 68 61 6e 67 65 73 20 74 | ee.--.#.This.procedure.changes.t |
1db80 | 68 65 20 63 6f 6c 6f 72 73 20 69 6e 20 61 20 77 69 6e 64 6f 77 20 61 6e 64 20 61 6c 6c 20 6f 66 | he.colors.in.a.window.and.all.of |
1dba0 | 20 69 74 73 0a 23 20 64 65 73 63 65 6e 64 61 6e 74 73 2c 20 61 63 63 6f 72 64 69 6e 67 20 74 6f | .its.#.descendants,.according.to |
1dbc0 | 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 20 63 6f 6c | .information.provided.by.the.col |
1dbe0 | 6f 72 73 0a 23 20 61 72 67 75 6d 65 6e 74 2e 20 54 68 69 73 20 6c 6f 6f 6b 73 20 61 74 20 74 68 | ors.#.argument..This.looks.at.th |
1dc00 | 65 20 64 65 66 61 75 6c 74 73 20 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 20 6f 70 74 69 6f | e.defaults.provided.by.the.optio |
1dc20 | 6e 20 0a 23 20 64 61 74 61 62 61 73 65 2c 20 69 66 20 69 74 20 65 78 69 73 74 73 2c 20 61 6e 64 | n..#.database,.if.it.exists,.and |
1dc40 | 20 69 66 20 6e 6f 74 2c 20 74 68 65 6e 20 69 74 20 6c 6f 6f 6b 73 20 61 74 20 74 68 65 20 64 65 | .if.not,.then.it.looks.at.the.de |
1dc60 | 66 61 75 6c 74 0a 23 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 77 69 64 67 65 74 20 69 74 73 65 | fault.#.value.of.the.widget.itse |
1dc80 | 6c 66 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 54 68 65 20 6e | lf..#.#.Arguments:.#.w.-...The.n |
1dca0 | 61 6d 65 20 6f 66 20 61 20 77 69 6e 64 6f 77 2e 20 20 54 68 69 73 20 77 69 6e 64 6f 77 20 61 6e | ame.of.a.window...This.window.an |
1dcc0 | 64 20 61 6c 6c 20 69 74 73 0a 23 09 09 09 64 65 73 63 65 6e 64 61 6e 74 73 20 61 72 65 20 72 65 | d.all.its.#...descendants.are.re |
1dce0 | 63 6f 6c 6f 72 65 64 2e 0a 23 20 63 6f 6c 6f 72 73 20 2d 09 09 54 68 65 20 6e 61 6d 65 20 6f 66 | colored..#.colors.-..The.name.of |
1dd00 | 20 61 6e 20 61 72 72 61 79 20 76 61 72 69 61 62 6c 65 20 69 6e 20 74 68 65 20 63 61 6c 6c 65 72 | .an.array.variable.in.the.caller |
1dd20 | 2c 0a 23 09 09 09 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 73 20 63 6f 6c 6f 72 20 69 6e 66 6f 72 | ,.#...which.contains.color.infor |
1dd40 | 6d 61 74 69 6f 6e 2e 20 20 45 61 63 68 20 65 6c 65 6d 65 6e 74 0a 23 09 09 09 69 73 20 6e 61 6d | mation...Each.element.#...is.nam |
1dd60 | 65 64 20 61 66 74 65 72 20 61 20 77 69 64 67 65 74 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 | ed.after.a.widget.configuration. |
1dd80 | 6f 70 74 69 6f 6e 2c 20 61 6e 64 0a 23 09 09 09 65 61 63 68 20 76 61 6c 75 65 20 69 73 20 74 68 | option,.and.#...each.value.is.th |
1dda0 | 65 20 76 61 6c 75 65 20 66 6f 72 20 74 68 61 74 20 6f 70 74 69 6f 6e 2e 0a 0a 70 72 6f 63 20 74 | e.value.for.that.option...proc.t |
1ddc0 | 6b 52 65 63 6f 6c 6f 72 54 72 65 65 20 7b 77 20 63 6f 6c 6f 72 73 7d 20 7b 0a 20 20 20 20 67 6c | kRecolorTree.{w.colors}.{.....gl |
1dde0 | 6f 62 61 6c 20 74 6b 50 61 6c 65 74 74 65 0a 20 20 20 20 75 70 76 61 72 20 24 63 6f 6c 6f 72 73 | obal.tkPalette.....upvar.$colors |
1de00 | 20 63 0a 20 20 20 20 73 65 74 20 72 65 73 75 6c 74 20 7b 7d 0a 20 20 20 20 66 6f 72 65 61 63 68 | .c.....set.result.{}.....foreach |
1de20 | 20 64 62 4f 70 74 69 6f 6e 20 5b 61 72 72 61 79 20 6e 61 6d 65 73 20 63 5d 20 7b 0a 09 73 65 74 | .dbOption.[array.names.c].{..set |
1de40 | 20 6f 70 74 69 6f 6e 20 2d 5b 73 74 72 69 6e 67 20 74 6f 6c 6f 77 65 72 20 24 64 62 4f 70 74 69 | .option.-[string.tolower.$dbOpti |
1de60 | 6f 6e 5d 0a 09 69 66 20 7b 21 5b 63 61 74 63 68 20 7b 24 77 20 63 6f 6e 66 69 67 20 24 6f 70 74 | on]..if.{![catch.{$w.config.$opt |
1de80 | 69 6f 6e 7d 20 76 61 6c 75 65 5d 7d 20 7b 0a 09 20 20 20 20 23 20 69 66 20 74 68 65 20 6f 70 74 | ion}.value]}.{......#.if.the.opt |
1dea0 | 69 6f 6e 20 64 61 74 61 62 61 73 65 20 68 61 73 20 61 20 70 72 65 66 65 72 65 6e 63 65 20 66 6f | ion.database.has.a.preference.fo |
1dec0 | 72 20 74 68 69 73 0a 09 20 20 20 20 23 20 64 62 4f 70 74 69 6f 6e 2c 20 74 68 65 6e 20 75 73 65 | r.this......#.dbOption,.then.use |
1dee0 | 20 69 74 2c 20 6f 74 68 65 72 77 69 73 65 20 75 73 65 20 74 68 65 20 64 65 66 61 75 6c 74 73 0a | .it,.otherwise.use.the.defaults. |
1df00 | 09 20 20 20 20 23 20 66 6f 72 20 74 68 65 20 77 69 64 67 65 74 2e 0a 09 20 20 20 20 73 65 74 20 | .....#.for.the.widget.......set. |
1df20 | 64 65 66 61 75 6c 74 63 6f 6c 6f 72 20 5b 6f 70 74 69 6f 6e 20 67 65 74 20 24 77 20 24 64 62 4f | defaultcolor.[option.get.$w.$dbO |
1df40 | 70 74 69 6f 6e 20 77 69 64 67 65 74 44 65 66 61 75 6c 74 5d 0a 09 20 20 20 20 69 66 20 7b 5b 73 | ption.widgetDefault]......if.{[s |
1df60 | 74 72 69 6e 67 20 6d 61 74 63 68 20 7b 7d 20 24 64 65 66 61 75 6c 74 63 6f 6c 6f 72 5d 7d 20 7b | tring.match.{}.$defaultcolor]}.{ |
1df80 | 0a 09 09 73 65 74 20 64 65 66 61 75 6c 74 63 6f 6c 6f 72 20 5b 77 69 6e 66 6f 20 72 67 62 20 2e | ...set.defaultcolor.[winfo.rgb.. |
1dfa0 | 20 5b 6c 69 6e 64 65 78 20 24 76 61 6c 75 65 20 33 5d 5d 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 | .[lindex.$value.3]]......}.else. |
1dfc0 | 7b 0a 09 09 73 65 74 20 64 65 66 61 75 6c 74 63 6f 6c 6f 72 20 5b 77 69 6e 66 6f 20 72 67 62 20 | {...set.defaultcolor.[winfo.rgb. |
1dfe0 | 2e 20 24 64 65 66 61 75 6c 74 63 6f 6c 6f 72 5d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 73 65 74 | ..$defaultcolor]......}......set |
1e000 | 20 63 68 6f 73 65 6e 63 6f 6c 6f 72 20 5b 77 69 6e 66 6f 20 72 67 62 20 2e 20 5b 6c 69 6e 64 65 | .chosencolor.[winfo.rgb...[linde |
1e020 | 78 20 24 76 61 6c 75 65 20 34 5d 5d 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 | x.$value.4]]......if.{[string.ma |
1e040 | 74 63 68 20 24 64 65 66 61 75 6c 74 63 6f 6c 6f 72 20 24 63 68 6f 73 65 6e 63 6f 6c 6f 72 5d 7d | tch.$defaultcolor.$chosencolor]} |
1e060 | 20 7b 0a 09 09 23 20 43 68 61 6e 67 65 20 74 68 65 20 6f 70 74 69 6f 6e 20 64 61 74 61 62 61 73 | .{...#.Change.the.option.databas |
1e080 | 65 20 73 6f 20 74 68 61 74 20 66 75 74 75 72 65 20 77 69 6e 64 6f 77 73 20 77 69 6c 6c 20 67 65 | e.so.that.future.windows.will.ge |
1e0a0 | 74 0a 09 09 23 20 74 68 65 20 73 61 6d 65 20 63 6f 6c 6f 72 73 2e 0a 09 09 61 70 70 65 6e 64 20 | t...#.the.same.colors....append. |
1e0c0 | 72 65 73 75 6c 74 20 22 3b 5c 6e 6f 70 74 69 6f 6e 20 61 64 64 20 5b 6c 69 73 74 20 5c 0a 09 09 | result.";\noption.add.[list.\... |
1e0e0 | 20 20 20 20 2a 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 24 77 5d 2e 24 64 62 4f 70 74 69 6f 6e 20 | ....*[winfo.class.$w].$dbOption. |
1e100 | 24 63 28 24 64 62 4f 70 74 69 6f 6e 29 20 36 30 5d 22 0a 09 09 24 77 20 63 6f 6e 66 69 67 75 72 | $c($dbOption).60]"...$w.configur |
1e120 | 65 20 24 6f 70 74 69 6f 6e 20 24 63 28 24 64 62 4f 70 74 69 6f 6e 29 0a 09 20 20 20 20 7d 0a 09 | e.$option.$c($dbOption)......}.. |
1e140 | 7d 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 65 61 63 68 20 63 68 69 6c 64 20 5b 77 69 6e 66 6f | }.....}.....foreach.child.[winfo |
1e160 | 20 63 68 69 6c 64 72 65 6e 20 24 77 5d 20 7b 0a 09 61 70 70 65 6e 64 20 72 65 73 75 6c 74 20 22 | .children.$w].{..append.result." |
1e180 | 3b 5c 6e 5b 74 6b 52 65 63 6f 6c 6f 72 54 72 65 65 20 24 63 68 69 6c 64 20 63 5d 22 0a 20 20 20 | ;\n[tkRecolorTree.$child.c]".... |
1e1a0 | 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 0a 7d 0a 0a 23 20 74 6b 44 61 72 | .}.....return.$result.}..#.tkDar |
1e1c0 | 6b 65 6e 20 2d 2d 0a 23 20 47 69 76 65 6e 20 61 20 63 6f 6c 6f 72 20 6e 61 6d 65 2c 20 63 6f 6d | ken.--.#.Given.a.color.name,.com |
1e1e0 | 70 75 74 65 73 20 61 20 6e 65 77 20 63 6f 6c 6f 72 20 76 61 6c 75 65 20 74 68 61 74 20 64 61 72 | putes.a.new.color.value.that.dar |
1e200 | 6b 65 6e 73 20 28 6f 72 0a 23 20 62 72 69 67 68 74 65 6e 73 29 20 74 68 65 20 67 69 76 65 6e 20 | kens.(or.#.brightens).the.given. |
1e220 | 63 6f 6c 6f 72 20 62 79 20 61 20 67 69 76 65 6e 20 70 65 72 63 65 6e 74 2e 0a 23 0a 23 20 41 72 | color.by.a.given.percent..#.#.Ar |
1e240 | 67 75 6d 65 6e 74 73 3a 0a 23 20 63 6f 6c 6f 72 20 2d 09 4e 61 6d 65 20 6f 66 20 73 74 61 72 74 | guments:.#.color.-.Name.of.start |
1e260 | 69 6e 67 20 63 6f 6c 6f 72 2e 0a 23 20 70 65 72 65 63 65 6e 74 20 2d 09 49 6e 74 65 67 65 72 20 | ing.color..#.perecent.-.Integer. |
1e280 | 74 65 6c 6c 69 6e 67 20 68 6f 77 20 6d 75 63 68 20 74 6f 20 62 72 69 67 68 74 65 6e 20 6f 72 20 | telling.how.much.to.brighten.or. |
1e2a0 | 64 61 72 6b 65 6e 20 61 73 20 61 0a 23 09 09 70 65 72 63 65 6e 74 3a 20 35 30 20 6d 65 61 6e 73 | darken.as.a.#..percent:.50.means |
1e2c0 | 20 64 61 72 6b 65 6e 20 62 79 20 35 30 25 2c 20 31 31 30 20 6d 65 61 6e 73 20 62 72 69 67 68 74 | .darken.by.50%,.110.means.bright |
1e2e0 | 65 6e 0a 23 09 09 62 79 20 31 30 25 2e 0a 0a 70 72 6f 63 20 74 6b 44 61 72 6b 65 6e 20 7b 63 6f | en.#..by.10%...proc.tkDarken.{co |
1e300 | 6c 6f 72 20 70 65 72 63 65 6e 74 7d 20 7b 0a 20 20 20 20 66 6f 72 65 61 63 68 20 7b 72 65 64 20 | lor.percent}.{.....foreach.{red. |
1e320 | 67 72 65 65 6e 20 62 6c 75 65 7d 20 5b 77 69 6e 66 6f 20 72 67 62 20 2e 20 24 63 6f 6c 6f 72 5d | green.blue}.[winfo.rgb...$color] |
1e340 | 20 7b 0a 09 73 65 74 20 72 65 64 20 5b 65 78 70 72 20 7b 28 24 72 65 64 2f 32 35 36 29 2a 24 70 | .{..set.red.[expr.{($red/256)*$p |
1e360 | 65 72 63 65 6e 74 2f 31 30 30 7d 5d 0a 09 73 65 74 20 67 72 65 65 6e 20 5b 65 78 70 72 20 7b 28 | ercent/100}]..set.green.[expr.{( |
1e380 | 24 67 72 65 65 6e 2f 32 35 36 29 2a 24 70 65 72 63 65 6e 74 2f 31 30 30 7d 5d 0a 09 73 65 74 20 | $green/256)*$percent/100}]..set. |
1e3a0 | 62 6c 75 65 20 5b 65 78 70 72 20 7b 28 24 62 6c 75 65 2f 32 35 36 29 2a 24 70 65 72 63 65 6e 74 | blue.[expr.{($blue/256)*$percent |
1e3c0 | 2f 31 30 30 7d 5d 0a 09 62 72 65 61 6b 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 24 72 65 64 | /100}]..break.....}.....if.{$red |
1e3e0 | 20 3e 20 32 35 35 7d 20 7b 0a 09 73 65 74 20 72 65 64 20 32 35 35 0a 20 20 20 20 7d 0a 20 20 20 | .>.255}.{..set.red.255.....}.... |
1e400 | 20 69 66 20 7b 24 67 72 65 65 6e 20 3e 20 32 35 35 7d 20 7b 0a 09 73 65 74 20 67 72 65 65 6e 20 | .if.{$green.>.255}.{..set.green. |
1e420 | 32 35 35 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 24 62 6c 75 65 20 3e 20 32 35 35 7d 20 7b | 255.....}.....if.{$blue.>.255}.{ |
1e440 | 0a 09 73 65 74 20 62 6c 75 65 20 32 35 35 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 | ..set.blue.255.....}.....return. |
1e460 | 5b 66 6f 72 6d 61 74 20 22 23 25 30 32 78 25 30 32 78 25 30 32 78 22 20 24 72 65 64 20 24 67 72 | [format."#%02x%02x%02x".$red.$gr |
1e480 | 65 65 6e 20 24 62 6c 75 65 5d 0a 7d 0a 0a 23 20 74 6b 5f 62 69 73 71 75 65 20 2d 2d 0a 23 20 52 | een.$blue].}..#.tk_bisque.--.#.R |
1e4a0 | 65 73 65 74 20 74 68 65 20 54 6b 20 63 6f 6c 6f 72 20 70 61 6c 65 74 74 65 20 74 6f 20 74 68 65 | eset.the.Tk.color.palette.to.the |
1e4c0 | 20 6f 6c 64 20 22 62 69 73 71 75 65 22 20 63 6f 6c 6f 72 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 | .old."bisque".colors..#.#.Argume |
1e4e0 | 6e 74 73 3a 0a 23 20 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 74 6b 5f 62 69 73 71 75 65 20 7b 7d 20 | nts:.#.None...proc.tk_bisque.{}. |
1e500 | 7b 0a 20 20 20 20 74 6b 5f 73 65 74 50 61 6c 65 74 74 65 20 61 63 74 69 76 65 42 61 63 6b 67 72 | {.....tk_setPalette.activeBackgr |
1e520 | 6f 75 6e 64 20 23 65 36 63 65 62 31 20 61 63 74 69 76 65 46 6f 72 65 67 72 6f 75 6e 64 20 62 6c | ound.#e6ceb1.activeForeground.bl |
1e540 | 61 63 6b 20 5c 0a 09 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 20 23 66 66 65 34 63 34 20 64 69 | ack.\......background.#ffe4c4.di |
1e560 | 73 61 62 6c 65 64 46 6f 72 65 67 72 6f 75 6e 64 20 23 62 30 62 30 62 30 20 66 6f 72 65 67 72 6f | sabledForeground.#b0b0b0.foregro |
1e580 | 75 6e 64 20 62 6c 61 63 6b 20 5c 0a 09 20 20 20 20 68 69 67 68 6c 69 67 68 74 42 61 63 6b 67 72 | und.black.\......highlightBackgr |
1e5a0 | 6f 75 6e 64 20 23 66 66 65 34 63 34 20 68 69 67 68 6c 69 67 68 74 43 6f 6c 6f 72 20 62 6c 61 63 | ound.#ffe4c4.highlightColor.blac |
1e5c0 | 6b 20 5c 0a 09 20 20 20 20 69 6e 73 65 72 74 42 61 63 6b 67 72 6f 75 6e 64 20 62 6c 61 63 6b 20 | k.\......insertBackground.black. |
1e5e0 | 73 65 6c 65 63 74 43 6f 6c 6f 72 20 23 62 30 33 30 36 30 20 5c 0a 09 20 20 20 20 73 65 6c 65 63 | selectColor.#b03060.\......selec |
1e600 | 74 42 61 63 6b 67 72 6f 75 6e 64 20 23 65 36 63 65 62 31 20 73 65 6c 65 63 74 46 6f 72 65 67 72 | tBackground.#e6ceb1.selectForegr |
1e620 | 6f 75 6e 64 20 62 6c 61 63 6b 20 5c 0a 09 20 20 20 20 74 72 6f 75 67 68 43 6f 6c 6f 72 20 23 63 | ound.black.\......troughColor.#c |
1e640 | 64 62 37 39 65 0a 7d 0a 00 00 1b 3b 23 20 73 63 61 6c 65 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 54 | db79e.}....;#.scale.tcl.--.#.#.T |
1e660 | 68 69 73 20 66 69 6c 65 20 64 65 66 69 6e 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 62 69 6e | his.file.defines.the.default.bin |
1e680 | 64 69 6e 67 73 20 66 6f 72 20 54 6b 20 73 63 61 6c 65 20 77 69 64 67 65 74 73 20 61 6e 64 20 70 | dings.for.Tk.scale.widgets.and.p |
1e6a0 | 72 6f 76 69 64 65 73 0a 23 20 70 72 6f 63 65 64 75 72 65 73 20 74 68 61 74 20 68 65 6c 70 20 69 | rovides.#.procedures.that.help.i |
1e6c0 | 6e 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 74 68 65 20 62 69 6e 64 69 6e 67 73 2e 0a 23 0a 23 | n.implementing.the.bindings..#.# |
1e6e0 | 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 73 63 61 6c 65 2e 74 63 6c 2c 76 20 31 2e 36 20 | .RCS:.@(#).$Id:.scale.tcl,v.1.6. |
1e700 | 32 30 30 30 2f 30 31 2f 30 36 20 30 32 3a 32 32 3a 32 34 20 68 6f 62 62 73 20 45 78 70 20 24 0a | 2000/01/06.02:22:24.hobbs.Exp.$. |
1e720 | 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 20 54 68 65 20 52 65 67 65 6e | #.#.Copyright.(c).1994.The.Regen |
1e740 | 74 73 20 6f 66 20 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e | ts.of.the.University.of.Californ |
1e760 | 69 61 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 35 20 53 75 | ia..#.Copyright.(c).1994-1995.Su |
1e780 | 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 65 20 74 68 65 | n.Microsystems,.Inc..#.#.See.the |
1e7a0 | 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 6d | .file."license.terms".for.inform |
1e7c0 | 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 69 6f | ation.on.usage.and.redistributio |
1e7e0 | 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 43 | n.#.of.this.file,.and.for.a.DISC |
1e800 | 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 0a 0a 23 2d 2d | LAIMER.OF.ALL.WARRANTIES..#..#-- |
1e820 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
1e840 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
1e860 | 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 68 65 20 63 6f 64 65 20 62 65 6c 6f 77 20 63 72 65 61 74 65 73 | -------.#.The.code.below.creates |
1e880 | 20 74 68 65 20 64 65 66 61 75 6c 74 20 63 6c 61 73 73 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 | .the.default.class.bindings.for. |
1e8a0 | 65 6e 74 72 69 65 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | entries..#---------------------- |
1e8c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
1e8e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 23 20 53 74 61 6e 64 61 72 64 20 | -------------------..#.Standard. |
1e900 | 4d 6f 74 69 66 20 62 69 6e 64 69 6e 67 73 3a 0a 0a 62 69 6e 64 20 53 63 61 6c 65 20 3c 45 6e 74 | Motif.bindings:..bind.Scale.<Ent |
1e920 | 65 72 3e 20 7b 0a 20 20 20 20 69 66 20 7b 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b | er>.{.....if.{$tk_strictMotif}.{ |
1e940 | 0a 09 73 65 74 20 74 6b 50 72 69 76 28 61 63 74 69 76 65 42 67 29 20 5b 25 57 20 63 67 65 74 20 | ..set.tkPriv(activeBg).[%W.cget. |
1e960 | 2d 61 63 74 69 76 65 62 61 63 6b 67 72 6f 75 6e 64 5d 0a 09 25 57 20 63 6f 6e 66 69 67 20 2d 61 | -activebackground]..%W.config.-a |
1e980 | 63 74 69 76 65 62 61 63 6b 67 72 6f 75 6e 64 20 5b 25 57 20 63 67 65 74 20 2d 62 61 63 6b 67 72 | ctivebackground.[%W.cget.-backgr |
1e9a0 | 6f 75 6e 64 5d 0a 20 20 20 20 7d 0a 20 20 20 20 74 6b 53 63 61 6c 65 41 63 74 69 76 61 74 65 20 | ound].....}.....tkScaleActivate. |
1e9c0 | 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 53 63 61 6c 65 20 3c 4d 6f 74 69 6f 6e 3e 20 7b | %W.%x.%y.}.bind.Scale.<Motion>.{ |
1e9e0 | 0a 20 20 20 20 74 6b 53 63 61 6c 65 41 63 74 69 76 61 74 65 20 25 57 20 25 78 20 25 79 0a 7d 0a | .....tkScaleActivate.%W.%x.%y.}. |
1ea00 | 62 69 6e 64 20 53 63 61 6c 65 20 3c 4c 65 61 76 65 3e 20 7b 0a 20 20 20 20 69 66 20 7b 24 74 6b | bind.Scale.<Leave>.{.....if.{$tk |
1ea20 | 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 20 63 6f 6e 66 69 67 20 2d 61 63 74 69 | _strictMotif}.{..%W.config.-acti |
1ea40 | 76 65 62 61 63 6b 67 72 6f 75 6e 64 20 24 74 6b 50 72 69 76 28 61 63 74 69 76 65 42 67 29 0a 20 | vebackground.$tkPriv(activeBg).. |
1ea60 | 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 25 57 20 63 | ...}.....if.{[string.equal.[%W.c |
1ea80 | 67 65 74 20 2d 73 74 61 74 65 5d 20 22 61 63 74 69 76 65 22 5d 7d 20 7b 0a 09 25 57 20 63 6f 6e | get.-state]."active"]}.{..%W.con |
1eaa0 | 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 6e 6f 72 6d 61 6c 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e | figure.-state.normal.....}.}.bin |
1eac0 | 64 20 53 63 61 6c 65 20 3c 31 3e 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 42 75 74 74 6f 6e 44 | d.Scale.<1>.{.....tkScaleButtonD |
1eae0 | 6f 77 6e 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 53 63 61 6c 65 20 3c 42 31 2d 4d 6f | own.%W.%x.%y.}.bind.Scale.<B1-Mo |
1eb00 | 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 44 72 61 67 20 25 57 20 25 78 20 25 79 | tion>.{.....tkScaleDrag.%W.%x.%y |
1eb20 | 0a 7d 0a 62 69 6e 64 20 53 63 61 6c 65 20 3c 42 31 2d 4c 65 61 76 65 3e 20 7b 20 7d 0a 62 69 6e | .}.bind.Scale.<B1-Leave>.{.}.bin |
1eb40 | 64 20 53 63 61 6c 65 20 3c 42 31 2d 45 6e 74 65 72 3e 20 7b 20 7d 0a 62 69 6e 64 20 53 63 61 6c | d.Scale.<B1-Enter>.{.}.bind.Scal |
1eb60 | 65 20 3c 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 31 3e 20 7b 0a 20 20 20 20 74 6b 43 61 6e 63 | e.<ButtonRelease-1>.{.....tkCanc |
1eb80 | 65 6c 52 65 70 65 61 74 0a 20 20 20 20 74 6b 53 63 61 6c 65 45 6e 64 44 72 61 67 20 25 57 0a 20 | elRepeat.....tkScaleEndDrag.%W.. |
1eba0 | 20 20 20 74 6b 53 63 61 6c 65 41 63 74 69 76 61 74 65 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 | ...tkScaleActivate.%W.%x.%y.}.bi |
1ebc0 | 6e 64 20 53 63 61 6c 65 20 3c 32 3e 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 42 75 74 74 6f 6e | nd.Scale.<2>.{.....tkScaleButton |
1ebe0 | 32 44 6f 77 6e 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 53 63 61 6c 65 20 3c 42 32 2d | 2Down.%W.%x.%y.}.bind.Scale.<B2- |
1ec00 | 4d 6f 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 44 72 61 67 20 25 57 20 25 78 20 | Motion>.{.....tkScaleDrag.%W.%x. |
1ec20 | 25 79 0a 7d 0a 62 69 6e 64 20 53 63 61 6c 65 20 3c 42 32 2d 4c 65 61 76 65 3e 20 7b 20 7d 0a 62 | %y.}.bind.Scale.<B2-Leave>.{.}.b |
1ec40 | 69 6e 64 20 53 63 61 6c 65 20 3c 42 32 2d 45 6e 74 65 72 3e 20 7b 20 7d 0a 62 69 6e 64 20 53 63 | ind.Scale.<B2-Enter>.{.}.bind.Sc |
1ec60 | 61 6c 65 20 3c 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 32 3e 20 7b 0a 20 20 20 20 74 6b 43 61 | ale.<ButtonRelease-2>.{.....tkCa |
1ec80 | 6e 63 65 6c 52 65 70 65 61 74 0a 20 20 20 20 74 6b 53 63 61 6c 65 45 6e 64 44 72 61 67 20 25 57 | ncelRepeat.....tkScaleEndDrag.%W |
1eca0 | 0a 20 20 20 20 74 6b 53 63 61 6c 65 41 63 74 69 76 61 74 65 20 25 57 20 25 78 20 25 79 0a 7d 0a | .....tkScaleActivate.%W.%x.%y.}. |
1ecc0 | 62 69 6e 64 20 53 63 61 6c 65 20 3c 43 6f 6e 74 72 6f 6c 2d 31 3e 20 7b 0a 20 20 20 20 74 6b 53 | bind.Scale.<Control-1>.{.....tkS |
1ece0 | 63 61 6c 65 43 6f 6e 74 72 6f 6c 50 72 65 73 73 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 | caleControlPress.%W.%x.%y.}.bind |
1ed00 | 20 53 63 61 6c 65 20 3c 55 70 3e 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d 65 | .Scale.<Up>.{.....tkScaleIncreme |
1ed20 | 6e 74 20 25 57 20 75 70 20 6c 69 74 74 6c 65 20 6e 6f 52 65 70 65 61 74 0a 7d 0a 62 69 6e 64 20 | nt.%W.up.little.noRepeat.}.bind. |
1ed40 | 53 63 61 6c 65 20 3c 44 6f 77 6e 3e 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d | Scale.<Down>.{.....tkScaleIncrem |
1ed60 | 65 6e 74 20 25 57 20 64 6f 77 6e 20 6c 69 74 74 6c 65 20 6e 6f 52 65 70 65 61 74 0a 7d 0a 62 69 | ent.%W.down.little.noRepeat.}.bi |
1ed80 | 6e 64 20 53 63 61 6c 65 20 3c 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 49 6e 63 | nd.Scale.<Left>.{.....tkScaleInc |
1eda0 | 72 65 6d 65 6e 74 20 25 57 20 75 70 20 6c 69 74 74 6c 65 20 6e 6f 52 65 70 65 61 74 0a 7d 0a 62 | rement.%W.up.little.noRepeat.}.b |
1edc0 | 69 6e 64 20 53 63 61 6c 65 20 3c 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 49 | ind.Scale.<Right>.{.....tkScaleI |
1ede0 | 6e 63 72 65 6d 65 6e 74 20 25 57 20 64 6f 77 6e 20 6c 69 74 74 6c 65 20 6e 6f 52 65 70 65 61 74 | ncrement.%W.down.little.noRepeat |
1ee00 | 0a 7d 0a 62 69 6e 64 20 53 63 61 6c 65 20 3c 43 6f 6e 74 72 6f 6c 2d 55 70 3e 20 7b 0a 20 20 20 | .}.bind.Scale.<Control-Up>.{.... |
1ee20 | 20 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d 65 6e 74 20 25 57 20 75 70 20 62 69 67 20 6e 6f 52 65 | .tkScaleIncrement.%W.up.big.noRe |
1ee40 | 70 65 61 74 0a 7d 0a 62 69 6e 64 20 53 63 61 6c 65 20 3c 43 6f 6e 74 72 6f 6c 2d 44 6f 77 6e 3e | peat.}.bind.Scale.<Control-Down> |
1ee60 | 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d 65 6e 74 20 25 57 20 64 6f 77 6e 20 | .{.....tkScaleIncrement.%W.down. |
1ee80 | 62 69 67 20 6e 6f 52 65 70 65 61 74 0a 7d 0a 62 69 6e 64 20 53 63 61 6c 65 20 3c 43 6f 6e 74 72 | big.noRepeat.}.bind.Scale.<Contr |
1eea0 | 6f 6c 2d 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d 65 6e 74 20 | ol-Left>.{.....tkScaleIncrement. |
1eec0 | 25 57 20 75 70 20 62 69 67 20 6e 6f 52 65 70 65 61 74 0a 7d 0a 62 69 6e 64 20 53 63 61 6c 65 20 | %W.up.big.noRepeat.}.bind.Scale. |
1eee0 | 3c 43 6f 6e 74 72 6f 6c 2d 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 6b 53 63 61 6c 65 49 6e 63 | <Control-Right>.{.....tkScaleInc |
1ef00 | 72 65 6d 65 6e 74 20 25 57 20 64 6f 77 6e 20 62 69 67 20 6e 6f 52 65 70 65 61 74 0a 7d 0a 62 69 | rement.%W.down.big.noRepeat.}.bi |
1ef20 | 6e 64 20 53 63 61 6c 65 20 3c 48 6f 6d 65 3e 20 7b 0a 20 20 20 20 25 57 20 73 65 74 20 5b 25 57 | nd.Scale.<Home>.{.....%W.set.[%W |
1ef40 | 20 63 67 65 74 20 2d 66 72 6f 6d 5d 0a 7d 0a 62 69 6e 64 20 53 63 61 6c 65 20 3c 45 6e 64 3e 20 | .cget.-from].}.bind.Scale.<End>. |
1ef60 | 7b 0a 20 20 20 20 25 57 20 73 65 74 20 5b 25 57 20 63 67 65 74 20 2d 74 6f 5d 0a 7d 0a 0a 23 20 | {.....%W.set.[%W.cget.-to].}..#. |
1ef80 | 74 6b 53 63 61 6c 65 41 63 74 69 76 61 74 65 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 | tkScaleActivate.--.#.This.proced |
1efa0 | 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 74 6f 20 63 68 65 63 6b 20 61 20 67 69 76 65 6e 20 | ure.is.invoked.to.check.a.given. |
1efc0 | 78 2d 79 20 70 6f 73 69 74 69 6f 6e 20 69 6e 20 74 68 65 0a 23 20 73 63 61 6c 65 20 61 6e 64 20 | x-y.position.in.the.#.scale.and. |
1efe0 | 61 63 74 69 76 61 74 65 20 74 68 65 20 73 6c 69 64 65 72 20 69 66 20 74 68 65 20 78 2d 79 20 70 | activate.the.slider.if.the.x-y.p |
1f000 | 6f 73 69 74 69 6f 6e 20 66 61 6c 6c 73 20 77 69 74 68 69 6e 0a 23 20 74 68 65 20 73 6c 69 64 65 | osition.falls.within.#.the.slide |
1f020 | 72 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 73 63 61 | r..#.#.Arguments:.#.w.-..The.sca |
1f040 | 6c 65 20 77 69 64 67 65 74 2e 0a 23 20 78 2c 20 79 20 2d 09 4d 6f 75 73 65 20 63 6f 6f 72 64 69 | le.widget..#.x,.y.-.Mouse.coordi |
1f060 | 6e 61 74 65 73 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 61 6c 65 41 63 74 69 76 61 74 65 20 7b 77 20 | nates...proc.tkScaleActivate.{w. |
1f080 | 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 | x.y}.{.....global.tkPriv.....if. |
1f0a0 | 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 | {[string.equal.[$w.cget.-state]. |
1f0c0 | 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 | "disabled"]}.{..return.....}.... |
1f0e0 | 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 69 64 65 6e 74 69 66 79 20 | .if.{[string.equal.[$w.identify. |
1f100 | 24 78 20 24 79 5d 20 22 73 6c 69 64 65 72 22 5d 7d 20 7b 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 | $x.$y]."slider"]}.{..$w.configur |
1f120 | 65 20 2d 73 74 61 74 65 20 61 63 74 69 76 65 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 24 77 | e.-state.active.....}.else.{..$w |
1f140 | 20 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 6e 6f 72 6d 61 6c 0a 20 20 20 20 7d 0a 7d | .configure.-state.normal.....}.} |
1f160 | 0a 0a 23 20 74 6b 53 63 61 6c 65 42 75 74 74 6f 6e 44 6f 77 6e 20 2d 2d 0a 23 20 54 68 69 73 20 | ..#.tkScaleButtonDown.--.#.This. |
1f180 | 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 61 20 62 75 74 74 | procedure.is.invoked.when.a.butt |
1f1a0 | 6f 6e 20 69 73 20 70 72 65 73 73 65 64 20 69 6e 20 61 20 73 63 61 6c 65 2e 20 20 49 74 0a 23 20 | on.is.pressed.in.a.scale...It.#. |
1f1c0 | 74 61 6b 65 73 20 64 69 66 66 65 72 65 6e 74 20 61 63 74 69 6f 6e 73 20 64 65 70 65 6e 64 69 6e | takes.different.actions.dependin |
1f1e0 | 67 20 6f 6e 20 77 68 65 72 65 20 74 68 65 20 62 75 74 74 6f 6e 20 77 61 73 20 70 72 65 73 73 65 | g.on.where.the.button.was.presse |
1f200 | 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 73 63 61 | d..#.#.Arguments:.#.w.-..The.sca |
1f220 | 6c 65 20 77 69 64 67 65 74 2e 0a 23 20 78 2c 20 79 20 2d 09 4d 6f 75 73 65 20 63 6f 6f 72 64 69 | le.widget..#.x,.y.-.Mouse.coordi |
1f240 | 6e 61 74 65 73 20 6f 66 20 62 75 74 74 6f 6e 20 70 72 65 73 73 2e 0a 0a 70 72 6f 63 20 74 6b 53 | nates.of.button.press...proc.tkS |
1f260 | 63 61 6c 65 42 75 74 74 6f 6e 44 6f 77 6e 20 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f | caleButtonDown.{w.x.y}.{.....glo |
1f280 | 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 64 72 61 67 67 69 | bal.tkPriv.....set.tkPriv(draggi |
1f2a0 | 6e 67 29 20 30 0a 20 20 20 20 73 65 74 20 65 6c 20 5b 24 77 20 69 64 65 6e 74 69 66 79 20 24 78 | ng).0.....set.el.[$w.identify.$x |
1f2c0 | 20 24 79 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 65 6c 20 22 | .$y].....if.{[string.equal.$el." |
1f2e0 | 74 72 6f 75 67 68 31 22 5d 7d 20 7b 0a 09 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d 65 6e 74 20 24 | trough1"]}.{..tkScaleIncrement.$ |
1f300 | 77 20 75 70 20 6c 69 74 74 6c 65 20 69 6e 69 74 69 61 6c 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 | w.up.little.initial.....}.elseif |
1f320 | 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 65 6c 20 22 74 72 6f 75 67 68 32 22 5d 7d 20 | .{[string.equal.$el."trough2"]}. |
1f340 | 7b 0a 09 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d 65 6e 74 20 24 77 20 64 6f 77 6e 20 6c 69 74 74 | {..tkScaleIncrement.$w.down.litt |
1f360 | 6c 65 20 69 6e 69 74 69 61 6c 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 5b 73 74 72 69 6e 67 | le.initial.....}.elseif.{[string |
1f380 | 20 65 71 75 61 6c 20 24 65 6c 20 22 73 6c 69 64 65 72 22 5d 7d 20 7b 0a 09 73 65 74 20 74 6b 50 | .equal.$el."slider"]}.{..set.tkP |
1f3a0 | 72 69 76 28 64 72 61 67 67 69 6e 67 29 20 31 0a 09 73 65 74 20 74 6b 50 72 69 76 28 69 6e 69 74 | riv(dragging).1..set.tkPriv(init |
1f3c0 | 56 61 6c 75 65 29 20 5b 24 77 20 67 65 74 5d 0a 09 73 65 74 20 63 6f 6f 72 64 73 20 5b 24 77 20 | Value).[$w.get]..set.coords.[$w. |
1f3e0 | 63 6f 6f 72 64 73 5d 0a 09 73 65 74 20 74 6b 50 72 69 76 28 64 65 6c 74 61 58 29 20 5b 65 78 70 | coords]..set.tkPriv(deltaX).[exp |
1f400 | 72 20 7b 24 78 20 2d 20 5b 6c 69 6e 64 65 78 20 24 63 6f 6f 72 64 73 20 30 5d 7d 5d 0a 09 73 65 | r.{$x.-.[lindex.$coords.0]}]..se |
1f420 | 74 20 74 6b 50 72 69 76 28 64 65 6c 74 61 59 29 20 5b 65 78 70 72 20 7b 24 79 20 2d 20 5b 6c 69 | t.tkPriv(deltaY).[expr.{$y.-.[li |
1f440 | 6e 64 65 78 20 24 63 6f 6f 72 64 73 20 31 5d 7d 5d 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 | ndex.$coords.1]}]..$w.configure. |
1f460 | 2d 73 6c 69 64 65 72 72 65 6c 69 65 66 20 73 75 6e 6b 65 6e 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 | -sliderrelief.sunken.....}.}..#. |
1f480 | 74 6b 53 63 61 6c 65 44 72 61 67 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 | tkScaleDrag.--.#.This.procedure. |
1f4a0 | 69 73 20 63 61 6c 6c 65 64 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 69 73 20 64 72 61 67 | is.called.when.the.mouse.is.drag |
1f4c0 | 67 65 64 20 77 69 74 68 0a 23 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 20 31 20 64 6f 77 6e 2e 20 | ged.with.#.mouse.button.1.down.. |
1f4e0 | 20 49 66 20 74 68 65 20 64 72 61 67 20 73 74 61 72 74 65 64 20 69 6e 73 69 64 65 20 74 68 65 20 | .If.the.drag.started.inside.the. |
1f500 | 73 6c 69 64 65 72 0a 23 20 28 69 2e 65 2e 20 74 68 65 20 73 63 61 6c 65 20 69 73 20 61 63 74 69 | slider.#.(i.e..the.scale.is.acti |
1f520 | 76 65 29 20 74 68 65 6e 20 74 68 65 20 73 63 61 6c 65 27 73 20 76 61 6c 75 65 20 69 73 20 61 64 | ve).then.the.scale's.value.is.ad |
1f540 | 6a 75 73 74 65 64 0a 23 20 74 6f 20 72 65 66 6c 65 63 74 20 74 68 65 20 6d 6f 75 73 65 27 73 20 | justed.#.to.reflect.the.mouse's. |
1f560 | 70 6f 73 69 74 69 6f 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 | position..#.#.Arguments:.#.w.-.. |
1f580 | 54 68 65 20 73 63 61 6c 65 20 77 69 64 67 65 74 2e 0a 23 20 78 2c 20 79 20 2d 09 4d 6f 75 73 65 | The.scale.widget..#.x,.y.-.Mouse |
1f5a0 | 20 63 6f 6f 72 64 69 6e 61 74 65 73 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 61 6c 65 44 72 61 67 20 | .coordinates...proc.tkScaleDrag. |
1f5c0 | 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 | {w.x.y}.{.....global.tkPriv..... |
1f5e0 | 69 66 20 7b 21 24 74 6b 50 72 69 76 28 64 72 61 67 67 69 6e 67 29 7d 20 7b 0a 09 72 65 74 75 72 | if.{!$tkPriv(dragging)}.{..retur |
1f600 | 6e 0a 20 20 20 20 7d 0a 20 20 20 20 24 77 20 73 65 74 20 5b 24 77 20 67 65 74 20 5b 65 78 70 72 | n.....}.....$w.set.[$w.get.[expr |
1f620 | 20 7b 24 78 2d 24 74 6b 50 72 69 76 28 64 65 6c 74 61 58 29 7d 5d 20 5b 65 78 70 72 20 7b 24 79 | .{$x-$tkPriv(deltaX)}].[expr.{$y |
1f640 | 2d 24 74 6b 50 72 69 76 28 64 65 6c 74 61 59 29 7d 5d 5d 0a 7d 0a 0a 23 20 74 6b 53 63 61 6c 65 | -$tkPriv(deltaY)}]].}..#.tkScale |
1f660 | 45 6e 64 44 72 61 67 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 63 | EndDrag.--.#.This.procedure.is.c |
1f680 | 61 6c 6c 65 64 20 74 6f 20 65 6e 64 20 61 6e 20 69 6e 74 65 72 61 63 74 69 76 65 20 64 72 61 67 | alled.to.end.an.interactive.drag |
1f6a0 | 20 6f 66 20 74 68 65 0a 23 20 73 6c 69 64 65 72 2e 20 20 49 74 20 6a 75 73 74 20 6d 61 72 6b 73 | .of.the.#.slider...It.just.marks |
1f6c0 | 20 74 68 65 20 64 72 61 67 20 61 73 20 6f 76 65 72 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 | .the.drag.as.over..#.#.Arguments |
1f6e0 | 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 73 63 61 6c 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 | :.#.w.-..The.scale.widget...proc |
1f700 | 20 74 6b 53 63 61 6c 65 45 6e 64 44 72 61 67 20 7b 77 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c | .tkScaleEndDrag.{w}.{.....global |
1f720 | 20 74 6b 50 72 69 76 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 64 72 61 67 67 69 6e 67 29 | .tkPriv.....set.tkPriv(dragging) |
1f740 | 20 30 0a 20 20 20 20 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 73 6c 69 64 65 72 72 65 6c 69 65 | .0.....$w.configure.-sliderrelie |
1f760 | 66 20 72 61 69 73 65 64 0a 7d 0a 0a 23 20 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d 65 6e 74 20 2d | f.raised.}..#.tkScaleIncrement.- |
1f780 | 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 74 6f | -.#.This.procedure.is.invoked.to |
1f7a0 | 20 69 6e 63 72 65 6d 65 6e 74 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 61 20 73 63 61 6c 65 20 | .increment.the.value.of.a.scale. |
1f7c0 | 61 6e 64 0a 23 20 74 6f 20 73 65 74 20 75 70 20 61 75 74 6f 2d 72 65 70 65 61 74 69 6e 67 20 6f | and.#.to.set.up.auto-repeating.o |
1f7e0 | 66 20 74 68 65 20 61 63 74 69 6f 6e 20 69 66 20 74 68 61 74 20 69 73 20 64 65 73 69 72 65 64 2e | f.the.action.if.that.is.desired. |
1f800 | 20 20 54 68 65 0a 23 20 77 61 79 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 69 6e 63 72 65 6d 65 | ..The.#.way.the.value.is.increme |
1f820 | 6e 74 65 64 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 22 64 69 72 22 20 61 6e 64 20 22 62 | nted.depends.on.the."dir".and."b |
1f840 | 69 67 22 0a 23 20 61 72 67 75 6d 65 6e 74 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a | ig".#.arguments..#.#.Arguments:. |
1f860 | 23 20 77 20 2d 09 09 54 68 65 20 73 63 61 6c 65 20 77 69 64 67 65 74 2e 0a 23 20 64 69 72 20 2d | #.w.-..The.scale.widget..#.dir.- |
1f880 | 09 09 22 75 70 22 20 6d 65 61 6e 73 20 6d 6f 76 65 20 76 61 6c 75 65 20 74 6f 77 61 72 64 73 20 | .."up".means.move.value.towards. |
1f8a0 | 2d 66 72 6f 6d 2c 20 22 64 6f 77 6e 22 20 6d 65 61 6e 73 0a 23 09 09 6d 6f 76 65 20 74 6f 77 61 | -from,."down".means.#..move.towa |
1f8c0 | 72 64 73 20 2d 74 6f 2e 0a 23 20 62 69 67 20 2d 09 09 53 69 7a 65 20 6f 66 20 69 6e 63 72 65 6d | rds.-to..#.big.-..Size.of.increm |
1f8e0 | 65 6e 74 73 3a 20 22 62 69 67 22 20 6f 72 20 22 6c 69 74 74 6c 65 22 2e 0a 23 20 72 65 70 65 61 | ents:."big".or."little"..#.repea |
1f900 | 74 20 2d 09 57 68 65 74 68 65 72 20 61 6e 64 20 68 6f 77 20 74 6f 20 61 75 74 6f 2d 72 65 70 65 | t.-.Whether.and.how.to.auto-repe |
1f920 | 61 74 20 74 68 65 20 61 63 74 69 6f 6e 3a 20 20 22 6e 6f 52 65 70 65 61 74 22 0a 23 09 09 6d 65 | at.the.action:.."noRepeat".#..me |
1f940 | 61 6e 73 20 64 6f 6e 27 74 20 61 75 74 6f 2d 72 65 70 65 61 74 2c 20 22 69 6e 69 74 69 61 6c 22 | ans.don't.auto-repeat,."initial" |
1f960 | 20 6d 65 61 6e 73 20 74 68 69 73 20 69 73 20 74 68 65 0a 23 09 09 66 69 72 73 74 20 61 63 74 69 | .means.this.is.the.#..first.acti |
1f980 | 6f 6e 20 69 6e 20 61 6e 20 61 75 74 6f 2d 72 65 70 65 61 74 20 73 65 71 75 65 6e 63 65 2c 20 61 | on.in.an.auto-repeat.sequence,.a |
1f9a0 | 6e 64 20 22 61 67 61 69 6e 22 0a 23 09 09 6d 65 61 6e 73 20 74 68 69 73 20 69 73 20 74 68 65 20 | nd."again".#..means.this.is.the. |
1f9c0 | 73 65 63 6f 6e 64 20 72 65 70 65 74 69 74 69 6f 6e 20 6f 72 20 6c 61 74 65 72 2e 0a 0a 70 72 6f | second.repetition.or.later...pro |
1f9e0 | 63 20 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d 65 6e 74 20 7b 77 20 64 69 72 20 62 69 67 20 72 65 | c.tkScaleIncrement.{w.dir.big.re |
1fa00 | 70 65 61 74 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 | peat}.{.....global.tkPriv.....if |
1fa20 | 20 7b 21 5b 77 69 6e 66 6f 20 65 78 69 73 74 73 20 24 77 5d 7d 20 72 65 74 75 72 6e 0a 20 20 20 | .{![winfo.exists.$w]}.return.... |
1fa40 | 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 62 69 67 20 22 62 69 67 22 5d 7d 20 | .if.{[string.equal.$big."big"]}. |
1fa60 | 7b 0a 09 73 65 74 20 69 6e 63 20 5b 24 77 20 63 67 65 74 20 2d 62 69 67 69 6e 63 72 65 6d 65 6e | {..set.inc.[$w.cget.-bigincremen |
1fa80 | 74 5d 0a 09 69 66 20 7b 24 69 6e 63 20 3d 3d 20 30 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 69 6e | t]..if.{$inc.==.0}.{......set.in |
1faa0 | 63 20 5b 65 78 70 72 20 7b 61 62 73 28 5b 24 77 20 63 67 65 74 20 2d 74 6f 5d 20 2d 20 5b 24 77 | c.[expr.{abs([$w.cget.-to].-.[$w |
1fac0 | 20 63 67 65 74 20 2d 66 72 6f 6d 5d 29 2f 31 30 2e 30 7d 5d 0a 09 7d 0a 09 69 66 20 7b 24 69 6e | .cget.-from])/10.0}]..}..if.{$in |
1fae0 | 63 20 3c 20 5b 24 77 20 63 67 65 74 20 2d 72 65 73 6f 6c 75 74 69 6f 6e 5d 7d 20 7b 0a 09 20 20 | c.<.[$w.cget.-resolution]}.{.... |
1fb00 | 20 20 73 65 74 20 69 6e 63 20 5b 24 77 20 63 67 65 74 20 2d 72 65 73 6f 6c 75 74 69 6f 6e 5d 0a | ..set.inc.[$w.cget.-resolution]. |
1fb20 | 09 7d 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 69 6e 63 20 5b 24 77 20 63 67 65 | .}.....}.else.{..set.inc.[$w.cge |
1fb40 | 74 20 2d 72 65 73 6f 6c 75 74 69 6f 6e 5d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 28 5b 24 | t.-resolution].....}.....if.{([$ |
1fb60 | 77 20 63 67 65 74 20 2d 66 72 6f 6d 5d 20 3e 20 5b 24 77 20 63 67 65 74 20 2d 74 6f 5d 29 20 5e | w.cget.-from].>.[$w.cget.-to]).^ |
1fb80 | 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 64 69 72 20 22 75 70 22 5d 7d 20 7b 0a 09 73 65 | .[string.equal.$dir."up"]}.{..se |
1fba0 | 74 20 69 6e 63 20 5b 65 78 70 72 20 7b 2d 24 69 6e 63 7d 5d 0a 20 20 20 20 7d 0a 20 20 20 20 24 | t.inc.[expr.{-$inc}].....}.....$ |
1fbc0 | 77 20 73 65 74 20 5b 65 78 70 72 20 7b 5b 24 77 20 67 65 74 5d 20 2b 20 24 69 6e 63 7d 5d 0a 0a | w.set.[expr.{[$w.get].+.$inc}].. |
1fbe0 | 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 72 65 70 65 61 74 20 22 61 | ....if.{[string.equal.$repeat."a |
1fc00 | 67 61 69 6e 22 5d 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 61 66 74 65 72 49 64 29 20 5b | gain"]}.{..set.tkPriv(afterId).[ |
1fc20 | 61 66 74 65 72 20 5b 24 77 20 63 67 65 74 20 2d 72 65 70 65 61 74 69 6e 74 65 72 76 61 6c 5d 20 | after.[$w.cget.-repeatinterval]. |
1fc40 | 5c 0a 09 09 5b 6c 69 73 74 20 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d 65 6e 74 20 24 77 20 24 64 | \...[list.tkScaleIncrement.$w.$d |
1fc60 | 69 72 20 24 62 69 67 20 61 67 61 69 6e 5d 5d 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 5b 73 | ir.$big.again]].....}.elseif.{[s |
1fc80 | 74 72 69 6e 67 20 65 71 75 61 6c 20 24 72 65 70 65 61 74 20 22 69 6e 69 74 69 61 6c 22 5d 7d 20 | tring.equal.$repeat."initial"]}. |
1fca0 | 7b 0a 09 73 65 74 20 64 65 6c 61 79 20 5b 24 77 20 63 67 65 74 20 2d 72 65 70 65 61 74 64 65 6c | {..set.delay.[$w.cget.-repeatdel |
1fcc0 | 61 79 5d 0a 09 69 66 20 7b 24 64 65 6c 61 79 20 3e 20 30 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 | ay]..if.{$delay.>.0}.{......set. |
1fce0 | 74 6b 50 72 69 76 28 61 66 74 65 72 49 64 29 20 5b 61 66 74 65 72 20 24 64 65 6c 61 79 20 5c 0a | tkPriv(afterId).[after.$delay.\. |
1fd00 | 09 09 20 20 20 20 5b 6c 69 73 74 20 74 6b 53 63 61 6c 65 49 6e 63 72 65 6d 65 6e 74 20 24 77 20 | ......[list.tkScaleIncrement.$w. |
1fd20 | 24 64 69 72 20 24 62 69 67 20 61 67 61 69 6e 5d 5d 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 | $dir.$big.again]]..}.....}.}..#. |
1fd40 | 74 6b 53 63 61 6c 65 43 6f 6e 74 72 6f 6c 50 72 65 73 73 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 | tkScaleControlPress.--.#.This.pr |
1fd60 | 6f 63 65 64 75 72 65 20 68 61 6e 64 6c 65 73 20 62 75 74 74 6f 6e 20 70 72 65 73 73 65 73 20 74 | ocedure.handles.button.presses.t |
1fd80 | 68 61 74 20 61 72 65 20 6d 61 64 65 20 77 69 74 68 20 74 68 65 20 43 6f 6e 74 72 6f 6c 0a 23 20 | hat.are.made.with.the.Control.#. |
1fda0 | 6b 65 79 20 64 6f 77 6e 2e 20 20 44 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 6d 6f 75 73 | key.down...Depending.on.the.mous |
1fdc0 | 65 20 70 6f 73 69 74 69 6f 6e 2c 20 69 74 20 61 64 6a 75 73 74 73 20 74 68 65 20 73 63 61 6c 65 | e.position,.it.adjusts.the.scale |
1fde0 | 0a 23 20 76 61 6c 75 65 20 74 6f 20 6f 6e 65 20 65 6e 64 20 6f 66 20 74 68 65 20 72 61 6e 67 65 | .#.value.to.one.end.of.the.range |
1fe00 | 20 6f 72 20 74 68 65 20 6f 74 68 65 72 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 | .or.the.other..#.#.Arguments:.#. |
1fe20 | 77 20 2d 09 09 54 68 65 20 73 63 61 6c 65 20 77 69 64 67 65 74 2e 0a 23 20 78 2c 20 79 20 2d 09 | w.-..The.scale.widget..#.x,.y.-. |
1fe40 | 4d 6f 75 73 65 20 63 6f 6f 72 64 69 6e 61 74 65 73 20 77 68 65 72 65 20 74 68 65 20 62 75 74 74 | Mouse.coordinates.where.the.butt |
1fe60 | 6f 6e 20 77 61 73 20 70 72 65 73 73 65 64 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 61 6c 65 43 6f 6e | on.was.pressed...proc.tkScaleCon |
1fe80 | 74 72 6f 6c 50 72 65 73 73 20 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 73 65 74 20 65 6c 20 5b | trolPress.{w.x.y}.{.....set.el.[ |
1fea0 | 24 77 20 69 64 65 6e 74 69 66 79 20 24 78 20 24 79 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 | $w.identify.$x.$y].....if.{[stri |
1fec0 | 6e 67 20 65 71 75 61 6c 20 24 65 6c 20 22 74 72 6f 75 67 68 31 22 5d 7d 20 7b 0a 09 24 77 20 73 | ng.equal.$el."trough1"]}.{..$w.s |
1fee0 | 65 74 20 5b 24 77 20 63 67 65 74 20 2d 66 72 6f 6d 5d 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 | et.[$w.cget.-from].....}.elseif. |
1ff00 | 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 65 6c 20 22 74 72 6f 75 67 68 32 22 5d 7d 20 7b | {[string.equal.$el."trough2"]}.{ |
1ff20 | 0a 09 24 77 20 73 65 74 20 5b 24 77 20 63 67 65 74 20 2d 74 6f 5d 0a 20 20 20 20 7d 0a 7d 0a 0a | ..$w.set.[$w.cget.-to].....}.}.. |
1ff40 | 23 20 74 6b 53 63 61 6c 65 42 75 74 74 6f 6e 32 44 6f 77 6e 0a 23 20 54 68 69 73 20 70 72 6f 63 | #.tkScaleButton2Down.#.This.proc |
1ff60 | 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 62 75 74 74 6f 6e 20 32 20 69 | edure.is.invoked.when.button.2.i |
1ff80 | 73 20 70 72 65 73 73 65 64 20 6f 76 65 72 20 61 20 73 63 61 6c 65 2e 0a 23 20 49 74 20 73 65 74 | s.pressed.over.a.scale..#.It.set |
1ffa0 | 73 20 74 68 65 20 76 61 6c 75 65 20 74 6f 20 63 6f 72 72 65 73 70 6f 6e 64 20 74 6f 20 74 68 65 | s.the.value.to.correspond.to.the |
1ffc0 | 20 6d 6f 75 73 65 20 70 6f 73 69 74 69 6f 6e 20 61 6e 64 20 73 74 61 72 74 73 0a 23 20 61 20 73 | .mouse.position.and.starts.#.a.s |
1ffe0 | 6c 69 64 65 72 20 64 72 61 67 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d | lider.drag..#.#.Arguments:.#.w.- |
20000 | 09 09 54 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 78 2c 20 79 20 2d | ..The.scrollbar.widget..#.x,.y.- |
20020 | 09 4d 6f 75 73 65 20 63 6f 6f 72 64 69 6e 61 74 65 73 20 77 69 74 68 69 6e 20 74 68 65 20 77 69 | .Mouse.coordinates.within.the.wi |
20040 | 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 61 6c 65 42 75 74 74 6f 6e 32 44 6f 77 6e 20 7b | dget...proc.tkScaleButton2Down.{ |
20060 | 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 | w.x.y}.{.....global.tkPriv...... |
20080 | 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 | if.{[string.equal.[$w.cget.-stat |
200a0 | 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 0a 20 | e]."disabled"]}.{.......return.. |
200c0 | 20 20 20 7d 0a 20 20 20 20 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 73 74 61 74 65 20 61 63 74 | ...}.....$w.configure.-state.act |
200e0 | 69 76 65 0a 20 20 20 20 24 77 20 73 65 74 20 5b 24 77 20 67 65 74 20 24 78 20 24 79 5d 0a 20 20 | ive.....$w.set.[$w.get.$x.$y]... |
20100 | 20 20 73 65 74 20 74 6b 50 72 69 76 28 64 72 61 67 67 69 6e 67 29 20 31 0a 20 20 20 20 73 65 74 | ..set.tkPriv(dragging).1.....set |
20120 | 20 74 6b 50 72 69 76 28 69 6e 69 74 56 61 6c 75 65 29 20 5b 24 77 20 67 65 74 5d 0a 20 20 20 20 | .tkPriv(initValue).[$w.get]..... |
20140 | 73 65 74 20 63 6f 6f 72 64 73 20 22 24 78 20 24 79 22 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 | set.coords."$x.$y".....set.tkPri |
20160 | 76 28 64 65 6c 74 61 58 29 20 30 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 64 65 6c 74 61 | v(deltaX).0.....set.tkPriv(delta |
20180 | 59 29 20 30 0a 7d 0a 00 00 2d df 23 20 73 63 72 6c 62 61 72 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 | Y).0.}...-.#.scrlbar.tcl.--.#.#. |
201a0 | 54 68 69 73 20 66 69 6c 65 20 64 65 66 69 6e 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 62 69 | This.file.defines.the.default.bi |
201c0 | 6e 64 69 6e 67 73 20 66 6f 72 20 54 6b 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 73 2e | ndings.for.Tk.scrollbar.widgets. |
201e0 | 0a 23 20 49 74 20 61 6c 73 6f 20 70 72 6f 76 69 64 65 73 20 70 72 6f 63 65 64 75 72 65 73 20 74 | .#.It.also.provides.procedures.t |
20200 | 68 61 74 20 68 65 6c 70 20 69 6e 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 74 68 65 20 62 69 6e | hat.help.in.implementing.the.bin |
20220 | 64 69 6e 67 73 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 73 63 72 6c 62 61 | dings..#.#.RCS:.@(#).$Id:.scrlba |
20240 | 72 2e 74 63 6c 2c 76 20 31 2e 38 20 32 30 30 30 2f 30 31 2f 30 36 20 30 32 3a 32 32 3a 32 34 20 | r.tcl,v.1.8.2000/01/06.02:22:24. |
20260 | 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 | hobbs.Exp.$.#.#.Copyright.(c).19 |
20280 | 39 34 20 54 68 65 20 52 65 67 65 6e 74 73 20 6f 66 20 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 | 94.The.Regents.of.the.University |
202a0 | 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 | .of.California..#.Copyright.(c). |
202c0 | 31 39 39 34 2d 31 39 39 36 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e | 1994-1996.Sun.Microsystems,.Inc. |
202e0 | 0a 23 0a 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 | .#.#.See.the.file."license.terms |
20300 | 22 20 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 | ".for.information.on.usage.and.r |
20320 | 65 64 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e | edistribution.#.of.this.file,.an |
20340 | 64 20 66 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e | d.for.a.DISCLAIMER.OF.ALL.WARRAN |
20360 | 54 49 45 53 2e 0a 23 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | TIES..#..#---------------------- |
20380 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
203a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 68 65 20 63 6f 64 65 20 62 | -------------------.#.The.code.b |
203c0 | 65 6c 6f 77 20 63 72 65 61 74 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 63 6c 61 73 73 20 62 | elow.creates.the.default.class.b |
203e0 | 69 6e 64 69 6e 67 73 20 66 6f 72 20 73 63 72 6f 6c 6c 62 61 72 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d | indings.for.scrollbars..#------- |
20400 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
20420 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
20440 | 2d 2d 0a 0a 23 20 53 74 61 6e 64 61 72 64 20 4d 6f 74 69 66 20 62 69 6e 64 69 6e 67 73 3a 0a 69 | --..#.Standard.Motif.bindings:.i |
20460 | 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d | f.{[string.compare.$tcl_platform |
20480 | 28 70 6c 61 74 66 6f 72 6d 29 20 22 77 69 6e 64 6f 77 73 22 5d 20 26 26 20 5c 0a 09 5b 73 74 72 | (platform)."windows"].&&.\..[str |
204a0 | 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f | ing.compare.$tcl_platform(platfo |
204c0 | 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 0a 62 69 6e 64 20 53 63 72 6f 6c 6c | rm)."macintosh"]}.{..bind.Scroll |
204e0 | 62 61 72 20 3c 45 6e 74 65 72 3e 20 7b 0a 20 20 20 20 69 66 20 7b 24 74 6b 5f 73 74 72 69 63 74 | bar.<Enter>.{.....if.{$tk_strict |
20500 | 4d 6f 74 69 66 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 61 63 74 69 76 65 42 67 29 20 5b | Motif}.{..set.tkPriv(activeBg).[ |
20520 | 25 57 20 63 67 65 74 20 2d 61 63 74 69 76 65 62 61 63 6b 67 72 6f 75 6e 64 5d 0a 09 25 57 20 63 | %W.cget.-activebackground]..%W.c |
20540 | 6f 6e 66 69 67 20 2d 61 63 74 69 76 65 62 61 63 6b 67 72 6f 75 6e 64 20 5b 25 57 20 63 67 65 74 | onfig.-activebackground.[%W.cget |
20560 | 20 2d 62 61 63 6b 67 72 6f 75 6e 64 5d 0a 20 20 20 20 7d 0a 20 20 20 20 25 57 20 61 63 74 69 76 | .-background].....}.....%W.activ |
20580 | 61 74 65 20 5b 25 57 20 69 64 65 6e 74 69 66 79 20 25 78 20 25 79 5d 0a 7d 0a 62 69 6e 64 20 53 | ate.[%W.identify.%x.%y].}.bind.S |
205a0 | 63 72 6f 6c 6c 62 61 72 20 3c 4d 6f 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 25 57 20 61 63 74 69 76 | crollbar.<Motion>.{.....%W.activ |
205c0 | 61 74 65 20 5b 25 57 20 69 64 65 6e 74 69 66 79 20 25 78 20 25 79 5d 0a 7d 0a 0a 23 20 54 68 65 | ate.[%W.identify.%x.%y].}..#.The |
205e0 | 20 22 69 6e 66 6f 20 65 78 69 73 74 73 22 20 63 6f 6d 6d 61 6e 64 20 69 6e 20 74 68 65 20 66 6f | ."info.exists".command.in.the.fo |
20600 | 6c 6c 6f 77 69 6e 67 20 62 69 6e 64 69 6e 67 20 68 61 6e 64 6c 65 73 20 74 68 65 0a 23 20 73 69 | llowing.binding.handles.the.#.si |
20620 | 74 75 61 74 69 6f 6e 20 77 68 65 72 65 20 61 20 4c 65 61 76 65 20 65 76 65 6e 74 20 6f 63 63 75 | tuation.where.a.Leave.event.occu |
20640 | 72 73 20 66 6f 72 20 61 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 74 68 6f 75 74 20 74 68 65 20 45 | rs.for.a.scrollbar.without.the.E |
20660 | 6e 74 65 72 0a 23 20 65 76 65 6e 74 2e 20 20 54 68 69 73 20 73 65 65 6d 73 20 74 6f 20 68 61 70 | nter.#.event...This.seems.to.hap |
20680 | 70 65 6e 20 6f 6e 20 73 6f 6d 65 20 73 79 73 74 65 6d 73 20 28 73 75 63 68 20 61 73 20 53 6f 6c | pen.on.some.systems.(such.as.Sol |
206a0 | 61 72 69 73 20 32 2e 34 29 20 66 6f 72 0a 23 20 75 6e 6b 6e 6f 77 6e 20 72 65 61 73 6f 6e 73 2e | aris.2.4).for.#.unknown.reasons. |
206c0 | 0a 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 4c 65 61 76 65 3e 20 7b 0a 20 20 20 20 69 | ..bind.Scrollbar.<Leave>.{.....i |
206e0 | 66 20 7b 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 20 26 26 20 5b 69 6e 66 6f 20 65 78 69 73 | f.{$tk_strictMotif.&&.[info.exis |
20700 | 74 73 20 74 6b 50 72 69 76 28 61 63 74 69 76 65 42 67 29 5d 7d 20 7b 0a 09 25 57 20 63 6f 6e 66 | ts.tkPriv(activeBg)]}.{..%W.conf |
20720 | 69 67 20 2d 61 63 74 69 76 65 62 61 63 6b 67 72 6f 75 6e 64 20 24 74 6b 50 72 69 76 28 61 63 74 | ig.-activebackground.$tkPriv(act |
20740 | 69 76 65 42 67 29 0a 20 20 20 20 7d 0a 20 20 20 20 25 57 20 61 63 74 69 76 61 74 65 20 7b 7d 0a | iveBg).....}.....%W.activate.{}. |
20760 | 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 31 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 | }.bind.Scrollbar.<1>.{.....tkScr |
20780 | 6f 6c 6c 42 75 74 74 6f 6e 44 6f 77 6e 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 53 63 | ollButtonDown.%W.%x.%y.}.bind.Sc |
207a0 | 72 6f 6c 6c 62 61 72 20 3c 42 31 2d 4d 6f 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f | rollbar.<B1-Motion>.{.....tkScro |
207c0 | 6c 6c 44 72 61 67 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 | llDrag.%W.%x.%y.}.bind.Scrollbar |
207e0 | 20 3c 42 31 2d 42 32 2d 4d 6f 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 44 72 | .<B1-B2-Motion>.{.....tkScrollDr |
20800 | 61 67 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 42 75 | ag.%W.%x.%y.}.bind.Scrollbar.<Bu |
20820 | 74 74 6f 6e 52 65 6c 65 61 73 65 2d 31 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 42 75 74 | ttonRelease-1>.{.....tkScrollBut |
20840 | 74 6f 6e 55 70 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 | tonUp.%W.%x.%y.}.bind.Scrollbar. |
20860 | 3c 42 31 2d 4c 65 61 76 65 3e 20 7b 0a 20 20 20 20 23 20 50 72 65 76 65 6e 74 73 20 3c 4c 65 61 | <B1-Leave>.{.....#.Prevents.<Lea |
20880 | 76 65 3e 20 62 69 6e 64 69 6e 67 20 66 72 6f 6d 20 62 65 69 6e 67 20 69 6e 76 6f 6b 65 64 2e 0a | ve>.binding.from.being.invoked.. |
208a0 | 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 42 31 2d 45 6e 74 65 72 3e 20 7b 0a 20 20 | }.bind.Scrollbar.<B1-Enter>.{... |
208c0 | 20 20 23 20 50 72 65 76 65 6e 74 73 20 3c 45 6e 74 65 72 3e 20 62 69 6e 64 69 6e 67 20 66 72 6f | ..#.Prevents.<Enter>.binding.fro |
208e0 | 6d 20 62 65 69 6e 67 20 69 6e 76 6f 6b 65 64 2e 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 | m.being.invoked..}.bind.Scrollba |
20900 | 72 20 3c 32 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 42 75 74 74 6f 6e 32 44 6f 77 6e 20 | r.<2>.{.....tkScrollButton2Down. |
20920 | 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 42 31 2d 32 3e | %W.%x.%y.}.bind.Scrollbar.<B1-2> |
20940 | 20 7b 0a 20 20 20 20 23 20 44 6f 20 6e 6f 74 68 69 6e 67 2c 20 73 69 6e 63 65 20 62 75 74 74 6f | .{.....#.Do.nothing,.since.butto |
20960 | 6e 20 31 20 69 73 20 61 6c 72 65 61 64 79 20 64 6f 77 6e 2e 0a 7d 0a 62 69 6e 64 20 53 63 72 6f | n.1.is.already.down..}.bind.Scro |
20980 | 6c 6c 62 61 72 20 3c 42 32 2d 31 3e 20 7b 0a 20 20 20 20 23 20 44 6f 20 6e 6f 74 68 69 6e 67 2c | llbar.<B2-1>.{.....#.Do.nothing, |
209a0 | 20 73 69 6e 63 65 20 62 75 74 74 6f 6e 20 32 20 69 73 20 61 6c 72 65 61 64 79 20 64 6f 77 6e 2e | .since.button.2.is.already.down. |
209c0 | 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 42 32 2d 4d 6f 74 69 6f 6e 3e 20 7b 0a | .}.bind.Scrollbar.<B2-Motion>.{. |
209e0 | 20 20 20 20 74 6b 53 63 72 6f 6c 6c 44 72 61 67 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 | ....tkScrollDrag.%W.%x.%y.}.bind |
20a00 | 20 53 63 72 6f 6c 6c 62 61 72 20 3c 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 32 3e 20 7b 0a 20 | .Scrollbar.<ButtonRelease-2>.{.. |
20a20 | 20 20 20 74 6b 53 63 72 6f 6c 6c 42 75 74 74 6f 6e 55 70 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 | ...tkScrollButtonUp.%W.%x.%y.}.b |
20a40 | 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 42 31 2d 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d | ind.Scrollbar.<B1-ButtonRelease- |
20a60 | 32 3e 20 7b 0a 20 20 20 20 23 20 44 6f 20 6e 6f 74 68 69 6e 67 3a 20 20 42 31 20 72 65 6c 65 61 | 2>.{.....#.Do.nothing:..B1.relea |
20a80 | 73 65 20 77 69 6c 6c 20 68 61 6e 64 6c 65 20 69 74 2e 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c | se.will.handle.it..}.bind.Scroll |
20aa0 | 62 61 72 20 3c 42 32 2d 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 31 3e 20 7b 0a 20 20 20 20 23 | bar.<B2-ButtonRelease-1>.{.....# |
20ac0 | 20 44 6f 20 6e 6f 74 68 69 6e 67 3a 20 20 42 32 20 72 65 6c 65 61 73 65 20 77 69 6c 6c 20 68 61 | .Do.nothing:..B2.release.will.ha |
20ae0 | 6e 64 6c 65 20 69 74 2e 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 42 32 2d 4c 65 | ndle.it..}.bind.Scrollbar.<B2-Le |
20b00 | 61 76 65 3e 20 7b 0a 20 20 20 20 23 20 50 72 65 76 65 6e 74 73 20 3c 4c 65 61 76 65 3e 20 62 69 | ave>.{.....#.Prevents.<Leave>.bi |
20b20 | 6e 64 69 6e 67 20 66 72 6f 6d 20 62 65 69 6e 67 20 69 6e 76 6f 6b 65 64 2e 0a 7d 0a 62 69 6e 64 | nding.from.being.invoked..}.bind |
20b40 | 20 53 63 72 6f 6c 6c 62 61 72 20 3c 42 32 2d 45 6e 74 65 72 3e 20 7b 0a 20 20 20 20 23 20 50 72 | .Scrollbar.<B2-Enter>.{.....#.Pr |
20b60 | 65 76 65 6e 74 73 20 3c 45 6e 74 65 72 3e 20 62 69 6e 64 69 6e 67 20 66 72 6f 6d 20 62 65 69 6e | events.<Enter>.binding.from.bein |
20b80 | 67 20 69 6e 76 6f 6b 65 64 2e 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 43 6f 6e | g.invoked..}.bind.Scrollbar.<Con |
20ba0 | 74 72 6f 6c 2d 31 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 54 6f 70 42 6f 74 74 6f 6d 20 | trol-1>.{.....tkScrollTopBottom. |
20bc0 | 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 43 6f 6e 74 72 | %W.%x.%y.}.bind.Scrollbar.<Contr |
20be0 | 6f 6c 2d 32 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 54 6f 70 42 6f 74 74 6f 6d 20 25 57 | ol-2>.{.....tkScrollTopBottom.%W |
20c00 | 20 25 78 20 25 79 0a 7d 0a 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 55 70 3e 20 7b 0a | .%x.%y.}..bind.Scrollbar.<Up>.{. |
20c20 | 20 20 20 20 74 6b 53 63 72 6f 6c 6c 42 79 55 6e 69 74 73 20 25 57 20 76 20 2d 31 0a 7d 0a 62 69 | ....tkScrollByUnits.%W.v.-1.}.bi |
20c40 | 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 44 6f 77 6e 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f | nd.Scrollbar.<Down>.{.....tkScro |
20c60 | 6c 6c 42 79 55 6e 69 74 73 20 25 57 20 76 20 31 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 | llByUnits.%W.v.1.}.bind.Scrollba |
20c80 | 72 20 3c 43 6f 6e 74 72 6f 6c 2d 55 70 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 42 79 50 | r.<Control-Up>.{.....tkScrollByP |
20ca0 | 61 67 65 73 20 25 57 20 76 20 2d 31 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 43 | ages.%W.v.-1.}.bind.Scrollbar.<C |
20cc0 | 6f 6e 74 72 6f 6c 2d 44 6f 77 6e 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 42 79 50 61 67 | ontrol-Down>.{.....tkScrollByPag |
20ce0 | 65 73 20 25 57 20 76 20 31 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 4c 65 66 74 | es.%W.v.1.}.bind.Scrollbar.<Left |
20d00 | 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 42 79 55 6e 69 74 73 20 25 57 20 68 20 2d 31 0a | >.{.....tkScrollByUnits.%W.h.-1. |
20d20 | 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 | }.bind.Scrollbar.<Right>.{.....t |
20d40 | 6b 53 63 72 6f 6c 6c 42 79 55 6e 69 74 73 20 25 57 20 68 20 31 0a 7d 0a 62 69 6e 64 20 53 63 72 | kScrollByUnits.%W.h.1.}.bind.Scr |
20d60 | 6f 6c 6c 62 61 72 20 3c 43 6f 6e 74 72 6f 6c 2d 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 53 63 | ollbar.<Control-Left>.{.....tkSc |
20d80 | 72 6f 6c 6c 42 79 50 61 67 65 73 20 25 57 20 68 20 2d 31 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c | rollByPages.%W.h.-1.}.bind.Scrol |
20da0 | 6c 62 61 72 20 3c 43 6f 6e 74 72 6f 6c 2d 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 | lbar.<Control-Right>.{.....tkScr |
20dc0 | 6f 6c 6c 42 79 50 61 67 65 73 20 25 57 20 68 20 31 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 | ollByPages.%W.h.1.}.bind.Scrollb |
20de0 | 61 72 20 3c 50 72 69 6f 72 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 42 79 50 61 67 65 73 | ar.<Prior>.{.....tkScrollByPages |
20e00 | 20 25 57 20 68 76 20 2d 31 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 4e 65 78 74 | .%W.hv.-1.}.bind.Scrollbar.<Next |
20e20 | 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 42 79 50 61 67 65 73 20 25 57 20 68 76 20 31 0a | >.{.....tkScrollByPages.%W.hv.1. |
20e40 | 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 72 20 3c 48 6f 6d 65 3e 20 7b 0a 20 20 20 20 74 6b | }.bind.Scrollbar.<Home>.{.....tk |
20e60 | 53 63 72 6f 6c 6c 54 6f 50 6f 73 20 25 57 20 30 0a 7d 0a 62 69 6e 64 20 53 63 72 6f 6c 6c 62 61 | ScrollToPos.%W.0.}.bind.Scrollba |
20e80 | 72 20 3c 45 6e 64 3e 20 7b 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 54 6f 50 6f 73 20 25 57 20 31 | r.<End>.{.....tkScrollToPos.%W.1 |
20ea0 | 0a 7d 0a 7d 0a 23 20 74 6b 53 63 72 6f 6c 6c 42 75 74 74 6f 6e 44 6f 77 6e 20 2d 2d 0a 23 20 54 | .}.}.#.tkScrollButtonDown.--.#.T |
20ec0 | 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 61 20 | his.procedure.is.invoked.when.a. |
20ee0 | 62 75 74 74 6f 6e 20 69 73 20 70 72 65 73 73 65 64 20 69 6e 20 61 20 73 63 72 6f 6c 6c 62 61 72 | button.is.pressed.in.a.scrollbar |
20f00 | 2e 0a 23 20 49 74 20 63 68 61 6e 67 65 73 20 74 68 65 20 77 61 79 20 74 68 65 20 73 63 72 6f 6c | ..#.It.changes.the.way.the.scrol |
20f20 | 6c 62 61 72 20 69 73 20 64 69 73 70 6c 61 79 65 64 20 61 6e 64 20 74 61 6b 65 73 20 61 63 74 69 | lbar.is.displayed.and.takes.acti |
20f40 | 6f 6e 73 0a 23 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 65 72 65 20 74 68 65 20 6d 6f 75 | ons.#.depending.on.where.the.mou |
20f60 | 73 65 20 69 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 | se.is..#.#.Arguments:.#.w.-..The |
20f80 | 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 78 2c 20 79 20 2d 09 4d 6f 75 73 | .scrollbar.widget..#.x,.y.-.Mous |
20fa0 | 65 20 63 6f 6f 72 64 69 6e 61 74 65 73 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 72 6f 6c 6c 42 75 74 | e.coordinates...proc.tkScrollBut |
20fc0 | 74 6f 6e 44 6f 77 6e 20 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 | tonDown.{w.x.y}.{.....global.tkP |
20fe0 | 72 69 76 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 20 5b 24 77 20 63 | riv.....set.tkPriv(relief).[$w.c |
21000 | 67 65 74 20 2d 61 63 74 69 76 65 72 65 6c 69 65 66 5d 0a 20 20 20 20 24 77 20 63 6f 6e 66 69 67 | get.-activerelief].....$w.config |
21020 | 75 72 65 20 2d 61 63 74 69 76 65 72 65 6c 69 65 66 20 73 75 6e 6b 65 6e 0a 20 20 20 20 73 65 74 | ure.-activerelief.sunken.....set |
21040 | 20 65 6c 65 6d 65 6e 74 20 5b 24 77 20 69 64 65 6e 74 69 66 79 20 24 78 20 24 79 5d 0a 20 20 20 | .element.[$w.identify.$x.$y].... |
21060 | 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 65 6c 65 6d 65 6e 74 20 22 73 6c 69 | .if.{[string.equal.$element."sli |
21080 | 64 65 72 22 5d 7d 20 7b 0a 09 74 6b 53 63 72 6f 6c 6c 53 74 61 72 74 44 72 61 67 20 24 77 20 24 | der"]}.{..tkScrollStartDrag.$w.$ |
210a0 | 78 20 24 79 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 74 6b 53 63 72 6f 6c 6c 53 65 6c 65 63 | x.$y.....}.else.{..tkScrollSelec |
210c0 | 74 20 24 77 20 24 65 6c 65 6d 65 6e 74 20 69 6e 69 74 69 61 6c 0a 20 20 20 20 7d 0a 7d 0a 0a 23 | t.$w.$element.initial.....}.}..# |
210e0 | 20 74 6b 53 63 72 6f 6c 6c 42 75 74 74 6f 6e 55 70 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 | .tkScrollButtonUp.--.#.This.proc |
21100 | 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 61 20 62 75 74 74 6f 6e 20 69 | edure.is.invoked.when.a.button.i |
21120 | 73 20 72 65 6c 65 61 73 65 64 20 69 6e 20 61 20 73 63 72 6f 6c 6c 62 61 72 2e 0a 23 20 49 74 20 | s.released.in.a.scrollbar..#.It. |
21140 | 63 61 6e 63 65 6c 73 20 73 63 61 6e 73 20 61 6e 64 20 61 75 74 6f 2d 72 65 70 65 61 74 73 20 74 | cancels.scans.and.auto-repeats.t |
21160 | 68 61 74 20 77 65 72 65 20 69 6e 20 70 72 6f 67 72 65 73 73 2c 20 61 6e 64 20 72 65 73 74 6f 72 | hat.were.in.progress,.and.restor |
21180 | 65 73 0a 23 20 74 68 65 20 77 61 79 20 74 68 65 20 61 63 74 69 76 65 20 65 6c 65 6d 65 6e 74 20 | es.#.the.way.the.active.element. |
211a0 | 69 73 20 64 69 73 70 6c 61 79 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 | is.displayed..#.#.Arguments:.#.w |
211c0 | 20 2d 09 09 54 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 78 2c 20 79 | .-..The.scrollbar.widget..#.x,.y |
211e0 | 20 2d 09 4d 6f 75 73 65 20 63 6f 6f 72 64 69 6e 61 74 65 73 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 | .-.Mouse.coordinates...proc.tkSc |
21200 | 72 6f 6c 6c 42 75 74 74 6f 6e 55 70 20 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 | rollButtonUp.{w.x.y}.{.....globa |
21220 | 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 74 6b 43 61 6e 63 65 6c 52 65 70 65 61 74 0a 20 20 20 20 | l.tkPriv.....tkCancelRepeat..... |
21240 | 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 5d | if.{[info.exists.tkPriv(relief)] |
21260 | 7d 20 7b 0a 09 23 20 41 76 6f 69 64 20 65 72 72 6f 72 20 64 75 65 20 74 6f 20 73 70 75 72 69 6f | }.{..#.Avoid.error.due.to.spurio |
21280 | 75 73 20 72 65 6c 65 61 73 65 20 65 76 65 6e 74 73 0a 09 24 77 20 63 6f 6e 66 69 67 75 72 65 20 | us.release.events..$w.configure. |
212a0 | 2d 61 63 74 69 76 65 72 65 6c 69 65 66 20 24 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 0a 09 74 | -activerelief.$tkPriv(relief)..t |
212c0 | 6b 53 63 72 6f 6c 6c 45 6e 64 44 72 61 67 20 24 77 20 24 78 20 24 79 0a 09 24 77 20 61 63 74 69 | kScrollEndDrag.$w.$x.$y..$w.acti |
212e0 | 76 61 74 65 20 5b 24 77 20 69 64 65 6e 74 69 66 79 20 24 78 20 24 79 5d 0a 20 20 20 20 7d 0a 7d | vate.[$w.identify.$x.$y].....}.} |
21300 | 0a 0a 23 20 74 6b 53 63 72 6f 6c 6c 53 65 6c 65 63 74 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f | ..#.tkScrollSelect.--.#.This.pro |
21320 | 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 61 20 62 75 74 74 6f 6e 20 | cedure.is.invoked.when.a.button. |
21340 | 69 73 20 70 72 65 73 73 65 64 20 6f 76 65 72 20 74 68 65 20 73 63 72 6f 6c 6c 62 61 72 2e 0a 23 | is.pressed.over.the.scrollbar..# |
21360 | 20 49 74 20 69 6e 76 6f 6b 65 73 20 6f 6e 65 20 6f 66 20 73 65 76 65 72 61 6c 20 73 63 72 6f 6c | .It.invokes.one.of.several.scrol |
21380 | 6c 69 6e 67 20 61 63 74 69 6f 6e 73 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 65 72 65 20 | ling.actions.depending.on.where. |
213a0 | 69 6e 0a 23 20 74 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 74 68 65 20 62 75 74 74 6f 6e 20 77 61 | in.#.the.scrollbar.the.button.wa |
213c0 | 73 20 70 72 65 73 73 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 | s.pressed..#.#.Arguments:.#.w.-. |
213e0 | 09 54 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 65 6c 65 6d 65 6e 74 | .The.scrollbar.widget..#.element |
21400 | 20 2d 09 54 68 65 20 65 6c 65 6d 65 6e 74 20 6f 66 20 74 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 | .-.The.element.of.the.scrollbar. |
21420 | 74 68 61 74 20 77 61 73 20 73 65 6c 65 63 74 65 64 2c 20 73 75 63 68 0a 23 09 09 61 73 20 22 61 | that.was.selected,.such.#..as."a |
21440 | 72 72 6f 77 31 22 20 6f 72 20 22 74 72 6f 75 67 68 32 22 2e 20 20 53 68 6f 75 6c 64 6e 27 74 20 | rrow1".or."trough2"...Shouldn't. |
21460 | 62 65 20 22 73 6c 69 64 65 72 22 2e 0a 23 20 72 65 70 65 61 74 20 2d 09 57 68 65 74 68 65 72 20 | be."slider"..#.repeat.-.Whether. |
21480 | 61 6e 64 20 68 6f 77 20 74 6f 20 61 75 74 6f 2d 72 65 70 65 61 74 20 74 68 65 20 61 63 74 69 6f | and.how.to.auto-repeat.the.actio |
214a0 | 6e 3a 20 20 22 6e 6f 52 65 70 65 61 74 22 0a 23 09 09 6d 65 61 6e 73 20 64 6f 6e 27 74 20 61 75 | n:.."noRepeat".#..means.don't.au |
214c0 | 74 6f 2d 72 65 70 65 61 74 2c 20 22 69 6e 69 74 69 61 6c 22 20 6d 65 61 6e 73 20 74 68 69 73 20 | to-repeat,."initial".means.this. |
214e0 | 69 73 20 74 68 65 0a 23 09 09 66 69 72 73 74 20 61 63 74 69 6f 6e 20 69 6e 20 61 6e 20 61 75 74 | is.the.#..first.action.in.an.aut |
21500 | 6f 2d 72 65 70 65 61 74 20 73 65 71 75 65 6e 63 65 2c 20 61 6e 64 20 22 61 67 61 69 6e 22 0a 23 | o-repeat.sequence,.and."again".# |
21520 | 09 09 6d 65 61 6e 73 20 74 68 69 73 20 69 73 20 74 68 65 20 73 65 63 6f 6e 64 20 72 65 70 65 74 | ..means.this.is.the.second.repet |
21540 | 69 74 69 6f 6e 20 6f 72 20 6c 61 74 65 72 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 72 6f 6c 6c 53 65 | ition.or.later...proc.tkScrollSe |
21560 | 6c 65 63 74 20 7b 77 20 65 6c 65 6d 65 6e 74 20 72 65 70 65 61 74 7d 20 7b 0a 20 20 20 20 67 6c | lect.{w.element.repeat}.{.....gl |
21580 | 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 21 5b 77 69 6e 66 6f 20 65 78 69 73 | obal.tkPriv.....if.{![winfo.exis |
215a0 | 74 73 20 24 77 5d 7d 20 72 65 74 75 72 6e 0a 20 20 20 20 73 77 69 74 63 68 20 2d 2d 20 24 65 6c | ts.$w]}.return.....switch.--.$el |
215c0 | 65 6d 65 6e 74 20 7b 0a 09 22 61 72 72 6f 77 31 22 09 7b 74 6b 53 63 72 6f 6c 6c 42 79 55 6e 69 | ement.{.."arrow1".{tkScrollByUni |
215e0 | 74 73 20 24 77 20 68 76 20 2d 31 7d 0a 09 22 74 72 6f 75 67 68 31 22 09 7b 74 6b 53 63 72 6f 6c | ts.$w.hv.-1}.."trough1".{tkScrol |
21600 | 6c 42 79 50 61 67 65 73 20 24 77 20 68 76 20 2d 31 7d 0a 09 22 74 72 6f 75 67 68 32 22 09 7b 74 | lByPages.$w.hv.-1}.."trough2".{t |
21620 | 6b 53 63 72 6f 6c 6c 42 79 50 61 67 65 73 20 24 77 20 68 76 20 31 7d 0a 09 22 61 72 72 6f 77 32 | kScrollByPages.$w.hv.1}.."arrow2 |
21640 | 22 09 7b 74 6b 53 63 72 6f 6c 6c 42 79 55 6e 69 74 73 20 24 77 20 68 76 20 31 7d 0a 09 64 65 66 | ".{tkScrollByUnits.$w.hv.1}..def |
21660 | 61 75 6c 74 09 09 7b 72 65 74 75 72 6e 7d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 | ault..{return}.....}.....if.{[st |
21680 | 72 69 6e 67 20 65 71 75 61 6c 20 24 72 65 70 65 61 74 20 22 61 67 61 69 6e 22 5d 7d 20 7b 0a 09 | ring.equal.$repeat."again"]}.{.. |
216a0 | 73 65 74 20 74 6b 50 72 69 76 28 61 66 74 65 72 49 64 29 20 5b 61 66 74 65 72 20 5b 24 77 20 63 | set.tkPriv(afterId).[after.[$w.c |
216c0 | 67 65 74 20 2d 72 65 70 65 61 74 69 6e 74 65 72 76 61 6c 5d 20 5c 0a 09 09 5b 6c 69 73 74 20 74 | get.-repeatinterval].\...[list.t |
216e0 | 6b 53 63 72 6f 6c 6c 53 65 6c 65 63 74 20 24 77 20 24 65 6c 65 6d 65 6e 74 20 61 67 61 69 6e 5d | kScrollSelect.$w.$element.again] |
21700 | 5d 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 72 | ].....}.elseif.{[string.equal.$r |
21720 | 65 70 65 61 74 20 22 69 6e 69 74 69 61 6c 22 5d 7d 20 7b 0a 09 73 65 74 20 64 65 6c 61 79 20 5b | epeat."initial"]}.{..set.delay.[ |
21740 | 24 77 20 63 67 65 74 20 2d 72 65 70 65 61 74 64 65 6c 61 79 5d 0a 09 69 66 20 7b 24 64 65 6c 61 | $w.cget.-repeatdelay]..if.{$dela |
21760 | 79 20 3e 20 30 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 61 66 74 65 72 49 64 | y.>.0}.{......set.tkPriv(afterId |
21780 | 29 20 5b 61 66 74 65 72 20 24 64 65 6c 61 79 20 5c 0a 09 09 20 20 20 20 5b 6c 69 73 74 20 74 6b | ).[after.$delay.\.......[list.tk |
217a0 | 53 63 72 6f 6c 6c 53 65 6c 65 63 74 20 24 77 20 24 65 6c 65 6d 65 6e 74 20 61 67 61 69 6e 5d 5d | ScrollSelect.$w.$element.again]] |
217c0 | 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 53 63 72 6f 6c 6c 53 74 61 72 74 44 72 61 67 | ..}.....}.}..#.tkScrollStartDrag |
217e0 | 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 63 61 6c 6c 65 64 20 74 | .--.#.This.procedure.is.called.t |
21800 | 6f 20 69 6e 69 74 69 61 74 65 20 61 20 64 72 61 67 20 6f 66 20 74 68 65 20 73 6c 69 64 65 72 2e | o.initiate.a.drag.of.the.slider. |
21820 | 20 20 49 74 20 6a 75 73 74 0a 23 20 72 65 6d 65 6d 62 65 72 73 20 74 68 65 20 73 74 61 72 74 69 | ..It.just.#.remembers.the.starti |
21840 | 6e 67 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 6d 6f 75 73 65 20 61 6e 64 20 73 6c 69 | ng.position.of.the.mouse.and.sli |
21860 | 64 65 72 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 73 | der..#.#.Arguments:.#.w.-..The.s |
21880 | 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 78 2c 20 79 20 2d 09 54 68 65 20 6d 6f | crollbar.widget..#.x,.y.-.The.mo |
218a0 | 75 73 65 20 70 6f 73 69 74 69 6f 6e 20 61 74 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 | use.position.at.the.start.of.the |
218c0 | 20 64 72 61 67 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 72 6f 6c 6c 53 | .drag.operation...proc.tkScrollS |
218e0 | 74 61 72 74 44 72 61 67 20 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b | tartDrag.{w.x.y}.{.....global.tk |
21900 | 50 72 69 76 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 | Priv......if.{[string.equal.[$w. |
21920 | 63 67 65 74 20 2d 63 6f 6d 6d 61 6e 64 5d 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 | cget.-command].""]}.{..return... |
21940 | 20 20 7d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 70 72 65 73 73 58 29 20 24 78 0a 20 20 | ..}.....set.tkPriv(pressX).$x... |
21960 | 20 20 73 65 74 20 74 6b 50 72 69 76 28 70 72 65 73 73 59 29 20 24 79 0a 20 20 20 20 73 65 74 20 | ..set.tkPriv(pressY).$y.....set. |
21980 | 74 6b 50 72 69 76 28 69 6e 69 74 56 61 6c 75 65 73 29 20 5b 24 77 20 67 65 74 5d 0a 20 20 20 20 | tkPriv(initValues).[$w.get]..... |
219a0 | 73 65 74 20 69 76 30 20 5b 6c 69 6e 64 65 78 20 24 74 6b 50 72 69 76 28 69 6e 69 74 56 61 6c 75 | set.iv0.[lindex.$tkPriv(initValu |
219c0 | 65 73 29 20 30 5d 0a 20 20 20 20 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 74 6b 50 72 69 76 28 | es).0].....if.{[llength.$tkPriv( |
219e0 | 69 6e 69 74 56 61 6c 75 65 73 29 5d 20 3d 3d 20 32 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 | initValues)].==.2}.{..set.tkPriv |
21a00 | 28 69 6e 69 74 50 6f 73 29 20 24 69 76 30 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 69 76 | (initPos).$iv0.....}.elseif.{$iv |
21a20 | 30 20 3d 3d 20 30 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 69 6e 69 74 50 6f 73 29 20 30 | 0.==.0}.{..set.tkPriv(initPos).0 |
21a40 | 2e 30 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 69 6e 69 74 | .0.....}.else.{..set.tkPriv(init |
21a60 | 50 6f 73 29 20 5b 65 78 70 72 20 7b 28 64 6f 75 62 6c 65 28 5b 6c 69 6e 64 65 78 20 24 74 6b 50 | Pos).[expr.{(double([lindex.$tkP |
21a80 | 72 69 76 28 69 6e 69 74 56 61 6c 75 65 73 29 20 32 5d 29 29 20 5c 0a 09 09 2f 20 5b 6c 69 6e 64 | riv(initValues).2])).\.../.[lind |
21aa0 | 65 78 20 24 74 6b 50 72 69 76 28 69 6e 69 74 56 61 6c 75 65 73 29 20 30 5d 7d 5d 0a 20 20 20 20 | ex.$tkPriv(initValues).0]}]..... |
21ac0 | 7d 0a 7d 0a 0a 23 20 74 6b 53 63 72 6f 6c 6c 44 72 61 67 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 | }.}..#.tkScrollDrag.--.#.This.pr |
21ae0 | 6f 63 65 64 75 72 65 20 69 73 20 63 61 6c 6c 65 64 20 66 6f 72 20 65 61 63 68 20 6d 6f 75 73 65 | ocedure.is.called.for.each.mouse |
21b00 | 20 6d 6f 74 69 6f 6e 20 65 76 65 6e 20 77 68 65 6e 20 74 68 65 20 73 6c 69 64 65 72 0a 23 20 69 | .motion.even.when.the.slider.#.i |
21b20 | 73 20 62 65 69 6e 67 20 64 72 61 67 67 65 64 2e 20 20 49 74 20 6e 6f 74 69 66 69 65 73 20 74 68 | s.being.dragged...It.notifies.th |
21b40 | 65 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 64 67 65 74 20 69 66 20 77 65 27 72 65 20 6e 6f 74 | e.associated.widget.if.we're.not |
21b60 | 0a 23 20 6a 75 6d 70 20 73 63 72 6f 6c 6c 69 6e 67 2c 20 61 6e 64 20 69 74 20 6a 75 73 74 20 75 | .#.jump.scrolling,.and.it.just.u |
21b80 | 70 64 61 74 65 73 20 74 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 69 66 20 77 65 20 61 72 65 20 6a | pdates.the.scrollbar.if.we.are.j |
21ba0 | 75 6d 70 0a 23 20 73 63 72 6f 6c 6c 69 6e 67 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a | ump.#.scrolling..#.#.Arguments:. |
21bc0 | 23 20 77 20 2d 09 09 54 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 78 | #.w.-..The.scrollbar.widget..#.x |
21be0 | 2c 20 79 20 2d 09 54 68 65 20 63 75 72 72 65 6e 74 20 6d 6f 75 73 65 20 70 6f 73 69 74 69 6f 6e | ,.y.-.The.current.mouse.position |
21c00 | 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 72 6f 6c 6c 44 72 61 67 20 7b 77 20 78 20 79 7d 20 7b 0a 20 | ...proc.tkScrollDrag.{w.x.y}.{.. |
21c20 | 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e | ...global.tkPriv......if.{[strin |
21c40 | 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 69 6e 69 74 50 6f 73 29 20 22 22 5d 7d 20 7b 0a | g.equal.$tkPriv(initPos).""]}.{. |
21c60 | 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 64 65 6c 74 61 20 5b 24 77 20 | .return.....}.....set.delta.[$w. |
21c80 | 64 65 6c 74 61 20 5b 65 78 70 72 20 7b 24 78 20 2d 20 24 74 6b 50 72 69 76 28 70 72 65 73 73 58 | delta.[expr.{$x.-.$tkPriv(pressX |
21ca0 | 29 7d 5d 20 5b 65 78 70 72 20 7b 24 79 20 2d 20 24 74 6b 50 72 69 76 28 70 72 65 73 73 59 29 7d | )}].[expr.{$y.-.$tkPriv(pressY)} |
21cc0 | 5d 5d 0a 20 20 20 20 69 66 20 7b 5b 24 77 20 63 67 65 74 20 2d 6a 75 6d 70 5d 7d 20 7b 0a 09 69 | ]].....if.{[$w.cget.-jump]}.{..i |
21ce0 | 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 74 6b 50 72 69 76 28 69 6e 69 74 56 61 6c 75 65 73 29 5d | f.{[llength.$tkPriv(initValues)] |
21d00 | 20 3d 3d 20 32 7d 20 7b 0a 09 20 20 20 20 24 77 20 73 65 74 20 5b 65 78 70 72 20 7b 5b 6c 69 6e | .==.2}.{......$w.set.[expr.{[lin |
21d20 | 64 65 78 20 24 74 6b 50 72 69 76 28 69 6e 69 74 56 61 6c 75 65 73 29 20 30 5d 20 2b 20 24 64 65 | dex.$tkPriv(initValues).0].+.$de |
21d40 | 6c 74 61 7d 5d 20 5c 0a 09 09 20 20 20 20 5b 65 78 70 72 20 7b 5b 6c 69 6e 64 65 78 20 24 74 6b | lta}].\.......[expr.{[lindex.$tk |
21d60 | 50 72 69 76 28 69 6e 69 74 56 61 6c 75 65 73 29 20 31 5d 20 2b 20 24 64 65 6c 74 61 7d 5d 0a 09 | Priv(initValues).1].+.$delta}].. |
21d80 | 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 73 65 74 20 64 65 6c 74 61 20 5b 65 78 70 72 20 7b 72 | }.else.{......set.delta.[expr.{r |
21da0 | 6f 75 6e 64 28 24 64 65 6c 74 61 20 2a 20 5b 6c 69 6e 64 65 78 20 24 74 6b 50 72 69 76 28 69 6e | ound($delta.*.[lindex.$tkPriv(in |
21dc0 | 69 74 56 61 6c 75 65 73 29 20 30 5d 29 7d 5d 0a 09 20 20 20 20 65 76 61 6c 20 5b 6c 69 73 74 20 | itValues).0])}]......eval.[list. |
21de0 | 24 77 5d 20 73 65 74 20 5b 6c 72 65 70 6c 61 63 65 20 24 74 6b 50 72 69 76 28 69 6e 69 74 56 61 | $w].set.[lreplace.$tkPriv(initVa |
21e00 | 6c 75 65 73 29 20 32 20 33 20 5c 0a 09 09 20 20 20 20 5b 65 78 70 72 20 7b 5b 6c 69 6e 64 65 78 | lues).2.3.\.......[expr.{[lindex |
21e20 | 20 24 74 6b 50 72 69 76 28 69 6e 69 74 56 61 6c 75 65 73 29 20 32 5d 20 2b 20 24 64 65 6c 74 61 | .$tkPriv(initValues).2].+.$delta |
21e40 | 7d 5d 20 5c 0a 09 09 20 20 20 20 5b 65 78 70 72 20 7b 5b 6c 69 6e 64 65 78 20 24 74 6b 50 72 69 | }].\.......[expr.{[lindex.$tkPri |
21e60 | 76 28 69 6e 69 74 56 61 6c 75 65 73 29 20 33 5d 20 2b 20 24 64 65 6c 74 61 7d 5d 5d 0a 09 7d 0a | v(initValues).3].+.$delta}]]..}. |
21e80 | 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 74 6b 53 63 72 6f 6c 6c 54 6f 50 6f 73 20 24 77 20 5b | ....}.else.{..tkScrollToPos.$w.[ |
21ea0 | 65 78 70 72 20 7b 24 74 6b 50 72 69 76 28 69 6e 69 74 50 6f 73 29 20 2b 20 24 64 65 6c 74 61 7d | expr.{$tkPriv(initPos).+.$delta} |
21ec0 | 5d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 53 63 72 6f 6c 6c 45 6e 64 44 72 61 67 20 2d 2d 0a | ].....}.}..#.tkScrollEndDrag.--. |
21ee0 | 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 63 61 6c 6c 65 64 20 74 6f 20 65 6e | #.This.procedure.is.called.to.en |
21f00 | 64 20 61 6e 20 69 6e 74 65 72 61 63 74 69 76 65 20 64 72 61 67 20 6f 66 20 74 68 65 20 73 6c 69 | d.an.interactive.drag.of.the.sli |
21f20 | 64 65 72 2e 0a 23 20 49 74 20 73 63 72 6f 6c 6c 73 20 74 68 65 20 77 69 6e 64 6f 77 20 69 66 20 | der..#.It.scrolls.the.window.if. |
21f40 | 77 65 27 72 65 20 69 6e 20 6a 75 6d 70 20 6d 6f 64 65 2c 20 6f 74 68 65 72 77 69 73 65 20 69 74 | we're.in.jump.mode,.otherwise.it |
21f60 | 20 64 6f 65 73 20 6e 6f 74 68 69 6e 67 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 | .does.nothing..#.#.Arguments:.#. |
21f80 | 77 20 2d 09 09 54 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 78 2c 20 | w.-..The.scrollbar.widget..#.x,. |
21fa0 | 79 20 2d 09 54 68 65 20 6d 6f 75 73 65 20 70 6f 73 69 74 69 6f 6e 20 61 74 20 74 68 65 20 65 6e | y.-.The.mouse.position.at.the.en |
21fc0 | 64 20 6f 66 20 74 68 65 20 64 72 61 67 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 0a 70 72 6f 63 20 74 | d.of.the.drag.operation...proc.t |
21fe0 | 6b 53 63 72 6f 6c 6c 45 6e 64 44 72 61 67 20 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f | kScrollEndDrag.{w.x.y}.{.....glo |
22000 | 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 | bal.tkPriv......if.{[string.equa |
22020 | 6c 20 24 74 6b 50 72 69 76 28 69 6e 69 74 50 6f 73 29 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 72 | l.$tkPriv(initPos).""]}.{..retur |
22040 | 6e 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 24 77 20 63 67 65 74 20 2d 6a 75 6d 70 5d 7d | n.....}.....if.{[$w.cget.-jump]} |
22060 | 20 7b 0a 09 73 65 74 20 64 65 6c 74 61 20 5b 24 77 20 64 65 6c 74 61 20 5b 65 78 70 72 20 7b 24 | .{..set.delta.[$w.delta.[expr.{$ |
22080 | 78 20 2d 20 24 74 6b 50 72 69 76 28 70 72 65 73 73 58 29 7d 5d 20 5c 0a 09 09 5b 65 78 70 72 20 | x.-.$tkPriv(pressX)}].\...[expr. |
220a0 | 7b 24 79 20 2d 20 24 74 6b 50 72 69 76 28 70 72 65 73 73 59 29 7d 5d 5d 0a 09 74 6b 53 63 72 6f | {$y.-.$tkPriv(pressY)}]]..tkScro |
220c0 | 6c 6c 54 6f 50 6f 73 20 24 77 20 5b 65 78 70 72 20 7b 24 74 6b 50 72 69 76 28 69 6e 69 74 50 6f | llToPos.$w.[expr.{$tkPriv(initPo |
220e0 | 73 29 20 2b 20 24 64 65 6c 74 61 7d 5d 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 | s).+.$delta}].....}.....set.tkPr |
22100 | 69 76 28 69 6e 69 74 50 6f 73 29 20 22 22 0a 7d 0a 0a 23 20 74 6b 53 63 72 6f 6c 6c 42 79 55 6e | iv(initPos)."".}..#.tkScrollByUn |
22120 | 69 74 73 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 74 65 6c 6c 73 20 74 68 | its.--.#.This.procedure.tells.th |
22140 | 65 20 73 63 72 6f 6c 6c 62 61 72 27 73 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 64 67 65 74 20 | e.scrollbar's.associated.widget. |
22160 | 74 6f 20 73 63 72 6f 6c 6c 20 75 70 0a 23 20 6f 72 20 64 6f 77 6e 20 62 79 20 61 20 67 69 76 65 | to.scroll.up.#.or.down.by.a.give |
22180 | 6e 20 6e 75 6d 62 65 72 20 6f 66 20 75 6e 69 74 73 2e 20 20 49 74 20 6e 6f 74 69 66 69 65 73 20 | n.number.of.units...It.notifies. |
221a0 | 74 68 65 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 64 67 65 74 0a 23 20 69 6e 20 64 69 66 66 65 | the.associated.widget.#.in.diffe |
221c0 | 72 65 6e 74 20 77 61 79 73 20 66 6f 72 20 6f 6c 64 20 61 6e 64 20 6e 65 77 20 63 6f 6d 6d 61 6e | rent.ways.for.old.and.new.comman |
221e0 | 64 20 73 79 6e 74 61 78 65 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d | d.syntaxes..#.#.Arguments:.#.w.- |
22200 | 09 09 54 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 6f 72 69 65 6e 74 | ..The.scrollbar.widget..#.orient |
22220 | 20 2d 09 57 68 69 63 68 20 6b 69 6e 64 73 20 6f 66 20 73 63 72 6f 6c 6c 62 61 72 73 20 74 68 69 | .-.Which.kinds.of.scrollbars.thi |
22240 | 73 20 61 70 70 6c 69 65 73 20 74 6f 3a 20 20 22 68 22 20 66 6f 72 0a 23 09 09 68 6f 72 69 7a 6f | s.applies.to:.."h".for.#..horizo |
22260 | 6e 74 61 6c 2c 20 22 76 22 20 66 6f 72 20 76 65 72 74 69 63 61 6c 2c 20 22 68 76 22 20 66 6f 72 | ntal,."v".for.vertical,."hv".for |
22280 | 20 62 6f 74 68 2e 0a 23 20 61 6d 6f 75 6e 74 20 2d 09 48 6f 77 20 6d 61 6e 79 20 75 6e 69 74 73 | .both..#.amount.-.How.many.units |
222a0 | 20 74 6f 20 73 63 72 6f 6c 6c 3a 20 20 74 79 70 69 63 61 6c 6c 79 20 31 20 6f 72 20 2d 31 2e 0a | .to.scroll:..typically.1.or.-1.. |
222c0 | 0a 70 72 6f 63 20 74 6b 53 63 72 6f 6c 6c 42 79 55 6e 69 74 73 20 7b 77 20 6f 72 69 65 6e 74 20 | .proc.tkScrollByUnits.{w.orient. |
222e0 | 61 6d 6f 75 6e 74 7d 20 7b 0a 20 20 20 20 73 65 74 20 63 6d 64 20 5b 24 77 20 63 67 65 74 20 2d | amount}.{.....set.cmd.[$w.cget.- |
22300 | 63 6f 6d 6d 61 6e 64 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 | command].....if.{[string.equal.$ |
22320 | 63 6d 64 20 22 22 5d 20 7c 7c 20 28 5b 73 74 72 69 6e 67 20 66 69 72 73 74 20 5c 0a 09 20 20 20 | cmd.""].||.([string.first.\..... |
22340 | 20 5b 73 74 72 69 6e 67 20 69 6e 64 65 78 20 5b 24 77 20 63 67 65 74 20 2d 6f 72 69 65 6e 74 5d | .[string.index.[$w.cget.-orient] |
22360 | 20 30 5d 20 24 6f 72 69 65 6e 74 5d 20 3c 20 30 29 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 | .0].$orient].<.0)}.{..return.... |
22380 | 20 7d 0a 20 20 20 20 73 65 74 20 69 6e 66 6f 20 5b 24 77 20 67 65 74 5d 0a 20 20 20 20 69 66 20 | .}.....set.info.[$w.get].....if. |
223a0 | 7b 5b 6c 6c 65 6e 67 74 68 20 24 69 6e 66 6f 5d 20 3d 3d 20 32 7d 20 7b 0a 09 75 70 6c 65 76 65 | {[llength.$info].==.2}.{..upleve |
223c0 | 6c 20 23 30 20 24 63 6d 64 20 73 63 72 6f 6c 6c 20 24 61 6d 6f 75 6e 74 20 75 6e 69 74 73 0a 20 | l.#0.$cmd.scroll.$amount.units.. |
223e0 | 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 75 70 6c 65 76 65 6c 20 23 30 20 24 63 6d 64 20 5b 65 78 | ...}.else.{..uplevel.#0.$cmd.[ex |
22400 | 70 72 20 7b 5b 6c 69 6e 64 65 78 20 24 69 6e 66 6f 20 32 5d 20 2b 20 24 61 6d 6f 75 6e 74 7d 5d | pr.{[lindex.$info.2].+.$amount}] |
22420 | 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 53 63 72 6f 6c 6c 42 79 50 61 67 65 73 20 2d 2d 0a 23 | .....}.}..#.tkScrollByPages.--.# |
22440 | 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 74 65 6c 6c 73 20 74 68 65 20 73 63 72 6f 6c 6c | .This.procedure.tells.the.scroll |
22460 | 62 61 72 27 73 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 64 67 65 74 20 74 6f 20 73 63 72 6f 6c | bar's.associated.widget.to.scrol |
22480 | 6c 20 75 70 0a 23 20 6f 72 20 64 6f 77 6e 20 62 79 20 61 20 67 69 76 65 6e 20 6e 75 6d 62 65 72 | l.up.#.or.down.by.a.given.number |
224a0 | 20 6f 66 20 73 63 72 65 65 6e 66 75 6c 73 2e 20 20 49 74 20 6e 6f 74 69 66 69 65 73 20 74 68 65 | .of.screenfuls...It.notifies.the |
224c0 | 20 61 73 73 6f 63 69 61 74 65 64 0a 23 20 77 69 64 67 65 74 20 69 6e 20 64 69 66 66 65 72 65 6e | .associated.#.widget.in.differen |
224e0 | 74 20 77 61 79 73 20 66 6f 72 20 6f 6c 64 20 61 6e 64 20 6e 65 77 20 63 6f 6d 6d 61 6e 64 20 73 | t.ways.for.old.and.new.command.s |
22500 | 79 6e 74 61 78 65 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 | yntaxes..#.#.Arguments:.#.w.-..T |
22520 | 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 6f 72 69 65 6e 74 20 2d 09 | he.scrollbar.widget..#.orient.-. |
22540 | 57 68 69 63 68 20 6b 69 6e 64 73 20 6f 66 20 73 63 72 6f 6c 6c 62 61 72 73 20 74 68 69 73 20 61 | Which.kinds.of.scrollbars.this.a |
22560 | 70 70 6c 69 65 73 20 74 6f 3a 20 20 22 68 22 20 66 6f 72 0a 23 09 09 68 6f 72 69 7a 6f 6e 74 61 | pplies.to:.."h".for.#..horizonta |
22580 | 6c 2c 20 22 76 22 20 66 6f 72 20 76 65 72 74 69 63 61 6c 2c 20 22 68 76 22 20 66 6f 72 20 62 6f | l,."v".for.vertical,."hv".for.bo |
225a0 | 74 68 2e 0a 23 20 61 6d 6f 75 6e 74 20 2d 09 48 6f 77 20 6d 61 6e 79 20 73 63 72 65 65 6e 73 20 | th..#.amount.-.How.many.screens. |
225c0 | 74 6f 20 73 63 72 6f 6c 6c 3a 20 20 74 79 70 69 63 61 6c 6c 79 20 31 20 6f 72 20 2d 31 2e 0a 0a | to.scroll:..typically.1.or.-1... |
225e0 | 70 72 6f 63 20 74 6b 53 63 72 6f 6c 6c 42 79 50 61 67 65 73 20 7b 77 20 6f 72 69 65 6e 74 20 61 | proc.tkScrollByPages.{w.orient.a |
22600 | 6d 6f 75 6e 74 7d 20 7b 0a 20 20 20 20 73 65 74 20 63 6d 64 20 5b 24 77 20 63 67 65 74 20 2d 63 | mount}.{.....set.cmd.[$w.cget.-c |
22620 | 6f 6d 6d 61 6e 64 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 63 | ommand].....if.{[string.equal.$c |
22640 | 6d 64 20 22 22 5d 20 7c 7c 20 28 5b 73 74 72 69 6e 67 20 66 69 72 73 74 20 5c 0a 09 20 20 20 20 | md.""].||.([string.first.\...... |
22660 | 5b 73 74 72 69 6e 67 20 69 6e 64 65 78 20 5b 24 77 20 63 67 65 74 20 2d 6f 72 69 65 6e 74 5d 20 | [string.index.[$w.cget.-orient]. |
22680 | 30 5d 20 24 6f 72 69 65 6e 74 5d 20 3c 20 30 29 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 | 0].$orient].<.0)}.{..return..... |
226a0 | 7d 0a 20 20 20 20 73 65 74 20 69 6e 66 6f 20 5b 24 77 20 67 65 74 5d 0a 20 20 20 20 69 66 20 7b | }.....set.info.[$w.get].....if.{ |
226c0 | 5b 6c 6c 65 6e 67 74 68 20 24 69 6e 66 6f 5d 20 3d 3d 20 32 7d 20 7b 0a 09 75 70 6c 65 76 65 6c | [llength.$info].==.2}.{..uplevel |
226e0 | 20 23 30 20 24 63 6d 64 20 73 63 72 6f 6c 6c 20 24 61 6d 6f 75 6e 74 20 70 61 67 65 73 0a 20 20 | .#0.$cmd.scroll.$amount.pages... |
22700 | 20 20 7d 20 65 6c 73 65 20 7b 0a 09 75 70 6c 65 76 65 6c 20 23 30 20 24 63 6d 64 20 5b 65 78 70 | ..}.else.{..uplevel.#0.$cmd.[exp |
22720 | 72 20 7b 5b 6c 69 6e 64 65 78 20 24 69 6e 66 6f 20 32 5d 20 2b 20 24 61 6d 6f 75 6e 74 2a 28 5b | r.{[lindex.$info.2].+.$amount*([ |
22740 | 6c 69 6e 64 65 78 20 24 69 6e 66 6f 20 31 5d 20 2d 20 31 29 7d 5d 0a 20 20 20 20 7d 0a 7d 0a 0a | lindex.$info.1].-.1)}].....}.}.. |
22760 | 23 20 74 6b 53 63 72 6f 6c 6c 54 6f 50 6f 73 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 | #.tkScrollToPos.--.#.This.proced |
22780 | 75 72 65 20 74 65 6c 6c 73 20 74 68 65 20 73 63 72 6f 6c 6c 62 61 72 27 73 20 61 73 73 6f 63 69 | ure.tells.the.scrollbar's.associ |
227a0 | 61 74 65 64 20 77 69 64 67 65 74 20 74 6f 20 73 63 72 6f 6c 6c 20 74 6f 0a 23 20 61 20 70 61 72 | ated.widget.to.scroll.to.#.a.par |
227c0 | 74 69 63 75 6c 61 72 20 6c 6f 63 61 74 69 6f 6e 2c 20 67 69 76 65 6e 20 62 79 20 61 20 66 72 61 | ticular.location,.given.by.a.fra |
227e0 | 63 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 30 20 61 6e 64 20 31 2e 20 20 49 74 20 6e 6f 74 69 66 | ction.between.0.and.1...It.notif |
22800 | 69 65 73 0a 23 20 74 68 65 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 64 67 65 74 20 69 6e 20 64 | ies.#.the.associated.widget.in.d |
22820 | 69 66 66 65 72 65 6e 74 20 77 61 79 73 20 66 6f 72 20 6f 6c 64 20 61 6e 64 20 6e 65 77 20 63 6f | ifferent.ways.for.old.and.new.co |
22840 | 6d 6d 61 6e 64 20 73 79 6e 74 61 78 65 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 | mmand.syntaxes..#.#.Arguments:.# |
22860 | 20 77 20 2d 09 09 54 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 70 6f | .w.-..The.scrollbar.widget..#.po |
22880 | 73 20 2d 09 09 41 20 66 72 61 63 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 30 20 61 6e 64 20 31 20 | s.-..A.fraction.between.0.and.1. |
228a0 | 69 6e 64 69 63 61 74 69 6e 67 20 61 20 64 65 73 69 72 65 64 20 70 6f 73 69 74 69 6f 6e 0a 23 09 | indicating.a.desired.position.#. |
228c0 | 09 69 6e 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 72 6f 6c 6c | .in.the.document...proc.tkScroll |
228e0 | 54 6f 50 6f 73 20 7b 77 20 70 6f 73 7d 20 7b 0a 20 20 20 20 73 65 74 20 63 6d 64 20 5b 24 77 20 | ToPos.{w.pos}.{.....set.cmd.[$w. |
22900 | 63 67 65 74 20 2d 63 6f 6d 6d 61 6e 64 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 | cget.-command].....if.{[string.e |
22920 | 71 75 61 6c 20 24 63 6d 64 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 | qual.$cmd.""]}.{..return.....}.. |
22940 | 20 20 20 73 65 74 20 69 6e 66 6f 20 5b 24 77 20 67 65 74 5d 0a 20 20 20 20 69 66 20 7b 5b 6c 6c | ...set.info.[$w.get].....if.{[ll |
22960 | 65 6e 67 74 68 20 24 69 6e 66 6f 5d 20 3d 3d 20 32 7d 20 7b 0a 09 75 70 6c 65 76 65 6c 20 23 30 | ength.$info].==.2}.{..uplevel.#0 |
22980 | 20 24 63 6d 64 20 6d 6f 76 65 74 6f 20 24 70 6f 73 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 | .$cmd.moveto.$pos.....}.else.{.. |
229a0 | 75 70 6c 65 76 65 6c 20 23 30 20 24 63 6d 64 20 5b 65 78 70 72 20 7b 72 6f 75 6e 64 28 5b 6c 69 | uplevel.#0.$cmd.[expr.{round([li |
229c0 | 6e 64 65 78 20 24 69 6e 66 6f 20 30 5d 2a 24 70 6f 73 29 7d 5d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 | ndex.$info.0]*$pos)}].....}.}..# |
229e0 | 20 74 6b 53 63 72 6f 6c 6c 54 6f 70 42 6f 74 74 6f 6d 0a 23 20 53 63 72 6f 6c 6c 20 74 6f 20 74 | .tkScrollTopBottom.#.Scroll.to.t |
22a00 | 68 65 20 74 6f 70 20 6f 72 20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 | he.top.or.bottom.of.the.document |
22a20 | 2c 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 6d 6f 75 73 65 0a 23 20 70 6f 73 69 74 | ,.depending.on.the.mouse.#.posit |
22a40 | 69 6f 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 73 | ion..#.#.Arguments:.#.w.-..The.s |
22a60 | 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 78 2c 20 79 20 2d 09 4d 6f 75 73 65 20 | crollbar.widget..#.x,.y.-.Mouse. |
22a80 | 63 6f 6f 72 64 69 6e 61 74 65 73 20 77 69 74 68 69 6e 20 74 68 65 20 77 69 64 67 65 74 2e 0a 0a | coordinates.within.the.widget... |
22aa0 | 70 72 6f 63 20 74 6b 53 63 72 6f 6c 6c 54 6f 70 42 6f 74 74 6f 6d 20 7b 77 20 78 20 79 7d 20 7b | proc.tkScrollTopBottom.{w.x.y}.{ |
22ac0 | 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 73 65 74 20 65 6c 65 6d 65 | .....global.tkPriv.....set.eleme |
22ae0 | 6e 74 20 5b 24 77 20 69 64 65 6e 74 69 66 79 20 24 78 20 24 79 5d 0a 20 20 20 20 69 66 20 7b 5b | nt.[$w.identify.$x.$y].....if.{[ |
22b00 | 73 74 72 69 6e 67 20 6d 61 74 63 68 20 2a 31 20 24 65 6c 65 6d 65 6e 74 5d 7d 20 7b 0a 09 74 6b | string.match.*1.$element]}.{..tk |
22b20 | 53 63 72 6f 6c 6c 54 6f 50 6f 73 20 24 77 20 30 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 5b | ScrollToPos.$w.0.....}.elseif.{[ |
22b40 | 73 74 72 69 6e 67 20 6d 61 74 63 68 20 2a 32 20 24 65 6c 65 6d 65 6e 74 5d 7d 20 7b 0a 09 74 6b | string.match.*2.$element]}.{..tk |
22b60 | 53 63 72 6f 6c 6c 54 6f 50 6f 73 20 24 77 20 31 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 53 65 | ScrollToPos.$w.1.....}......#.Se |
22b80 | 74 20 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 2c 20 73 69 6e 63 65 20 69 74 27 73 20 6e 65 65 | t.tkPriv(relief),.since.it's.nee |
22ba0 | 64 65 64 20 62 79 20 74 6b 53 63 72 6f 6c 6c 42 75 74 74 6f 6e 55 70 2e 0a 0a 20 20 20 20 73 65 | ded.by.tkScrollButtonUp.......se |
22bc0 | 74 20 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 20 5b 24 77 20 63 67 65 74 20 2d 61 63 74 69 76 | t.tkPriv(relief).[$w.cget.-activ |
22be0 | 65 72 65 6c 69 65 66 5d 0a 7d 0a 0a 23 20 74 6b 53 63 72 6f 6c 6c 42 75 74 74 6f 6e 32 44 6f 77 | erelief].}..#.tkScrollButton2Dow |
22c00 | 6e 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 | n.#.This.procedure.is.invoked.wh |
22c20 | 65 6e 20 62 75 74 74 6f 6e 20 32 20 69 73 20 70 72 65 73 73 65 64 20 6f 76 65 72 20 61 20 73 63 | en.button.2.is.pressed.over.a.sc |
22c40 | 72 6f 6c 6c 62 61 72 2e 0a 23 20 49 66 20 74 68 65 20 62 75 74 74 6f 6e 20 69 73 20 6f 76 65 72 | rollbar..#.If.the.button.is.over |
22c60 | 20 74 68 65 20 74 72 6f 75 67 68 20 6f 72 20 73 6c 69 64 65 72 2c 20 69 74 20 73 65 74 73 20 74 | .the.trough.or.slider,.it.sets.t |
22c80 | 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 74 6f 0a 23 20 74 68 65 20 6d 6f 75 73 65 20 70 6f 73 69 | he.scrollbar.to.#.the.mouse.posi |
22ca0 | 74 69 6f 6e 20 61 6e 64 20 73 74 61 72 74 73 20 61 20 73 6c 69 64 65 72 20 64 72 61 67 2e 20 20 | tion.and.starts.a.slider.drag... |
22cc0 | 4f 74 68 65 72 77 69 73 65 20 69 74 20 6a 75 73 74 0a 23 20 62 65 68 61 76 65 73 20 74 68 65 20 | Otherwise.it.just.#.behaves.the. |
22ce0 | 73 61 6d 65 20 61 73 20 62 75 74 74 6f 6e 20 31 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a | same.as.button.1..#.#.Arguments: |
22d00 | 0a 23 20 77 20 2d 09 09 54 68 65 20 73 63 72 6f 6c 6c 62 61 72 20 77 69 64 67 65 74 2e 0a 23 20 | .#.w.-..The.scrollbar.widget..#. |
22d20 | 78 2c 20 79 20 2d 09 4d 6f 75 73 65 20 63 6f 6f 72 64 69 6e 61 74 65 73 20 77 69 74 68 69 6e 20 | x,.y.-.Mouse.coordinates.within. |
22d40 | 74 68 65 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 53 63 72 6f 6c 6c 42 75 74 74 6f 6e | the.widget...proc.tkScrollButton |
22d60 | 32 44 6f 77 6e 20 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 | 2Down.{w.x.y}.{.....global.tkPri |
22d80 | 76 0a 20 20 20 20 73 65 74 20 65 6c 65 6d 65 6e 74 20 5b 24 77 20 69 64 65 6e 74 69 66 79 20 24 | v.....set.element.[$w.identify.$ |
22da0 | 78 20 24 79 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 7b 61 72 72 | x.$y].....if.{[string.match.{arr |
22dc0 | 6f 77 5b 31 32 5d 7d 20 24 65 6c 65 6d 65 6e 74 5d 7d 20 7b 0a 09 74 6b 53 63 72 6f 6c 6c 42 75 | ow[12]}.$element]}.{..tkScrollBu |
22de0 | 74 74 6f 6e 44 6f 77 6e 20 24 77 20 24 78 20 24 79 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a | ttonDown.$w.$x.$y..return.....}. |
22e00 | 20 20 20 20 74 6b 53 63 72 6f 6c 6c 54 6f 50 6f 73 20 24 77 20 5b 24 77 20 66 72 61 63 74 69 6f | ....tkScrollToPos.$w.[$w.fractio |
22e20 | 6e 20 24 78 20 24 79 5d 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 72 65 6c 69 65 66 29 20 | n.$x.$y].....set.tkPriv(relief). |
22e40 | 5b 24 77 20 63 67 65 74 20 2d 61 63 74 69 76 65 72 65 6c 69 65 66 5d 0a 0a 20 20 20 20 23 20 4e | [$w.cget.-activerelief]......#.N |
22e60 | 65 65 64 20 74 68 65 20 22 75 70 64 61 74 65 20 69 64 6c 65 74 61 73 6b 73 22 20 62 65 6c 6f 77 | eed.the."update.idletasks".below |
22e80 | 20 73 6f 20 74 68 61 74 20 74 68 65 20 77 69 64 67 65 74 20 63 61 6c 6c 73 20 75 73 0a 20 20 20 | .so.that.the.widget.calls.us.... |
22ea0 | 20 23 20 62 61 63 6b 20 74 6f 20 72 65 73 65 74 20 74 68 65 20 61 63 74 75 61 6c 20 73 63 72 6f | .#.back.to.reset.the.actual.scro |
22ec0 | 6c 6c 62 61 72 20 70 6f 73 69 74 69 6f 6e 20 62 65 66 6f 72 65 20 77 65 20 73 74 61 72 74 20 74 | llbar.position.before.we.start.t |
22ee0 | 68 65 0a 20 20 20 20 23 20 73 6c 69 64 65 72 20 64 72 61 67 2e 0a 0a 20 20 20 20 75 70 64 61 74 | he.....#.slider.drag.......updat |
22f00 | 65 20 69 64 6c 65 74 61 73 6b 73 0a 20 20 20 20 24 77 20 63 6f 6e 66 69 67 75 72 65 20 2d 61 63 | e.idletasks.....$w.configure.-ac |
22f20 | 74 69 76 65 72 65 6c 69 65 66 20 73 75 6e 6b 65 6e 0a 20 20 20 20 24 77 20 61 63 74 69 76 61 74 | tiverelief.sunken.....$w.activat |
22f40 | 65 20 73 6c 69 64 65 72 0a 20 20 20 20 74 6b 53 63 72 6f 6c 6c 53 74 61 72 74 44 72 61 67 20 24 | e.slider.....tkScrollStartDrag.$ |
22f60 | 77 20 24 78 20 24 79 0a 7d 0a 00 00 12 31 23 20 74 65 61 72 6f 66 66 2e 74 63 6c 20 2d 2d 0a 23 | w.$x.$y.}....1#.tearoff.tcl.--.# |
22f80 | 0a 23 20 54 68 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 70 72 6f 63 65 64 75 72 65 73 | .#.This.file.contains.procedures |
22fa0 | 20 74 68 61 74 20 69 6d 70 6c 65 6d 65 6e 74 20 74 65 61 72 2d 6f 66 66 20 6d 65 6e 75 73 2e 0a | .that.implement.tear-off.menus.. |
22fc0 | 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 74 65 61 72 6f 66 66 2e 74 63 6c 2c 76 | #.#.RCS:.@(#).$Id:.tearoff.tcl,v |
22fe0 | 20 31 2e 36 20 32 30 30 30 2f 30 31 2f 30 36 20 30 32 3a 32 32 3a 32 34 20 68 6f 62 62 73 20 45 | .1.6.2000/01/06.02:22:24.hobbs.E |
23000 | 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 20 54 68 65 20 | xp.$.#.#.Copyright.(c).1994.The. |
23020 | 52 65 67 65 6e 74 73 20 6f 66 20 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c | Regents.of.the.University.of.Cal |
23040 | 69 66 6f 72 6e 69 61 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 2d 31 39 | ifornia..#.Copyright.(c).1994-19 |
23060 | 39 37 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 | 97.Sun.Microsystems,.Inc..#.#.Se |
23080 | 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 | e.the.file."license.terms".for.i |
230a0 | 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 | nformation.on.usage.and.redistri |
230c0 | 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 | bution.#.of.this.file,.and.for.a |
230e0 | 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 | .DISCLAIMER.OF.ALL.WARRANTIES..# |
23100 | 0a 0a 23 20 74 6b 54 65 61 72 6f 66 66 4d 65 6e 75 20 2d 2d 0a 23 20 47 69 76 65 6e 20 74 68 65 | ..#.tkTearoffMenu.--.#.Given.the |
23120 | 20 6e 61 6d 65 20 6f 66 20 61 20 6d 65 6e 75 2c 20 74 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 | .name.of.a.menu,.this.procedure. |
23140 | 63 72 65 61 74 65 73 20 61 20 74 6f 72 6e 2d 6f 66 66 20 6d 65 6e 75 0a 23 20 74 68 61 74 20 69 | creates.a.torn-off.menu.#.that.i |
23160 | 73 20 69 64 65 6e 74 69 63 61 6c 20 74 6f 20 74 68 65 20 67 69 76 65 6e 20 6d 65 6e 75 20 28 69 | s.identical.to.the.given.menu.(i |
23180 | 6e 63 6c 75 64 69 6e 67 20 6e 65 73 74 65 64 20 73 75 62 6d 65 6e 75 73 29 2e 0a 23 20 54 68 65 | ncluding.nested.submenus)..#.The |
231a0 | 20 6e 65 77 20 74 6f 72 6e 2d 6f 66 66 20 6d 65 6e 75 20 65 78 69 73 74 73 20 61 73 20 61 20 74 | .new.torn-off.menu.exists.as.a.t |
231c0 | 6f 70 6c 65 76 65 6c 20 77 69 6e 64 6f 77 20 6d 61 6e 61 67 65 64 20 62 79 20 74 68 65 0a 23 20 | oplevel.window.managed.by.the.#. |
231e0 | 77 69 6e 64 6f 77 20 6d 61 6e 61 67 65 72 2e 20 20 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 | window.manager...The.return.valu |
23200 | 65 20 69 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 6e 65 77 20 6d 65 6e 75 2e 0a 23 | e.is.the.name.of.the.new.menu..# |
23220 | 20 54 68 65 20 77 69 6e 64 6f 77 20 69 73 20 63 72 65 61 74 65 64 20 61 74 20 74 68 65 20 70 6f | .The.window.is.created.at.the.po |
23240 | 69 6e 74 20 73 70 65 63 69 66 69 65 64 20 62 79 20 78 20 61 6e 64 20 79 0a 23 0a 23 20 41 72 67 | int.specified.by.x.and.y.#.#.Arg |
23260 | 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 09 54 68 65 20 6d 65 6e 75 20 74 6f 20 62 65 20 74 | uments:.#.w.-...The.menu.to.be.t |
23280 | 6f 72 6e 2d 6f 66 66 20 28 64 75 70 6c 69 63 61 74 65 64 29 2e 0a 23 20 78 20 2d 09 09 09 78 20 | orn-off.(duplicated)..#.x.-...x. |
232a0 | 63 6f 6f 72 64 69 6e 61 74 65 20 77 68 65 72 65 20 77 69 6e 64 6f 77 20 69 73 20 63 72 65 61 74 | coordinate.where.window.is.creat |
232c0 | 65 64 0a 23 20 79 20 2d 09 09 09 79 20 63 6f 6f 72 64 69 6e 61 74 65 20 77 68 65 72 65 20 77 69 | ed.#.y.-...y.coordinate.where.wi |
232e0 | 6e 64 6f 77 20 69 73 20 63 72 65 61 74 65 64 0a 0a 70 72 6f 63 20 74 6b 54 65 61 72 4f 66 66 4d | ndow.is.created..proc.tkTearOffM |
23300 | 65 6e 75 20 7b 77 20 7b 78 20 30 7d 20 7b 79 20 30 7d 7d 20 7b 0a 20 20 20 20 23 20 46 69 6e 64 | enu.{w.{x.0}.{y.0}}.{.....#.Find |
23320 | 20 61 20 75 6e 69 71 75 65 20 6e 61 6d 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 65 20 74 6f | .a.unique.name.to.use.for.the.to |
23340 | 72 6e 2d 6f 66 66 20 6d 65 6e 75 2e 20 20 46 69 6e 64 20 74 68 65 20 66 69 72 73 74 0a 20 20 20 | rn-off.menu...Find.the.first.... |
23360 | 20 23 20 61 6e 63 65 73 74 6f 72 20 6f 66 20 77 20 74 68 61 74 20 69 73 20 61 20 74 6f 70 6c 65 | .#.ancestor.of.w.that.is.a.tople |
23380 | 76 65 6c 20 62 75 74 20 6e 6f 74 20 61 20 6d 65 6e 75 2c 20 61 6e 64 20 75 73 65 20 74 68 69 73 | vel.but.not.a.menu,.and.use.this |
233a0 | 20 61 73 0a 20 20 20 20 23 20 74 68 65 20 70 61 72 65 6e 74 20 6f 66 20 74 68 65 20 6e 65 77 20 | .as.....#.the.parent.of.the.new. |
233c0 | 6d 65 6e 75 2e 20 20 54 68 69 73 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 20 | menu...This.guarantees.that.the. |
233e0 | 74 6f 72 6e 20 6f 66 66 0a 20 20 20 20 23 20 6d 65 6e 75 20 77 69 6c 6c 20 62 65 20 6f 6e 20 74 | torn.off.....#.menu.will.be.on.t |
23400 | 68 65 20 73 61 6d 65 20 73 63 72 65 65 6e 20 61 73 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 6d | he.same.screen.as.the.original.m |
23420 | 65 6e 75 2e 20 20 42 79 20 6d 61 6b 69 6e 67 0a 20 20 20 20 23 20 69 74 20 61 20 63 68 69 6c 64 | enu...By.making.....#.it.a.child |
23440 | 20 6f 66 20 74 68 65 20 61 6e 63 65 73 74 6f 72 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 20 | .of.the.ancestor,.rather.than.a. |
23460 | 63 68 69 6c 64 20 6f 66 20 74 68 65 20 6d 65 6e 75 2c 20 69 74 0a 20 20 20 20 23 20 63 61 6e 20 | child.of.the.menu,.it.....#.can. |
23480 | 63 6f 6e 74 69 6e 75 65 20 74 6f 20 6c 69 76 65 20 65 76 65 6e 20 69 66 20 74 68 65 20 6d 65 6e | continue.to.live.even.if.the.men |
234a0 | 75 20 69 73 20 64 65 6c 65 74 65 64 3b 20 20 69 74 20 77 69 6c 6c 20 67 6f 0a 20 20 20 20 23 20 | u.is.deleted;..it.will.go.....#. |
234c0 | 61 77 61 79 20 77 68 65 6e 20 74 68 65 20 74 6f 70 6c 65 76 65 6c 20 67 6f 65 73 20 61 77 61 79 | away.when.the.toplevel.goes.away |
234e0 | 2e 0a 0a 20 20 20 20 69 66 20 7b 24 78 20 3d 3d 20 30 7d 20 7b 0a 20 20 20 20 09 73 65 74 20 78 | .......if.{$x.==.0}.{......set.x |
23500 | 20 5b 77 69 6e 66 6f 20 72 6f 6f 74 78 20 24 77 5d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b | .[winfo.rootx.$w].....}.....if.{ |
23520 | 24 79 20 3d 3d 20 30 7d 20 7b 0a 20 20 20 20 09 73 65 74 20 79 20 5b 77 69 6e 66 6f 20 72 6f 6f | $y.==.0}.{......set.y.[winfo.roo |
23540 | 74 79 20 24 77 5d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 73 65 74 20 70 61 72 65 6e 74 20 5b 77 69 | ty.$w].....}......set.parent.[wi |
23560 | 6e 66 6f 20 70 61 72 65 6e 74 20 24 77 5d 0a 20 20 20 20 77 68 69 6c 65 20 7b 5b 73 74 72 69 6e | nfo.parent.$w].....while.{[strin |
23580 | 67 20 63 6f 6d 70 61 72 65 20 5b 77 69 6e 66 6f 20 74 6f 70 6c 65 76 65 6c 20 24 70 61 72 65 6e | g.compare.[winfo.toplevel.$paren |
235a0 | 74 5d 20 24 70 61 72 65 6e 74 5d 20 5c 0a 09 20 20 20 20 7c 7c 20 5b 73 74 72 69 6e 67 20 65 71 | t].$parent].\......||.[string.eq |
235c0 | 75 61 6c 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 24 70 61 72 65 6e 74 5d 20 22 4d 65 6e 75 22 | ual.[winfo.class.$parent]."Menu" |
235e0 | 5d 7d 20 7b 0a 09 73 65 74 20 70 61 72 65 6e 74 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 | ]}.{..set.parent.[winfo.parent.$ |
23600 | 70 61 72 65 6e 74 5d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 | parent].....}.....if.{[string.eq |
23620 | 75 61 6c 20 24 70 61 72 65 6e 74 20 22 2e 22 5d 7d 20 7b 0a 09 73 65 74 20 70 61 72 65 6e 74 20 | ual.$parent."."]}.{..set.parent. |
23640 | 22 22 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 20 7b 73 65 74 20 69 20 31 7d 20 31 20 7b 69 6e | "".....}.....for.{set.i.1}.1.{in |
23660 | 63 72 20 69 7d 20 7b 0a 09 73 65 74 20 6d 65 6e 75 20 24 70 61 72 65 6e 74 2e 74 65 61 72 6f 66 | cr.i}.{..set.menu.$parent.tearof |
23680 | 66 24 69 0a 09 69 66 20 7b 21 5b 77 69 6e 66 6f 20 65 78 69 73 74 73 20 24 6d 65 6e 75 5d 7d 20 | f$i..if.{![winfo.exists.$menu]}. |
236a0 | 7b 0a 09 20 20 20 20 62 72 65 61 6b 0a 09 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 24 77 20 63 6c | {......break..}.....}......$w.cl |
236c0 | 6f 6e 65 20 24 6d 65 6e 75 20 74 65 61 72 6f 66 66 0a 0a 20 20 20 20 23 20 50 69 63 6b 20 61 20 | one.$menu.tearoff......#.Pick.a. |
236e0 | 74 69 74 6c 65 20 66 6f 72 20 74 68 65 20 6e 65 77 20 6d 65 6e 75 20 62 79 20 6c 6f 6f 6b 69 6e | title.for.the.new.menu.by.lookin |
23700 | 67 20 61 74 20 74 68 65 20 70 61 72 65 6e 74 20 6f 66 20 74 68 65 0a 20 20 20 20 23 20 6f 72 69 | g.at.the.parent.of.the.....#.ori |
23720 | 67 69 6e 61 6c 3a 20 69 66 20 74 68 65 20 70 61 72 65 6e 74 20 69 73 20 61 20 6d 65 6e 75 2c 20 | ginal:.if.the.parent.is.a.menu,. |
23740 | 74 68 65 6e 20 75 73 65 20 74 68 65 20 74 65 78 74 20 6f 66 20 74 68 65 20 61 63 74 69 76 65 0a | then.use.the.text.of.the.active. |
23760 | 20 20 20 20 23 20 65 6e 74 72 79 2e 20 20 49 66 20 69 74 27 73 20 61 20 6d 65 6e 75 62 75 74 74 | ....#.entry...If.it's.a.menubutt |
23780 | 6f 6e 20 74 68 65 6e 20 75 73 65 20 69 74 73 20 74 65 78 74 2e 0a 0a 20 20 20 20 73 65 74 20 70 | on.then.use.its.text.......set.p |
237a0 | 61 72 65 6e 74 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 77 5d 0a 20 20 20 20 69 66 20 7b | arent.[winfo.parent.$w].....if.{ |
237c0 | 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 24 6d 65 6e 75 20 63 67 65 74 20 2d 74 69 74 | [string.compare.[$menu.cget.-tit |
237e0 | 6c 65 5d 20 22 22 5d 7d 20 7b 0a 20 20 20 20 09 77 6d 20 74 69 74 6c 65 20 24 6d 65 6e 75 20 5b | le].""]}.{......wm.title.$menu.[ |
23800 | 24 6d 65 6e 75 20 63 67 65 74 20 2d 74 69 74 6c 65 5d 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a | $menu.cget.-title].....}.else.{. |
23820 | 20 20 20 20 09 73 77 69 74 63 68 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 24 70 61 72 65 6e 74 | .....switch.[winfo.class.$parent |
23840 | 5d 20 7b 0a 09 20 20 20 20 4d 65 6e 75 62 75 74 74 6f 6e 20 7b 0a 09 20 20 20 20 09 77 6d 20 74 | ].{......Menubutton.{.......wm.t |
23860 | 69 74 6c 65 20 24 6d 65 6e 75 20 5b 24 70 61 72 65 6e 74 20 63 67 65 74 20 2d 74 65 78 74 5d 0a | itle.$menu.[$parent.cget.-text]. |
23880 | 09 20 20 20 20 7d 0a 09 20 20 20 20 4d 65 6e 75 20 7b 0a 09 20 20 20 20 09 77 6d 20 74 69 74 6c | .....}......Menu.{.......wm.titl |
238a0 | 65 20 24 6d 65 6e 75 20 5b 24 70 61 72 65 6e 74 20 65 6e 74 72 79 63 67 65 74 20 61 63 74 69 76 | e.$menu.[$parent.entrycget.activ |
238c0 | 65 20 2d 6c 61 62 65 6c 5d 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 24 | e.-label]......}..}.....}......$ |
238e0 | 6d 65 6e 75 20 70 6f 73 74 20 24 78 20 24 79 0a 0a 20 20 20 20 69 66 20 7b 5b 77 69 6e 66 6f 20 | menu.post.$x.$y......if.{[winfo. |
23900 | 65 78 69 73 74 73 20 24 6d 65 6e 75 5d 20 3d 3d 20 30 7d 20 7b 0a 09 72 65 74 75 72 6e 20 22 22 | exists.$menu].==.0}.{..return."" |
23920 | 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 53 65 74 20 74 6b 50 72 69 76 28 66 6f 63 75 73 29 20 | .....}......#.Set.tkPriv(focus). |
23940 | 6f 6e 20 65 6e 74 72 79 3a 20 20 6f 74 68 65 72 77 69 73 65 20 74 68 65 20 66 6f 63 75 73 20 77 | on.entry:..otherwise.the.focus.w |
23960 | 69 6c 6c 20 67 65 74 20 6c 6f 73 74 0a 20 20 20 20 23 20 61 66 74 65 72 20 6b 65 79 62 6f 61 72 | ill.get.lost.....#.after.keyboar |
23980 | 64 20 69 6e 76 6f 63 61 74 69 6f 6e 20 6f 66 20 61 20 73 75 62 2d 6d 65 6e 75 20 28 69 74 20 77 | d.invocation.of.a.sub-menu.(it.w |
239a0 | 69 6c 6c 20 73 74 61 79 20 6f 6e 20 74 68 65 0a 20 20 20 20 23 20 73 75 62 6d 65 6e 75 29 2e 0a | ill.stay.on.the.....#.submenu).. |
239c0 | 0a 20 20 20 20 62 69 6e 64 20 24 6d 65 6e 75 20 3c 45 6e 74 65 72 3e 20 7b 0a 09 73 65 74 20 74 | .....bind.$menu.<Enter>.{..set.t |
239e0 | 6b 50 72 69 76 28 66 6f 63 75 73 29 20 25 57 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 49 66 20 | kPriv(focus).%W.....}......#.If. |
23a00 | 74 68 65 72 65 20 69 73 20 61 20 2d 74 65 61 72 6f 66 66 63 6f 6d 6d 61 6e 64 20 6f 70 74 69 6f | there.is.a.-tearoffcommand.optio |
23a20 | 6e 20 66 6f 72 20 74 68 65 20 6d 65 6e 75 2c 20 69 6e 76 6f 6b 65 20 69 74 0a 20 20 20 20 23 20 | n.for.the.menu,.invoke.it.....#. |
23a40 | 6e 6f 77 2e 0a 0a 20 20 20 20 73 65 74 20 63 6d 64 20 5b 24 77 20 63 67 65 74 20 2d 74 65 61 72 | now.......set.cmd.[$w.cget.-tear |
23a60 | 6f 66 66 63 6f 6d 6d 61 6e 64 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 | offcommand].....if.{[string.comp |
23a80 | 61 72 65 20 24 63 6d 64 20 22 22 5d 7d 20 7b 0a 09 75 70 6c 65 76 65 6c 20 23 30 20 24 63 6d 64 | are.$cmd.""]}.{..uplevel.#0.$cmd |
23aa0 | 20 5b 6c 69 73 74 20 24 77 20 24 6d 65 6e 75 5d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 | .[list.$w.$menu].....}.....retur |
23ac0 | 6e 20 24 6d 65 6e 75 0a 7d 0a 0a 23 20 74 6b 4d 65 6e 75 44 75 70 20 2d 2d 0a 23 20 47 69 76 65 | n.$menu.}..#.tkMenuDup.--.#.Give |
23ae0 | 6e 20 61 20 6d 65 6e 75 20 28 68 69 65 72 61 72 63 68 79 29 2c 20 63 72 65 61 74 65 20 61 20 64 | n.a.menu.(hierarchy),.create.a.d |
23b00 | 75 70 6c 69 63 61 74 65 20 6d 65 6e 75 20 28 68 69 65 72 61 72 63 68 79 29 0a 23 20 69 6e 20 61 | uplicate.menu.(hierarchy).#.in.a |
23b20 | 20 67 69 76 65 6e 20 77 69 6e 64 6f 77 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 | .given.window..#.#.Arguments:.#. |
23b40 | 73 72 63 20 2d 09 09 09 53 6f 75 72 63 65 20 77 69 6e 64 6f 77 2e 20 20 4d 75 73 74 20 62 65 20 | src.-...Source.window...Must.be. |
23b60 | 61 20 6d 65 6e 75 2e 20 20 49 74 20 61 6e 64 20 69 74 73 0a 23 09 09 09 6d 65 6e 75 20 64 65 73 | a.menu...It.and.its.#...menu.des |
23b80 | 63 65 6e 64 61 6e 74 73 20 77 69 6c 6c 20 62 65 20 64 75 70 6c 69 63 61 74 65 64 20 61 74 20 64 | cendants.will.be.duplicated.at.d |
23ba0 | 73 74 2e 0a 23 20 64 73 74 20 2d 09 09 09 4e 61 6d 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 6f | st..#.dst.-...Name.to.use.for.to |
23bc0 | 70 6d 6f 73 74 20 6d 65 6e 75 20 69 6e 20 64 75 70 6c 69 63 61 74 65 0a 23 09 09 09 68 69 65 72 | pmost.menu.in.duplicate.#...hier |
23be0 | 61 72 63 68 79 2e 0a 0a 70 72 6f 63 20 74 6b 4d 65 6e 75 44 75 70 20 7b 73 72 63 20 64 73 74 20 | archy...proc.tkMenuDup.{src.dst. |
23c00 | 74 79 70 65 7d 20 7b 0a 20 20 20 20 73 65 74 20 63 6d 64 20 5b 6c 69 73 74 20 6d 65 6e 75 20 24 | type}.{.....set.cmd.[list.menu.$ |
23c20 | 64 73 74 20 2d 74 79 70 65 20 24 74 79 70 65 5d 0a 20 20 20 20 66 6f 72 65 61 63 68 20 6f 70 74 | dst.-type.$type].....foreach.opt |
23c40 | 69 6f 6e 20 5b 24 73 72 63 20 63 6f 6e 66 69 67 75 72 65 5d 20 7b 0a 09 69 66 20 7b 5b 6c 6c 65 | ion.[$src.configure].{..if.{[lle |
23c60 | 6e 67 74 68 20 24 6f 70 74 69 6f 6e 5d 20 3d 3d 20 32 7d 20 7b 0a 09 20 20 20 20 63 6f 6e 74 69 | ngth.$option].==.2}.{......conti |
23c80 | 6e 75 65 0a 09 7d 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 6c 69 6e 64 65 | nue..}..if.{[string.equal.[linde |
23ca0 | 78 20 24 6f 70 74 69 6f 6e 20 30 5d 20 22 2d 74 79 70 65 22 5d 7d 20 7b 0a 09 20 20 20 20 63 6f | x.$option.0]."-type"]}.{......co |
23cc0 | 6e 74 69 6e 75 65 0a 09 7d 0a 09 6c 61 70 70 65 6e 64 20 63 6d 64 20 5b 6c 69 6e 64 65 78 20 24 | ntinue..}..lappend.cmd.[lindex.$ |
23ce0 | 6f 70 74 69 6f 6e 20 30 5d 20 5b 6c 69 6e 64 65 78 20 24 6f 70 74 69 6f 6e 20 34 5d 0a 20 20 20 | option.0].[lindex.$option.4].... |
23d00 | 20 7d 0a 20 20 20 20 65 76 61 6c 20 24 63 6d 64 0a 20 20 20 20 73 65 74 20 6c 61 73 74 20 5b 24 | .}.....eval.$cmd.....set.last.[$ |
23d20 | 73 72 63 20 69 6e 64 65 78 20 6c 61 73 74 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 | src.index.last].....if.{[string. |
23d40 | 65 71 75 61 6c 20 24 6c 61 73 74 20 22 6e 6f 6e 65 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 | equal.$last."none"]}.{..return.. |
23d60 | 20 20 20 7d 0a 20 20 20 20 66 6f 72 20 7b 73 65 74 20 69 20 5b 24 73 72 63 20 63 67 65 74 20 2d | ...}.....for.{set.i.[$src.cget.- |
23d80 | 74 65 61 72 6f 66 66 5d 7d 20 7b 24 69 20 3c 3d 20 24 6c 61 73 74 7d 20 7b 69 6e 63 72 20 69 7d | tearoff]}.{$i.<=.$last}.{incr.i} |
23da0 | 20 7b 0a 09 73 65 74 20 63 6d 64 20 5b 6c 69 73 74 20 24 64 73 74 20 61 64 64 20 5b 24 73 72 63 | .{..set.cmd.[list.$dst.add.[$src |
23dc0 | 20 74 79 70 65 20 24 69 5d 5d 0a 09 66 6f 72 65 61 63 68 20 6f 70 74 69 6f 6e 20 5b 24 73 72 63 | .type.$i]]..foreach.option.[$src |
23de0 | 20 65 6e 74 72 79 63 6f 6e 66 69 67 75 72 65 20 24 69 5d 20 20 7b 0a 09 20 20 20 20 6c 61 70 70 | .entryconfigure.$i]..{......lapp |
23e00 | 65 6e 64 20 63 6d 64 20 5b 6c 69 6e 64 65 78 20 24 6f 70 74 69 6f 6e 20 30 5d 20 5b 6c 69 6e 64 | end.cmd.[lindex.$option.0].[lind |
23e20 | 65 78 20 24 6f 70 74 69 6f 6e 20 34 5d 0a 09 7d 0a 09 65 76 61 6c 20 24 63 6d 64 0a 20 20 20 20 | ex.$option.4]..}..eval.$cmd..... |
23e40 | 7d 0a 0a 20 20 20 20 23 20 44 75 70 6c 69 63 61 74 65 20 74 68 65 20 62 69 6e 64 69 6e 67 20 74 | }......#.Duplicate.the.binding.t |
23e60 | 61 67 73 20 61 6e 64 20 62 69 6e 64 69 6e 67 73 20 66 72 6f 6d 20 74 68 65 20 73 6f 75 72 63 65 | ags.and.bindings.from.the.source |
23e80 | 20 6d 65 6e 75 2e 0a 0a 20 20 20 20 73 65 74 20 74 61 67 73 20 5b 62 69 6e 64 74 61 67 73 20 24 | .menu.......set.tags.[bindtags.$ |
23ea0 | 73 72 63 5d 0a 20 20 20 20 73 65 74 20 73 72 63 4c 65 6e 20 5b 73 74 72 69 6e 67 20 6c 65 6e 67 | src].....set.srcLen.[string.leng |
23ec0 | 74 68 20 24 73 72 63 5d 0a 20 0a 20 20 20 20 23 20 43 6f 70 79 20 74 61 67 73 20 74 6f 20 78 2c | th.$src].......#.Copy.tags.to.x, |
23ee0 | 20 72 65 70 6c 61 63 69 6e 67 20 65 61 63 68 20 73 75 62 73 74 72 69 6e 67 20 6f 66 20 73 72 63 | .replacing.each.substring.of.src |
23f00 | 20 77 69 74 68 20 64 73 74 2e 0a 0a 20 20 20 20 77 68 69 6c 65 20 7b 5b 73 65 74 20 69 6e 64 65 | .with.dst.......while.{[set.inde |
23f20 | 78 20 5b 73 74 72 69 6e 67 20 66 69 72 73 74 20 24 73 72 63 20 24 74 61 67 73 5d 5d 20 21 3d 20 | x.[string.first.$src.$tags]].!=. |
23f40 | 2d 31 7d 20 7b 0a 09 61 70 70 65 6e 64 20 78 20 5b 73 74 72 69 6e 67 20 72 61 6e 67 65 20 24 74 | -1}.{..append.x.[string.range.$t |
23f60 | 61 67 73 20 30 20 5b 65 78 70 72 20 7b 24 69 6e 64 65 78 20 2d 20 31 7d 5d 5d 24 64 73 74 0a 09 | ags.0.[expr.{$index.-.1}]]$dst.. |
23f80 | 73 65 74 20 74 61 67 73 20 5b 73 74 72 69 6e 67 20 72 61 6e 67 65 20 24 74 61 67 73 20 5b 65 78 | set.tags.[string.range.$tags.[ex |
23fa0 | 70 72 20 7b 24 69 6e 64 65 78 20 2b 20 24 73 72 63 4c 65 6e 7d 5d 20 65 6e 64 5d 0a 20 20 20 20 | pr.{$index.+.$srcLen}].end]..... |
23fc0 | 7d 0a 20 20 20 20 61 70 70 65 6e 64 20 78 20 24 74 61 67 73 0a 0a 20 20 20 20 62 69 6e 64 74 61 | }.....append.x.$tags......bindta |
23fe0 | 67 73 20 24 64 73 74 20 24 78 0a 0a 20 20 20 20 66 6f 72 65 61 63 68 20 65 76 65 6e 74 20 5b 62 | gs.$dst.$x......foreach.event.[b |
24000 | 69 6e 64 20 24 73 72 63 5d 20 7b 0a 09 75 6e 73 65 74 20 78 0a 09 73 65 74 20 73 63 72 69 70 74 | ind.$src].{..unset.x..set.script |
24020 | 20 5b 62 69 6e 64 20 24 73 72 63 20 24 65 76 65 6e 74 5d 0a 09 73 65 74 20 65 76 65 6e 74 4c 65 | .[bind.$src.$event]..set.eventLe |
24040 | 6e 20 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 24 65 76 65 6e 74 5d 0a 0a 09 23 20 43 6f 70 | n.[string.length.$event]...#.Cop |
24060 | 79 20 73 63 72 69 70 74 20 74 6f 20 78 2c 20 72 65 70 6c 61 63 69 6e 67 20 65 61 63 68 20 73 75 | y.script.to.x,.replacing.each.su |
24080 | 62 73 74 72 69 6e 67 20 6f 66 20 65 76 65 6e 74 20 77 69 74 68 20 64 73 74 2e 0a 0a 09 77 68 69 | bstring.of.event.with.dst....whi |
240a0 | 6c 65 20 7b 5b 73 65 74 20 69 6e 64 65 78 20 5b 73 74 72 69 6e 67 20 66 69 72 73 74 20 24 65 76 | le.{[set.index.[string.first.$ev |
240c0 | 65 6e 74 20 24 73 63 72 69 70 74 5d 5d 20 21 3d 20 2d 31 7d 20 7b 0a 09 20 20 20 20 61 70 70 65 | ent.$script]].!=.-1}.{......appe |
240e0 | 6e 64 20 78 20 5b 73 74 72 69 6e 67 20 72 61 6e 67 65 20 24 73 63 72 69 70 74 20 30 20 5b 65 78 | nd.x.[string.range.$script.0.[ex |
24100 | 70 72 20 7b 24 69 6e 64 65 78 20 2d 20 31 7d 5d 5d 0a 09 20 20 20 20 61 70 70 65 6e 64 20 78 20 | pr.{$index.-.1}]]......append.x. |
24120 | 24 64 73 74 0a 09 20 20 20 20 73 65 74 20 73 63 72 69 70 74 20 5b 73 74 72 69 6e 67 20 72 61 6e | $dst......set.script.[string.ran |
24140 | 67 65 20 24 73 63 72 69 70 74 20 5b 65 78 70 72 20 7b 24 69 6e 64 65 78 20 2b 20 24 65 76 65 6e | ge.$script.[expr.{$index.+.$even |
24160 | 74 4c 65 6e 7d 5d 20 65 6e 64 5d 0a 09 7d 0a 09 61 70 70 65 6e 64 20 78 20 24 73 63 72 69 70 74 | tLen}].end]..}..append.x.$script |
24180 | 0a 0a 09 62 69 6e 64 20 24 64 73 74 20 24 65 76 65 6e 74 20 24 78 0a 20 20 20 20 7d 0a 7d 0a 00 | ...bind.$dst.$event.$x.....}.}.. |
241a0 | 00 6d a2 23 20 74 65 78 74 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 66 69 6c 65 20 64 | .m.#.text.tcl.--.#.#.This.file.d |
241c0 | 65 66 69 6e 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 | efines.the.default.bindings.for. |
241e0 | 54 6b 20 74 65 78 74 20 77 69 64 67 65 74 73 20 61 6e 64 20 70 72 6f 76 69 64 65 73 0a 23 20 70 | Tk.text.widgets.and.provides.#.p |
24200 | 72 6f 63 65 64 75 72 65 73 20 74 68 61 74 20 68 65 6c 70 20 69 6e 20 69 6d 70 6c 65 6d 65 6e 74 | rocedures.that.help.in.implement |
24220 | 69 6e 67 20 74 68 65 20 62 69 6e 64 69 6e 67 73 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 | ing.the.bindings..#.#.RCS:.@(#). |
24240 | 24 49 64 3a 20 74 65 78 74 2e 74 63 6c 2c 76 20 31 2e 31 30 20 32 30 30 30 2f 30 32 2f 31 30 20 | $Id:.text.tcl,v.1.10.2000/02/10. |
24260 | 30 38 3a 35 32 3a 35 30 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 | 08:52:50.hobbs.Exp.$.#.#.Copyrig |
24280 | 68 74 20 28 63 29 20 31 39 39 32 2d 31 39 39 34 20 54 68 65 20 52 65 67 65 6e 74 73 20 6f 66 20 | ht.(c).1992-1994.The.Regents.of. |
242a0 | 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e 0a 23 20 | the.University.of.California..#. |
242c0 | 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 37 20 53 75 6e 20 4d 69 63 72 | Copyright.(c).1994-1997.Sun.Micr |
242e0 | 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 | osystems,.Inc..#.Copyright.(c).1 |
24300 | 39 39 38 20 62 79 20 53 63 72 69 70 74 69 63 73 20 43 6f 72 70 6f 72 61 74 69 6f 6e 2e 0a 23 0a | 998.by.Scriptics.Corporation..#. |
24320 | 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 | #.See.the.file."license.terms".f |
24340 | 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 | or.information.on.usage.and.redi |
24360 | 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 | stribution.#.of.this.file,.and.f |
24380 | 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 | or.a.DISCLAIMER.OF.ALL.WARRANTIE |
243a0 | 53 2e 0a 23 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | S..#..#------------------------- |
243c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
243e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 45 6c 65 6d 65 6e 74 73 20 6f 66 20 74 | ----------------.#.Elements.of.t |
24400 | 6b 50 72 69 76 20 74 68 61 74 20 61 72 65 20 75 73 65 64 20 69 6e 20 74 68 69 73 20 66 69 6c 65 | kPriv.that.are.used.in.this.file |
24420 | 3a 0a 23 0a 23 20 61 66 74 65 72 49 64 20 2d 09 09 49 66 20 6e 6f 6e 2d 6e 75 6c 6c 2c 20 69 74 | :.#.#.afterId.-..If.non-null,.it |
24440 | 20 6d 65 61 6e 73 20 74 68 61 74 20 61 75 74 6f 2d 73 63 61 6e 6e 69 6e 67 20 69 73 20 75 6e 64 | .means.that.auto-scanning.is.und |
24460 | 65 72 77 61 79 0a 23 09 09 09 61 6e 64 20 69 74 20 67 69 76 65 73 20 74 68 65 20 22 61 66 74 65 | erway.#...and.it.gives.the."afte |
24480 | 72 22 20 69 64 20 66 6f 72 20 74 68 65 20 6e 65 78 74 20 61 75 74 6f 2d 73 63 61 6e 0a 23 09 09 | r".id.for.the.next.auto-scan.#.. |
244a0 | 09 63 6f 6d 6d 61 6e 64 20 74 6f 20 62 65 20 65 78 65 63 75 74 65 64 2e 0a 23 20 63 68 61 72 20 | .command.to.be.executed..#.char. |
244c0 | 2d 09 09 43 68 61 72 61 63 74 65 72 20 70 6f 73 69 74 69 6f 6e 20 6f 6e 20 74 68 65 20 6c 69 6e | -..Character.position.on.the.lin |
244e0 | 65 3b 20 20 6b 65 70 74 20 69 6e 20 6f 72 64 65 72 0a 23 09 09 09 74 6f 20 61 6c 6c 6f 77 20 6d | e;..kept.in.order.#...to.allow.m |
24500 | 6f 76 69 6e 67 20 75 70 20 6f 72 20 64 6f 77 6e 20 70 61 73 74 20 73 68 6f 72 74 20 6c 69 6e 65 | oving.up.or.down.past.short.line |
24520 | 73 20 77 68 69 6c 65 0a 23 09 09 09 73 74 69 6c 6c 20 72 65 6d 65 6d 62 65 72 69 6e 67 20 74 68 | s.while.#...still.remembering.th |
24540 | 65 20 64 65 73 69 72 65 64 20 70 6f 73 69 74 69 6f 6e 2e 0a 23 20 6d 6f 75 73 65 4d 6f 76 65 64 | e.desired.position..#.mouseMoved |
24560 | 20 2d 09 09 4e 6f 6e 2d 7a 65 72 6f 20 6d 65 61 6e 73 20 74 68 65 20 6d 6f 75 73 65 20 68 61 73 | .-..Non-zero.means.the.mouse.has |
24580 | 20 6d 6f 76 65 64 20 61 20 73 69 67 6e 69 66 69 63 61 6e 74 0a 23 09 09 09 61 6d 6f 75 6e 74 20 | .moved.a.significant.#...amount. |
245a0 | 73 69 6e 63 65 20 74 68 65 20 62 75 74 74 6f 6e 20 77 65 6e 74 20 64 6f 77 6e 20 28 73 6f 2c 20 | since.the.button.went.down.(so,. |
245c0 | 66 6f 72 20 65 78 61 6d 70 6c 65 2c 0a 23 09 09 09 73 74 61 72 74 20 64 72 61 67 67 69 6e 67 20 | for.example,.#...start.dragging. |
245e0 | 6f 75 74 20 61 20 73 65 6c 65 63 74 69 6f 6e 29 2e 0a 23 20 70 72 65 76 50 6f 73 20 2d 09 09 55 | out.a.selection)..#.prevPos.-..U |
24600 | 73 65 64 20 77 68 65 6e 20 6d 6f 76 69 6e 67 20 75 70 20 6f 72 20 64 6f 77 6e 20 6c 69 6e 65 73 | sed.when.moving.up.or.down.lines |
24620 | 20 76 69 61 20 74 68 65 20 6b 65 79 62 6f 61 72 64 2e 0a 23 09 09 09 4b 65 65 70 73 20 74 72 61 | .via.the.keyboard..#...Keeps.tra |
24640 | 63 6b 20 6f 66 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 69 6e 73 65 72 74 20 70 6f 73 69 74 69 | ck.of.the.previous.insert.positi |
24660 | 6f 6e 2c 20 73 6f 0a 23 09 09 09 77 65 20 63 61 6e 20 64 69 73 74 69 6e 67 75 69 73 68 20 61 20 | on,.so.#...we.can.distinguish.a. |
24680 | 73 65 72 69 65 73 20 6f 66 20 75 70 73 20 61 6e 64 20 64 6f 77 6e 73 2c 20 61 6c 6c 0a 23 09 09 | series.of.ups.and.downs,.all.#.. |
246a0 | 09 69 6e 20 61 20 72 6f 77 2c 20 66 72 6f 6d 20 61 20 6e 65 77 20 75 70 20 6f 72 20 64 6f 77 6e | .in.a.row,.from.a.new.up.or.down |
246c0 | 2e 0a 23 20 73 65 6c 65 63 74 4d 6f 64 65 20 2d 09 09 54 68 65 20 73 74 79 6c 65 20 6f 66 20 73 | ..#.selectMode.-..The.style.of.s |
246e0 | 65 6c 65 63 74 69 6f 6e 20 63 75 72 72 65 6e 74 6c 79 20 75 6e 64 65 72 77 61 79 3a 0a 23 09 09 | election.currently.underway:.#.. |
24700 | 09 63 68 61 72 2c 20 77 6f 72 64 2c 20 6f 72 20 6c 69 6e 65 2e 0a 23 20 78 2c 20 79 20 2d 09 09 | .char,.word,.or.line..#.x,.y.-.. |
24720 | 4c 61 73 74 20 6b 6e 6f 77 6e 20 6d 6f 75 73 65 20 63 6f 6f 72 64 69 6e 61 74 65 73 20 66 6f 72 | Last.known.mouse.coordinates.for |
24740 | 20 73 63 61 6e 6e 69 6e 67 0a 23 09 09 09 61 6e 64 20 61 75 74 6f 2d 73 63 61 6e 6e 69 6e 67 2e | .scanning.#...and.auto-scanning. |
24760 | 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .#------------------------------ |
24780 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
247a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -----------..#------------------ |
247c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
247e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 68 65 20 63 6f | -----------------------.#.The.co |
24800 | 64 65 20 62 65 6c 6f 77 20 63 72 65 61 74 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 63 6c 61 | de.below.creates.the.default.cla |
24820 | 73 73 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 65 6e 74 72 69 65 73 2e 0a 23 2d 2d 2d 2d 2d 2d | ss.bindings.for.entries..#------ |
24840 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
24860 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
24880 | 2d 2d 2d 0a 0a 23 20 53 74 61 6e 64 61 72 64 20 4d 6f 74 69 66 20 62 69 6e 64 69 6e 67 73 3a 0a | ---..#.Standard.Motif.bindings:. |
248a0 | 0a 62 69 6e 64 20 54 65 78 74 20 3c 31 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 42 75 74 74 6f | .bind.Text.<1>.{.....tkTextButto |
248c0 | 6e 31 20 25 57 20 25 78 20 25 79 0a 20 20 20 20 25 57 20 74 61 67 20 72 65 6d 6f 76 65 20 73 65 | n1.%W.%x.%y.....%W.tag.remove.se |
248e0 | 6c 20 30 2e 30 20 65 6e 64 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 42 31 2d 4d 6f 74 69 6f 6e | l.0.0.end.}.bind.Text.<B1-Motion |
24900 | 3e 20 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 78 29 20 25 78 0a 20 20 20 20 73 65 74 | >.{.....set.tkPriv(x).%x.....set |
24920 | 20 74 6b 50 72 69 76 28 79 29 20 25 79 0a 20 20 20 20 74 6b 54 65 78 74 53 65 6c 65 63 74 54 6f | .tkPriv(y).%y.....tkTextSelectTo |
24940 | 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 44 6f 75 62 6c 65 2d 31 3e | .%W.%x.%y.}.bind.Text.<Double-1> |
24960 | 20 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 77 6f | .{.....set.tkPriv(selectMode).wo |
24980 | 72 64 0a 20 20 20 20 74 6b 54 65 78 74 53 65 6c 65 63 74 54 6f 20 25 57 20 25 78 20 25 79 0a 20 | rd.....tkTextSelectTo.%W.%x.%y.. |
249a0 | 20 20 20 63 61 74 63 68 20 7b 25 57 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 73 65 6c | ...catch.{%W.mark.set.insert.sel |
249c0 | 2e 66 69 72 73 74 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 54 72 69 70 6c 65 2d 31 3e 20 7b | .first}.}.bind.Text.<Triple-1>.{ |
249e0 | 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 6c 69 6e 65 | .....set.tkPriv(selectMode).line |
24a00 | 0a 20 20 20 20 74 6b 54 65 78 74 53 65 6c 65 63 74 54 6f 20 25 57 20 25 78 20 25 79 0a 20 20 20 | .....tkTextSelectTo.%W.%x.%y.... |
24a20 | 20 63 61 74 63 68 20 7b 25 57 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 73 65 6c 2e 66 | .catch.{%W.mark.set.insert.sel.f |
24a40 | 69 72 73 74 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 66 74 2d 31 3e 20 7b 0a 20 20 | irst}.}.bind.Text.<Shift-1>.{... |
24a60 | 20 20 74 6b 54 65 78 74 52 65 73 65 74 41 6e 63 68 6f 72 20 25 57 20 40 25 78 2c 25 79 0a 20 20 | ..tkTextResetAnchor.%W.@%x,%y... |
24a80 | 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 63 68 61 72 0a 20 20 | ..set.tkPriv(selectMode).char... |
24aa0 | 20 20 74 6b 54 65 78 74 53 65 6c 65 63 74 54 6f 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 | ..tkTextSelectTo.%W.%x.%y.}.bind |
24ac0 | 20 54 65 78 74 20 3c 44 6f 75 62 6c 65 2d 53 68 69 66 74 2d 31 3e 09 7b 0a 20 20 20 20 73 65 74 | .Text.<Double-Shift-1>.{.....set |
24ae0 | 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 77 6f 72 64 0a 20 20 20 20 74 6b 54 | .tkPriv(selectMode).word.....tkT |
24b00 | 65 78 74 53 65 6c 65 63 74 54 6f 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 54 65 78 74 | extSelectTo.%W.%x.%y.}.bind.Text |
24b20 | 20 3c 54 72 69 70 6c 65 2d 53 68 69 66 74 2d 31 3e 09 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 | .<Triple-Shift-1>.{.....set.tkPr |
24b40 | 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 6c 69 6e 65 0a 20 20 20 20 74 6b 54 65 78 74 53 65 | iv(selectMode).line.....tkTextSe |
24b60 | 6c 65 63 74 54 6f 20 25 57 20 25 78 20 25 79 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 42 31 2d | lectTo.%W.%x.%y.}.bind.Text.<B1- |
24b80 | 4c 65 61 76 65 3e 20 7b 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 78 29 20 25 78 0a 20 20 | Leave>.{.....set.tkPriv(x).%x... |
24ba0 | 20 20 73 65 74 20 74 6b 50 72 69 76 28 79 29 20 25 79 0a 20 20 20 20 74 6b 54 65 78 74 41 75 74 | ..set.tkPriv(y).%y.....tkTextAut |
24bc0 | 6f 53 63 61 6e 20 25 57 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 42 31 2d 45 6e 74 65 72 3e 20 | oScan.%W.}.bind.Text.<B1-Enter>. |
24be0 | 7b 0a 20 20 20 20 74 6b 43 61 6e 63 65 6c 52 65 70 65 61 74 0a 7d 0a 62 69 6e 64 20 54 65 78 74 | {.....tkCancelRepeat.}.bind.Text |
24c00 | 20 3c 42 75 74 74 6f 6e 52 65 6c 65 61 73 65 2d 31 3e 20 7b 0a 20 20 20 20 74 6b 43 61 6e 63 65 | .<ButtonRelease-1>.{.....tkCance |
24c20 | 6c 52 65 70 65 61 74 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 31 3e 20 | lRepeat.}.bind.Text.<Control-1>. |
24c40 | 7b 0a 20 20 20 20 25 57 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 40 25 78 2c 25 79 0a | {.....%W.mark.set.insert.@%x,%y. |
24c60 | 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 | }.bind.Text.<Left>.{.....tkTextS |
24c80 | 65 74 43 75 72 73 6f 72 20 25 57 20 69 6e 73 65 72 74 2d 31 63 0a 7d 0a 62 69 6e 64 20 54 65 78 | etCursor.%W.insert-1c.}.bind.Tex |
24ca0 | 74 20 3c 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 | t.<Right>.{.....tkTextSetCursor. |
24cc0 | 25 57 20 69 6e 73 65 72 74 2b 31 63 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 55 70 3e 20 7b 0a | %W.insert+1c.}.bind.Text.<Up>.{. |
24ce0 | 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b 54 65 78 74 55 70 | ....tkTextSetCursor.%W.[tkTextUp |
24d00 | 44 6f 77 6e 4c 69 6e 65 20 25 57 20 2d 31 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 44 6f 77 | DownLine.%W.-1].}.bind.Text.<Dow |
24d20 | 6e 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b 54 | n>.{.....tkTextSetCursor.%W.[tkT |
24d40 | 65 78 74 55 70 44 6f 77 6e 4c 69 6e 65 20 25 57 20 31 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 | extUpDownLine.%W.1].}.bind.Text. |
24d60 | 3c 53 68 69 66 74 2d 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 | <Shift-Left>.{.....tkTextKeySele |
24d80 | 63 74 20 25 57 20 5b 25 57 20 69 6e 64 65 78 20 7b 69 6e 73 65 72 74 20 2d 20 31 63 7d 5d 0a 7d | ct.%W.[%W.index.{insert.-.1c}].} |
24da0 | 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 66 74 2d 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 | .bind.Text.<Shift-Right>.{.....t |
24dc0 | 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 25 57 20 5b 25 57 20 69 6e 64 65 78 20 7b 69 6e 73 | kTextKeySelect.%W.[%W.index.{ins |
24de0 | 65 72 74 20 2b 20 31 63 7d 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 66 74 2d 55 70 | ert.+.1c}].}.bind.Text.<Shift-Up |
24e00 | 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 25 57 20 5b 74 6b 54 65 | >.{.....tkTextKeySelect.%W.[tkTe |
24e20 | 78 74 55 70 44 6f 77 6e 4c 69 6e 65 20 25 57 20 2d 31 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 | xtUpDownLine.%W.-1].}.bind.Text. |
24e40 | 3c 53 68 69 66 74 2d 44 6f 77 6e 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 | <Shift-Down>.{.....tkTextKeySele |
24e60 | 63 74 20 25 57 20 5b 74 6b 54 65 78 74 55 70 44 6f 77 6e 4c 69 6e 65 20 25 57 20 31 5d 0a 7d 0a | ct.%W.[tkTextUpDownLine.%W.1].}. |
24e80 | 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 | bind.Text.<Control-Left>.{.....t |
24ea0 | 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b 54 65 78 74 50 72 65 76 50 6f 73 | kTextSetCursor.%W.[tkTextPrevPos |
24ec0 | 20 25 57 20 69 6e 73 65 72 74 20 74 63 6c 5f 73 74 61 72 74 4f 66 50 72 65 76 69 6f 75 73 57 6f | .%W.insert.tcl_startOfPreviousWo |
24ee0 | 72 64 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 52 69 67 68 74 3e 20 | rd].}.bind.Text.<Control-Right>. |
24f00 | 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b 54 65 78 74 | {.....tkTextSetCursor.%W.[tkText |
24f20 | 4e 65 78 74 57 6f 72 64 20 25 57 20 69 6e 73 65 72 74 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 | NextWord.%W.insert].}.bind.Text. |
24f40 | 3c 43 6f 6e 74 72 6f 6c 2d 55 70 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 | <Control-Up>.{.....tkTextSetCurs |
24f60 | 6f 72 20 25 57 20 5b 74 6b 54 65 78 74 50 72 65 76 50 61 72 61 20 25 57 20 69 6e 73 65 72 74 5d | or.%W.[tkTextPrevPara.%W.insert] |
24f80 | 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 44 6f 77 6e 3e 20 7b 0a 20 20 | .}.bind.Text.<Control-Down>.{... |
24fa0 | 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b 54 65 78 74 4e 65 78 74 | ..tkTextSetCursor.%W.[tkTextNext |
24fc0 | 50 61 72 61 20 25 57 20 69 6e 73 65 72 74 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 | Para.%W.insert].}.bind.Text.<Shi |
24fe0 | 66 74 2d 43 6f 6e 74 72 6f 6c 2d 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 | ft-Control-Left>.{.....tkTextKey |
25000 | 53 65 6c 65 63 74 20 25 57 20 5b 74 6b 54 65 78 74 50 72 65 76 50 6f 73 20 25 57 20 69 6e 73 65 | Select.%W.[tkTextPrevPos.%W.inse |
25020 | 72 74 20 74 63 6c 5f 73 74 61 72 74 4f 66 50 72 65 76 69 6f 75 73 57 6f 72 64 5d 0a 7d 0a 62 69 | rt.tcl_startOfPreviousWord].}.bi |
25040 | 6e 64 20 54 65 78 74 20 3c 53 68 69 66 74 2d 43 6f 6e 74 72 6f 6c 2d 52 69 67 68 74 3e 20 7b 0a | nd.Text.<Shift-Control-Right>.{. |
25060 | 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 25 57 20 5b 74 6b 54 65 78 74 4e 65 | ....tkTextKeySelect.%W.[tkTextNe |
25080 | 78 74 57 6f 72 64 20 25 57 20 69 6e 73 65 72 74 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 | xtWord.%W.insert].}.bind.Text.<S |
250a0 | 68 69 66 74 2d 43 6f 6e 74 72 6f 6c 2d 55 70 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 | hift-Control-Up>.{.....tkTextKey |
250c0 | 53 65 6c 65 63 74 20 25 57 20 5b 74 6b 54 65 78 74 50 72 65 76 50 61 72 61 20 25 57 20 69 6e 73 | Select.%W.[tkTextPrevPara.%W.ins |
250e0 | 65 72 74 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 66 74 2d 43 6f 6e 74 72 6f 6c 2d | ert].}.bind.Text.<Shift-Control- |
25100 | 44 6f 77 6e 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 25 57 20 5b | Down>.{.....tkTextKeySelect.%W.[ |
25120 | 74 6b 54 65 78 74 4e 65 78 74 50 61 72 61 20 25 57 20 69 6e 73 65 72 74 5d 0a 7d 0a 62 69 6e 64 | tkTextNextPara.%W.insert].}.bind |
25140 | 20 54 65 78 74 20 3c 50 72 69 6f 72 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 | .Text.<Prior>.{.....tkTextSetCur |
25160 | 73 6f 72 20 25 57 20 5b 74 6b 54 65 78 74 53 63 72 6f 6c 6c 50 61 67 65 73 20 25 57 20 2d 31 5d | sor.%W.[tkTextScrollPages.%W.-1] |
25180 | 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 66 74 2d 50 72 69 6f 72 3e 20 7b 0a 20 20 20 | .}.bind.Text.<Shift-Prior>.{.... |
251a0 | 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 25 57 20 5b 74 6b 54 65 78 74 53 63 72 6f 6c | .tkTextKeySelect.%W.[tkTextScrol |
251c0 | 6c 50 61 67 65 73 20 25 57 20 2d 31 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 4e 65 78 74 3e | lPages.%W.-1].}.bind.Text.<Next> |
251e0 | 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b 54 65 78 | .{.....tkTextSetCursor.%W.[tkTex |
25200 | 74 53 63 72 6f 6c 6c 50 61 67 65 73 20 25 57 20 31 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c | tScrollPages.%W.1].}.bind.Text.< |
25220 | 53 68 69 66 74 2d 4e 65 78 74 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 | Shift-Next>.{.....tkTextKeySelec |
25240 | 74 20 25 57 20 5b 74 6b 54 65 78 74 53 63 72 6f 6c 6c 50 61 67 65 73 20 25 57 20 31 5d 0a 7d 0a | t.%W.[tkTextScrollPages.%W.1].}. |
25260 | 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 50 72 69 6f 72 3e 20 7b 0a 20 20 20 20 | bind.Text.<Control-Prior>.{..... |
25280 | 25 57 20 78 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 31 20 70 61 67 65 0a 7d 0a 62 69 6e 64 20 54 | %W.xview.scroll.-1.page.}.bind.T |
252a0 | 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 4e 65 78 74 3e 20 7b 0a 20 20 20 20 25 57 20 78 76 69 65 | ext.<Control-Next>.{.....%W.xvie |
252c0 | 77 20 73 63 72 6f 6c 6c 20 31 20 70 61 67 65 0a 7d 0a 0a 62 69 6e 64 20 54 65 78 74 20 3c 48 6f | w.scroll.1.page.}..bind.Text.<Ho |
252e0 | 6d 65 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 7b 69 6e | me>.{.....tkTextSetCursor.%W.{in |
25300 | 73 65 72 74 20 6c 69 6e 65 73 74 61 72 74 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 | sert.linestart}.}.bind.Text.<Shi |
25320 | 66 74 2d 48 6f 6d 65 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 25 | ft-Home>.{.....tkTextKeySelect.% |
25340 | 57 20 7b 69 6e 73 65 72 74 20 6c 69 6e 65 73 74 61 72 74 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 | W.{insert.linestart}.}.bind.Text |
25360 | 20 3c 45 6e 64 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 | .<End>.{.....tkTextSetCursor.%W. |
25380 | 7b 69 6e 73 65 72 74 20 6c 69 6e 65 65 6e 64 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 68 | {insert.lineend}.}.bind.Text.<Sh |
253a0 | 69 66 74 2d 45 6e 64 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 25 | ift-End>.{.....tkTextKeySelect.% |
253c0 | 57 20 7b 69 6e 73 65 72 74 20 6c 69 6e 65 65 6e 64 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c | W.{insert.lineend}.}.bind.Text.< |
253e0 | 43 6f 6e 74 72 6f 6c 2d 48 6f 6d 65 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 | Control-Home>.{.....tkTextSetCur |
25400 | 73 6f 72 20 25 57 20 31 2e 30 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d | sor.%W.1.0.}.bind.Text.<Control- |
25420 | 53 68 69 66 74 2d 48 6f 6d 65 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 | Shift-Home>.{.....tkTextKeySelec |
25440 | 74 20 25 57 20 31 2e 30 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 45 6e | t.%W.1.0.}.bind.Text.<Control-En |
25460 | 64 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 7b 65 6e 64 | d>.{.....tkTextSetCursor.%W.{end |
25480 | 20 2d 20 31 20 63 68 61 72 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d | .-.1.char}.}.bind.Text.<Control- |
254a0 | 53 68 69 66 74 2d 45 6e 64 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 | Shift-End>.{.....tkTextKeySelect |
254c0 | 20 25 57 20 7b 65 6e 64 20 2d 20 31 20 63 68 61 72 7d 0a 7d 0a 0a 62 69 6e 64 20 54 65 78 74 20 | .%W.{end.-.1.char}.}..bind.Text. |
254e0 | 3c 54 61 62 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 49 6e 73 65 72 74 20 25 57 20 5c 74 0a 20 | <Tab>.{.....tkTextInsert.%W.\t.. |
25500 | 20 20 20 66 6f 63 75 73 20 25 57 0a 20 20 20 20 62 72 65 61 6b 0a 7d 0a 62 69 6e 64 20 54 65 78 | ...focus.%W.....break.}.bind.Tex |
25520 | 74 20 3c 53 68 69 66 74 2d 54 61 62 3e 20 7b 0a 20 20 20 20 23 20 4e 65 65 64 65 64 20 6f 6e 6c | t.<Shift-Tab>.{.....#.Needed.onl |
25540 | 79 20 74 6f 20 6b 65 65 70 20 3c 54 61 62 3e 20 62 69 6e 64 69 6e 67 20 66 72 6f 6d 20 74 72 69 | y.to.keep.<Tab>.binding.from.tri |
25560 | 67 67 65 72 69 6e 67 3b 20 20 64 6f 65 73 6e 27 74 0a 20 20 20 20 23 20 68 61 76 65 20 74 6f 20 | ggering;..doesn't.....#.have.to. |
25580 | 61 63 74 75 61 6c 6c 79 20 64 6f 20 61 6e 79 74 68 69 6e 67 2e 0a 20 20 20 20 62 72 65 61 6b 0a | actually.do.anything......break. |
255a0 | 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 54 61 62 3e 20 7b 0a 20 20 20 20 | }.bind.Text.<Control-Tab>.{..... |
255c0 | 66 6f 63 75 73 20 5b 74 6b 5f 66 6f 63 75 73 4e 65 78 74 20 25 57 5d 0a 7d 0a 62 69 6e 64 20 54 | focus.[tk_focusNext.%W].}.bind.T |
255e0 | 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 53 68 69 66 74 2d 54 61 62 3e 20 7b 0a 20 20 20 20 66 6f | ext.<Control-Shift-Tab>.{.....fo |
25600 | 63 75 73 20 5b 74 6b 5f 66 6f 63 75 73 50 72 65 76 20 25 57 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 | cus.[tk_focusPrev.%W].}.bind.Tex |
25620 | 74 20 3c 43 6f 6e 74 72 6f 6c 2d 69 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 49 6e 73 65 72 74 | t.<Control-i>.{.....tkTextInsert |
25640 | 20 25 57 20 5c 74 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 52 65 74 75 72 6e 3e 20 7b 0a 20 20 | .%W.\t.}.bind.Text.<Return>.{... |
25660 | 20 20 74 6b 54 65 78 74 49 6e 73 65 72 74 20 25 57 20 5c 6e 0a 7d 0a 62 69 6e 64 20 54 65 78 74 | ..tkTextInsert.%W.\n.}.bind.Text |
25680 | 20 3c 44 65 6c 65 74 65 3e 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 | .<Delete>.{.....if.{[string.comp |
256a0 | 61 72 65 20 5b 25 57 20 74 61 67 20 6e 65 78 74 72 61 6e 67 65 20 73 65 6c 20 31 2e 30 20 65 6e | are.[%W.tag.nextrange.sel.1.0.en |
256c0 | 64 5d 20 22 22 5d 7d 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 73 65 6c 2e 66 69 72 73 74 20 73 | d].""]}.{..%W.delete.sel.first.s |
256e0 | 65 6c 2e 6c 61 73 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 | el.last.....}.else.{..%W.delete. |
25700 | 69 6e 73 65 72 74 0a 09 25 57 20 73 65 65 20 69 6e 73 65 72 74 0a 20 20 20 20 7d 0a 7d 0a 62 69 | insert..%W.see.insert.....}.}.bi |
25720 | 6e 64 20 54 65 78 74 20 3c 42 61 63 6b 53 70 61 63 65 3e 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 | nd.Text.<BackSpace>.{.....if.{[s |
25740 | 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 25 57 20 74 61 67 20 6e 65 78 74 72 61 6e 67 65 20 | tring.compare.[%W.tag.nextrange. |
25760 | 73 65 6c 20 31 2e 30 20 65 6e 64 5d 20 22 22 5d 7d 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 73 | sel.1.0.end].""]}.{..%W.delete.s |
25780 | 65 6c 2e 66 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b | el.first.sel.last.....}.elseif.{ |
257a0 | 5b 25 57 20 63 6f 6d 70 61 72 65 20 69 6e 73 65 72 74 20 21 3d 20 31 2e 30 5d 7d 20 7b 0a 09 25 | [%W.compare.insert.!=.1.0]}.{..% |
257c0 | 57 20 64 65 6c 65 74 65 20 69 6e 73 65 72 74 2d 31 63 0a 09 25 57 20 73 65 65 20 69 6e 73 65 72 | W.delete.insert-1c..%W.see.inser |
257e0 | 74 0a 20 20 20 20 7d 0a 7d 0a 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 73 70 | t.....}.}..bind.Text.<Control-sp |
25800 | 61 63 65 3e 20 7b 0a 20 20 20 20 25 57 20 6d 61 72 6b 20 73 65 74 20 61 6e 63 68 6f 72 20 69 6e | ace>.{.....%W.mark.set.anchor.in |
25820 | 73 65 72 74 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 65 6c 65 63 74 3e 20 7b 0a 20 20 20 20 | sert.}.bind.Text.<Select>.{..... |
25840 | 25 57 20 6d 61 72 6b 20 73 65 74 20 61 6e 63 68 6f 72 20 69 6e 73 65 72 74 0a 7d 0a 62 69 6e 64 | %W.mark.set.anchor.insert.}.bind |
25860 | 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 53 68 69 66 74 2d 73 70 61 63 65 3e 20 7b 0a 20 20 | .Text.<Control-Shift-space>.{... |
25880 | 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 63 68 61 72 0a 20 20 | ..set.tkPriv(selectMode).char... |
258a0 | 20 20 74 6b 54 65 78 74 4b 65 79 45 78 74 65 6e 64 20 25 57 20 69 6e 73 65 72 74 0a 7d 0a 62 69 | ..tkTextKeyExtend.%W.insert.}.bi |
258c0 | 6e 64 20 54 65 78 74 20 3c 53 68 69 66 74 2d 53 65 6c 65 63 74 3e 20 7b 0a 20 20 20 20 73 65 74 | nd.Text.<Shift-Select>.{.....set |
258e0 | 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 63 68 61 72 0a 20 20 20 20 74 6b 54 | .tkPriv(selectMode).char.....tkT |
25900 | 65 78 74 4b 65 79 45 78 74 65 6e 64 20 25 57 20 69 6e 73 65 72 74 0a 7d 0a 62 69 6e 64 20 54 65 | extKeyExtend.%W.insert.}.bind.Te |
25920 | 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 73 6c 61 73 68 3e 20 7b 0a 20 20 20 20 25 57 20 74 61 67 20 | xt.<Control-slash>.{.....%W.tag. |
25940 | 61 64 64 20 73 65 6c 20 31 2e 30 20 65 6e 64 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e | add.sel.1.0.end.}.bind.Text.<Con |
25960 | 74 72 6f 6c 2d 62 61 63 6b 73 6c 61 73 68 3e 20 7b 0a 20 20 20 20 25 57 20 74 61 67 20 72 65 6d | trol-backslash>.{.....%W.tag.rem |
25980 | 6f 76 65 20 73 65 6c 20 31 2e 30 20 65 6e 64 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 3c 43 75 | ove.sel.1.0.end.}.bind.Text.<<Cu |
259a0 | 74 3e 3e 20 7b 0a 20 20 20 20 74 6b 5f 74 65 78 74 43 75 74 20 25 57 0a 7d 0a 62 69 6e 64 20 54 | t>>.{.....tk_textCut.%W.}.bind.T |
259c0 | 65 78 74 20 3c 3c 43 6f 70 79 3e 3e 20 7b 0a 20 20 20 20 74 6b 5f 74 65 78 74 43 6f 70 79 20 25 | ext.<<Copy>>.{.....tk_textCopy.% |
259e0 | 57 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 3c 50 61 73 74 65 3e 3e 20 7b 0a 20 20 20 20 74 6b | W.}.bind.Text.<<Paste>>.{.....tk |
25a00 | 5f 74 65 78 74 50 61 73 74 65 20 25 57 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 3c 43 6c 65 61 | _textPaste.%W.}.bind.Text.<<Clea |
25a20 | 72 3e 3e 20 7b 0a 20 20 20 20 63 61 74 63 68 20 7b 25 57 20 64 65 6c 65 74 65 20 73 65 6c 2e 66 | r>>.{.....catch.{%W.delete.sel.f |
25a40 | 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 3c 50 61 73 | irst.sel.last}.}.bind.Text.<<Pas |
25a60 | 74 65 53 65 6c 65 63 74 69 6f 6e 3e 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 50 72 69 76 | teSelection>>.{.....if.{!$tkPriv |
25a80 | 28 6d 6f 75 73 65 4d 6f 76 65 64 29 20 7c 7c 20 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d | (mouseMoved).||.$tk_strictMotif} |
25aa0 | 20 7b 0a 09 74 6b 54 65 78 74 50 61 73 74 65 20 25 57 20 25 78 20 25 79 0a 20 20 20 20 7d 0a 7d | .{..tkTextPaste.%W.%x.%y.....}.} |
25ac0 | 0a 62 69 6e 64 20 54 65 78 74 20 3c 49 6e 73 65 72 74 3e 20 7b 0a 20 20 20 20 63 61 74 63 68 20 | .bind.Text.<Insert>.{.....catch. |
25ae0 | 7b 74 6b 54 65 78 74 49 6e 73 65 72 74 20 25 57 20 5b 73 65 6c 65 63 74 69 6f 6e 20 67 65 74 20 | {tkTextInsert.%W.[selection.get. |
25b00 | 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 5d 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 4b 65 79 | -displayof.%W]}.}.bind.Text.<Key |
25b20 | 50 72 65 73 73 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 49 6e 73 65 72 74 20 25 57 20 25 41 0a | Press>.{.....tkTextInsert.%W.%A. |
25b40 | 7d 0a 0a 23 20 49 67 6e 6f 72 65 20 61 6c 6c 20 41 6c 74 2c 20 4d 65 74 61 2c 20 61 6e 64 20 43 | }..#.Ignore.all.Alt,.Meta,.and.C |
25b60 | 6f 6e 74 72 6f 6c 20 6b 65 79 70 72 65 73 73 65 73 20 75 6e 6c 65 73 73 20 65 78 70 6c 69 63 69 | ontrol.keypresses.unless.explici |
25b80 | 74 6c 79 20 62 6f 75 6e 64 2e 0a 23 20 4f 74 68 65 72 77 69 73 65 2c 20 69 66 20 61 20 77 69 64 | tly.bound..#.Otherwise,.if.a.wid |
25ba0 | 67 65 74 20 62 69 6e 64 69 6e 67 20 66 6f 72 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 69 73 20 | get.binding.for.one.of.these.is. |
25bc0 | 64 65 66 69 6e 65 64 2c 20 74 68 65 0a 23 20 3c 4b 65 79 50 72 65 73 73 3e 20 63 6c 61 73 73 20 | defined,.the.#.<KeyPress>.class. |
25be0 | 62 69 6e 64 69 6e 67 20 77 69 6c 6c 20 61 6c 73 6f 20 66 69 72 65 20 61 6e 64 20 69 6e 73 65 72 | binding.will.also.fire.and.inser |
25c00 | 74 20 74 68 65 20 63 68 61 72 61 63 74 65 72 2c 0a 23 20 77 68 69 63 68 20 69 73 20 77 72 6f 6e | t.the.character,.#.which.is.wron |
25c20 | 67 2e 20 20 44 69 74 74 6f 20 66 6f 72 20 3c 45 73 63 61 70 65 3e 2e 0a 0a 62 69 6e 64 20 54 65 | g...Ditto.for.<Escape>...bind.Te |
25c40 | 78 74 20 3c 41 6c 74 2d 4b 65 79 50 72 65 73 73 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 20 7d 0a 62 | xt.<Alt-KeyPress>.{#.nothing.}.b |
25c60 | 69 6e 64 20 54 65 78 74 20 3c 4d 65 74 61 2d 4b 65 79 50 72 65 73 73 3e 20 7b 23 20 6e 6f 74 68 | ind.Text.<Meta-KeyPress>.{#.noth |
25c80 | 69 6e 67 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 4b 65 79 50 72 65 73 73 | ing}.bind.Text.<Control-KeyPress |
25ca0 | 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 45 73 63 61 70 65 3e | >.{#.nothing}.bind.Text.<Escape> |
25cc0 | 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 4b 50 5f 45 6e 74 65 72 | .{#.nothing}.bind.Text.<KP_Enter |
25ce0 | 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 | >.{#.nothing}.if.{[string.equal. |
25d00 | 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f | $tcl_platform(platform)."macinto |
25d20 | 73 68 22 5d 7d 20 7b 0a 20 20 20 20 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6d 6d 61 6e 64 2d 4b | sh"]}.{.....bind.Text.<Command-K |
25d40 | 65 79 50 72 65 73 73 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 7d 0a 0a 23 20 41 64 64 69 74 69 | eyPress>.{#.nothing}.}..#.Additi |
25d60 | 6f 6e 61 6c 20 65 6d 61 63 73 2d 6c 69 6b 65 20 62 69 6e 64 69 6e 67 73 3a 0a 0a 62 69 6e 64 20 | onal.emacs-like.bindings:..bind. |
25d80 | 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 61 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f | Text.<Control-a>.{.....if.{!$tk_ |
25da0 | 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 | strictMotif}.{..tkTextSetCursor. |
25dc0 | 25 57 20 7b 69 6e 73 65 72 74 20 6c 69 6e 65 73 74 61 72 74 7d 0a 20 20 20 20 7d 0a 7d 0a 62 69 | %W.{insert.linestart}.....}.}.bi |
25de0 | 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 62 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 | nd.Text.<Control-b>.{.....if.{!$ |
25e00 | 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 78 74 53 65 74 43 75 72 73 | tk_strictMotif}.{..tkTextSetCurs |
25e20 | 6f 72 20 25 57 20 69 6e 73 65 72 74 2d 31 63 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 | or.%W.insert-1c.....}.}.bind.Tex |
25e40 | 74 20 3c 43 6f 6e 74 72 6f 6c 2d 64 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 | t.<Control-d>.{.....if.{!$tk_str |
25e60 | 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 69 6e 73 65 72 74 0a 20 20 | ictMotif}.{..%W.delete.insert... |
25e80 | 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 65 3e 20 7b 0a 20 20 | ..}.}.bind.Text.<Control-e>.{... |
25ea0 | 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 78 | ..if.{!$tk_strictMotif}.{..tkTex |
25ec0 | 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 7b 69 6e 73 65 72 74 20 6c 69 6e 65 65 6e 64 7d 0a 20 | tSetCursor.%W.{insert.lineend}.. |
25ee0 | 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 66 3e 20 7b 0a 20 | ...}.}.bind.Text.<Control-f>.{.. |
25f00 | 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 | ...if.{!$tk_strictMotif}.{..tkTe |
25f20 | 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 69 6e 73 65 72 74 2b 31 63 0a 20 20 20 20 7d 0a 7d | xtSetCursor.%W.insert+1c.....}.} |
25f40 | 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 6b 3e 20 7b 0a 20 20 20 20 69 66 20 | .bind.Text.<Control-k>.{.....if. |
25f60 | 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 69 66 20 7b 5b 25 57 20 63 6f | {!$tk_strictMotif}.{..if.{[%W.co |
25f80 | 6d 70 61 72 65 20 69 6e 73 65 72 74 20 3d 3d 20 7b 69 6e 73 65 72 74 20 6c 69 6e 65 65 6e 64 7d | mpare.insert.==.{insert.lineend} |
25fa0 | 5d 7d 20 7b 0a 09 20 20 20 20 25 57 20 64 65 6c 65 74 65 20 69 6e 73 65 72 74 0a 09 7d 20 65 6c | ]}.{......%W.delete.insert..}.el |
25fc0 | 73 65 20 7b 0a 09 20 20 20 20 25 57 20 64 65 6c 65 74 65 20 69 6e 73 65 72 74 20 7b 69 6e 73 65 | se.{......%W.delete.insert.{inse |
25fe0 | 72 74 20 6c 69 6e 65 65 6e 64 7d 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 | rt.lineend}..}.....}.}.bind.Text |
26000 | 20 3c 43 6f 6e 74 72 6f 6c 2d 6e 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 | .<Control-n>.{.....if.{!$tk_stri |
26020 | 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b | ctMotif}.{..tkTextSetCursor.%W.[ |
26040 | 74 6b 54 65 78 74 55 70 44 6f 77 6e 4c 69 6e 65 20 25 57 20 31 5d 0a 20 20 20 20 7d 0a 7d 0a 62 | tkTextUpDownLine.%W.1].....}.}.b |
26060 | 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 6f 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 | ind.Text.<Control-o>.{.....if.{! |
26080 | 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 20 69 6e 73 65 72 74 20 69 6e | $tk_strictMotif}.{..%W.insert.in |
260a0 | 73 65 72 74 20 5c 6e 0a 09 25 57 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 69 6e 73 65 | sert.\n..%W.mark.set.insert.inse |
260c0 | 72 74 2d 31 63 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c | rt-1c.....}.}.bind.Text.<Control |
260e0 | 2d 70 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 | -p>.{.....if.{!$tk_strictMotif}. |
26100 | 7b 0a 09 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b 54 65 78 74 55 70 44 | {..tkTextSetCursor.%W.[tkTextUpD |
26120 | 6f 77 6e 4c 69 6e 65 20 25 57 20 2d 31 5d 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 | ownLine.%W.-1].....}.}.bind.Text |
26140 | 20 3c 43 6f 6e 74 72 6f 6c 2d 74 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 | .<Control-t>.{.....if.{!$tk_stri |
26160 | 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 78 74 54 72 61 6e 73 70 6f 73 65 20 25 57 0a 20 | ctMotif}.{..tkTextTranspose.%W.. |
26180 | 20 20 20 7d 0a 7d 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 63 6c | ...}.}..if.{[string.compare.$tcl |
261a0 | 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 77 69 6e 64 6f 77 73 22 5d 7d 20 | _platform(platform)."windows"]}. |
261c0 | 7b 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d 76 3e 20 7b 0a 20 20 20 20 69 66 | {.bind.Text.<Control-v>.{.....if |
261e0 | 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 78 74 53 63 72 | .{!$tk_strictMotif}.{..tkTextScr |
26200 | 6f 6c 6c 50 61 67 65 73 20 25 57 20 31 0a 20 20 20 20 7d 0a 7d 0a 7d 0a 0a 62 69 6e 64 20 54 65 | ollPages.%W.1.....}.}.}..bind.Te |
26220 | 78 74 20 3c 4d 65 74 61 2d 62 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 | xt.<Meta-b>.{.....if.{!$tk_stric |
26240 | 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 | tMotif}.{..tkTextSetCursor.%W.[t |
26260 | 6b 54 65 78 74 50 72 65 76 50 6f 73 20 25 57 20 69 6e 73 65 72 74 20 74 63 6c 5f 73 74 61 72 74 | kTextPrevPos.%W.insert.tcl_start |
26280 | 4f 66 50 72 65 76 69 6f 75 73 57 6f 72 64 5d 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 | OfPreviousWord].....}.}.bind.Tex |
262a0 | 74 20 3c 4d 65 74 61 2d 64 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 | t.<Meta-d>.{.....if.{!$tk_strict |
262c0 | 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 69 6e 73 65 72 74 20 5b 74 6b 54 65 | Motif}.{..%W.delete.insert.[tkTe |
262e0 | 78 74 4e 65 78 74 57 6f 72 64 20 25 57 20 69 6e 73 65 72 74 5d 0a 20 20 20 20 7d 0a 7d 0a 62 69 | xtNextWord.%W.insert].....}.}.bi |
26300 | 6e 64 20 54 65 78 74 20 3c 4d 65 74 61 2d 66 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f | nd.Text.<Meta-f>.{.....if.{!$tk_ |
26320 | 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 | strictMotif}.{..tkTextSetCursor. |
26340 | 25 57 20 5b 74 6b 54 65 78 74 4e 65 78 74 57 6f 72 64 20 25 57 20 69 6e 73 65 72 74 5d 0a 20 20 | %W.[tkTextNextWord.%W.insert]... |
26360 | 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 4d 65 74 61 2d 6c 65 73 73 3e 20 7b 0a 20 20 | ..}.}.bind.Text.<Meta-less>.{... |
26380 | 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 78 | ..if.{!$tk_strictMotif}.{..tkTex |
263a0 | 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 31 2e 30 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 | tSetCursor.%W.1.0.....}.}.bind.T |
263c0 | 65 78 74 20 3c 4d 65 74 61 2d 67 72 65 61 74 65 72 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 | ext.<Meta-greater>.{.....if.{!$t |
263e0 | 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f | k_strictMotif}.{..tkTextSetCurso |
26400 | 72 20 25 57 20 65 6e 64 2d 31 63 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 4d | r.%W.end-1c.....}.}.bind.Text.<M |
26420 | 65 74 61 2d 42 61 63 6b 53 70 61 63 65 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 | eta-BackSpace>.{.....if.{!$tk_st |
26440 | 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 5b 74 6b 54 65 78 74 50 | rictMotif}.{..%W.delete.[tkTextP |
26460 | 72 65 76 50 6f 73 20 25 57 20 69 6e 73 65 72 74 20 74 63 6c 5f 73 74 61 72 74 4f 66 50 72 65 76 | revPos.%W.insert.tcl_startOfPrev |
26480 | 69 6f 75 73 57 6f 72 64 5d 20 69 6e 73 65 72 74 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 54 65 | iousWord].insert.....}.}.bind.Te |
264a0 | 78 74 20 3c 4d 65 74 61 2d 44 65 6c 65 74 65 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f | xt.<Meta-Delete>.{.....if.{!$tk_ |
264c0 | 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 25 57 20 64 65 6c 65 74 65 20 5b 74 6b 54 65 78 | strictMotif}.{..%W.delete.[tkTex |
264e0 | 74 50 72 65 76 50 6f 73 20 25 57 20 69 6e 73 65 72 74 20 74 63 6c 5f 73 74 61 72 74 4f 66 50 72 | tPrevPos.%W.insert.tcl_startOfPr |
26500 | 65 76 69 6f 75 73 57 6f 72 64 5d 20 69 6e 73 65 72 74 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 4d 61 | eviousWord].insert.....}.}..#.Ma |
26520 | 63 69 6e 74 6f 73 68 20 6f 6e 6c 79 20 62 69 6e 64 69 6e 67 73 3a 0a 0a 23 20 69 66 20 74 65 78 | cintosh.only.bindings:..#.if.tex |
26540 | 74 20 62 6c 61 63 6b 20 26 20 68 69 67 68 6c 69 67 68 74 20 62 6c 61 63 6b 20 2d 3e 20 74 65 78 | t.black.&.highlight.black.->.tex |
26560 | 74 20 77 68 69 74 65 2c 20 6f 74 68 65 72 20 74 65 78 74 20 74 68 65 20 73 61 6d 65 0a 69 66 20 | t.white,.other.text.the.same.if. |
26580 | 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 | {[string.equal.$tcl_platform(pla |
265a0 | 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 62 69 6e 64 20 54 65 78 74 | tform)."macintosh"]}.{.bind.Text |
265c0 | 20 3c 46 6f 63 75 73 49 6e 3e 20 7b 0a 20 20 20 20 25 57 20 74 61 67 20 63 6f 6e 66 69 67 75 72 | .<FocusIn>.{.....%W.tag.configur |
265e0 | 65 20 73 65 6c 20 2d 62 6f 72 64 65 72 77 69 64 74 68 20 30 0a 20 20 20 20 25 57 20 63 6f 6e 66 | e.sel.-borderwidth.0.....%W.conf |
26600 | 69 67 75 72 65 20 2d 73 65 6c 65 63 74 62 61 63 6b 67 72 6f 75 6e 64 20 73 79 73 74 65 6d 48 69 | igure.-selectbackground.systemHi |
26620 | 67 68 6c 69 67 68 74 20 2d 73 65 6c 65 63 74 66 6f 72 65 67 72 6f 75 6e 64 20 73 79 73 74 65 6d | ghlight.-selectforeground.system |
26640 | 48 69 67 68 6c 69 67 68 74 54 65 78 74 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 46 6f 63 75 73 | HighlightText.}.bind.Text.<Focus |
26660 | 4f 75 74 3e 20 7b 0a 20 20 20 20 25 57 20 74 61 67 20 63 6f 6e 66 69 67 75 72 65 20 73 65 6c 20 | Out>.{.....%W.tag.configure.sel. |
26680 | 2d 62 6f 72 64 65 72 77 69 64 74 68 20 31 0a 20 20 20 20 25 57 20 63 6f 6e 66 69 67 75 72 65 20 | -borderwidth.1.....%W.configure. |
266a0 | 2d 73 65 6c 65 63 74 62 61 63 6b 67 72 6f 75 6e 64 20 77 68 69 74 65 20 2d 73 65 6c 65 63 74 66 | -selectbackground.white.-selectf |
266c0 | 6f 72 65 67 72 6f 75 6e 64 20 62 6c 61 63 6b 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 4f 70 74 | oreground.black.}.bind.Text.<Opt |
266e0 | 69 6f 6e 2d 4c 65 66 74 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 | ion-Left>.{.....tkTextSetCursor. |
26700 | 25 57 20 5b 74 6b 54 65 78 74 50 72 65 76 50 6f 73 20 25 57 20 69 6e 73 65 72 74 20 74 63 6c 5f | %W.[tkTextPrevPos.%W.insert.tcl_ |
26720 | 73 74 61 72 74 4f 66 50 72 65 76 69 6f 75 73 57 6f 72 64 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 | startOfPreviousWord].}.bind.Text |
26740 | 20 3c 4f 70 74 69 6f 6e 2d 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 | .<Option-Right>.{.....tkTextSetC |
26760 | 75 72 73 6f 72 20 25 57 20 5b 74 6b 54 65 78 74 4e 65 78 74 57 6f 72 64 20 25 57 20 69 6e 73 65 | ursor.%W.[tkTextNextWord.%W.inse |
26780 | 72 74 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 4f 70 74 69 6f 6e 2d 55 70 3e 20 7b 0a 20 20 | rt].}.bind.Text.<Option-Up>.{... |
267a0 | 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 5b 74 6b 54 65 78 74 50 72 65 76 | ..tkTextSetCursor.%W.[tkTextPrev |
267c0 | 50 61 72 61 20 25 57 20 69 6e 73 65 72 74 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 4f 70 74 | Para.%W.insert].}.bind.Text.<Opt |
267e0 | 69 6f 6e 2d 44 6f 77 6e 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 | ion-Down>.{.....tkTextSetCursor. |
26800 | 25 57 20 5b 74 6b 54 65 78 74 4e 65 78 74 50 61 72 61 20 25 57 20 69 6e 73 65 72 74 5d 0a 7d 0a | %W.[tkTextNextPara.%W.insert].}. |
26820 | 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 66 74 2d 4f 70 74 69 6f 6e 2d 4c 65 66 74 3e 20 7b 0a | bind.Text.<Shift-Option-Left>.{. |
26840 | 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 25 57 20 5b 74 6b 54 65 78 74 50 72 | ....tkTextKeySelect.%W.[tkTextPr |
26860 | 65 76 50 6f 73 20 25 57 20 69 6e 73 65 72 74 20 74 63 6c 5f 73 74 61 72 74 4f 66 50 72 65 76 69 | evPos.%W.insert.tcl_startOfPrevi |
26880 | 6f 75 73 57 6f 72 64 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 66 74 2d 4f 70 74 69 | ousWord].}.bind.Text.<Shift-Opti |
268a0 | 6f 6e 2d 52 69 67 68 74 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 | on-Right>.{.....tkTextKeySelect. |
268c0 | 25 57 20 5b 74 6b 54 65 78 74 4e 65 78 74 57 6f 72 64 20 25 57 20 69 6e 73 65 72 74 5d 0a 7d 0a | %W.[tkTextNextWord.%W.insert].}. |
268e0 | 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 66 74 2d 4f 70 74 69 6f 6e 2d 55 70 3e 20 7b 0a 20 20 | bind.Text.<Shift-Option-Up>.{... |
26900 | 20 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 25 57 20 5b 74 6b 54 65 78 74 50 72 65 76 | ..tkTextKeySelect.%W.[tkTextPrev |
26920 | 50 61 72 61 20 25 57 20 69 6e 73 65 72 74 5d 0a 7d 0a 62 69 6e 64 20 54 65 78 74 20 3c 53 68 69 | Para.%W.insert].}.bind.Text.<Shi |
26940 | 66 74 2d 4f 70 74 69 6f 6e 2d 44 6f 77 6e 3e 20 7b 0a 20 20 20 20 74 6b 54 65 78 74 4b 65 79 53 | ft-Option-Down>.{.....tkTextKeyS |
26960 | 65 6c 65 63 74 20 25 57 20 5b 74 6b 54 65 78 74 4e 65 78 74 50 61 72 61 20 25 57 20 69 6e 73 65 | elect.%W.[tkTextNextPara.%W.inse |
26980 | 72 74 5d 0a 7d 0a 0a 23 20 45 6e 64 20 6f 66 20 4d 61 63 20 6f 6e 6c 79 20 62 69 6e 64 69 6e 67 | rt].}..#.End.of.Mac.only.binding |
269a0 | 73 0a 7d 0a 0a 23 20 41 20 66 65 77 20 61 64 64 69 74 69 6f 6e 61 6c 20 62 69 6e 64 69 6e 67 73 | s.}..#.A.few.additional.bindings |
269c0 | 20 6f 66 20 6d 79 20 6f 77 6e 2e 0a 0a 62 69 6e 64 20 54 65 78 74 20 3c 43 6f 6e 74 72 6f 6c 2d | .of.my.own...bind.Text.<Control- |
269e0 | 68 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b | h>.{.....if.{!$tk_strictMotif}.{ |
26a00 | 0a 09 69 66 20 7b 5b 25 57 20 63 6f 6d 70 61 72 65 20 69 6e 73 65 72 74 20 21 3d 20 31 2e 30 5d | ..if.{[%W.compare.insert.!=.1.0] |
26a20 | 7d 20 7b 0a 09 20 20 20 20 25 57 20 64 65 6c 65 74 65 20 69 6e 73 65 72 74 2d 31 63 0a 09 20 20 | }.{......%W.delete.insert-1c.... |
26a40 | 20 20 25 57 20 73 65 65 20 69 6e 73 65 72 74 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 62 69 6e 64 20 | ..%W.see.insert..}.....}.}.bind. |
26a60 | 54 65 78 74 20 3c 32 3e 20 7b 0a 20 20 20 20 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f | Text.<2>.{.....if.{!$tk_strictMo |
26a80 | 74 69 66 7d 20 7b 0a 09 25 57 20 73 63 61 6e 20 6d 61 72 6b 20 25 78 20 25 79 0a 09 73 65 74 20 | tif}.{..%W.scan.mark.%x.%y..set. |
26aa0 | 74 6b 50 72 69 76 28 78 29 20 25 78 0a 09 73 65 74 20 74 6b 50 72 69 76 28 79 29 20 25 79 0a 09 | tkPriv(x).%x..set.tkPriv(y).%y.. |
26ac0 | 73 65 74 20 74 6b 50 72 69 76 28 6d 6f 75 73 65 4d 6f 76 65 64 29 20 30 0a 20 20 20 20 7d 0a 7d | set.tkPriv(mouseMoved).0.....}.} |
26ae0 | 0a 62 69 6e 64 20 54 65 78 74 20 3c 42 32 2d 4d 6f 74 69 6f 6e 3e 20 7b 0a 20 20 20 20 69 66 20 | .bind.Text.<B2-Motion>.{.....if. |
26b00 | 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 69 66 20 7b 28 25 78 20 21 3d | {!$tk_strictMotif}.{..if.{(%x.!= |
26b20 | 20 24 74 6b 50 72 69 76 28 78 29 29 20 7c 7c 20 28 25 79 20 21 3d 20 24 74 6b 50 72 69 76 28 79 | .$tkPriv(x)).||.(%y.!=.$tkPriv(y |
26b40 | 29 29 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 6d 6f 75 73 65 4d 6f 76 65 64 | ))}.{......set.tkPriv(mouseMoved |
26b60 | 29 20 31 0a 09 7d 0a 09 69 66 20 7b 24 74 6b 50 72 69 76 28 6d 6f 75 73 65 4d 6f 76 65 64 29 7d | ).1..}..if.{$tkPriv(mouseMoved)} |
26b80 | 20 7b 0a 09 20 20 20 20 25 57 20 73 63 61 6e 20 64 72 61 67 74 6f 20 25 78 20 25 79 0a 09 7d 0a | .{......%W.scan.dragto.%x.%y..}. |
26ba0 | 20 20 20 20 7d 0a 7d 0a 73 65 74 20 74 6b 50 72 69 76 28 70 72 65 76 50 6f 73 29 20 7b 7d 0a 0a | ....}.}.set.tkPriv(prevPos).{}.. |
26bc0 | 23 20 54 68 65 20 4d 6f 75 73 65 57 68 65 65 6c 20 77 69 6c 6c 20 74 79 70 69 63 61 6c 6c 79 20 | #.The.MouseWheel.will.typically. |
26be0 | 6f 6e 6c 79 20 66 69 72 65 20 6f 6e 20 57 69 6e 64 6f 77 73 2e 20 20 48 6f 77 65 76 65 72 2c 0a | only.fire.on.Windows...However,. |
26c00 | 23 20 73 6f 6d 65 6f 6e 65 20 63 6f 75 6c 64 20 75 73 65 20 74 68 65 20 22 65 76 65 6e 74 20 67 | #.someone.could.use.the."event.g |
26c20 | 65 6e 65 72 61 74 65 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 70 72 6f 64 75 63 65 20 6f 6e 65 0a | enerate".command.to.produce.one. |
26c40 | 23 20 6f 6e 20 6f 74 68 65 72 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 0a 62 69 6e 64 20 54 65 78 74 | #.on.other.platforms...bind.Text |
26c60 | 20 3c 4d 6f 75 73 65 57 68 65 65 6c 3e 20 7b 0a 20 20 20 20 25 57 20 79 76 69 65 77 20 73 63 72 | .<MouseWheel>.{.....%W.yview.scr |
26c80 | 6f 6c 6c 20 5b 65 78 70 72 20 7b 2d 20 28 25 44 20 2f 20 31 32 30 29 20 2a 20 34 7d 5d 20 75 6e | oll.[expr.{-.(%D./.120).*.4}].un |
26ca0 | 69 74 73 0a 7d 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 22 75 6e 69 78 22 20 | its.}..if.{[string.equal."unix". |
26cc0 | 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 5d 7d 20 7b 0a 20 20 20 20 | $tcl_platform(platform)]}.{..... |
26ce0 | 23 20 53 75 70 70 6f 72 74 20 66 6f 72 20 6d 6f 75 73 65 77 68 65 65 6c 73 20 6f 6e 20 4c 69 6e | #.Support.for.mousewheels.on.Lin |
26d00 | 75 78 2f 55 6e 69 78 20 63 6f 6d 6d 6f 6e 6c 79 20 63 6f 6d 65 73 20 74 68 72 6f 75 67 68 20 6d | ux/Unix.commonly.comes.through.m |
26d20 | 61 70 70 69 6e 67 0a 20 20 20 20 23 20 74 68 65 20 77 68 65 65 6c 20 74 6f 20 74 68 65 20 65 78 | apping.....#.the.wheel.to.the.ex |
26d40 | 74 65 6e 64 65 64 20 62 75 74 74 6f 6e 73 2e 20 20 49 66 20 79 6f 75 20 68 61 76 65 20 61 20 6d | tended.buttons...If.you.have.a.m |
26d60 | 6f 75 73 65 77 68 65 65 6c 2c 20 66 69 6e 64 0a 20 20 20 20 23 20 4c 69 6e 75 78 20 63 6f 6e 66 | ousewheel,.find.....#.Linux.conf |
26d80 | 69 67 75 72 61 74 69 6f 6e 20 69 6e 66 6f 20 61 74 3a 0a 20 20 20 20 23 09 68 74 74 70 3a 2f 2f | iguration.info.at:.....#.http:// |
26da0 | 77 77 77 2e 69 6e 72 69 61 2e 66 72 2f 6b 6f 61 6c 61 2f 63 6f 6c 61 73 2f 6d 6f 75 73 65 2d 77 | www.inria.fr/koala/colas/mouse-w |
26dc0 | 68 65 65 6c 2d 73 63 72 6f 6c 6c 2f 0a 20 20 20 20 62 69 6e 64 20 54 65 78 74 20 3c 34 3e 20 7b | heel-scroll/.....bind.Text.<4>.{ |
26de0 | 0a 09 69 66 20 7b 21 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 20 20 20 20 25 | ..if.{!$tk_strictMotif}.{......% |
26e00 | 57 20 79 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 35 20 75 6e 69 74 73 0a 09 7d 0a 20 20 20 20 7d | W.yview.scroll.-5.units..}.....} |
26e20 | 0a 20 20 20 20 62 69 6e 64 20 54 65 78 74 20 3c 35 3e 20 7b 0a 09 69 66 20 7b 21 24 74 6b 5f 73 | .....bind.Text.<5>.{..if.{!$tk_s |
26e40 | 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 20 20 20 20 25 57 20 79 76 69 65 77 20 73 63 72 6f | trictMotif}.{......%W.yview.scro |
26e60 | 6c 6c 20 35 20 75 6e 69 74 73 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 43 | ll.5.units..}.....}.}..#.tkTextC |
26e80 | 6c 6f 73 65 73 74 47 61 70 20 2d 2d 0a 23 20 47 69 76 65 6e 20 78 20 61 6e 64 20 79 20 63 6f 6f | losestGap.--.#.Given.x.and.y.coo |
26ea0 | 72 64 69 6e 61 74 65 73 2c 20 74 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 66 69 6e 64 73 20 74 | rdinates,.this.procedure.finds.t |
26ec0 | 68 65 20 63 6c 6f 73 65 73 74 20 62 6f 75 6e 64 61 72 79 0a 23 20 62 65 74 77 65 65 6e 20 63 68 | he.closest.boundary.#.between.ch |
26ee0 | 61 72 61 63 74 65 72 73 20 74 6f 20 74 68 65 20 67 69 76 65 6e 20 63 6f 6f 72 64 69 6e 61 74 65 | aracters.to.the.given.coordinate |
26f00 | 73 20 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 0a 23 20 6f 66 20 74 68 65 | s.and.returns.the.index.#.of.the |
26f20 | 20 63 68 61 72 61 63 74 65 72 20 6a 75 73 74 20 61 66 74 65 72 20 74 68 65 20 62 6f 75 6e 64 61 | .character.just.after.the.bounda |
26f40 | 72 79 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 | ry..#.#.Arguments:.#.w.-..The.te |
26f60 | 78 74 20 77 69 6e 64 6f 77 2e 0a 23 20 78 20 2d 09 09 58 2d 63 6f 6f 72 64 69 6e 61 74 65 20 77 | xt.window..#.x.-..X-coordinate.w |
26f80 | 69 74 68 69 6e 20 74 68 65 20 77 69 6e 64 6f 77 2e 0a 23 20 79 20 2d 09 09 59 2d 63 6f 6f 72 64 | ithin.the.window..#.y.-..Y-coord |
26fa0 | 69 6e 61 74 65 20 77 69 74 68 69 6e 20 74 68 65 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 74 | inate.within.the.window...proc.t |
26fc0 | 6b 54 65 78 74 43 6c 6f 73 65 73 74 47 61 70 20 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 73 65 | kTextClosestGap.{w.x.y}.{.....se |
26fe0 | 74 20 70 6f 73 20 5b 24 77 20 69 6e 64 65 78 20 40 24 78 2c 24 79 5d 0a 20 20 20 20 73 65 74 20 | t.pos.[$w.index.@$x,$y].....set. |
27000 | 62 62 6f 78 20 5b 24 77 20 62 62 6f 78 20 24 70 6f 73 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 | bbox.[$w.bbox.$pos].....if.{[str |
27020 | 69 6e 67 20 65 71 75 61 6c 20 24 62 62 6f 78 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 24 | ing.equal.$bbox.""]}.{..return.$ |
27040 | 70 6f 73 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 28 24 78 20 2d 20 5b 6c 69 6e 64 65 78 20 | pos.....}.....if.{($x.-.[lindex. |
27060 | 24 62 62 6f 78 20 30 5d 29 20 3c 20 28 5b 6c 69 6e 64 65 78 20 24 62 62 6f 78 20 32 5d 2f 32 29 | $bbox.0]).<.([lindex.$bbox.2]/2) |
27080 | 7d 20 7b 0a 09 72 65 74 75 72 6e 20 24 70 6f 73 0a 20 20 20 20 7d 0a 20 20 20 20 24 77 20 69 6e | }.{..return.$pos.....}.....$w.in |
270a0 | 64 65 78 20 22 24 70 6f 73 20 2b 20 31 20 63 68 61 72 22 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 42 | dex."$pos.+.1.char".}..#.tkTextB |
270c0 | 75 74 74 6f 6e 31 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e | utton1.--.#.This.procedure.is.in |
270e0 | 76 6f 6b 65 64 20 74 6f 20 68 61 6e 64 6c 65 20 62 75 74 74 6f 6e 2d 31 20 70 72 65 73 73 65 73 | voked.to.handle.button-1.presses |
27100 | 20 69 6e 20 74 65 78 74 0a 23 20 77 69 64 67 65 74 73 2e 20 20 49 74 20 6d 6f 76 65 73 20 74 68 | .in.text.#.widgets...It.moves.th |
27120 | 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 2c 20 73 65 74 73 20 74 68 65 20 73 65 6c | e.insertion.cursor,.sets.the.sel |
27140 | 65 63 74 69 6f 6e 20 61 6e 63 68 6f 72 2c 0a 23 20 61 6e 64 20 63 6c 61 69 6d 73 20 74 68 65 20 | ection.anchor,.#.and.claims.the. |
27160 | 69 6e 70 75 74 20 66 6f 63 75 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 | input.focus..#.#.Arguments:.#.w. |
27180 | 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 | -..The.text.window.in.which.the. |
271a0 | 62 75 74 74 6f 6e 20 77 61 73 20 70 72 65 73 73 65 64 2e 0a 23 20 78 20 2d 09 09 54 68 65 20 78 | button.was.pressed..#.x.-..The.x |
271c0 | 2d 63 6f 6f 72 64 69 6e 61 74 65 20 6f 66 20 74 68 65 20 62 75 74 74 6f 6e 20 70 72 65 73 73 2e | -coordinate.of.the.button.press. |
271e0 | 0a 23 20 79 20 2d 09 09 54 68 65 20 78 2d 63 6f 6f 72 64 69 6e 61 74 65 20 6f 66 20 74 68 65 20 | .#.y.-..The.x-coordinate.of.the. |
27200 | 62 75 74 74 6f 6e 20 70 72 65 73 73 2e 0a 0a 70 72 6f 63 20 74 6b 54 65 78 74 42 75 74 74 6f 6e | button.press...proc.tkTextButton |
27220 | 31 20 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 | 1.{w.x.y}.{.....global.tkPriv... |
27240 | 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f 64 65 29 20 63 68 61 72 0a 20 | ...set.tkPriv(selectMode).char.. |
27260 | 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 6d 6f 75 73 65 4d 6f 76 65 64 29 20 30 0a 20 20 20 20 | ...set.tkPriv(mouseMoved).0..... |
27280 | 73 65 74 20 74 6b 50 72 69 76 28 70 72 65 73 73 58 29 20 24 78 0a 20 20 20 20 24 77 20 6d 61 72 | set.tkPriv(pressX).$x.....$w.mar |
272a0 | 6b 20 73 65 74 20 69 6e 73 65 72 74 20 5b 74 6b 54 65 78 74 43 6c 6f 73 65 73 74 47 61 70 20 24 | k.set.insert.[tkTextClosestGap.$ |
272c0 | 77 20 24 78 20 24 79 5d 0a 20 20 20 20 24 77 20 6d 61 72 6b 20 73 65 74 20 61 6e 63 68 6f 72 20 | w.$x.$y].....$w.mark.set.anchor. |
272e0 | 69 6e 73 65 72 74 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 | insert.....if.{[string.equal.[$w |
27300 | 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 6e 6f 72 6d 61 6c 22 5d 7d 20 7b 66 6f 63 75 73 20 | .cget.-state]."normal"]}.{focus. |
27320 | 24 77 7d 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 53 65 6c 65 63 74 54 6f 20 2d 2d 0a 23 20 54 68 69 | $w}.}..#.tkTextSelectTo.--.#.Thi |
27340 | 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 74 6f 20 65 78 74 65 6e 64 | s.procedure.is.invoked.to.extend |
27360 | 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 2c 20 74 79 70 69 63 61 6c 6c 79 20 77 68 65 6e 0a 23 | .the.selection,.typically.when.# |
27380 | 20 64 72 61 67 67 69 6e 67 20 69 74 20 77 69 74 68 20 74 68 65 20 6d 6f 75 73 65 2e 20 20 44 65 | .dragging.it.with.the.mouse...De |
273a0 | 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 6d 6f 64 65 20 28 63 | pending.on.the.selection.mode.(c |
273c0 | 68 61 72 61 63 74 65 72 2c 0a 23 20 77 6f 72 64 2c 20 6c 69 6e 65 29 20 69 74 20 73 65 6c 65 63 | haracter,.#.word,.line).it.selec |
273e0 | 74 73 20 69 6e 20 64 69 66 66 65 72 65 6e 74 2d 73 69 7a 65 64 20 75 6e 69 74 73 2e 20 20 54 68 | ts.in.different-sized.units...Th |
27400 | 69 73 20 70 72 6f 63 65 64 75 72 65 0a 23 20 69 67 6e 6f 72 65 73 20 6d 6f 75 73 65 20 6d 6f 74 | is.procedure.#.ignores.mouse.mot |
27420 | 69 6f 6e 73 20 69 6e 69 74 69 61 6c 6c 79 20 75 6e 74 69 6c 20 74 68 65 20 6d 6f 75 73 65 20 68 | ions.initially.until.the.mouse.h |
27440 | 61 73 20 6d 6f 76 65 64 20 66 72 6f 6d 0a 23 20 6f 6e 65 20 63 68 61 72 61 63 74 65 72 20 74 6f | as.moved.from.#.one.character.to |
27460 | 20 61 6e 6f 74 68 65 72 20 6f 72 20 75 6e 74 69 6c 20 74 68 65 72 65 20 68 61 76 65 20 62 65 65 | .another.or.until.there.have.bee |
27480 | 6e 20 6d 75 6c 74 69 70 6c 65 20 63 6c 69 63 6b 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 | n.multiple.clicks..#.#.Arguments |
274a0 | 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 | :.#.w.-..The.text.window.in.whic |
274c0 | 68 20 74 68 65 20 62 75 74 74 6f 6e 20 77 61 73 20 70 72 65 73 73 65 64 2e 0a 23 20 78 20 2d 09 | h.the.button.was.pressed..#.x.-. |
274e0 | 09 4d 6f 75 73 65 20 78 20 70 6f 73 69 74 69 6f 6e 2e 0a 23 20 79 20 2d 20 09 09 4d 6f 75 73 65 | .Mouse.x.position..#.y.-...Mouse |
27500 | 20 79 20 70 6f 73 69 74 69 6f 6e 2e 0a 0a 70 72 6f 63 20 74 6b 54 65 78 74 53 65 6c 65 63 74 54 | .y.position...proc.tkTextSelectT |
27520 | 6f 20 7b 77 20 78 20 79 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 20 74 63 | o.{w.x.y}.{.....global.tkPriv.tc |
27540 | 6c 5f 70 6c 61 74 66 6f 72 6d 0a 0a 20 20 20 20 73 65 74 20 63 75 72 20 5b 74 6b 54 65 78 74 43 | l_platform......set.cur.[tkTextC |
27560 | 6c 6f 73 65 73 74 47 61 70 20 24 77 20 24 78 20 24 79 5d 0a 20 20 20 20 69 66 20 7b 5b 63 61 74 | losestGap.$w.$x.$y].....if.{[cat |
27580 | 63 68 20 7b 24 77 20 69 6e 64 65 78 20 61 6e 63 68 6f 72 7d 5d 7d 20 7b 0a 09 24 77 20 6d 61 72 | ch.{$w.index.anchor}]}.{..$w.mar |
275a0 | 6b 20 73 65 74 20 61 6e 63 68 6f 72 20 24 63 75 72 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 | k.set.anchor.$cur.....}.....set. |
275c0 | 61 6e 63 68 6f 72 20 5b 24 77 20 69 6e 64 65 78 20 61 6e 63 68 6f 72 5d 0a 20 20 20 20 69 66 20 | anchor.[$w.index.anchor].....if. |
275e0 | 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 63 75 72 20 21 3d 20 24 61 6e 63 68 6f 72 5d 20 7c 7c | {[$w.compare.$cur.!=.$anchor].|| |
27600 | 20 28 61 62 73 28 24 74 6b 50 72 69 76 28 70 72 65 73 73 58 29 20 2d 20 24 78 29 20 3e 3d 20 33 | .(abs($tkPriv(pressX).-.$x).>=.3 |
27620 | 29 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 6d 6f 75 73 65 4d 6f 76 65 64 29 20 31 0a 20 | )}.{..set.tkPriv(mouseMoved).1.. |
27640 | 20 20 20 7d 0a 20 20 20 20 73 77 69 74 63 68 20 24 74 6b 50 72 69 76 28 73 65 6c 65 63 74 4d 6f | ...}.....switch.$tkPriv(selectMo |
27660 | 64 65 29 20 7b 0a 09 63 68 61 72 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 | de).{..char.{......if.{[$w.compa |
27680 | 72 65 20 24 63 75 72 20 3c 20 61 6e 63 68 6f 72 5d 7d 20 7b 0a 09 09 73 65 74 20 66 69 72 73 74 | re.$cur.<.anchor]}.{...set.first |
276a0 | 20 24 63 75 72 0a 09 09 73 65 74 20 6c 61 73 74 20 61 6e 63 68 6f 72 0a 09 20 20 20 20 7d 20 65 | .$cur...set.last.anchor......}.e |
276c0 | 6c 73 65 20 7b 0a 09 09 73 65 74 20 66 69 72 73 74 20 61 6e 63 68 6f 72 0a 09 09 73 65 74 20 6c | lse.{...set.first.anchor...set.l |
276e0 | 61 73 74 20 24 63 75 72 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 77 6f 72 64 20 7b 0a 09 20 20 20 20 | ast.$cur......}..}..word.{...... |
27700 | 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 63 75 72 20 3c 20 61 6e 63 68 6f 72 5d 7d 20 | if.{[$w.compare.$cur.<.anchor]}. |
27720 | 7b 0a 09 09 73 65 74 20 66 69 72 73 74 20 5b 74 6b 54 65 78 74 50 72 65 76 50 6f 73 20 24 77 20 | {...set.first.[tkTextPrevPos.$w. |
27740 | 22 24 63 75 72 20 2b 20 31 63 22 20 74 63 6c 5f 77 6f 72 64 42 72 65 61 6b 42 65 66 6f 72 65 5d | "$cur.+.1c".tcl_wordBreakBefore] |
27760 | 0a 09 09 73 65 74 20 6c 61 73 74 20 5b 74 6b 54 65 78 74 4e 65 78 74 50 6f 73 20 24 77 20 22 61 | ...set.last.[tkTextNextPos.$w."a |
27780 | 6e 63 68 6f 72 22 20 74 63 6c 5f 77 6f 72 64 42 72 65 61 6b 41 66 74 65 72 5d 0a 09 20 20 20 20 | nchor".tcl_wordBreakAfter]...... |
277a0 | 7d 20 65 6c 73 65 20 7b 0a 09 09 73 65 74 20 66 69 72 73 74 20 5b 74 6b 54 65 78 74 50 72 65 76 | }.else.{...set.first.[tkTextPrev |
277c0 | 50 6f 73 20 24 77 20 61 6e 63 68 6f 72 20 74 63 6c 5f 77 6f 72 64 42 72 65 61 6b 42 65 66 6f 72 | Pos.$w.anchor.tcl_wordBreakBefor |
277e0 | 65 5d 0a 09 09 73 65 74 20 6c 61 73 74 20 5b 74 6b 54 65 78 74 4e 65 78 74 50 6f 73 20 24 77 20 | e]...set.last.[tkTextNextPos.$w. |
27800 | 22 24 63 75 72 20 2d 20 31 63 22 20 74 63 6c 5f 77 6f 72 64 42 72 65 61 6b 41 66 74 65 72 5d 0a | "$cur.-.1c".tcl_wordBreakAfter]. |
27820 | 09 20 20 20 20 7d 0a 09 7d 0a 09 6c 69 6e 65 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 24 77 20 63 | .....}..}..line.{......if.{[$w.c |
27840 | 6f 6d 70 61 72 65 20 24 63 75 72 20 3c 20 61 6e 63 68 6f 72 5d 7d 20 7b 0a 09 09 73 65 74 20 66 | ompare.$cur.<.anchor]}.{...set.f |
27860 | 69 72 73 74 20 5b 24 77 20 69 6e 64 65 78 20 22 24 63 75 72 20 6c 69 6e 65 73 74 61 72 74 22 5d | irst.[$w.index."$cur.linestart"] |
27880 | 0a 09 09 73 65 74 20 6c 61 73 74 20 5b 24 77 20 69 6e 64 65 78 20 22 61 6e 63 68 6f 72 20 2d 20 | ...set.last.[$w.index."anchor.-. |
278a0 | 31 63 20 6c 69 6e 65 65 6e 64 20 2b 20 31 63 22 5d 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a | 1c.lineend.+.1c"]......}.else.{. |
278c0 | 09 09 73 65 74 20 66 69 72 73 74 20 5b 24 77 20 69 6e 64 65 78 20 22 61 6e 63 68 6f 72 20 6c 69 | ..set.first.[$w.index."anchor.li |
278e0 | 6e 65 73 74 61 72 74 22 5d 0a 09 09 73 65 74 20 6c 61 73 74 20 5b 24 77 20 69 6e 64 65 78 20 22 | nestart"]...set.last.[$w.index." |
27900 | 24 63 75 72 20 6c 69 6e 65 65 6e 64 20 2b 20 31 63 22 5d 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 | $cur.lineend.+.1c"]......}..}... |
27920 | 20 20 7d 0a 20 20 20 20 69 66 20 7b 24 74 6b 50 72 69 76 28 6d 6f 75 73 65 4d 6f 76 65 64 29 20 | ..}.....if.{$tkPriv(mouseMoved). |
27940 | 7c 7c 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 6b 50 72 69 76 28 73 65 6c 65 63 | ||.[string.compare.$tkPriv(selec |
27960 | 74 4d 6f 64 65 29 20 22 63 68 61 72 22 5d 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 | tMode)."char"]}.{..if.{[string.c |
27980 | 6f 6d 70 61 72 65 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 | ompare.$tcl_platform(platform)." |
279a0 | 75 6e 69 78 22 5d 20 5c 0a 09 09 26 26 20 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 63 75 72 20 3c | unix"].\...&&.[$w.compare.$cur.< |
279c0 | 20 61 6e 63 68 6f 72 5d 7d 20 7b 0a 09 20 20 20 20 24 77 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 | .anchor]}.{......$w.mark.set.ins |
279e0 | 65 72 74 20 24 66 69 72 73 74 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 24 77 20 6d 61 72 | ert.$first..}.else.{......$w.mar |
27a00 | 6b 20 73 65 74 20 69 6e 73 65 72 74 20 24 6c 61 73 74 0a 09 7d 0a 09 24 77 20 74 61 67 20 72 65 | k.set.insert.$last..}..$w.tag.re |
27a20 | 6d 6f 76 65 20 73 65 6c 20 30 2e 30 20 24 66 69 72 73 74 0a 09 24 77 20 74 61 67 20 61 64 64 20 | move.sel.0.0.$first..$w.tag.add. |
27a40 | 73 65 6c 20 24 66 69 72 73 74 20 24 6c 61 73 74 0a 09 24 77 20 74 61 67 20 72 65 6d 6f 76 65 20 | sel.$first.$last..$w.tag.remove. |
27a60 | 73 65 6c 20 24 6c 61 73 74 20 65 6e 64 0a 09 75 70 64 61 74 65 20 69 64 6c 65 74 61 73 6b 73 0a | sel.$last.end..update.idletasks. |
27a80 | 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 4b 65 79 45 78 74 65 6e 64 20 2d 2d 0a 23 20 | ....}.}..#.tkTextKeyExtend.--.#. |
27aa0 | 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 68 61 6e 64 6c 65 73 20 65 78 74 65 6e 64 69 6e 67 | This.procedure.handles.extending |
27ac0 | 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 66 72 6f 6d 20 74 68 65 20 6b 65 79 62 6f 61 72 64 | .the.selection.from.the.keyboard |
27ae0 | 2c 0a 23 20 77 68 65 72 65 20 74 68 65 20 70 6f 69 6e 74 20 74 6f 20 65 78 74 65 6e 64 20 74 6f | ,.#.where.the.point.to.extend.to |
27b00 | 20 69 73 20 72 65 61 6c 6c 79 20 74 68 65 20 62 6f 75 6e 64 61 72 79 20 62 65 74 77 65 65 6e 20 | .is.really.the.boundary.between. |
27b20 | 74 77 6f 0a 23 20 63 68 61 72 61 63 74 65 72 73 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 20 70 | two.#.characters.rather.than.a.p |
27b40 | 61 72 74 69 63 75 6c 61 72 20 63 68 61 72 61 63 74 65 72 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e | articular.character..#.#.Argumen |
27b60 | 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 2e 0a 23 20 69 6e | ts:.#.w.-..The.text.window..#.in |
27b80 | 64 65 78 20 2d 09 54 68 65 20 70 6f 69 6e 74 20 74 6f 20 77 68 69 63 68 20 74 68 65 20 73 65 6c | dex.-.The.point.to.which.the.sel |
27ba0 | 65 63 74 69 6f 6e 20 69 73 20 74 6f 20 62 65 20 65 78 74 65 6e 64 65 64 2e 0a 0a 70 72 6f 63 20 | ection.is.to.be.extended...proc. |
27bc0 | 74 6b 54 65 78 74 4b 65 79 45 78 74 65 6e 64 20 7b 77 20 69 6e 64 65 78 7d 20 7b 0a 20 20 20 20 | tkTextKeyExtend.{w.index}.{..... |
27be0 | 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 73 65 74 20 63 75 72 20 5b 24 77 20 69 | global.tkPriv......set.cur.[$w.i |
27c00 | 6e 64 65 78 20 24 69 6e 64 65 78 5d 0a 20 20 20 20 69 66 20 7b 5b 63 61 74 63 68 20 7b 24 77 20 | ndex.$index].....if.{[catch.{$w. |
27c20 | 69 6e 64 65 78 20 61 6e 63 68 6f 72 7d 5d 7d 20 7b 0a 09 24 77 20 6d 61 72 6b 20 73 65 74 20 61 | index.anchor}]}.{..$w.mark.set.a |
27c40 | 6e 63 68 6f 72 20 24 63 75 72 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 61 6e 63 68 6f 72 20 | nchor.$cur.....}.....set.anchor. |
27c60 | 5b 24 77 20 69 6e 64 65 78 20 61 6e 63 68 6f 72 5d 0a 20 20 20 20 69 66 20 7b 5b 24 77 20 63 6f | [$w.index.anchor].....if.{[$w.co |
27c80 | 6d 70 61 72 65 20 24 63 75 72 20 3c 20 61 6e 63 68 6f 72 5d 7d 20 7b 0a 09 73 65 74 20 66 69 72 | mpare.$cur.<.anchor]}.{..set.fir |
27ca0 | 73 74 20 24 63 75 72 0a 09 73 65 74 20 6c 61 73 74 20 61 6e 63 68 6f 72 0a 20 20 20 20 7d 20 65 | st.$cur..set.last.anchor.....}.e |
27cc0 | 6c 73 65 20 7b 0a 09 73 65 74 20 66 69 72 73 74 20 61 6e 63 68 6f 72 0a 09 73 65 74 20 6c 61 73 | lse.{..set.first.anchor..set.las |
27ce0 | 74 20 24 63 75 72 0a 20 20 20 20 7d 0a 20 20 20 20 24 77 20 74 61 67 20 72 65 6d 6f 76 65 20 73 | t.$cur.....}.....$w.tag.remove.s |
27d00 | 65 6c 20 30 2e 30 20 24 66 69 72 73 74 0a 20 20 20 20 24 77 20 74 61 67 20 61 64 64 20 73 65 6c | el.0.0.$first.....$w.tag.add.sel |
27d20 | 20 24 66 69 72 73 74 20 24 6c 61 73 74 0a 20 20 20 20 24 77 20 74 61 67 20 72 65 6d 6f 76 65 20 | .$first.$last.....$w.tag.remove. |
27d40 | 73 65 6c 20 24 6c 61 73 74 20 65 6e 64 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 50 61 73 74 65 20 2d | sel.$last.end.}..#.tkTextPaste.- |
27d60 | 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 73 65 74 73 20 74 68 65 20 69 6e 73 65 | -.#.This.procedure.sets.the.inse |
27d80 | 72 74 69 6f 6e 20 63 75 72 73 6f 72 20 74 6f 20 74 68 65 20 6d 6f 75 73 65 20 70 6f 73 69 74 69 | rtion.cursor.to.the.mouse.positi |
27da0 | 6f 6e 2c 0a 23 20 69 6e 73 65 72 74 73 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 2c 20 61 6e 64 | on,.#.inserts.the.selection,.and |
27dc0 | 20 73 65 74 73 20 74 68 65 20 66 6f 63 75 73 20 74 6f 20 74 68 65 20 77 69 6e 64 6f 77 2e 0a 23 | .sets.the.focus.to.the.window..# |
27de0 | 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 | .#.Arguments:.#.w.-..The.text.wi |
27e00 | 6e 64 6f 77 2e 0a 23 20 78 2c 20 79 20 2d 20 09 50 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 | ndow..#.x,.y.-..Position.of.the. |
27e20 | 6d 6f 75 73 65 2e 0a 0a 70 72 6f 63 20 74 6b 54 65 78 74 50 61 73 74 65 20 7b 77 20 78 20 79 7d | mouse...proc.tkTextPaste.{w.x.y} |
27e40 | 20 7b 0a 20 20 20 20 24 77 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 5b 74 6b 54 65 78 | .{.....$w.mark.set.insert.[tkTex |
27e60 | 74 43 6c 6f 73 65 73 74 47 61 70 20 24 77 20 24 78 20 24 79 5d 0a 20 20 20 20 63 61 74 63 68 20 | tClosestGap.$w.$x.$y].....catch. |
27e80 | 7b 24 77 20 69 6e 73 65 72 74 20 69 6e 73 65 72 74 20 5b 73 65 6c 65 63 74 69 6f 6e 20 67 65 74 | {$w.insert.insert.[selection.get |
27ea0 | 20 2d 64 69 73 70 6c 61 79 6f 66 20 24 77 5d 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 | .-displayof.$w]}.....if.{[string |
27ec0 | 20 65 71 75 61 6c 20 5b 24 77 20 63 67 65 74 20 2d 73 74 61 74 65 5d 20 22 6e 6f 72 6d 61 6c 22 | .equal.[$w.cget.-state]."normal" |
27ee0 | 5d 7d 20 7b 66 6f 63 75 73 20 24 77 7d 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 41 75 74 6f 53 63 61 | ]}.{focus.$w}.}..#.tkTextAutoSca |
27f00 | 6e 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 | n.--.#.This.procedure.is.invoked |
27f20 | 20 77 68 65 6e 20 74 68 65 20 6d 6f 75 73 65 20 6c 65 61 76 65 73 20 61 20 74 65 78 74 20 77 69 | .when.the.mouse.leaves.a.text.wi |
27f40 | 6e 64 6f 77 0a 23 20 77 69 74 68 20 62 75 74 74 6f 6e 20 31 20 64 6f 77 6e 2e 20 20 49 74 20 73 | ndow.#.with.button.1.down...It.s |
27f60 | 63 72 6f 6c 6c 73 20 74 68 65 20 77 69 6e 64 6f 77 20 75 70 2c 20 64 6f 77 6e 2c 20 6c 65 66 74 | crolls.the.window.up,.down,.left |
27f80 | 2c 20 6f 72 20 72 69 67 68 74 2c 0a 23 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 65 72 65 | ,.or.right,.#.depending.on.where |
27fa0 | 20 74 68 65 20 6d 6f 75 73 65 20 69 73 20 28 74 68 69 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 | .the.mouse.is.(this.information. |
27fc0 | 77 61 73 20 73 61 76 65 64 20 69 6e 0a 23 20 74 6b 50 72 69 76 28 78 29 20 61 6e 64 20 74 6b 50 | was.saved.in.#.tkPriv(x).and.tkP |
27fe0 | 72 69 76 28 79 29 29 2c 20 61 6e 64 20 72 65 73 63 68 65 64 75 6c 65 73 20 69 74 73 65 6c 66 20 | riv(y)),.and.reschedules.itself. |
28000 | 61 73 20 61 6e 20 22 61 66 74 65 72 22 0a 23 20 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74 20 | as.an."after".#.command.so.that. |
28020 | 74 68 65 20 77 69 6e 64 6f 77 20 63 6f 6e 74 69 6e 75 65 73 20 74 6f 20 73 63 72 6f 6c 6c 20 75 | the.window.continues.to.scroll.u |
28040 | 6e 74 69 6c 20 74 68 65 20 6d 6f 75 73 65 0a 23 20 6d 6f 76 65 73 20 62 61 63 6b 20 69 6e 74 6f | ntil.the.mouse.#.moves.back.into |
28060 | 20 74 68 65 20 77 69 6e 64 6f 77 20 6f 72 20 74 68 65 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 20 | .the.window.or.the.mouse.button. |
28080 | 69 73 20 72 65 6c 65 61 73 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 | is.released..#.#.Arguments:.#.w. |
280a0 | 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b 54 65 78 74 | -..The.text.window...proc.tkText |
280c0 | 41 75 74 6f 53 63 61 6e 20 7b 77 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 | AutoScan.{w}.{.....global.tkPriv |
280e0 | 0a 20 20 20 20 69 66 20 7b 21 5b 77 69 6e 66 6f 20 65 78 69 73 74 73 20 24 77 5d 7d 20 72 65 74 | .....if.{![winfo.exists.$w]}.ret |
28100 | 75 72 6e 0a 20 20 20 20 69 66 20 7b 24 74 6b 50 72 69 76 28 79 29 20 3e 3d 20 5b 77 69 6e 66 6f | urn.....if.{$tkPriv(y).>=.[winfo |
28120 | 20 68 65 69 67 68 74 20 24 77 5d 7d 20 7b 0a 09 24 77 20 79 76 69 65 77 20 73 63 72 6f 6c 6c 20 | .height.$w]}.{..$w.yview.scroll. |
28140 | 32 20 75 6e 69 74 73 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 74 6b 50 72 69 76 28 79 29 | 2.units.....}.elseif.{$tkPriv(y) |
28160 | 20 3c 20 30 7d 20 7b 0a 09 24 77 20 79 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 32 20 75 6e 69 74 | .<.0}.{..$w.yview.scroll.-2.unit |
28180 | 73 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 74 6b 50 72 69 76 28 78 29 20 3e 3d 20 5b 77 | s.....}.elseif.{$tkPriv(x).>=.[w |
281a0 | 69 6e 66 6f 20 77 69 64 74 68 20 24 77 5d 7d 20 7b 0a 09 24 77 20 78 76 69 65 77 20 73 63 72 6f | info.width.$w]}.{..$w.xview.scro |
281c0 | 6c 6c 20 32 20 75 6e 69 74 73 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 74 6b 50 72 69 76 | ll.2.units.....}.elseif.{$tkPriv |
281e0 | 28 78 29 20 3c 20 30 7d 20 7b 0a 09 24 77 20 78 76 69 65 77 20 73 63 72 6f 6c 6c 20 2d 32 20 75 | (x).<.0}.{..$w.xview.scroll.-2.u |
28200 | 6e 69 74 73 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a | nits.....}.else.{..return.....}. |
28220 | 20 20 20 20 74 6b 54 65 78 74 53 65 6c 65 63 74 54 6f 20 24 77 20 24 74 6b 50 72 69 76 28 78 29 | ....tkTextSelectTo.$w.$tkPriv(x) |
28240 | 20 24 74 6b 50 72 69 76 28 79 29 0a 20 20 20 20 73 65 74 20 74 6b 50 72 69 76 28 61 66 74 65 72 | .$tkPriv(y).....set.tkPriv(after |
28260 | 49 64 29 20 5b 61 66 74 65 72 20 35 30 20 5b 6c 69 73 74 20 74 6b 54 65 78 74 41 75 74 6f 53 63 | Id).[after.50.[list.tkTextAutoSc |
28280 | 61 6e 20 24 77 5d 5d 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 0a 23 20 4d | an.$w]].}..#.tkTextSetCursor.#.M |
282a0 | 6f 76 65 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 20 74 6f 20 61 20 67 69 | ove.the.insertion.cursor.to.a.gi |
282c0 | 76 65 6e 20 70 6f 73 69 74 69 6f 6e 20 69 6e 20 61 20 74 65 78 74 2e 20 20 41 6c 73 6f 0a 23 20 | ven.position.in.a.text...Also.#. |
282e0 | 63 6c 65 61 72 73 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 2c 20 69 66 20 74 68 65 72 65 20 69 | clears.the.selection,.if.there.i |
28300 | 73 20 6f 6e 65 20 69 6e 20 74 68 65 20 74 65 78 74 2c 20 61 6e 64 20 6d 61 6b 65 73 20 73 75 72 | s.one.in.the.text,.and.makes.sur |
28320 | 65 0a 23 20 74 68 61 74 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 20 69 73 | e.#.that.the.insertion.cursor.is |
28340 | 20 76 69 73 69 62 6c 65 2e 20 20 41 6c 73 6f 2c 20 64 6f 6e 27 74 20 6c 65 74 20 74 68 65 20 69 | .visible...Also,.don't.let.the.i |
28360 | 6e 73 65 72 74 69 6f 6e 0a 23 20 63 75 72 73 6f 72 20 61 70 70 65 61 72 20 6f 6e 20 74 68 65 20 | nsertion.#.cursor.appear.on.the. |
28380 | 64 75 6d 6d 79 20 6c 61 73 74 20 6c 69 6e 65 20 6f 66 20 74 68 65 20 74 65 78 74 2e 0a 23 0a 23 | dummy.last.line.of.the.text..#.# |
283a0 | 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 | .Arguments:.#.w.-..The.text.wind |
283c0 | 6f 77 2e 0a 23 20 70 6f 73 20 2d 09 09 54 68 65 20 64 65 73 69 72 65 64 20 6e 65 77 20 70 6f 73 | ow..#.pos.-..The.desired.new.pos |
283e0 | 69 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 63 75 72 73 6f 72 20 69 6e 20 74 68 65 20 77 69 6e 64 | ition.for.the.cursor.in.the.wind |
28400 | 6f 77 2e 0a 0a 70 72 6f 63 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 7b 77 20 70 6f 73 | ow...proc.tkTextSetCursor.{w.pos |
28420 | 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 69 66 20 7b 5b | }.{.....global.tkPriv......if.{[ |
28440 | 24 77 20 63 6f 6d 70 61 72 65 20 24 70 6f 73 20 3d 3d 20 65 6e 64 5d 7d 20 7b 0a 09 73 65 74 20 | $w.compare.$pos.==.end]}.{..set. |
28460 | 70 6f 73 20 7b 65 6e 64 20 2d 20 31 20 63 68 61 72 73 7d 0a 20 20 20 20 7d 0a 20 20 20 20 24 77 | pos.{end.-.1.chars}.....}.....$w |
28480 | 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 24 70 6f 73 0a 20 20 20 20 24 77 20 74 61 67 | .mark.set.insert.$pos.....$w.tag |
284a0 | 20 72 65 6d 6f 76 65 20 73 65 6c 20 31 2e 30 20 65 6e 64 0a 20 20 20 20 24 77 20 73 65 65 20 69 | .remove.sel.1.0.end.....$w.see.i |
284c0 | 6e 73 65 72 74 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 0a 23 20 54 68 69 | nsert.}..#.tkTextKeySelect.#.Thi |
284e0 | 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 73 74 72 6f | s.procedure.is.invoked.when.stro |
28500 | 6b 69 6e 67 20 6f 75 74 20 73 65 6c 65 63 74 69 6f 6e 73 20 75 73 69 6e 67 20 74 68 65 0a 23 20 | king.out.selections.using.the.#. |
28520 | 6b 65 79 62 6f 61 72 64 2e 20 20 49 74 20 6d 6f 76 65 73 20 74 68 65 20 63 75 72 73 6f 72 20 74 | keyboard...It.moves.the.cursor.t |
28540 | 6f 20 61 20 6e 65 77 20 70 6f 73 69 74 69 6f 6e 2c 20 74 68 65 6e 20 65 78 74 65 6e 64 73 0a 23 | o.a.new.position,.then.extends.# |
28560 | 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 74 6f 20 74 68 61 74 20 70 6f 73 69 74 69 6f 6e 2e | .the.selection.to.that.position. |
28580 | 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 | .#.#.Arguments:.#.w.-..The.text. |
285a0 | 77 69 6e 64 6f 77 2e 0a 23 20 6e 65 77 20 2d 09 09 41 20 6e 65 77 20 70 6f 73 69 74 69 6f 6e 20 | window..#.new.-..A.new.position. |
285c0 | 66 6f 72 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 20 28 74 68 65 20 63 75 | for.the.insertion.cursor.(the.cu |
285e0 | 72 73 6f 72 20 68 61 73 6e 27 74 0a 23 09 09 61 63 74 75 61 6c 6c 79 20 62 65 65 6e 20 6d 6f 76 | rsor.hasn't.#..actually.been.mov |
28600 | 65 64 20 74 6f 20 74 68 69 73 20 70 6f 73 69 74 69 6f 6e 20 79 65 74 29 2e 0a 0a 70 72 6f 63 20 | ed.to.this.position.yet)...proc. |
28620 | 74 6b 54 65 78 74 4b 65 79 53 65 6c 65 63 74 20 7b 77 20 6e 65 77 7d 20 7b 0a 20 20 20 20 67 6c | tkTextKeySelect.{w.new}.{.....gl |
28640 | 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 | obal.tkPriv......if.{[string.equ |
28660 | 61 6c 20 5b 24 77 20 74 61 67 20 6e 65 78 74 72 61 6e 67 65 20 73 65 6c 20 31 2e 30 20 65 6e 64 | al.[$w.tag.nextrange.sel.1.0.end |
28680 | 5d 20 22 22 5d 7d 20 7b 0a 09 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 6e 65 77 20 3c | ].""]}.{..if.{[$w.compare.$new.< |
286a0 | 20 69 6e 73 65 72 74 5d 7d 20 7b 0a 09 20 20 20 20 24 77 20 74 61 67 20 61 64 64 20 73 65 6c 20 | .insert]}.{......$w.tag.add.sel. |
286c0 | 24 6e 65 77 20 69 6e 73 65 72 74 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 24 77 20 74 61 | $new.insert..}.else.{......$w.ta |
286e0 | 67 20 61 64 64 20 73 65 6c 20 69 6e 73 65 72 74 20 24 6e 65 77 0a 09 7d 0a 09 24 77 20 6d 61 72 | g.add.sel.insert.$new..}..$w.mar |
28700 | 6b 20 73 65 74 20 61 6e 63 68 6f 72 20 69 6e 73 65 72 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b | k.set.anchor.insert.....}.else.{ |
28720 | 0a 09 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 6e 65 77 20 3c 20 61 6e 63 68 6f 72 5d | ..if.{[$w.compare.$new.<.anchor] |
28740 | 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 66 69 72 73 74 20 24 6e 65 77 0a 09 20 20 20 20 73 65 74 | }.{......set.first.$new......set |
28760 | 20 6c 61 73 74 20 61 6e 63 68 6f 72 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 73 65 74 20 | .last.anchor..}.else.{......set. |
28780 | 66 69 72 73 74 20 61 6e 63 68 6f 72 0a 09 20 20 20 20 73 65 74 20 6c 61 73 74 20 24 6e 65 77 0a | first.anchor......set.last.$new. |
287a0 | 09 7d 0a 09 24 77 20 74 61 67 20 72 65 6d 6f 76 65 20 73 65 6c 20 31 2e 30 20 24 66 69 72 73 74 | .}..$w.tag.remove.sel.1.0.$first |
287c0 | 0a 09 24 77 20 74 61 67 20 61 64 64 20 73 65 6c 20 24 66 69 72 73 74 20 24 6c 61 73 74 0a 09 24 | ..$w.tag.add.sel.$first.$last..$ |
287e0 | 77 20 74 61 67 20 72 65 6d 6f 76 65 20 73 65 6c 20 24 6c 61 73 74 20 65 6e 64 0a 20 20 20 20 7d | w.tag.remove.sel.$last.end.....} |
28800 | 0a 20 20 20 20 24 77 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 24 6e 65 77 0a 20 20 20 | .....$w.mark.set.insert.$new.... |
28820 | 20 24 77 20 73 65 65 20 69 6e 73 65 72 74 0a 20 20 20 20 75 70 64 61 74 65 20 69 64 6c 65 74 61 | .$w.see.insert.....update.idleta |
28840 | 73 6b 73 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 52 65 73 65 74 41 6e 63 68 6f 72 20 2d 2d 0a 23 20 | sks.}..#.tkTextResetAnchor.--.#. |
28860 | 53 65 74 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 61 6e 63 68 6f 72 20 74 6f 20 77 68 69 63 | Set.the.selection.anchor.to.whic |
28880 | 68 65 76 65 72 20 65 6e 64 20 69 73 20 66 61 72 74 68 65 73 74 20 66 72 6f 6d 20 74 68 65 0a 23 | hever.end.is.farthest.from.the.# |
288a0 | 20 69 6e 64 65 78 20 61 72 67 75 6d 65 6e 74 2e 20 20 4f 6e 65 20 73 70 65 63 69 61 6c 20 74 72 | .index.argument...One.special.tr |
288c0 | 69 63 6b 3a 20 69 66 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 68 61 73 20 74 77 6f 20 6f 72 | ick:.if.the.selection.has.two.or |
288e0 | 0a 23 20 66 65 77 65 72 20 63 68 61 72 61 63 74 65 72 73 2c 20 6a 75 73 74 20 6c 65 61 76 65 20 | .#.fewer.characters,.just.leave. |
28900 | 74 68 65 20 61 6e 63 68 6f 72 20 77 68 65 72 65 20 69 74 20 69 73 2e 20 20 49 6e 20 74 68 69 73 | the.anchor.where.it.is...In.this |
28920 | 0a 23 20 63 61 73 65 20 69 74 20 64 6f 65 73 6e 27 74 20 6d 61 74 74 65 72 20 77 68 69 63 68 20 | .#.case.it.doesn't.matter.which. |
28940 | 70 6f 69 6e 74 20 67 65 74 73 20 63 68 6f 73 65 6e 20 66 6f 72 20 74 68 65 20 61 6e 63 68 6f 72 | point.gets.chosen.for.the.anchor |
28960 | 2c 0a 23 20 61 6e 64 20 66 6f 72 20 74 68 65 20 74 68 69 6e 67 73 20 6c 69 6b 65 20 53 68 69 66 | ,.#.and.for.the.things.like.Shif |
28980 | 74 2d 4c 65 66 74 20 61 6e 64 20 53 68 69 66 74 2d 52 69 67 68 74 20 74 68 69 73 20 70 72 6f 64 | t-Left.and.Shift-Right.this.prod |
289a0 | 75 63 65 73 0a 23 20 62 65 74 74 65 72 20 62 65 68 61 76 69 6f 72 20 77 68 65 6e 20 74 68 65 20 | uces.#.better.behavior.when.the. |
289c0 | 63 75 72 73 6f 72 20 6d 6f 76 65 73 20 62 61 63 6b 20 61 6e 64 20 66 6f 72 74 68 20 61 63 72 6f | cursor.moves.back.and.forth.acro |
289e0 | 73 73 20 74 68 65 0a 23 20 61 6e 63 68 6f 72 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a | ss.the.#.anchor..#.#.Arguments:. |
28a00 | 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 64 67 65 74 2e 0a 23 20 69 6e 64 65 78 20 | #.w.-..The.text.widget..#.index. |
28a20 | 2d 09 50 6f 73 69 74 69 6f 6e 20 61 74 20 77 68 69 63 68 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e | -.Position.at.which.mouse.button |
28a40 | 20 77 61 73 20 70 72 65 73 73 65 64 2c 20 77 68 69 63 68 20 64 65 74 65 72 6d 69 6e 65 73 0a 23 | .was.pressed,.which.determines.# |
28a60 | 09 09 77 68 69 63 68 20 65 6e 64 20 6f 66 20 73 65 6c 65 63 74 69 6f 6e 20 73 68 6f 75 6c 64 20 | ..which.end.of.selection.should. |
28a80 | 62 65 20 75 73 65 64 20 61 73 20 61 6e 63 68 6f 72 20 70 6f 69 6e 74 2e 0a 0a 70 72 6f 63 20 74 | be.used.as.anchor.point...proc.t |
28aa0 | 6b 54 65 78 74 52 65 73 65 74 41 6e 63 68 6f 72 20 7b 77 20 69 6e 64 65 78 7d 20 7b 0a 20 20 20 | kTextResetAnchor.{w.index}.{.... |
28ac0 | 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 | .global.tkPriv......if.{[string. |
28ae0 | 65 71 75 61 6c 20 5b 24 77 20 74 61 67 20 72 61 6e 67 65 73 20 73 65 6c 5d 20 22 22 5d 7d 20 7b | equal.[$w.tag.ranges.sel].""]}.{ |
28b00 | 0a 09 24 77 20 6d 61 72 6b 20 73 65 74 20 61 6e 63 68 6f 72 20 24 69 6e 64 65 78 0a 09 72 65 74 | ..$w.mark.set.anchor.$index..ret |
28b20 | 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 61 20 5b 24 77 20 69 6e 64 65 78 20 24 69 | urn.....}.....set.a.[$w.index.$i |
28b40 | 6e 64 65 78 5d 0a 20 20 20 20 73 65 74 20 62 20 5b 24 77 20 69 6e 64 65 78 20 73 65 6c 2e 66 69 | ndex].....set.b.[$w.index.sel.fi |
28b60 | 72 73 74 5d 0a 20 20 20 20 73 65 74 20 63 20 5b 24 77 20 69 6e 64 65 78 20 73 65 6c 2e 6c 61 73 | rst].....set.c.[$w.index.sel.las |
28b80 | 74 5d 0a 20 20 20 20 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 61 20 3c 20 24 62 5d 7d | t].....if.{[$w.compare.$a.<.$b]} |
28ba0 | 20 7b 0a 09 24 77 20 6d 61 72 6b 20 73 65 74 20 61 6e 63 68 6f 72 20 73 65 6c 2e 6c 61 73 74 0a | .{..$w.mark.set.anchor.sel.last. |
28bc0 | 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 | .return.....}.....if.{[$w.compar |
28be0 | 65 20 24 61 20 3e 20 24 63 5d 7d 20 7b 0a 09 24 77 20 6d 61 72 6b 20 73 65 74 20 61 6e 63 68 6f | e.$a.>.$c]}.{..$w.mark.set.ancho |
28c00 | 72 20 73 65 6c 2e 66 69 72 73 74 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 73 63 | r.sel.first..return.....}.....sc |
28c20 | 61 6e 20 24 61 20 22 25 64 2e 25 64 22 20 6c 69 6e 65 41 20 63 68 41 0a 20 20 20 20 73 63 61 6e | an.$a."%d.%d".lineA.chA.....scan |
28c40 | 20 24 62 20 22 25 64 2e 25 64 22 20 6c 69 6e 65 42 20 63 68 42 0a 20 20 20 20 73 63 61 6e 20 24 | .$b."%d.%d".lineB.chB.....scan.$ |
28c60 | 63 20 22 25 64 2e 25 64 22 20 6c 69 6e 65 43 20 63 68 43 0a 20 20 20 20 69 66 20 7b 24 6c 69 6e | c."%d.%d".lineC.chC.....if.{$lin |
28c80 | 65 42 20 3c 20 24 6c 69 6e 65 43 2b 32 7d 20 7b 0a 09 73 65 74 20 74 6f 74 61 6c 20 5b 73 74 72 | eB.<.$lineC+2}.{..set.total.[str |
28ca0 | 69 6e 67 20 6c 65 6e 67 74 68 20 5b 24 77 20 67 65 74 20 24 62 20 24 63 5d 5d 0a 09 69 66 20 7b | ing.length.[$w.get.$b.$c]]..if.{ |
28cc0 | 24 74 6f 74 61 6c 20 3c 3d 20 32 7d 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e 0a 09 7d 0a 09 69 | $total.<=.2}.{......return..}..i |
28ce0 | 66 20 7b 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 5b 24 77 20 67 65 74 20 24 62 20 24 61 5d | f.{[string.length.[$w.get.$b.$a] |
28d00 | 5d 20 3c 20 28 24 74 6f 74 61 6c 2f 32 29 7d 20 7b 0a 09 20 20 20 20 24 77 20 6d 61 72 6b 20 73 | ].<.($total/2)}.{......$w.mark.s |
28d20 | 65 74 20 61 6e 63 68 6f 72 20 73 65 6c 2e 6c 61 73 74 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 | et.anchor.sel.last..}.else.{.... |
28d40 | 20 20 24 77 20 6d 61 72 6b 20 73 65 74 20 61 6e 63 68 6f 72 20 73 65 6c 2e 66 69 72 73 74 0a 09 | ..$w.mark.set.anchor.sel.first.. |
28d60 | 7d 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 28 24 6c 69 6e 65 41 2d | }..return.....}.....if.{($lineA- |
28d80 | 24 6c 69 6e 65 42 29 20 3c 20 28 24 6c 69 6e 65 43 2d 24 6c 69 6e 65 41 29 7d 20 7b 0a 09 24 77 | $lineB).<.($lineC-$lineA)}.{..$w |
28da0 | 20 6d 61 72 6b 20 73 65 74 20 61 6e 63 68 6f 72 20 73 65 6c 2e 6c 61 73 74 0a 20 20 20 20 7d 20 | .mark.set.anchor.sel.last.....}. |
28dc0 | 65 6c 73 65 20 7b 0a 09 24 77 20 6d 61 72 6b 20 73 65 74 20 61 6e 63 68 6f 72 20 73 65 6c 2e 66 | else.{..$w.mark.set.anchor.sel.f |
28de0 | 69 72 73 74 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 49 6e 73 65 72 74 20 2d 2d 0a | irst.....}.}..#.tkTextInsert.--. |
28e00 | 23 20 49 6e 73 65 72 74 20 61 20 73 74 72 69 6e 67 20 69 6e 74 6f 20 61 20 74 65 78 74 20 61 74 | #.Insert.a.string.into.a.text.at |
28e20 | 20 74 68 65 20 70 6f 69 6e 74 20 6f 66 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 | .the.point.of.the.insertion.curs |
28e40 | 6f 72 2e 0a 23 20 49 66 20 74 68 65 72 65 20 69 73 20 61 20 73 65 6c 65 63 74 69 6f 6e 20 69 6e | or..#.If.there.is.a.selection.in |
28e60 | 20 74 68 65 20 74 65 78 74 2c 20 61 6e 64 20 69 74 20 63 6f 76 65 72 73 20 74 68 65 20 70 6f 69 | .the.text,.and.it.covers.the.poi |
28e80 | 6e 74 20 6f 66 20 74 68 65 0a 23 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 2c 20 74 68 | nt.of.the.#.insertion.cursor,.th |
28ea0 | 65 6e 20 64 65 6c 65 74 65 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 62 65 66 6f 72 65 20 69 | en.delete.the.selection.before.i |
28ec0 | 6e 73 65 72 74 69 6e 67 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 | nserting..#.#.Arguments:.#.w.-.. |
28ee0 | 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 6f 20 69 6e 73 65 | The.text.window.in.which.to.inse |
28f00 | 72 74 20 74 68 65 20 73 74 72 69 6e 67 0a 23 20 73 20 2d 09 09 54 68 65 20 73 74 72 69 6e 67 20 | rt.the.string.#.s.-..The.string. |
28f20 | 74 6f 20 69 6e 73 65 72 74 20 28 75 73 75 61 6c 6c 79 20 6a 75 73 74 20 61 20 73 69 6e 67 6c 65 | to.insert.(usually.just.a.single |
28f40 | 20 63 68 61 72 61 63 74 65 72 29 0a 0a 70 72 6f 63 20 74 6b 54 65 78 74 49 6e 73 65 72 74 20 7b | .character)..proc.tkTextInsert.{ |
28f60 | 77 20 73 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 73 20 | w.s}.{.....if.{[string.equal.$s. |
28f80 | 22 22 5d 20 7c 7c 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 63 67 65 74 20 2d 73 | ""].||.[string.equal.[$w.cget.-s |
28fa0 | 74 61 74 65 5d 20 22 64 69 73 61 62 6c 65 64 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 | tate]."disabled"]}.{..return.... |
28fc0 | 20 7d 0a 20 20 20 20 63 61 74 63 68 20 7b 0a 09 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 | .}.....catch.{..if.{[$w.compare. |
28fe0 | 73 65 6c 2e 66 69 72 73 74 20 3c 3d 20 69 6e 73 65 72 74 5d 20 5c 0a 09 09 26 26 20 5b 24 77 20 | sel.first.<=.insert].\...&&.[$w. |
29000 | 63 6f 6d 70 61 72 65 20 73 65 6c 2e 6c 61 73 74 20 3e 3d 20 69 6e 73 65 72 74 5d 7d 20 7b 0a 09 | compare.sel.last.>=.insert]}.{.. |
29020 | 20 20 20 20 24 77 20 64 65 6c 65 74 65 20 73 65 6c 2e 66 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 | ....$w.delete.sel.first.sel.last |
29040 | 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 24 77 20 69 6e 73 65 72 74 20 69 6e 73 65 72 74 20 24 | ..}.....}.....$w.insert.insert.$ |
29060 | 73 0a 20 20 20 20 24 77 20 73 65 65 20 69 6e 73 65 72 74 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 55 | s.....$w.see.insert.}..#.tkTextU |
29080 | 70 44 6f 77 6e 4c 69 6e 65 20 2d 2d 0a 23 20 52 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 | pDownLine.--.#.Returns.the.index |
290a0 | 20 6f 66 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20 6f 6e 65 20 6c 69 6e 65 20 61 62 6f 76 65 | .of.the.character.one.line.above |
290c0 | 20 6f 72 20 62 65 6c 6f 77 20 74 68 65 0a 23 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 | .or.below.the.#.insertion.cursor |
290e0 | 2e 20 20 54 68 65 72 65 20 61 72 65 20 74 77 6f 20 74 72 69 63 6b 79 20 74 68 69 6e 67 73 20 68 | ...There.are.two.tricky.things.h |
29100 | 65 72 65 2e 20 20 46 69 72 73 74 2c 0a 23 20 77 65 20 77 61 6e 74 20 74 6f 20 6d 61 69 6e 74 61 | ere...First,.#.we.want.to.mainta |
29120 | 69 6e 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 6c 75 6d 6e 20 61 63 72 6f 73 73 20 72 65 | in.the.original.column.across.re |
29140 | 70 65 61 74 65 64 20 6f 70 65 72 61 74 69 6f 6e 73 2c 0a 23 20 65 76 65 6e 20 74 68 6f 75 67 68 | peated.operations,.#.even.though |
29160 | 20 73 6f 6d 65 20 6c 69 6e 65 73 20 74 68 61 74 20 77 69 6c 6c 20 67 65 74 20 70 61 73 73 65 64 | .some.lines.that.will.get.passed |
29180 | 20 74 68 72 6f 75 67 68 20 64 6f 6e 27 74 20 68 61 76 65 0a 23 20 65 6e 6f 75 67 68 20 63 68 61 | .through.don't.have.#.enough.cha |
291a0 | 72 61 63 74 65 72 73 20 74 6f 20 63 6f 76 65 72 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f | racters.to.cover.the.original.co |
291c0 | 6c 75 6d 6e 2e 20 20 53 65 63 6f 6e 64 2c 20 64 6f 6e 27 74 0a 23 20 74 72 79 20 74 6f 20 73 63 | lumn...Second,.don't.#.try.to.sc |
291e0 | 72 6f 6c 6c 20 70 61 73 74 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 72 20 65 6e 64 20 6f | roll.past.the.beginning.or.end.o |
29200 | 66 20 74 68 65 20 74 65 78 74 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d | f.the.text..#.#.Arguments:.#.w.- |
29220 | 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 63 | ..The.text.window.in.which.the.c |
29240 | 75 72 73 6f 72 20 69 73 20 74 6f 20 6d 6f 76 65 2e 0a 23 20 6e 20 2d 09 09 54 68 65 20 6e 75 6d | ursor.is.to.move..#.n.-..The.num |
29260 | 62 65 72 20 6f 66 20 6c 69 6e 65 73 20 74 6f 20 6d 6f 76 65 3a 20 2d 31 20 66 6f 72 20 75 70 20 | ber.of.lines.to.move:.-1.for.up. |
29280 | 6f 6e 65 20 6c 69 6e 65 2c 0a 23 09 09 2b 31 20 66 6f 72 20 64 6f 77 6e 20 6f 6e 65 20 6c 69 6e | one.line,.#..+1.for.down.one.lin |
292a0 | 65 2e 0a 0a 70 72 6f 63 20 74 6b 54 65 78 74 55 70 44 6f 77 6e 4c 69 6e 65 20 7b 77 20 6e 7d 20 | e...proc.tkTextUpDownLine.{w.n}. |
292c0 | 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 0a 0a 20 20 20 20 73 65 74 20 69 20 5b | {.....global.tkPriv......set.i.[ |
292e0 | 24 77 20 69 6e 64 65 78 20 69 6e 73 65 72 74 5d 0a 20 20 20 20 73 63 61 6e 20 24 69 20 22 25 64 | $w.index.insert].....scan.$i."%d |
29300 | 2e 25 64 22 20 6c 69 6e 65 20 63 68 61 72 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 | .%d".line.char.....if.{[string.c |
29320 | 6f 6d 70 61 72 65 20 24 74 6b 50 72 69 76 28 70 72 65 76 50 6f 73 29 20 24 69 5d 7d 20 7b 0a 09 | ompare.$tkPriv(prevPos).$i]}.{.. |
29340 | 73 65 74 20 74 6b 50 72 69 76 28 63 68 61 72 29 20 24 63 68 61 72 0a 20 20 20 20 7d 0a 20 20 20 | set.tkPriv(char).$char.....}.... |
29360 | 20 73 65 74 20 6e 65 77 20 5b 24 77 20 69 6e 64 65 78 20 5b 65 78 70 72 20 7b 24 6c 69 6e 65 20 | .set.new.[$w.index.[expr.{$line. |
29380 | 2b 20 24 6e 7d 5d 2e 24 74 6b 50 72 69 76 28 63 68 61 72 29 5d 0a 20 20 20 20 69 66 20 7b 5b 24 | +.$n}].$tkPriv(char)].....if.{[$ |
293a0 | 77 20 63 6f 6d 70 61 72 65 20 24 6e 65 77 20 3d 3d 20 65 6e 64 5d 20 7c 7c 20 5b 24 77 20 63 6f | w.compare.$new.==.end].||.[$w.co |
293c0 | 6d 70 61 72 65 20 24 6e 65 77 20 3d 3d 20 22 69 6e 73 65 72 74 20 6c 69 6e 65 73 74 61 72 74 22 | mpare.$new.==."insert.linestart" |
293e0 | 5d 7d 20 7b 0a 09 73 65 74 20 6e 65 77 20 24 69 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 74 | ]}.{..set.new.$i.....}.....set.t |
29400 | 6b 50 72 69 76 28 70 72 65 76 50 6f 73 29 20 24 6e 65 77 0a 20 20 20 20 72 65 74 75 72 6e 20 24 | kPriv(prevPos).$new.....return.$ |
29420 | 6e 65 77 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 50 72 65 76 50 61 72 61 20 2d 2d 0a 23 20 52 65 74 | new.}..#.tkTextPrevPara.--.#.Ret |
29440 | 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 | urns.the.index.of.the.beginning. |
29460 | 6f 66 20 74 68 65 20 70 61 72 61 67 72 61 70 68 20 6a 75 73 74 20 62 65 66 6f 72 65 20 61 20 67 | of.the.paragraph.just.before.a.g |
29480 | 69 76 65 6e 0a 23 20 70 6f 73 69 74 69 6f 6e 20 69 6e 20 74 68 65 20 74 65 78 74 20 28 74 68 65 | iven.#.position.in.the.text.(the |
294a0 | 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 61 20 70 61 72 61 67 72 61 70 68 20 69 73 20 74 68 65 | .beginning.of.a.paragraph.is.the |
294c0 | 20 66 69 72 73 74 20 6e 6f 6e 2d 62 6c 61 6e 6b 0a 23 20 63 68 61 72 61 63 74 65 72 20 61 66 74 | .first.non-blank.#.character.aft |
294e0 | 65 72 20 61 20 62 6c 61 6e 6b 20 6c 69 6e 65 29 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a | er.a.blank.line)..#.#.Arguments: |
29500 | 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 | .#.w.-..The.text.window.in.which |
29520 | 20 74 68 65 20 63 75 72 73 6f 72 20 69 73 20 74 6f 20 6d 6f 76 65 2e 0a 23 20 70 6f 73 20 2d 09 | .the.cursor.is.to.move..#.pos.-. |
29540 | 09 50 6f 73 69 74 69 6f 6e 20 61 74 20 77 68 69 63 68 20 74 6f 20 73 74 61 72 74 20 73 65 61 72 | .Position.at.which.to.start.sear |
29560 | 63 68 2e 0a 0a 70 72 6f 63 20 74 6b 54 65 78 74 50 72 65 76 50 61 72 61 20 7b 77 20 70 6f 73 7d | ch...proc.tkTextPrevPara.{w.pos} |
29580 | 20 7b 0a 20 20 20 20 73 65 74 20 70 6f 73 20 5b 24 77 20 69 6e 64 65 78 20 22 24 70 6f 73 20 6c | .{.....set.pos.[$w.index."$pos.l |
295a0 | 69 6e 65 73 74 61 72 74 22 5d 0a 20 20 20 20 77 68 69 6c 65 20 31 20 7b 0a 09 69 66 20 7b 28 5b | inestart"].....while.1.{..if.{([ |
295c0 | 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 24 77 20 67 65 74 20 22 24 70 6f 73 20 2d 20 31 20 6c | string.equal.[$w.get."$pos.-.1.l |
295e0 | 69 6e 65 22 5d 20 22 5c 6e 22 5d 20 5c 0a 09 09 26 26 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 | ine"]."\n"].\...&&.[string.compa |
29600 | 72 65 20 5b 24 77 20 67 65 74 20 24 70 6f 73 5d 20 22 5c 6e 22 5d 29 20 5c 0a 09 09 7c 7c 20 5b | re.[$w.get.$pos]."\n"]).\...||.[ |
29620 | 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 70 6f 73 20 22 31 2e 30 22 5d 7d 20 7b 0a 09 20 20 20 | string.equal.$pos."1.0"]}.{..... |
29640 | 20 69 66 20 7b 5b 72 65 67 65 78 70 20 2d 69 6e 64 69 63 65 73 20 7b 5e 5b 20 09 5d 2b 28 2e 29 | .if.{[regexp.-indices.{^[..]+(.) |
29660 | 7d 20 5b 24 77 20 67 65 74 20 24 70 6f 73 20 22 24 70 6f 73 20 6c 69 6e 65 65 6e 64 22 5d 20 5c | }.[$w.get.$pos."$pos.lineend"].\ |
29680 | 0a 09 09 20 20 20 20 64 75 6d 6d 79 20 69 6e 64 65 78 5d 7d 20 7b 0a 09 09 73 65 74 20 70 6f 73 | .......dummy.index]}.{...set.pos |
296a0 | 20 5b 24 77 20 69 6e 64 65 78 20 22 24 70 6f 73 20 2b 20 5b 6c 69 6e 64 65 78 20 24 69 6e 64 65 | .[$w.index."$pos.+.[lindex.$inde |
296c0 | 78 20 30 5d 20 63 68 61 72 73 22 5d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 5b 24 77 | x.0].chars"]......}......if.{[$w |
296e0 | 20 63 6f 6d 70 61 72 65 20 24 70 6f 73 20 21 3d 20 69 6e 73 65 72 74 5d 20 7c 7c 20 5b 73 74 72 | .compare.$pos.!=.insert].||.[str |
29700 | 69 6e 67 20 65 71 75 61 6c 20 24 70 6f 73 20 31 2e 30 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 | ing.equal.$pos.1.0]}.{...return. |
29720 | 24 70 6f 73 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 73 65 74 20 70 6f 73 20 5b 24 77 20 69 6e 64 65 | $pos......}..}..set.pos.[$w.inde |
29740 | 78 20 22 24 70 6f 73 20 2d 20 31 20 6c 69 6e 65 22 5d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b | x."$pos.-.1.line"].....}.}..#.tk |
29760 | 54 65 78 74 4e 65 78 74 50 61 72 61 20 2d 2d 0a 23 20 52 65 74 75 72 6e 73 20 74 68 65 20 69 6e | TextNextPara.--.#.Returns.the.in |
29780 | 64 65 78 20 6f 66 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 70 61 72 61 | dex.of.the.beginning.of.the.para |
297a0 | 67 72 61 70 68 20 6a 75 73 74 20 61 66 74 65 72 20 61 20 67 69 76 65 6e 0a 23 20 70 6f 73 69 74 | graph.just.after.a.given.#.posit |
297c0 | 69 6f 6e 20 69 6e 20 74 68 65 20 74 65 78 74 20 28 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f | ion.in.the.text.(the.beginning.o |
297e0 | 66 20 61 20 70 61 72 61 67 72 61 70 68 20 69 73 20 74 68 65 20 66 69 72 73 74 20 6e 6f 6e 2d 62 | f.a.paragraph.is.the.first.non-b |
29800 | 6c 61 6e 6b 0a 23 20 63 68 61 72 61 63 74 65 72 20 61 66 74 65 72 20 61 20 62 6c 61 6e 6b 20 6c | lank.#.character.after.a.blank.l |
29820 | 69 6e 65 29 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 | ine)..#.#.Arguments:.#.w.-..The. |
29840 | 74 65 78 74 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 63 75 72 73 6f 72 20 | text.window.in.which.the.cursor. |
29860 | 69 73 20 74 6f 20 6d 6f 76 65 2e 0a 23 20 73 74 61 72 74 20 2d 09 50 6f 73 69 74 69 6f 6e 20 61 | is.to.move..#.start.-.Position.a |
29880 | 74 20 77 68 69 63 68 20 74 6f 20 73 74 61 72 74 20 73 65 61 72 63 68 2e 0a 0a 70 72 6f 63 20 74 | t.which.to.start.search...proc.t |
298a0 | 6b 54 65 78 74 4e 65 78 74 50 61 72 61 20 7b 77 20 73 74 61 72 74 7d 20 7b 0a 20 20 20 20 73 65 | kTextNextPara.{w.start}.{.....se |
298c0 | 74 20 70 6f 73 20 5b 24 77 20 69 6e 64 65 78 20 22 24 73 74 61 72 74 20 6c 69 6e 65 73 74 61 72 | t.pos.[$w.index."$start.linestar |
298e0 | 74 20 2b 20 31 20 6c 69 6e 65 22 5d 0a 20 20 20 20 77 68 69 6c 65 20 7b 5b 73 74 72 69 6e 67 20 | t.+.1.line"].....while.{[string. |
29900 | 63 6f 6d 70 61 72 65 20 5b 24 77 20 67 65 74 20 24 70 6f 73 5d 20 22 5c 6e 22 5d 7d 20 7b 0a 09 | compare.[$w.get.$pos]."\n"]}.{.. |
29920 | 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 70 6f 73 20 3d 3d 20 65 6e 64 5d 7d 20 7b 0a | if.{[$w.compare.$pos.==.end]}.{. |
29940 | 09 20 20 20 20 72 65 74 75 72 6e 20 5b 24 77 20 69 6e 64 65 78 20 22 65 6e 64 20 2d 20 31 63 22 | .....return.[$w.index."end.-.1c" |
29960 | 5d 0a 09 7d 0a 09 73 65 74 20 70 6f 73 20 5b 24 77 20 69 6e 64 65 78 20 22 24 70 6f 73 20 2b 20 | ]..}..set.pos.[$w.index."$pos.+. |
29980 | 31 20 6c 69 6e 65 22 5d 0a 20 20 20 20 7d 0a 20 20 20 20 77 68 69 6c 65 20 7b 5b 73 74 72 69 6e | 1.line"].....}.....while.{[strin |
299a0 | 67 20 65 71 75 61 6c 20 5b 24 77 20 67 65 74 20 24 70 6f 73 5d 20 22 5c 6e 22 5d 7d 20 7b 0a 09 | g.equal.[$w.get.$pos]."\n"]}.{.. |
299c0 | 73 65 74 20 70 6f 73 20 5b 24 77 20 69 6e 64 65 78 20 22 24 70 6f 73 20 2b 20 31 20 6c 69 6e 65 | set.pos.[$w.index."$pos.+.1.line |
299e0 | 22 5d 0a 09 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 70 6f 73 20 3d 3d 20 65 6e 64 5d | "]..if.{[$w.compare.$pos.==.end] |
29a00 | 7d 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 24 77 20 69 6e 64 65 78 20 22 65 6e 64 20 2d | }.{......return.[$w.index."end.- |
29a20 | 20 31 63 22 5d 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 72 65 67 65 78 70 20 2d | .1c"]..}.....}.....if.{[regexp.- |
29a40 | 69 6e 64 69 63 65 73 20 7b 5e 5b 20 09 5d 2b 28 2e 29 7d 20 5b 24 77 20 67 65 74 20 24 70 6f 73 | indices.{^[..]+(.)}.[$w.get.$pos |
29a60 | 20 22 24 70 6f 73 20 6c 69 6e 65 65 6e 64 22 5d 20 5c 0a 09 20 20 20 20 64 75 6d 6d 79 20 69 6e | ."$pos.lineend"].\......dummy.in |
29a80 | 64 65 78 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 5b 24 77 20 69 6e 64 65 78 20 22 24 70 6f 73 20 | dex]}.{..return.[$w.index."$pos. |
29aa0 | 2b 20 5b 6c 69 6e 64 65 78 20 24 69 6e 64 65 78 20 30 5d 20 63 68 61 72 73 22 5d 0a 20 20 20 20 | +.[lindex.$index.0].chars"]..... |
29ac0 | 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 70 6f 73 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 53 63 72 | }.....return.$pos.}..#.tkTextScr |
29ae0 | 6f 6c 6c 50 61 67 65 73 20 2d 2d 0a 23 20 54 68 69 73 20 69 73 20 61 20 75 74 69 6c 69 74 79 20 | ollPages.--.#.This.is.a.utility. |
29b00 | 70 72 6f 63 65 64 75 72 65 20 75 73 65 64 20 69 6e 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 6d | procedure.used.in.bindings.for.m |
29b20 | 6f 76 69 6e 67 20 75 70 20 61 6e 64 20 64 6f 77 6e 0a 23 20 70 61 67 65 73 20 61 6e 64 20 70 6f | oving.up.and.down.#.pages.and.po |
29b40 | 73 73 69 62 6c 79 20 65 78 74 65 6e 64 69 6e 67 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 61 | ssibly.extending.the.selection.a |
29b60 | 6c 6f 6e 67 20 74 68 65 20 77 61 79 2e 20 20 49 74 20 73 63 72 6f 6c 6c 73 0a 23 20 74 68 65 20 | long.the.way...It.scrolls.#.the. |
29b80 | 76 69 65 77 20 69 6e 20 74 68 65 20 77 69 64 67 65 74 20 62 79 20 74 68 65 20 6e 75 6d 62 65 72 | view.in.the.widget.by.the.number |
29ba0 | 20 6f 66 20 70 61 67 65 73 2c 20 61 6e 64 20 69 74 20 72 65 74 75 72 6e 73 20 74 68 65 0a 23 20 | .of.pages,.and.it.returns.the.#. |
29bc0 | 69 6e 64 65 78 20 6f 66 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20 74 68 61 74 20 69 73 20 61 | index.of.the.character.that.is.a |
29be0 | 74 20 74 68 65 20 73 61 6d 65 20 70 6f 73 69 74 69 6f 6e 20 69 6e 20 74 68 65 20 6e 65 77 20 76 | t.the.same.position.in.the.new.v |
29c00 | 69 65 77 0a 23 20 61 73 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 20 75 73 | iew.#.as.the.insertion.cursor.us |
29c20 | 65 64 20 74 6f 20 62 65 20 69 6e 20 74 68 65 20 6f 6c 64 20 76 69 65 77 2e 0a 23 0a 23 20 41 72 | ed.to.be.in.the.old.view..#.#.Ar |
29c40 | 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 20 | guments:.#.w.-..The.text.window. |
29c60 | 69 6e 20 77 68 69 63 68 20 74 68 65 20 63 75 72 73 6f 72 20 69 73 20 74 6f 20 6d 6f 76 65 2e 0a | in.which.the.cursor.is.to.move.. |
29c80 | 23 20 63 6f 75 6e 74 20 2d 09 4e 75 6d 62 65 72 20 6f 66 20 70 61 67 65 73 20 66 6f 72 77 61 72 | #.count.-.Number.of.pages.forwar |
29ca0 | 64 20 74 6f 20 73 63 72 6f 6c 6c 3b 20 20 6d 61 79 20 62 65 20 6e 65 67 61 74 69 76 65 0a 23 09 | d.to.scroll;..may.be.negative.#. |
29cc0 | 09 74 6f 20 73 63 72 6f 6c 6c 20 62 61 63 6b 77 61 72 64 73 2e 0a 0a 70 72 6f 63 20 74 6b 54 65 | .to.scroll.backwards...proc.tkTe |
29ce0 | 78 74 53 63 72 6f 6c 6c 50 61 67 65 73 20 7b 77 20 63 6f 75 6e 74 7d 20 7b 0a 20 20 20 20 73 65 | xtScrollPages.{w.count}.{.....se |
29d00 | 74 20 62 62 6f 78 20 5b 24 77 20 62 62 6f 78 20 69 6e 73 65 72 74 5d 0a 20 20 20 20 24 77 20 79 | t.bbox.[$w.bbox.insert].....$w.y |
29d20 | 76 69 65 77 20 73 63 72 6f 6c 6c 20 24 63 6f 75 6e 74 20 70 61 67 65 73 0a 20 20 20 20 69 66 20 | view.scroll.$count.pages.....if. |
29d40 | 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 62 62 6f 78 20 22 22 5d 7d 20 7b 0a 09 72 65 74 | {[string.equal.$bbox.""]}.{..ret |
29d60 | 75 72 6e 20 5b 24 77 20 69 6e 64 65 78 20 40 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 68 65 69 | urn.[$w.index.@[expr.{[winfo.hei |
29d80 | 67 68 74 20 24 77 5d 2f 32 7d 5d 2c 30 5d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 | ght.$w]/2}],0].....}.....return. |
29da0 | 5b 24 77 20 69 6e 64 65 78 20 40 5b 6c 69 6e 64 65 78 20 24 62 62 6f 78 20 30 5d 2c 5b 6c 69 6e | [$w.index.@[lindex.$bbox.0],[lin |
29dc0 | 64 65 78 20 24 62 62 6f 78 20 31 5d 5d 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 54 72 61 6e 73 70 6f | dex.$bbox.1]].}..#.tkTextTranspo |
29de0 | 73 65 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 6d 70 6c 65 6d 65 6e 74 | se.--.#.This.procedure.implement |
29e00 | 73 20 74 68 65 20 22 74 72 61 6e 73 70 6f 73 65 22 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 74 | s.the."transpose".function.for.t |
29e20 | 65 78 74 20 77 69 64 67 65 74 73 2e 0a 23 20 49 74 20 74 72 61 6e 70 6f 73 65 73 20 74 68 65 20 | ext.widgets..#.It.tranposes.the. |
29e40 | 63 68 61 72 61 63 74 65 72 73 20 6f 6e 20 65 69 74 68 65 72 20 73 69 64 65 20 6f 66 20 74 68 65 | characters.on.either.side.of.the |
29e60 | 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 2c 0a 23 20 75 6e 6c 65 73 73 20 74 68 65 20 | .insertion.cursor,.#.unless.the. |
29e80 | 63 75 72 73 6f 72 20 69 73 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6c 69 6e 65 | cursor.is.at.the.end.of.the.line |
29ea0 | 2e 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 20 69 74 0a 23 20 74 72 61 6e 73 70 6f 73 65 73 20 | ...In.this.case.it.#.transposes. |
29ec0 | 74 68 65 20 74 77 6f 20 63 68 61 72 61 63 74 65 72 73 20 74 6f 20 74 68 65 20 6c 65 66 74 20 6f | the.two.characters.to.the.left.o |
29ee0 | 66 20 74 68 65 20 63 75 72 73 6f 72 2e 20 20 49 6e 20 65 69 74 68 65 72 0a 23 20 63 61 73 65 2c | f.the.cursor...In.either.#.case, |
29f00 | 20 74 68 65 20 63 75 72 73 6f 72 20 65 6e 64 73 20 75 70 20 74 6f 20 74 68 65 20 72 69 67 68 74 | .the.cursor.ends.up.to.the.right |
29f20 | 20 6f 66 20 74 68 65 20 74 72 61 6e 73 70 6f 73 65 64 20 63 68 61 72 61 63 74 65 72 73 2e 0a 23 | .of.the.transposed.characters..# |
29f40 | 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 65 78 74 20 77 69 6e 64 6f 77 | .#.Arguments:.#.w.-..Text.window |
29f60 | 20 69 6e 20 77 68 69 63 68 20 74 6f 20 74 72 61 6e 73 70 6f 73 65 2e 0a 0a 70 72 6f 63 20 74 6b | .in.which.to.transpose...proc.tk |
29f80 | 54 65 78 74 54 72 61 6e 73 70 6f 73 65 20 77 20 7b 0a 20 20 20 20 73 65 74 20 70 6f 73 20 69 6e | TextTranspose.w.{.....set.pos.in |
29fa0 | 73 65 72 74 0a 20 20 20 20 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 70 6f 73 20 21 3d | sert.....if.{[$w.compare.$pos.!= |
29fc0 | 20 22 24 70 6f 73 20 6c 69 6e 65 65 6e 64 22 5d 7d 20 7b 0a 09 73 65 74 20 70 6f 73 20 5b 24 77 | ."$pos.lineend"]}.{..set.pos.[$w |
29fe0 | 20 69 6e 64 65 78 20 22 24 70 6f 73 20 2b 20 31 20 63 68 61 72 22 5d 0a 20 20 20 20 7d 0a 20 20 | .index."$pos.+.1.char"].....}... |
2a000 | 20 20 73 65 74 20 6e 65 77 20 5b 24 77 20 67 65 74 20 22 24 70 6f 73 20 2d 20 31 20 63 68 61 72 | ..set.new.[$w.get."$pos.-.1.char |
2a020 | 22 5d 5b 24 77 20 67 65 74 20 20 22 24 70 6f 73 20 2d 20 32 20 63 68 61 72 22 5d 0a 20 20 20 20 | "][$w.get.."$pos.-.2.char"]..... |
2a040 | 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 22 24 70 6f 73 20 2d 20 31 20 63 68 61 72 22 20 | if.{[$w.compare."$pos.-.1.char". |
2a060 | 3d 3d 20 31 2e 30 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 24 77 20 | ==.1.0]}.{..return.....}.....$w. |
2a080 | 64 65 6c 65 74 65 20 22 24 70 6f 73 20 2d 20 32 20 63 68 61 72 22 20 24 70 6f 73 0a 20 20 20 20 | delete."$pos.-.2.char".$pos..... |
2a0a0 | 24 77 20 69 6e 73 65 72 74 20 69 6e 73 65 72 74 20 24 6e 65 77 0a 20 20 20 20 24 77 20 73 65 65 | $w.insert.insert.$new.....$w.see |
2a0c0 | 20 69 6e 73 65 72 74 0a 7d 0a 0a 23 20 74 6b 5f 74 65 78 74 43 6f 70 79 20 2d 2d 0a 23 20 54 68 | .insert.}..#.tk_textCopy.--.#.Th |
2a0e0 | 69 73 20 70 72 6f 63 65 64 75 72 65 20 63 6f 70 69 65 73 20 74 68 65 20 73 65 6c 65 63 74 69 6f | is.procedure.copies.the.selectio |
2a100 | 6e 20 66 72 6f 6d 20 61 20 74 65 78 74 20 77 69 64 67 65 74 20 69 6e 74 6f 20 74 68 65 0a 23 20 | n.from.a.text.widget.into.the.#. |
2a120 | 63 6c 69 70 62 6f 61 72 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 | clipboard..#.#.Arguments:.#.w.-. |
2a140 | 09 4e 61 6d 65 20 6f 66 20 61 20 74 65 78 74 20 77 69 64 67 65 74 2e 0a 0a 70 72 6f 63 20 74 6b | .Name.of.a.text.widget...proc.tk |
2a160 | 5f 74 65 78 74 43 6f 70 79 20 77 20 7b 0a 20 20 20 20 69 66 20 7b 21 5b 63 61 74 63 68 20 7b 73 | _textCopy.w.{.....if.{![catch.{s |
2a180 | 65 74 20 64 61 74 61 20 5b 24 77 20 67 65 74 20 73 65 6c 2e 66 69 72 73 74 20 73 65 6c 2e 6c 61 | et.data.[$w.get.sel.first.sel.la |
2a1a0 | 73 74 5d 7d 5d 7d 20 7b 0a 09 63 6c 69 70 62 6f 61 72 64 20 63 6c 65 61 72 20 2d 64 69 73 70 6c | st]}]}.{..clipboard.clear.-displ |
2a1c0 | 61 79 6f 66 20 24 77 0a 09 63 6c 69 70 62 6f 61 72 64 20 61 70 70 65 6e 64 20 2d 64 69 73 70 6c | ayof.$w..clipboard.append.-displ |
2a1e0 | 61 79 6f 66 20 24 77 20 24 64 61 74 61 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 5f 74 65 78 74 | ayof.$w.$data.....}.}..#.tk_text |
2a200 | 43 75 74 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 63 6f 70 69 65 73 20 74 | Cut.--.#.This.procedure.copies.t |
2a220 | 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 66 72 6f 6d 20 61 20 74 65 78 74 20 77 69 64 67 65 74 20 | he.selection.from.a.text.widget. |
2a240 | 69 6e 74 6f 20 74 68 65 0a 23 20 63 6c 69 70 62 6f 61 72 64 2c 20 74 68 65 6e 20 64 65 6c 65 74 | into.the.#.clipboard,.then.delet |
2a260 | 65 73 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 28 69 66 20 69 74 20 65 78 69 73 74 73 20 69 | es.the.selection.(if.it.exists.i |
2a280 | 6e 20 74 68 65 20 67 69 76 65 6e 0a 23 20 77 69 64 67 65 74 29 2e 0a 23 0a 23 20 41 72 67 75 6d | n.the.given.#.widget)..#.#.Argum |
2a2a0 | 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 4e 61 6d 65 20 6f 66 20 61 20 74 65 78 74 20 77 69 64 67 | ents:.#.w.-..Name.of.a.text.widg |
2a2c0 | 65 74 2e 0a 0a 70 72 6f 63 20 74 6b 5f 74 65 78 74 43 75 74 20 77 20 7b 0a 20 20 20 20 69 66 20 | et...proc.tk_textCut.w.{.....if. |
2a2e0 | 7b 21 5b 63 61 74 63 68 20 7b 73 65 74 20 64 61 74 61 20 5b 24 77 20 67 65 74 20 73 65 6c 2e 66 | {![catch.{set.data.[$w.get.sel.f |
2a300 | 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 5d 7d 5d 7d 20 7b 0a 09 63 6c 69 70 62 6f 61 72 64 20 63 | irst.sel.last]}]}.{..clipboard.c |
2a320 | 6c 65 61 72 20 2d 64 69 73 70 6c 61 79 6f 66 20 24 77 0a 09 63 6c 69 70 62 6f 61 72 64 20 61 70 | lear.-displayof.$w..clipboard.ap |
2a340 | 70 65 6e 64 20 2d 64 69 73 70 6c 61 79 6f 66 20 24 77 20 24 64 61 74 61 0a 09 24 77 20 64 65 6c | pend.-displayof.$w.$data..$w.del |
2a360 | 65 74 65 20 73 65 6c 2e 66 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 0a 20 20 20 20 7d 0a 7d 0a 0a | ete.sel.first.sel.last.....}.}.. |
2a380 | 23 20 74 6b 5f 74 65 78 74 50 61 73 74 65 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 | #.tk_textPaste.--.#.This.procedu |
2a3a0 | 72 65 20 70 61 73 74 65 73 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 20 63 6c | re.pastes.the.contents.of.the.cl |
2a3c0 | 69 70 62 6f 61 72 64 20 74 6f 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 0a 23 20 70 6f 69 6e 74 | ipboard.to.the.insertion.#.point |
2a3e0 | 20 69 6e 20 61 20 74 65 78 74 20 77 69 64 67 65 74 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 | .in.a.text.widget..#.#.Arguments |
2a400 | 3a 0a 23 20 77 20 2d 09 09 4e 61 6d 65 20 6f 66 20 61 20 74 65 78 74 20 77 69 64 67 65 74 2e 0a | :.#.w.-..Name.of.a.text.widget.. |
2a420 | 0a 70 72 6f 63 20 74 6b 5f 74 65 78 74 50 61 73 74 65 20 77 20 7b 0a 20 20 20 20 67 6c 6f 62 61 | .proc.tk_textPaste.w.{.....globa |
2a440 | 6c 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 0a 20 20 20 20 63 61 74 63 68 20 7b 0a 09 69 66 20 7b | l.tcl_platform.....catch.{..if.{ |
2a460 | 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c | [string.compare.$tcl_platform(pl |
2a480 | 61 74 66 6f 72 6d 29 20 22 75 6e 69 78 22 5d 7d 20 7b 0a 09 20 20 20 20 63 61 74 63 68 20 7b 0a | atform)."unix"]}.{......catch.{. |
2a4a0 | 09 09 24 77 20 64 65 6c 65 74 65 20 73 65 6c 2e 66 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 0a 09 | ..$w.delete.sel.first.sel.last.. |
2a4c0 | 20 20 20 20 7d 0a 09 7d 0a 09 24 77 20 69 6e 73 65 72 74 20 69 6e 73 65 72 74 20 5b 73 65 6c 65 | ....}..}..$w.insert.insert.[sele |
2a4e0 | 63 74 69 6f 6e 20 67 65 74 20 2d 64 69 73 70 6c 61 79 6f 66 20 24 77 20 2d 73 65 6c 65 63 74 69 | ction.get.-displayof.$w.-selecti |
2a500 | 6f 6e 20 43 4c 49 50 42 4f 41 52 44 5d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 4e | on.CLIPBOARD].....}.}..#.tkTextN |
2a520 | 65 78 74 57 6f 72 64 20 2d 2d 0a 23 20 52 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 20 6f | extWord.--.#.Returns.the.index.o |
2a540 | 66 20 74 68 65 20 6e 65 78 74 20 77 6f 72 64 20 70 6f 73 69 74 69 6f 6e 20 61 66 74 65 72 20 61 | f.the.next.word.position.after.a |
2a560 | 20 67 69 76 65 6e 20 70 6f 73 69 74 69 6f 6e 20 69 6e 20 74 68 65 0a 23 20 74 65 78 74 2e 20 20 | .given.position.in.the.#.text... |
2a580 | 54 68 65 20 6e 65 78 74 20 77 6f 72 64 20 69 73 20 70 6c 61 74 66 6f 72 6d 20 64 65 70 65 6e 64 | The.next.word.is.platform.depend |
2a5a0 | 65 6e 74 20 61 6e 64 20 6d 61 79 20 62 65 20 65 69 74 68 65 72 20 74 68 65 20 6e 65 78 74 0a 23 | ent.and.may.be.either.the.next.# |
2a5c0 | 20 65 6e 64 2d 6f 66 2d 77 6f 72 64 20 70 6f 73 69 74 69 6f 6e 20 6f 72 20 74 68 65 20 6e 65 78 | .end-of-word.position.or.the.nex |
2a5e0 | 74 20 73 74 61 72 74 2d 6f 66 2d 77 6f 72 64 20 70 6f 73 69 74 69 6f 6e 20 61 66 74 65 72 20 74 | t.start-of-word.position.after.t |
2a600 | 68 65 20 6e 65 78 74 0a 23 20 65 6e 64 2d 6f 66 2d 77 6f 72 64 20 70 6f 73 69 74 69 6f 6e 2e 0a | he.next.#.end-of-word.position.. |
2a620 | 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 | #.#.Arguments:.#.w.-..The.text.w |
2a640 | 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 63 75 72 73 6f 72 20 69 73 20 74 6f 20 | indow.in.which.the.cursor.is.to. |
2a660 | 6d 6f 76 65 2e 0a 23 20 73 74 61 72 74 20 2d 09 50 6f 73 69 74 69 6f 6e 20 61 74 20 77 68 69 63 | move..#.start.-.Position.at.whic |
2a680 | 68 20 74 6f 20 73 74 61 72 74 20 73 65 61 72 63 68 2e 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 | h.to.start.search...if.{[string. |
2a6a0 | 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 77 | equal.$tcl_platform(platform)."w |
2a6c0 | 69 6e 64 6f 77 73 22 5d 7d 20 20 7b 0a 20 20 20 20 70 72 6f 63 20 74 6b 54 65 78 74 4e 65 78 74 | indows"]}..{.....proc.tkTextNext |
2a6e0 | 57 6f 72 64 20 7b 77 20 73 74 61 72 74 7d 20 7b 0a 09 74 6b 54 65 78 74 4e 65 78 74 50 6f 73 20 | Word.{w.start}.{..tkTextNextPos. |
2a700 | 24 77 20 5b 74 6b 54 65 78 74 4e 65 78 74 50 6f 73 20 24 77 20 24 73 74 61 72 74 20 74 63 6c 5f | $w.[tkTextNextPos.$w.$start.tcl_ |
2a720 | 65 6e 64 4f 66 57 6f 72 64 5d 20 5c 0a 09 20 20 20 20 74 63 6c 5f 73 74 61 72 74 4f 66 4e 65 78 | endOfWord].\......tcl_startOfNex |
2a740 | 74 57 6f 72 64 0a 20 20 20 20 7d 0a 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 70 72 6f 63 20 74 6b | tWord.....}.}.else.{.....proc.tk |
2a760 | 54 65 78 74 4e 65 78 74 57 6f 72 64 20 7b 77 20 73 74 61 72 74 7d 20 7b 0a 09 74 6b 54 65 78 74 | TextNextWord.{w.start}.{..tkText |
2a780 | 4e 65 78 74 50 6f 73 20 24 77 20 24 73 74 61 72 74 20 74 63 6c 5f 65 6e 64 4f 66 57 6f 72 64 0a | NextPos.$w.$start.tcl_endOfWord. |
2a7a0 | 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 54 65 78 74 4e 65 78 74 50 6f 73 20 2d 2d 0a 23 20 52 65 | ....}.}..#.tkTextNextPos.--.#.Re |
2a7c0 | 74 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 65 20 6e 65 78 74 20 70 6f 73 69 | turns.the.index.of.the.next.posi |
2a7e0 | 74 69 6f 6e 20 61 66 74 65 72 20 74 68 65 20 67 69 76 65 6e 20 73 74 61 72 74 69 6e 67 0a 23 20 | tion.after.the.given.starting.#. |
2a800 | 70 6f 73 69 74 69 6f 6e 20 69 6e 20 74 68 65 20 74 65 78 74 20 61 73 20 63 6f 6d 70 75 74 65 64 | position.in.the.text.as.computed |
2a820 | 20 62 79 20 61 20 73 70 65 63 69 66 69 65 64 20 66 75 6e 63 74 69 6f 6e 2e 0a 23 0a 23 20 41 72 | .by.a.specified.function..#.#.Ar |
2a840 | 67 75 6d 65 6e 74 73 3a 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 20 | guments:.#.w.-..The.text.window. |
2a860 | 69 6e 20 77 68 69 63 68 20 74 68 65 20 63 75 72 73 6f 72 20 69 73 20 74 6f 20 6d 6f 76 65 2e 0a | in.which.the.cursor.is.to.move.. |
2a880 | 23 20 73 74 61 72 74 20 2d 09 50 6f 73 69 74 69 6f 6e 20 61 74 20 77 68 69 63 68 20 74 6f 20 73 | #.start.-.Position.at.which.to.s |
2a8a0 | 74 61 72 74 20 73 65 61 72 63 68 2e 0a 23 20 6f 70 20 2d 09 09 46 75 6e 63 74 69 6f 6e 20 74 6f | tart.search..#.op.-..Function.to |
2a8c0 | 20 75 73 65 20 74 6f 20 66 69 6e 64 20 6e 65 78 74 20 70 6f 73 69 74 69 6f 6e 2e 0a 0a 70 72 6f | .use.to.find.next.position...pro |
2a8e0 | 63 20 74 6b 54 65 78 74 4e 65 78 74 50 6f 73 20 7b 77 20 73 74 61 72 74 20 6f 70 7d 20 7b 0a 20 | c.tkTextNextPos.{w.start.op}.{.. |
2a900 | 20 20 20 73 65 74 20 74 65 78 74 20 22 22 0a 20 20 20 20 73 65 74 20 63 75 72 20 24 73 74 61 72 | ...set.text."".....set.cur.$star |
2a920 | 74 0a 20 20 20 20 77 68 69 6c 65 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 63 75 72 20 3c 20 | t.....while.{[$w.compare.$cur.<. |
2a940 | 65 6e 64 5d 7d 20 7b 0a 09 73 65 74 20 74 65 78 74 20 24 74 65 78 74 5b 24 77 20 67 65 74 20 24 | end]}.{..set.text.$text[$w.get.$ |
2a960 | 63 75 72 20 22 24 63 75 72 20 6c 69 6e 65 65 6e 64 20 2b 20 31 63 22 5d 0a 09 73 65 74 20 70 6f | cur."$cur.lineend.+.1c"]..set.po |
2a980 | 73 20 5b 24 6f 70 20 24 74 65 78 74 20 30 5d 0a 09 69 66 20 7b 24 70 6f 73 20 3e 3d 20 30 7d 20 | s.[$op.$text.0]..if.{$pos.>=.0}. |
2a9a0 | 7b 0a 09 20 20 20 20 23 23 20 41 64 6a 75 73 74 20 66 6f 72 20 65 6d 62 65 64 64 65 64 20 77 69 | {......##.Adjust.for.embedded.wi |
2a9c0 | 6e 64 6f 77 73 20 61 6e 64 20 69 6d 61 67 65 73 0a 09 20 20 20 20 23 23 20 64 75 6d 70 20 67 69 | ndows.and.images......##.dump.gi |
2a9e0 | 76 65 73 20 75 73 20 33 20 69 74 65 6d 73 20 70 65 72 20 77 69 6e 64 6f 77 2f 69 6d 61 67 65 0a | ves.us.3.items.per.window/image. |
2aa00 | 09 20 20 20 20 73 65 74 20 64 75 6d 70 20 5b 24 77 20 64 75 6d 70 20 2d 69 6d 61 67 65 20 2d 77 | .....set.dump.[$w.dump.-image.-w |
2aa20 | 69 6e 64 6f 77 20 24 73 74 61 72 74 20 22 24 73 74 61 72 74 20 2b 20 24 70 6f 73 20 63 22 5d 0a | indow.$start."$start.+.$pos.c"]. |
2aa40 | 09 20 20 20 20 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 64 75 6d 70 5d 7d 20 7b 0a 09 09 73 65 | .....if.{[llength.$dump]}.{...se |
2aa60 | 74 20 70 6f 73 20 5b 65 78 70 72 20 7b 24 70 6f 73 20 2b 20 28 5b 6c 6c 65 6e 67 74 68 20 24 64 | t.pos.[expr.{$pos.+.([llength.$d |
2aa80 | 75 6d 70 5d 2f 33 29 7d 5d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 24 77 | ump]/3)}]......}......return.[$w |
2aaa0 | 20 69 6e 64 65 78 20 22 24 73 74 61 72 74 20 2b 20 24 70 6f 73 20 63 22 5d 0a 09 7d 0a 09 73 65 | .index."$start.+.$pos.c"]..}..se |
2aac0 | 74 20 63 75 72 20 5b 24 77 20 69 6e 64 65 78 20 22 24 63 75 72 20 6c 69 6e 65 65 6e 64 20 2b 31 | t.cur.[$w.index."$cur.lineend.+1 |
2aae0 | 63 22 5d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 65 6e 64 0a 7d 0a 0a 23 20 74 6b | c"].....}.....return.end.}..#.tk |
2ab00 | 54 65 78 74 50 72 65 76 50 6f 73 20 2d 2d 0a 23 20 52 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 | TextPrevPos.--.#.Returns.the.ind |
2ab20 | 65 78 20 6f 66 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 70 6f 73 69 74 69 6f 6e 20 62 65 66 6f | ex.of.the.previous.position.befo |
2ab40 | 72 65 20 74 68 65 20 67 69 76 65 6e 20 73 74 61 72 74 69 6e 67 0a 23 20 70 6f 73 69 74 69 6f 6e | re.the.given.starting.#.position |
2ab60 | 20 69 6e 20 74 68 65 20 74 65 78 74 20 61 73 20 63 6f 6d 70 75 74 65 64 20 62 79 20 61 20 73 70 | .in.the.text.as.computed.by.a.sp |
2ab80 | 65 63 69 66 69 65 64 20 66 75 6e 63 74 69 6f 6e 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a | ecified.function..#.#.Arguments: |
2aba0 | 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 | .#.w.-..The.text.window.in.which |
2abc0 | 20 74 68 65 20 63 75 72 73 6f 72 20 69 73 20 74 6f 20 6d 6f 76 65 2e 0a 23 20 73 74 61 72 74 20 | .the.cursor.is.to.move..#.start. |
2abe0 | 2d 09 50 6f 73 69 74 69 6f 6e 20 61 74 20 77 68 69 63 68 20 74 6f 20 73 74 61 72 74 20 73 65 61 | -.Position.at.which.to.start.sea |
2ac00 | 72 63 68 2e 0a 23 20 6f 70 20 2d 09 09 46 75 6e 63 74 69 6f 6e 20 74 6f 20 75 73 65 20 74 6f 20 | rch..#.op.-..Function.to.use.to. |
2ac20 | 66 69 6e 64 20 6e 65 78 74 20 70 6f 73 69 74 69 6f 6e 2e 0a 0a 70 72 6f 63 20 74 6b 54 65 78 74 | find.next.position...proc.tkText |
2ac40 | 50 72 65 76 50 6f 73 20 7b 77 20 73 74 61 72 74 20 6f 70 7d 20 7b 0a 20 20 20 20 73 65 74 20 74 | PrevPos.{w.start.op}.{.....set.t |
2ac60 | 65 78 74 20 22 22 0a 20 20 20 20 73 65 74 20 63 75 72 20 24 73 74 61 72 74 0a 20 20 20 20 77 68 | ext."".....set.cur.$start.....wh |
2ac80 | 69 6c 65 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 24 63 75 72 20 3e 20 30 2e 30 5d 7d 20 7b 0a | ile.{[$w.compare.$cur.>.0.0]}.{. |
2aca0 | 09 73 65 74 20 74 65 78 74 20 5b 24 77 20 67 65 74 20 22 24 63 75 72 20 6c 69 6e 65 73 74 61 72 | .set.text.[$w.get."$cur.linestar |
2acc0 | 74 20 2d 20 31 63 22 20 24 63 75 72 5d 24 74 65 78 74 0a 09 73 65 74 20 70 6f 73 20 5b 24 6f 70 | t.-.1c".$cur]$text..set.pos.[$op |
2ace0 | 20 24 74 65 78 74 20 65 6e 64 5d 0a 09 69 66 20 7b 24 70 6f 73 20 3e 3d 20 30 7d 20 7b 0a 09 20 | .$text.end]..if.{$pos.>=.0}.{... |
2ad00 | 20 20 20 23 23 20 41 64 6a 75 73 74 20 66 6f 72 20 65 6d 62 65 64 64 65 64 20 77 69 6e 64 6f 77 | ...##.Adjust.for.embedded.window |
2ad20 | 73 20 61 6e 64 20 69 6d 61 67 65 73 0a 09 20 20 20 20 23 23 20 64 75 6d 70 20 67 69 76 65 73 20 | s.and.images......##.dump.gives. |
2ad40 | 75 73 20 33 20 69 74 65 6d 73 20 70 65 72 20 77 69 6e 64 6f 77 2f 69 6d 61 67 65 0a 09 20 20 20 | us.3.items.per.window/image..... |
2ad60 | 20 73 65 74 20 64 75 6d 70 20 5b 24 77 20 64 75 6d 70 20 2d 69 6d 61 67 65 20 2d 77 69 6e 64 6f | .set.dump.[$w.dump.-image.-windo |
2ad80 | 77 20 22 24 63 75 72 20 6c 69 6e 65 73 74 61 72 74 22 20 22 24 73 74 61 72 74 20 2d 20 31 63 22 | w."$cur.linestart"."$start.-.1c" |
2ada0 | 5d 0a 09 20 20 20 20 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 64 75 6d 70 5d 7d 20 7b 0a 09 09 | ]......if.{[llength.$dump]}.{... |
2adc0 | 23 23 20 54 68 69 73 20 69 73 20 61 20 68 6f 6b 65 79 20 65 78 74 72 61 20 68 61 63 6b 20 66 6f | ##.This.is.a.hokey.extra.hack.fo |
2ade0 | 72 20 63 6f 6e 74 72 6f 6c 2d 61 72 72 6f 77 20 6d 6f 76 65 6d 65 6e 74 0a 09 09 23 23 20 74 68 | r.control-arrow.movement...##.th |
2ae00 | 61 74 20 73 68 6f 75 6c 64 20 62 65 20 69 6e 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 20 74 6f 20 | at.should.be.in.a.while.loop.to. |
2ae20 | 62 65 20 63 6f 72 72 65 63 74 20 28 68 6f 62 62 73 29 0a 09 09 69 66 20 7b 5b 24 77 20 63 6f 6d | be.correct.(hobbs)...if.{[$w.com |
2ae40 | 70 61 72 65 20 5b 6c 69 6e 64 65 78 20 24 64 75 6d 70 20 32 5d 20 3e 20 5c 0a 09 09 09 22 24 63 | pare.[lindex.$dump.2].>.\...."$c |
2ae60 | 75 72 20 6c 69 6e 65 73 74 61 72 74 20 2d 20 31 63 20 2b 20 24 70 6f 73 20 63 22 5d 7d 20 7b 0a | ur.linestart.-.1c.+.$pos.c"]}.{. |
2ae80 | 09 09 20 20 20 20 69 6e 63 72 20 70 6f 73 20 2d 31 0a 09 09 7d 0a 09 09 73 65 74 20 70 6f 73 20 | ......incr.pos.-1...}...set.pos. |
2aea0 | 5b 65 78 70 72 20 7b 24 70 6f 73 20 2b 20 28 5b 6c 6c 65 6e 67 74 68 20 24 64 75 6d 70 5d 2f 33 | [expr.{$pos.+.([llength.$dump]/3 |
2aec0 | 29 7d 5d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 24 77 20 69 6e 64 65 78 | )}]......}......return.[$w.index |
2aee0 | 20 22 24 63 75 72 20 6c 69 6e 65 73 74 61 72 74 20 2d 20 31 63 20 2b 20 24 70 6f 73 20 63 22 5d | ."$cur.linestart.-.1c.+.$pos.c"] |
2af00 | 0a 09 7d 0a 09 73 65 74 20 63 75 72 20 5b 24 77 20 69 6e 64 65 78 20 22 24 63 75 72 20 6c 69 6e | ..}..set.cur.[$w.index."$cur.lin |
2af20 | 65 73 74 61 72 74 20 2d 20 31 63 22 5d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 30 | estart.-.1c"].....}.....return.0 |
2af40 | 2e 30 0a 7d 0a 00 00 0d b9 23 20 62 67 65 72 72 6f 72 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 54 68 | .0.}.....#.bgerror.tcl.--.#.#.Th |
2af60 | 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 61 20 64 65 66 61 75 6c 74 20 76 65 72 73 69 | is.file.contains.a.default.versi |
2af80 | 6f 6e 20 6f 66 20 74 68 65 20 62 67 65 72 72 6f 72 20 70 72 6f 63 65 64 75 72 65 2e 20 20 49 74 | on.of.the.bgerror.procedure...It |
2afa0 | 0a 23 20 70 6f 73 74 73 20 61 20 64 69 61 6c 6f 67 20 62 6f 78 20 77 69 74 68 20 74 68 65 20 65 | .#.posts.a.dialog.box.with.the.e |
2afc0 | 72 72 6f 72 20 6d 65 73 73 61 67 65 20 61 6e 64 20 67 69 76 65 73 20 74 68 65 20 75 73 65 72 20 | rror.message.and.gives.the.user. |
2afe0 | 61 20 63 68 61 6e 63 65 0a 23 20 74 6f 20 73 65 65 20 61 20 6d 6f 72 65 20 64 65 74 61 69 6c 65 | a.chance.#.to.see.a.more.detaile |
2b000 | 64 20 73 74 61 63 6b 20 74 72 61 63 65 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 | d.stack.trace..#.#.RCS:.@(#).$Id |
2b020 | 3a 20 62 67 65 72 72 6f 72 2e 74 63 6c 2c 76 20 31 2e 35 20 31 39 39 39 2f 30 34 2f 31 36 20 30 | :.bgerror.tcl,v.1.5.1999/04/16.0 |
2b040 | 31 3a 35 31 3a 32 35 20 73 74 61 6e 74 6f 6e 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 | 1:51:25.stanton.Exp.$.#.#.Copyri |
2b060 | 67 68 74 20 28 63 29 20 31 39 39 32 2d 31 39 39 34 20 54 68 65 20 52 65 67 65 6e 74 73 20 6f 66 | ght.(c).1992-1994.The.Regents.of |
2b080 | 20 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e 0a 23 | .the.University.of.California..# |
2b0a0 | 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 36 20 53 75 6e 20 4d 69 63 | .Copyright.(c).1994-1996.Sun.Mic |
2b0c0 | 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 | rosystems,.Inc..#.#.See.the.file |
2b0e0 | 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e | ."license.terms".for.information |
2b100 | 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f | .on.usage.and.redistribution.#.o |
2b120 | 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 | f.this.file,.and.for.a.DISCLAIME |
2b140 | 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a 0a 0a 23 20 62 67 65 72 72 6f 72 | R.OF.ALL.WARRANTIES....#.bgerror |
2b160 | 20 2d 2d 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 76 65 72 73 69 6f | .--.#.This.is.the.default.versio |
2b180 | 6e 20 6f 66 20 62 67 65 72 72 6f 72 2e 20 0a 23 20 49 74 20 74 72 69 65 73 20 74 6f 20 65 78 65 | n.of.bgerror...#.It.tries.to.exe |
2b1a0 | 63 75 74 65 20 74 6b 65 72 72 6f 72 2c 20 69 66 20 74 68 61 74 20 66 61 69 6c 73 20 69 74 20 70 | cute.tkerror,.if.that.fails.it.p |
2b1c0 | 6f 73 74 73 20 61 20 64 69 61 6c 6f 67 20 62 6f 78 20 63 6f 6e 74 61 69 6e 69 6e 67 0a 23 20 74 | osts.a.dialog.box.containing.#.t |
2b1e0 | 68 65 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20 61 6e 64 20 67 69 76 65 73 20 74 68 65 20 75 | he.error.message.and.gives.the.u |
2b200 | 73 65 72 20 61 20 63 68 61 6e 63 65 20 74 6f 20 61 73 6b 20 74 6f 20 73 65 65 20 61 20 73 74 61 | ser.a.chance.to.ask.to.see.a.sta |
2b220 | 63 6b 0a 23 20 74 72 61 63 65 2e 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 65 72 72 20 2d | ck.#.trace..#.Arguments:.#.err.- |
2b240 | 09 09 09 54 68 65 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 2e 0a 0a 70 72 6f 63 20 62 67 65 72 | ...The.error.message...proc.bger |
2b260 | 72 6f 72 20 65 72 72 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 49 6e 66 6f 20 74 | ror.err.{.....global.errorInfo.t |
2b280 | 63 6c 5f 70 6c 61 74 66 6f 72 6d 0a 0a 20 20 20 20 23 20 73 61 76 65 20 65 72 72 6f 72 49 6e 66 | cl_platform......#.save.errorInf |
2b2a0 | 6f 20 77 68 69 63 68 20 77 6f 75 6c 64 20 62 65 20 65 72 61 73 65 64 20 69 6e 20 74 68 65 20 63 | o.which.would.be.erased.in.the.c |
2b2c0 | 61 74 63 68 20 62 65 6c 6f 77 20 6f 74 68 65 72 77 69 73 65 2e 0a 20 20 20 20 73 65 74 20 69 6e | atch.below.otherwise......set.in |
2b2e0 | 66 6f 20 24 65 72 72 6f 72 49 6e 66 6f 20 3b 0a 0a 20 20 20 20 23 20 46 6f 72 20 62 61 63 6b 77 | fo.$errorInfo.;......#.For.backw |
2b300 | 61 72 64 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 3a 0a 20 20 20 20 23 20 4c 65 74 27 73 20 | ard.compatibility.:.....#.Let's. |
2b320 | 74 72 79 20 74 6f 20 65 78 65 63 75 74 65 20 22 74 6b 65 72 72 6f 72 22 20 28 75 73 69 6e 67 20 | try.to.execute."tkerror".(using. |
2b340 | 63 61 74 63 68 20 7b 74 6b 65 72 72 6f 72 20 2e 2e 2e 7d 20 0a 20 20 20 20 23 20 69 6e 73 74 65 | catch.{tkerror....}......#.inste |
2b360 | 61 64 20 6f 66 20 73 65 61 72 63 68 69 6e 67 20 69 74 20 77 69 74 68 20 69 6e 66 6f 20 70 72 6f | ad.of.searching.it.with.info.pro |
2b380 | 63 73 20 73 6f 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 67 65 74 73 0a 20 20 20 20 23 | cs.so.the.application.gets.....# |
2b3a0 | 20 61 20 63 68 61 6e 63 65 20 74 6f 20 61 75 74 6f 20 6c 6f 61 64 20 69 74 20 75 73 69 6e 67 20 | .a.chance.to.auto.load.it.using. |
2b3c0 | 69 74 73 20 66 61 76 6f 72 69 74 65 20 22 75 6e 6b 6e 6f 77 6e 22 20 6d 65 63 61 6e 69 73 6d 2e | its.favorite."unknown".mecanism. |
2b3e0 | 0a 20 20 20 20 23 20 28 77 65 20 64 6f 20 74 68 65 20 64 65 66 61 75 6c 74 20 64 69 61 6c 6f 67 | .....#.(we.do.the.default.dialog |
2b400 | 20 6f 6e 6c 79 20 69 66 20 77 65 20 67 65 74 20 61 20 54 43 4c 5f 45 52 52 4f 52 20 28 3d 31 29 | .only.if.we.get.a.TCL_ERROR.(=1) |
2b420 | 20 72 65 74 75 72 6e 0a 20 20 20 20 23 20 20 63 6f 64 65 20 66 72 6f 6d 20 74 68 65 20 74 6b 65 | .return.....#..code.from.the.tke |
2b440 | 72 72 6f 72 20 74 72 69 61 6c 2c 20 6f 74 68 65 72 20 72 65 74 20 63 6f 64 65 73 20 61 72 65 20 | rror.trial,.other.ret.codes.are. |
2b460 | 70 61 73 73 65 64 20 62 61 63 6b 0a 20 20 20 20 23 20 20 74 6f 20 6f 75 72 20 63 61 6c 6c 65 72 | passed.back.....#..to.our.caller |
2b480 | 20 28 74 63 6c 20 62 61 63 6b 67 72 6f 75 6e 64 20 65 72 72 6f 72 20 68 61 6e 64 6c 65 72 29 20 | .(tcl.background.error.handler). |
2b4a0 | 73 6f 20 74 68 65 20 63 61 6c 6c 65 64 20 22 74 6b 65 72 72 6f 72 22 0a 20 20 20 20 23 20 20 63 | so.the.called."tkerror".....#..c |
2b4c0 | 61 6e 20 73 74 69 6c 6c 20 75 73 65 20 20 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 62 72 65 61 6b | an.still.use..return.-code.break |
2b4e0 | 2c 20 74 6f 20 73 6b 69 70 20 72 65 6d 61 69 6e 69 6e 67 20 6d 65 73 73 61 67 65 73 0a 20 20 20 | ,.to.skip.remaining.messages.... |
2b500 | 20 23 20 20 69 6e 20 74 68 65 20 65 72 72 6f 72 20 71 75 65 75 65 20 66 6f 72 20 69 6e 73 74 61 | .#..in.the.error.queue.for.insta |
2b520 | 6e 63 65 29 0a 0a 20 20 20 20 73 65 74 20 72 65 74 20 5b 63 61 74 63 68 20 7b 74 6b 65 72 72 6f | nce)......set.ret.[catch.{tkerro |
2b540 | 72 20 24 65 72 72 7d 20 6d 73 67 5d 3b 0a 20 20 20 20 69 66 20 7b 24 72 65 74 20 21 3d 20 31 7d | r.$err}.msg];.....if.{$ret.!=.1} |
2b560 | 20 7b 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 24 72 65 74 20 24 6d 73 67 7d 0a 0a 20 20 20 20 23 | .{return.-code.$ret.$msg}......# |
2b580 | 20 4f 6b 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 27 73 20 74 6b 65 72 72 6f 72 20 65 69 | .Ok.the.application's.tkerror.ei |
2b5a0 | 74 68 65 72 20 66 61 69 6c 65 64 20 6f 72 20 77 61 73 20 6e 6f 74 20 66 6f 75 6e 64 0a 20 20 20 | ther.failed.or.was.not.found.... |
2b5c0 | 20 23 20 77 65 20 75 73 65 20 74 68 65 20 64 65 66 61 75 6c 74 20 64 69 61 6c 6f 67 20 74 68 65 | .#.we.use.the.default.dialog.the |
2b5e0 | 6e 20 3a 0a 20 20 20 20 69 66 20 7b 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f | n.:.....if.{$tcl_platform(platfo |
2b600 | 72 6d 29 20 3d 3d 20 22 6d 61 63 69 6e 74 6f 73 68 22 7d 20 7b 0a 09 73 65 74 20 6f 6b 20 4f 6b | rm).==."macintosh"}.{..set.ok.Ok |
2b620 | 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 6f 6b 20 4f 4b 0a 20 20 20 20 7d 0a 20 | .....}.else.{..set.ok.OK.....}.. |
2b640 | 20 20 20 73 65 74 20 62 75 74 74 6f 6e 20 5b 74 6b 5f 64 69 61 6c 6f 67 20 2e 62 67 65 72 72 6f | ...set.button.[tk_dialog..bgerro |
2b660 | 72 44 69 61 6c 6f 67 20 22 45 72 72 6f 72 20 69 6e 20 54 63 6c 20 53 63 72 69 70 74 22 20 5c 0a | rDialog."Error.in.Tcl.Script".\. |
2b680 | 09 20 20 20 20 22 45 72 72 6f 72 3a 20 24 65 72 72 22 20 65 72 72 6f 72 20 30 20 24 6f 6b 20 22 | ....."Error:.$err".error.0.$ok." |
2b6a0 | 53 6b 69 70 20 4d 65 73 73 61 67 65 73 22 20 22 53 74 61 63 6b 20 54 72 61 63 65 22 5d 0a 20 20 | Skip.Messages"."Stack.Trace"]... |
2b6c0 | 20 20 69 66 20 7b 24 62 75 74 74 6f 6e 20 3d 3d 20 30 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 | ..if.{$button.==.0}.{..return... |
2b6e0 | 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 62 75 74 74 6f 6e 20 3d 3d 20 31 7d 20 7b 0a 09 72 65 74 | ..}.elseif.{$button.==.1}.{..ret |
2b700 | 75 72 6e 20 2d 63 6f 64 65 20 62 72 65 61 6b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 73 65 74 20 77 | urn.-code.break.....}......set.w |
2b720 | 20 2e 62 67 65 72 72 6f 72 54 72 61 63 65 0a 20 20 20 20 63 61 74 63 68 20 7b 64 65 73 74 72 6f | ..bgerrorTrace.....catch.{destro |
2b740 | 79 20 24 77 7d 0a 20 20 20 20 74 6f 70 6c 65 76 65 6c 20 24 77 20 2d 63 6c 61 73 73 20 45 72 72 | y.$w}.....toplevel.$w.-class.Err |
2b760 | 6f 72 54 72 61 63 65 0a 20 20 20 20 77 6d 20 6d 69 6e 73 69 7a 65 20 24 77 20 31 20 31 0a 20 20 | orTrace.....wm.minsize.$w.1.1... |
2b780 | 20 20 77 6d 20 74 69 74 6c 65 20 24 77 20 22 53 74 61 63 6b 20 54 72 61 63 65 20 66 6f 72 20 45 | ..wm.title.$w."Stack.Trace.for.E |
2b7a0 | 72 72 6f 72 22 0a 20 20 20 20 77 6d 20 69 63 6f 6e 6e 61 6d 65 20 24 77 20 22 53 74 61 63 6b 20 | rror".....wm.iconname.$w."Stack. |
2b7c0 | 54 72 61 63 65 22 0a 20 20 20 20 62 75 74 74 6f 6e 20 24 77 2e 6f 6b 20 2d 74 65 78 74 20 4f 4b | Trace".....button.$w.ok.-text.OK |
2b7e0 | 20 2d 63 6f 6d 6d 61 6e 64 20 22 64 65 73 74 72 6f 79 20 24 77 22 20 2d 64 65 66 61 75 6c 74 20 | .-command."destroy.$w".-default. |
2b800 | 61 63 74 69 76 65 0a 20 20 20 20 69 66 20 7b 21 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 | active.....if.{![string.compare. |
2b820 | 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f | $tcl_platform(platform)."macinto |
2b840 | 73 68 22 5d 7d 20 7b 0a 20 20 20 20 20 20 74 65 78 74 20 24 77 2e 74 65 78 74 20 2d 72 65 6c 69 | sh"]}.{.......text.$w.text.-reli |
2b860 | 65 66 20 66 6c 61 74 20 2d 62 64 20 32 20 2d 68 69 67 68 6c 69 67 68 74 74 68 69 63 6b 6e 65 73 | ef.flat.-bd.2.-highlightthicknes |
2b880 | 73 20 30 20 2d 73 65 74 67 72 69 64 20 74 72 75 65 20 5c 0a 09 20 20 20 20 2d 79 73 63 72 6f 6c | s.0.-setgrid.true.\......-yscrol |
2b8a0 | 6c 63 6f 6d 6d 61 6e 64 20 22 24 77 2e 73 63 72 6f 6c 6c 20 73 65 74 22 20 2d 77 69 64 74 68 20 | lcommand."$w.scroll.set".-width. |
2b8c0 | 36 30 20 2d 68 65 69 67 68 74 20 32 30 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 | 60.-height.20.....}.else.{...... |
2b8e0 | 20 74 65 78 74 20 24 77 2e 74 65 78 74 20 2d 72 65 6c 69 65 66 20 73 75 6e 6b 65 6e 20 2d 62 64 | .text.$w.text.-relief.sunken.-bd |
2b900 | 20 32 20 2d 79 73 63 72 6f 6c 6c 63 6f 6d 6d 61 6e 64 20 22 24 77 2e 73 63 72 6f 6c 6c 20 73 65 | .2.-yscrollcommand."$w.scroll.se |
2b920 | 74 22 20 5c 0a 09 20 20 20 20 2d 73 65 74 67 72 69 64 20 74 72 75 65 20 2d 77 69 64 74 68 20 36 | t".\......-setgrid.true.-width.6 |
2b940 | 30 20 2d 68 65 69 67 68 74 20 32 30 0a 20 20 20 20 7d 0a 20 20 20 20 73 63 72 6f 6c 6c 62 61 72 | 0.-height.20.....}.....scrollbar |
2b960 | 20 24 77 2e 73 63 72 6f 6c 6c 20 2d 72 65 6c 69 65 66 20 73 75 6e 6b 65 6e 20 2d 63 6f 6d 6d 61 | .$w.scroll.-relief.sunken.-comma |
2b980 | 6e 64 20 22 24 77 2e 74 65 78 74 20 79 76 69 65 77 22 0a 20 20 20 20 70 61 63 6b 20 24 77 2e 6f | nd."$w.text.yview".....pack.$w.o |
2b9a0 | 6b 20 2d 73 69 64 65 20 62 6f 74 74 6f 6d 20 2d 70 61 64 78 20 33 6d 20 2d 70 61 64 79 20 32 6d | k.-side.bottom.-padx.3m.-pady.2m |
2b9c0 | 0a 20 20 20 20 70 61 63 6b 20 24 77 2e 73 63 72 6f 6c 6c 20 2d 73 69 64 65 20 72 69 67 68 74 20 | .....pack.$w.scroll.-side.right. |
2b9e0 | 2d 66 69 6c 6c 20 79 0a 20 20 20 20 70 61 63 6b 20 24 77 2e 74 65 78 74 20 2d 73 69 64 65 20 6c | -fill.y.....pack.$w.text.-side.l |
2ba00 | 65 66 74 20 2d 65 78 70 61 6e 64 20 79 65 73 20 2d 66 69 6c 6c 20 62 6f 74 68 0a 20 20 20 20 24 | eft.-expand.yes.-fill.both.....$ |
2ba20 | 77 2e 74 65 78 74 20 69 6e 73 65 72 74 20 30 2e 30 20 24 69 6e 66 6f 0a 20 20 20 20 24 77 2e 74 | w.text.insert.0.0.$info.....$w.t |
2ba40 | 65 78 74 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 30 2e 30 0a 0a 20 20 20 20 62 69 6e | ext.mark.set.insert.0.0......bin |
2ba60 | 64 20 24 77 20 3c 52 65 74 75 72 6e 3e 20 22 64 65 73 74 72 6f 79 20 24 77 22 0a 20 20 20 20 62 | d.$w.<Return>."destroy.$w".....b |
2ba80 | 69 6e 64 20 24 77 2e 74 65 78 74 20 3c 52 65 74 75 72 6e 3e 20 22 64 65 73 74 72 6f 79 20 24 77 | ind.$w.text.<Return>."destroy.$w |
2baa0 | 3b 20 62 72 65 61 6b 22 0a 0a 20 20 20 20 23 20 43 65 6e 74 65 72 20 74 68 65 20 77 69 6e 64 6f | ;.break"......#.Center.the.windo |
2bac0 | 77 20 6f 6e 20 74 68 65 20 73 63 72 65 65 6e 2e 0a 0a 20 20 20 20 77 6d 20 77 69 74 68 64 72 61 | w.on.the.screen.......wm.withdra |
2bae0 | 77 20 24 77 0a 20 20 20 20 75 70 64 61 74 65 20 69 64 6c 65 74 61 73 6b 73 0a 20 20 20 20 73 65 | w.$w.....update.idletasks.....se |
2bb00 | 74 20 78 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 73 63 72 65 65 6e 77 69 64 74 68 20 24 77 | t.x.[expr.{[winfo.screenwidth.$w |
2bb20 | 5d 2f 32 20 2d 20 5b 77 69 6e 66 6f 20 72 65 71 77 69 64 74 68 20 24 77 5d 2f 32 20 5c 0a 09 20 | ]/2.-.[winfo.reqwidth.$w]/2.\... |
2bb40 | 20 20 20 2d 20 5b 77 69 6e 66 6f 20 76 72 6f 6f 74 78 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 | ...-.[winfo.vrootx.[winfo.parent |
2bb60 | 20 24 77 5d 5d 7d 5d 0a 20 20 20 20 73 65 74 20 79 20 5b 65 78 70 72 20 7b 5b 77 69 6e 66 6f 20 | .$w]]}].....set.y.[expr.{[winfo. |
2bb80 | 73 63 72 65 65 6e 68 65 69 67 68 74 20 24 77 5d 2f 32 20 2d 20 5b 77 69 6e 66 6f 20 72 65 71 68 | screenheight.$w]/2.-.[winfo.reqh |
2bba0 | 65 69 67 68 74 20 24 77 5d 2f 32 20 5c 0a 09 20 20 20 20 2d 20 5b 77 69 6e 66 6f 20 76 72 6f 6f | eight.$w]/2.\......-.[winfo.vroo |
2bbc0 | 74 79 20 5b 77 69 6e 66 6f 20 70 61 72 65 6e 74 20 24 77 5d 5d 7d 5d 0a 20 20 20 20 77 6d 20 67 | ty.[winfo.parent.$w]]}].....wm.g |
2bbe0 | 65 6f 6d 20 24 77 20 2b 24 78 2b 24 79 0a 20 20 20 20 77 6d 20 64 65 69 63 6f 6e 69 66 79 20 24 | eom.$w.+$x+$y.....wm.deiconify.$ |
2bc00 | 77 0a 0a 20 20 20 20 23 20 42 65 20 73 75 72 65 20 74 6f 20 72 65 6c 65 61 73 65 20 61 6e 79 20 | w......#.Be.sure.to.release.any. |
2bc20 | 67 72 61 62 73 20 74 68 61 74 20 6d 69 67 68 74 20 62 65 20 70 72 65 73 65 6e 74 20 6f 6e 20 74 | grabs.that.might.be.present.on.t |
2bc40 | 68 65 0a 20 20 20 20 23 20 73 63 72 65 65 6e 2c 20 73 69 6e 63 65 20 74 68 65 79 20 63 6f 75 6c | he.....#.screen,.since.they.coul |
2bc60 | 64 20 6d 61 6b 65 20 69 74 20 69 6d 70 6f 73 73 69 62 6c 65 20 66 6f 72 20 74 68 65 20 75 73 65 | d.make.it.impossible.for.the.use |
2bc80 | 72 0a 20 20 20 20 23 20 74 6f 20 69 6e 74 65 72 61 63 74 20 77 69 74 68 20 74 68 65 20 73 74 61 | r.....#.to.interact.with.the.sta |
2bca0 | 63 6b 20 74 72 61 63 65 2e 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 | ck.trace.......if.{[string.compa |
2bcc0 | 72 65 20 5b 67 72 61 62 20 63 75 72 72 65 6e 74 20 2e 5d 20 22 22 5d 7d 20 7b 0a 09 67 72 61 62 | re.[grab.current..].""]}.{..grab |
2bce0 | 20 72 65 6c 65 61 73 65 20 5b 67 72 61 62 20 63 75 72 72 65 6e 74 20 2e 5d 0a 20 20 20 20 7d 0a | .release.[grab.current..].....}. |
2bd00 | 7d 0a 00 00 30 32 23 20 63 6f 6e 73 6f 6c 65 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 | }...02#.console.tcl.--.#.#.This. |
2bd20 | 63 6f 64 65 20 63 6f 6e 73 74 72 75 63 74 73 20 74 68 65 20 63 6f 6e 73 6f 6c 65 20 77 69 6e 64 | code.constructs.the.console.wind |
2bd40 | 6f 77 20 66 6f 72 20 61 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 20 20 49 74 0a 23 20 63 61 6e | ow.for.an.application...It.#.can |
2bd60 | 20 62 65 20 75 73 65 64 20 62 79 20 6e 6f 6e 2d 75 6e 69 78 20 73 79 73 74 65 6d 73 20 74 68 61 | .be.used.by.non-unix.systems.tha |
2bd80 | 74 20 64 6f 20 6e 6f 74 20 68 61 76 65 20 62 75 69 6c 74 2d 69 6e 20 73 75 70 70 6f 72 74 0a 23 | t.do.not.have.built-in.support.# |
2bda0 | 20 66 6f 72 20 73 68 65 6c 6c 73 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 | .for.shells..#.#.RCS:.@(#).$Id:. |
2bdc0 | 63 6f 6e 73 6f 6c 65 2e 74 63 6c 2c 76 20 31 2e 37 20 31 39 39 39 2f 30 39 2f 30 32 20 31 37 3a | console.tcl,v.1.7.1999/09/02.17: |
2bde0 | 30 32 3a 35 32 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 | 02:52.hobbs.Exp.$.#.#.Copyright. |
2be00 | 28 63 29 20 31 39 39 38 2d 31 39 39 39 20 53 63 72 69 70 74 69 63 73 20 43 6f 72 70 2e 0a 23 20 | (c).1998-1999.Scriptics.Corp..#. |
2be20 | 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 35 2d 31 39 39 37 20 53 75 6e 20 4d 69 63 72 | Copyright.(c).1995-1997.Sun.Micr |
2be40 | 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 | osystems,.Inc..#.#.See.the.file. |
2be60 | 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 | "license.terms".for.information. |
2be80 | 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 | on.usage.and.redistribution.#.of |
2bea0 | 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 | .this.file,.and.for.a.DISCLAIMER |
2bec0 | 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 0a 0a 23 20 54 4f 44 4f 3a 20 68 | .OF.ALL.WARRANTIES..#..#.TODO:.h |
2bee0 | 69 73 74 6f 72 79 20 2d 20 72 65 6d 65 6d 62 65 72 20 70 61 72 74 69 61 6c 6c 79 20 77 72 69 74 | istory.-.remember.partially.writ |
2bf00 | 74 65 6e 20 63 6f 6d 6d 61 6e 64 0a 0a 23 20 74 6b 43 6f 6e 73 6f 6c 65 49 6e 69 74 20 2d 2d 0a | ten.command..#.tkConsoleInit.--. |
2bf20 | 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 63 6f 6e 73 74 72 75 63 74 73 20 61 6e 64 20 | #.This.procedure.constructs.and. |
2bf40 | 63 6f 6e 66 69 67 75 72 65 73 20 74 68 65 20 63 6f 6e 73 6f 6c 65 20 77 69 6e 64 6f 77 73 2e 0a | configures.the.console.windows.. |
2bf60 | 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 09 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 74 6b | #.#.Arguments:.#..None...proc.tk |
2bf80 | 43 6f 6e 73 6f 6c 65 49 6e 69 74 20 7b 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f | ConsoleInit.{}.{.....global.tcl_ |
2bfa0 | 70 6c 61 74 66 6f 72 6d 0a 0a 20 20 20 20 69 66 20 7b 21 5b 63 6f 6e 73 6f 6c 65 69 6e 74 65 72 | platform......if.{![consoleinter |
2bfc0 | 70 20 65 76 61 6c 20 7b 73 65 74 20 74 63 6c 5f 69 6e 74 65 72 61 63 74 69 76 65 7d 5d 7d 20 7b | p.eval.{set.tcl_interactive}]}.{ |
2bfe0 | 0a 09 77 6d 20 77 69 74 68 64 72 61 77 20 2e 0a 20 20 20 20 7d 0a 0a 20 20 20 20 69 66 20 7b 5b | ..wm.withdraw.......}......if.{[ |
2c000 | 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 | string.compare.$tcl_platform(pla |
2c020 | 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 09 73 65 74 20 6d 6f 64 20 | tform)."macintosh"]}.{..set.mod. |
2c040 | 22 43 74 72 6c 22 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 6d 6f 64 20 22 43 6d | "Ctrl".....}.else.{..set.mod."Cm |
2c060 | 64 22 0a 20 20 20 20 7d 0a 0a 20 20 20 20 6d 65 6e 75 20 2e 6d 65 6e 75 62 61 72 0a 20 20 20 20 | d".....}......menu..menubar..... |
2c080 | 2e 6d 65 6e 75 62 61 72 20 61 64 64 20 63 61 73 63 61 64 65 20 2d 6c 61 62 65 6c 20 46 69 6c 65 | .menubar.add.cascade.-label.File |
2c0a0 | 20 2d 6d 65 6e 75 20 2e 6d 65 6e 75 62 61 72 2e 66 69 6c 65 20 2d 75 6e 64 65 72 6c 69 6e 65 20 | .-menu..menubar.file.-underline. |
2c0c0 | 30 0a 20 20 20 20 2e 6d 65 6e 75 62 61 72 20 61 64 64 20 63 61 73 63 61 64 65 20 2d 6c 61 62 65 | 0......menubar.add.cascade.-labe |
2c0e0 | 6c 20 45 64 69 74 20 2d 6d 65 6e 75 20 2e 6d 65 6e 75 62 61 72 2e 65 64 69 74 20 2d 75 6e 64 65 | l.Edit.-menu..menubar.edit.-unde |
2c100 | 72 6c 69 6e 65 20 30 0a 0a 20 20 20 20 6d 65 6e 75 20 2e 6d 65 6e 75 62 61 72 2e 66 69 6c 65 20 | rline.0......menu..menubar.file. |
2c120 | 2d 74 65 61 72 6f 66 66 20 30 0a 20 20 20 20 2e 6d 65 6e 75 62 61 72 2e 66 69 6c 65 20 61 64 64 | -tearoff.0......menubar.file.add |
2c140 | 20 63 6f 6d 6d 61 6e 64 20 2d 6c 61 62 65 6c 20 22 53 6f 75 72 63 65 2e 2e 2e 22 20 2d 75 6e 64 | .command.-label."Source...".-und |
2c160 | 65 72 6c 69 6e 65 20 30 20 5c 0a 09 20 20 20 20 2d 63 6f 6d 6d 61 6e 64 20 74 6b 43 6f 6e 73 6f | erline.0.\......-command.tkConso |
2c180 | 6c 65 53 6f 75 72 63 65 0a 20 20 20 20 2e 6d 65 6e 75 62 61 72 2e 66 69 6c 65 20 61 64 64 20 63 | leSource......menubar.file.add.c |
2c1a0 | 6f 6d 6d 61 6e 64 20 2d 6c 61 62 65 6c 20 22 48 69 64 65 20 43 6f 6e 73 6f 6c 65 22 20 2d 75 6e | ommand.-label."Hide.Console".-un |
2c1c0 | 64 65 72 6c 69 6e 65 20 30 20 5c 0a 09 20 20 20 20 2d 63 6f 6d 6d 61 6e 64 20 7b 77 6d 20 77 69 | derline.0.\......-command.{wm.wi |
2c1e0 | 74 68 64 72 61 77 20 2e 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 | thdraw..}.....if.{[string.compar |
2c200 | 65 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e | e.$tcl_platform(platform)."macin |
2c220 | 74 6f 73 68 22 5d 7d 20 7b 0a 09 2e 6d 65 6e 75 62 61 72 2e 66 69 6c 65 20 61 64 64 20 63 6f 6d | tosh"]}.{...menubar.file.add.com |
2c240 | 6d 61 6e 64 20 2d 6c 61 62 65 6c 20 22 45 78 69 74 22 20 2d 75 6e 64 65 72 6c 69 6e 65 20 31 20 | mand.-label."Exit".-underline.1. |
2c260 | 2d 63 6f 6d 6d 61 6e 64 20 65 78 69 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 2e 6d 65 6e | -command.exit.....}.else.{...men |
2c280 | 75 62 61 72 2e 66 69 6c 65 20 61 64 64 20 63 6f 6d 6d 61 6e 64 20 2d 6c 61 62 65 6c 20 22 51 75 | ubar.file.add.command.-label."Qu |
2c2a0 | 69 74 22 20 2d 63 6f 6d 6d 61 6e 64 20 65 78 69 74 20 2d 61 63 63 65 6c 20 43 6d 64 2d 51 0a 20 | it".-command.exit.-accel.Cmd-Q.. |
2c2c0 | 20 20 20 7d 0a 0a 20 20 20 20 6d 65 6e 75 20 2e 6d 65 6e 75 62 61 72 2e 65 64 69 74 20 2d 74 65 | ...}......menu..menubar.edit.-te |
2c2e0 | 61 72 6f 66 66 20 30 0a 20 20 20 20 2e 6d 65 6e 75 62 61 72 2e 65 64 69 74 20 61 64 64 20 63 6f | aroff.0......menubar.edit.add.co |
2c300 | 6d 6d 61 6e 64 20 2d 6c 61 62 65 6c 20 22 43 75 74 22 20 2d 75 6e 64 65 72 6c 69 6e 65 20 32 20 | mmand.-label."Cut".-underline.2. |
2c320 | 5c 0a 09 20 20 20 20 2d 63 6f 6d 6d 61 6e 64 20 7b 20 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 | \......-command.{.event.generate |
2c340 | 20 2e 63 6f 6e 73 6f 6c 65 20 3c 3c 43 75 74 3e 3e 20 7d 20 2d 61 63 63 65 6c 20 22 24 6d 6f 64 | ..console.<<Cut>>.}.-accel."$mod |
2c360 | 2b 58 22 0a 20 20 20 20 2e 6d 65 6e 75 62 61 72 2e 65 64 69 74 20 61 64 64 20 63 6f 6d 6d 61 6e | +X"......menubar.edit.add.comman |
2c380 | 64 20 2d 6c 61 62 65 6c 20 22 43 6f 70 79 22 20 2d 75 6e 64 65 72 6c 69 6e 65 20 30 20 5c 0a 09 | d.-label."Copy".-underline.0.\.. |
2c3a0 | 20 20 20 20 2d 63 6f 6d 6d 61 6e 64 20 7b 20 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 20 2e 63 | ....-command.{.event.generate..c |
2c3c0 | 6f 6e 73 6f 6c 65 20 3c 3c 43 6f 70 79 3e 3e 20 7d 20 2d 61 63 63 65 6c 20 22 24 6d 6f 64 2b 43 | onsole.<<Copy>>.}.-accel."$mod+C |
2c3e0 | 22 0a 20 20 20 20 2e 6d 65 6e 75 62 61 72 2e 65 64 69 74 20 61 64 64 20 63 6f 6d 6d 61 6e 64 20 | "......menubar.edit.add.command. |
2c400 | 2d 6c 61 62 65 6c 20 22 50 61 73 74 65 22 20 2d 75 6e 64 65 72 6c 69 6e 65 20 31 20 5c 0a 09 20 | -label."Paste".-underline.1.\... |
2c420 | 20 20 20 2d 63 6f 6d 6d 61 6e 64 20 7b 20 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 20 2e 63 6f | ...-command.{.event.generate..co |
2c440 | 6e 73 6f 6c 65 20 3c 3c 50 61 73 74 65 3e 3e 20 7d 20 2d 61 63 63 65 6c 20 22 24 6d 6f 64 2b 56 | nsole.<<Paste>>.}.-accel."$mod+V |
2c460 | 22 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 63 6c 5f | "......if.{[string.compare.$tcl_ |
2c480 | 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 77 69 6e 64 6f 77 73 22 5d 7d 20 7b | platform(platform)."windows"]}.{ |
2c4a0 | 0a 09 2e 6d 65 6e 75 62 61 72 2e 65 64 69 74 20 61 64 64 20 63 6f 6d 6d 61 6e 64 20 2d 6c 61 62 | ...menubar.edit.add.command.-lab |
2c4c0 | 65 6c 20 22 43 6c 65 61 72 22 20 2d 75 6e 64 65 72 6c 69 6e 65 20 32 20 5c 0a 09 09 2d 63 6f 6d | el."Clear".-underline.2.\...-com |
2c4e0 | 6d 61 6e 64 20 7b 20 65 76 65 6e 74 20 67 65 6e 65 72 61 74 65 20 2e 63 6f 6e 73 6f 6c 65 20 3c | mand.{.event.generate..console.< |
2c500 | 3c 43 6c 65 61 72 3e 3e 20 7d 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 2e 6d 65 6e 75 62 61 | <Clear>>.}.....}.else.{...menuba |
2c520 | 72 2e 65 64 69 74 20 61 64 64 20 63 6f 6d 6d 61 6e 64 20 2d 6c 61 62 65 6c 20 22 44 65 6c 65 74 | r.edit.add.command.-label."Delet |
2c540 | 65 22 20 2d 75 6e 64 65 72 6c 69 6e 65 20 30 20 5c 0a 09 09 2d 63 6f 6d 6d 61 6e 64 20 7b 20 65 | e".-underline.0.\...-command.{.e |
2c560 | 76 65 6e 74 20 67 65 6e 65 72 61 74 65 20 2e 63 6f 6e 73 6f 6c 65 20 3c 3c 43 6c 65 61 72 3e 3e | vent.generate..console.<<Clear>> |
2c580 | 20 7d 20 2d 61 63 63 65 6c 20 22 44 65 6c 22 0a 0a 09 2e 6d 65 6e 75 62 61 72 20 61 64 64 20 63 | .}.-accel."Del"....menubar.add.c |
2c5a0 | 61 73 63 61 64 65 20 2d 6c 61 62 65 6c 20 48 65 6c 70 20 2d 6d 65 6e 75 20 2e 6d 65 6e 75 62 61 | ascade.-label.Help.-menu..menuba |
2c5c0 | 72 2e 68 65 6c 70 20 2d 75 6e 64 65 72 6c 69 6e 65 20 30 0a 09 6d 65 6e 75 20 2e 6d 65 6e 75 62 | r.help.-underline.0..menu..menub |
2c5e0 | 61 72 2e 68 65 6c 70 20 2d 74 65 61 72 6f 66 66 20 30 0a 09 2e 6d 65 6e 75 62 61 72 2e 68 65 6c | ar.help.-tearoff.0...menubar.hel |
2c600 | 70 20 61 64 64 20 63 6f 6d 6d 61 6e 64 20 2d 6c 61 62 65 6c 20 22 41 62 6f 75 74 2e 2e 2e 22 20 | p.add.command.-label."About...". |
2c620 | 2d 75 6e 64 65 72 6c 69 6e 65 20 30 20 5c 0a 09 09 2d 63 6f 6d 6d 61 6e 64 20 74 6b 43 6f 6e 73 | -underline.0.\...-command.tkCons |
2c640 | 6f 6c 65 41 62 6f 75 74 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2e 20 63 6f 6e 66 69 67 75 72 65 20 | oleAbout.....}........configure. |
2c660 | 2d 6d 65 6e 75 20 2e 6d 65 6e 75 62 61 72 0a 0a 20 20 20 20 74 65 78 74 20 2e 63 6f 6e 73 6f 6c | -menu..menubar......text..consol |
2c680 | 65 20 20 2d 79 73 63 72 6f 6c 6c 63 6f 6d 6d 61 6e 64 20 22 2e 73 62 20 73 65 74 22 20 2d 73 65 | e..-yscrollcommand.".sb.set".-se |
2c6a0 | 74 67 72 69 64 20 74 72 75 65 20 0a 20 20 20 20 73 63 72 6f 6c 6c 62 61 72 20 2e 73 62 20 2d 63 | tgrid.true......scrollbar..sb.-c |
2c6c0 | 6f 6d 6d 61 6e 64 20 22 2e 63 6f 6e 73 6f 6c 65 20 79 76 69 65 77 22 0a 20 20 20 20 70 61 63 6b | ommand.".console.yview".....pack |
2c6e0 | 20 2e 73 62 20 2d 73 69 64 65 20 72 69 67 68 74 20 2d 66 69 6c 6c 20 62 6f 74 68 0a 20 20 20 20 | ..sb.-side.right.-fill.both..... |
2c700 | 70 61 63 6b 20 2e 63 6f 6e 73 6f 6c 65 20 2d 66 69 6c 6c 20 62 6f 74 68 20 2d 65 78 70 61 6e 64 | pack..console.-fill.both.-expand |
2c720 | 20 31 20 2d 73 69 64 65 20 6c 65 66 74 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 | .1.-side.left.....if.{[string.eq |
2c740 | 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 6d 61 63 | ual.$tcl_platform(platform)."mac |
2c760 | 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 20 20 20 20 20 20 20 20 2e 63 6f 6e 73 6f 6c 65 20 63 6f 6e | intosh"]}.{..........console.con |
2c780 | 66 69 67 75 72 65 20 2d 66 6f 6e 74 20 7b 4d 6f 6e 61 63 6f 20 39 20 6e 6f 72 6d 61 6c 7d 20 2d | figure.-font.{Monaco.9.normal}.- |
2c7a0 | 68 69 67 68 6c 69 67 68 74 74 68 69 63 6b 6e 65 73 73 20 30 0a 20 20 20 20 7d 0a 0a 20 20 20 20 | highlightthickness.0.....}...... |
2c7c0 | 74 6b 43 6f 6e 73 6f 6c 65 42 69 6e 64 20 2e 63 6f 6e 73 6f 6c 65 0a 0a 20 20 20 20 2e 63 6f 6e | tkConsoleBind..console.......con |
2c7e0 | 73 6f 6c 65 20 74 61 67 20 63 6f 6e 66 69 67 75 72 65 20 73 74 64 65 72 72 20 2d 66 6f 72 65 67 | sole.tag.configure.stderr.-foreg |
2c800 | 72 6f 75 6e 64 20 72 65 64 0a 20 20 20 20 2e 63 6f 6e 73 6f 6c 65 20 74 61 67 20 63 6f 6e 66 69 | round.red......console.tag.confi |
2c820 | 67 75 72 65 20 73 74 64 69 6e 20 2d 66 6f 72 65 67 72 6f 75 6e 64 20 62 6c 75 65 0a 0a 20 20 20 | gure.stdin.-foreground.blue..... |
2c840 | 20 66 6f 63 75 73 20 2e 63 6f 6e 73 6f 6c 65 0a 20 20 20 20 0a 20 20 20 20 77 6d 20 70 72 6f 74 | .focus..console..........wm.prot |
2c860 | 6f 63 6f 6c 20 2e 20 57 4d 5f 44 45 4c 45 54 45 5f 57 49 4e 44 4f 57 20 7b 20 77 6d 20 77 69 74 | ocol...WM_DELETE_WINDOW.{.wm.wit |
2c880 | 68 64 72 61 77 20 2e 20 7d 0a 20 20 20 20 77 6d 20 74 69 74 6c 65 20 2e 20 22 43 6f 6e 73 6f 6c | hdraw...}.....wm.title..."Consol |
2c8a0 | 65 22 0a 20 20 20 20 66 6c 75 73 68 20 73 74 64 6f 75 74 0a 20 20 20 20 2e 63 6f 6e 73 6f 6c 65 | e".....flush.stdout......console |
2c8c0 | 20 6d 61 72 6b 20 73 65 74 20 6f 75 74 70 75 74 20 5b 2e 63 6f 6e 73 6f 6c 65 20 69 6e 64 65 78 | .mark.set.output.[.console.index |
2c8e0 | 20 22 65 6e 64 20 2d 20 31 20 63 68 61 72 22 5d 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 | ."end.-.1.char"].....tkTextSetCu |
2c900 | 72 73 6f 72 20 2e 63 6f 6e 73 6f 6c 65 20 65 6e 64 0a 20 20 20 20 2e 63 6f 6e 73 6f 6c 65 20 6d | rsor..console.end......console.m |
2c920 | 61 72 6b 20 73 65 74 20 70 72 6f 6d 70 74 45 6e 64 20 69 6e 73 65 72 74 0a 20 20 20 20 2e 63 6f | ark.set.promptEnd.insert......co |
2c940 | 6e 73 6f 6c 65 20 6d 61 72 6b 20 67 72 61 76 69 74 79 20 70 72 6f 6d 70 74 45 6e 64 20 6c 65 66 | nsole.mark.gravity.promptEnd.lef |
2c960 | 74 0a 7d 0a 0a 23 20 74 6b 43 6f 6e 73 6f 6c 65 53 6f 75 72 63 65 20 2d 2d 0a 23 0a 23 20 50 72 | t.}..#.tkConsoleSource.--.#.#.Pr |
2c980 | 6f 6d 70 74 73 20 74 68 65 20 75 73 65 72 20 66 6f 72 20 61 20 66 69 6c 65 20 74 6f 20 73 6f 75 | ompts.the.user.for.a.file.to.sou |
2c9a0 | 72 63 65 20 69 6e 20 74 68 65 20 6d 61 69 6e 20 69 6e 74 65 72 70 72 65 74 65 72 2e 0a 23 0a 23 | rce.in.the.main.interpreter..#.# |
2c9c0 | 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 74 6b 43 6f 6e 73 | .Arguments:.#.None...proc.tkCons |
2c9e0 | 6f 6c 65 53 6f 75 72 63 65 20 7b 7d 20 7b 0a 20 20 20 20 73 65 74 20 66 69 6c 65 6e 61 6d 65 20 | oleSource.{}.{.....set.filename. |
2ca00 | 5b 74 6b 5f 67 65 74 4f 70 65 6e 46 69 6c 65 20 2d 64 65 66 61 75 6c 74 65 78 74 65 6e 73 69 6f | [tk_getOpenFile.-defaultextensio |
2ca20 | 6e 20 2e 74 63 6c 20 2d 70 61 72 65 6e 74 20 2e 20 5c 0a 09 09 20 20 20 20 20 20 2d 74 69 74 6c | n..tcl.-parent...\.........-titl |
2ca40 | 65 20 22 53 65 6c 65 63 74 20 61 20 66 69 6c 65 20 74 6f 20 73 6f 75 72 63 65 22 20 5c 0a 09 09 | e."Select.a.file.to.source".\... |
2ca60 | 20 20 20 20 20 20 2d 66 69 6c 65 74 79 70 65 73 20 7b 7b 22 54 63 6c 20 53 63 72 69 70 74 73 22 | ......-filetypes.{{"Tcl.Scripts" |
2ca80 | 20 2e 74 63 6c 7d 20 7b 22 41 6c 6c 20 46 69 6c 65 73 22 20 2a 7d 7d 5d 0a 20 20 20 20 69 66 20 | ..tcl}.{"All.Files".*}}].....if. |
2caa0 | 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 66 69 6c 65 6e 61 6d 65 20 22 22 5d 7d 20 | {[string.compare.$filename.""]}. |
2cac0 | 7b 0a 20 20 20 20 09 73 65 74 20 63 6d 64 20 5b 6c 69 73 74 20 73 6f 75 72 63 65 20 24 66 69 6c | {......set.cmd.[list.source.$fil |
2cae0 | 65 6e 61 6d 65 5d 0a 09 69 66 20 7b 5b 63 61 74 63 68 20 7b 63 6f 6e 73 6f 6c 65 69 6e 74 65 72 | ename]..if.{[catch.{consoleinter |
2cb00 | 70 20 65 76 61 6c 20 24 63 6d 64 7d 20 72 65 73 75 6c 74 5d 7d 20 7b 0a 09 20 20 20 20 74 6b 43 | p.eval.$cmd}.result]}.{......tkC |
2cb20 | 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 20 73 74 64 65 72 72 20 22 24 72 65 73 75 6c 74 5c 6e 22 0a | onsoleOutput.stderr."$result\n". |
2cb40 | 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 43 6f 6e 73 6f 6c 65 49 6e 76 6f 6b 65 20 2d 2d | .}.....}.}..#.tkConsoleInvoke.-- |
2cb60 | 0a 23 20 50 72 6f 63 65 73 73 65 73 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 69 6e | .#.Processes.the.command.line.in |
2cb80 | 70 75 74 2e 20 20 49 66 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 69 73 20 63 6f 6d 70 6c 65 74 65 | put...If.the.command.is.complete |
2cba0 | 20 69 74 0a 23 20 69 73 20 65 76 61 6c 65 64 20 69 6e 20 74 68 65 20 6d 61 69 6e 20 69 6e 74 65 | .it.#.is.evaled.in.the.main.inte |
2cbc0 | 72 70 72 65 74 65 72 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 63 6f 6e 74 69 6e 75 | rpreter...Otherwise,.the.continu |
2cbe0 | 61 74 69 6f 6e 0a 23 20 70 72 6f 6d 70 74 20 69 73 20 61 64 64 65 64 20 61 6e 64 20 6d 6f 72 65 | ation.#.prompt.is.added.and.more |
2cc00 | 20 69 6e 70 75 74 20 6d 61 79 20 62 65 20 61 64 64 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e | .input.may.be.added..#.#.Argumen |
2cc20 | 74 73 3a 0a 23 20 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 74 6b 43 6f 6e 73 6f 6c 65 49 6e 76 6f 6b | ts:.#.None...proc.tkConsoleInvok |
2cc40 | 65 20 7b 61 72 67 73 7d 20 7b 0a 20 20 20 20 73 65 74 20 72 61 6e 67 65 73 20 5b 2e 63 6f 6e 73 | e.{args}.{.....set.ranges.[.cons |
2cc60 | 6f 6c 65 20 74 61 67 20 72 61 6e 67 65 73 20 69 6e 70 75 74 5d 0a 20 20 20 20 73 65 74 20 63 6d | ole.tag.ranges.input].....set.cm |
2cc80 | 64 20 22 22 0a 20 20 20 20 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 72 61 6e 67 65 73 5d 7d 20 | d."".....if.{[llength.$ranges]}. |
2cca0 | 7b 0a 09 73 65 74 20 70 6f 73 20 30 0a 09 77 68 69 6c 65 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d | {..set.pos.0..while.{[string.com |
2ccc0 | 70 61 72 65 20 5b 6c 69 6e 64 65 78 20 24 72 61 6e 67 65 73 20 24 70 6f 73 5d 20 22 22 5d 7d 20 | pare.[lindex.$ranges.$pos].""]}. |
2cce0 | 7b 0a 09 20 20 20 20 73 65 74 20 73 74 61 72 74 20 5b 6c 69 6e 64 65 78 20 24 72 61 6e 67 65 73 | {......set.start.[lindex.$ranges |
2cd00 | 20 24 70 6f 73 5d 0a 09 20 20 20 20 73 65 74 20 65 6e 64 20 5b 6c 69 6e 64 65 78 20 24 72 61 6e | .$pos]......set.end.[lindex.$ran |
2cd20 | 67 65 73 20 5b 69 6e 63 72 20 70 6f 73 5d 5d 0a 09 20 20 20 20 61 70 70 65 6e 64 20 63 6d 64 20 | ges.[incr.pos]]......append.cmd. |
2cd40 | 5b 2e 63 6f 6e 73 6f 6c 65 20 67 65 74 20 24 73 74 61 72 74 20 24 65 6e 64 5d 0a 09 20 20 20 20 | [.console.get.$start.$end]...... |
2cd60 | 69 6e 63 72 20 70 6f 73 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e | incr.pos..}.....}.....if.{[strin |
2cd80 | 67 20 65 71 75 61 6c 20 24 63 6d 64 20 22 22 5d 7d 20 7b 0a 09 74 6b 43 6f 6e 73 6f 6c 65 50 72 | g.equal.$cmd.""]}.{..tkConsolePr |
2cda0 | 6f 6d 70 74 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 5b 69 6e 66 6f 20 63 6f 6d 70 6c 65 74 | ompt.....}.elseif.{[info.complet |
2cdc0 | 65 20 24 63 6d 64 5d 7d 20 7b 0a 09 2e 63 6f 6e 73 6f 6c 65 20 6d 61 72 6b 20 73 65 74 20 6f 75 | e.$cmd]}.{...console.mark.set.ou |
2cde0 | 74 70 75 74 20 65 6e 64 0a 09 2e 63 6f 6e 73 6f 6c 65 20 74 61 67 20 64 65 6c 65 74 65 20 69 6e | tput.end...console.tag.delete.in |
2ce00 | 70 75 74 0a 09 73 65 74 20 72 65 73 75 6c 74 20 5b 63 6f 6e 73 6f 6c 65 69 6e 74 65 72 70 20 72 | put..set.result.[consoleinterp.r |
2ce20 | 65 63 6f 72 64 20 24 63 6d 64 5d 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 | ecord.$cmd]..if.{[string.compare |
2ce40 | 20 24 72 65 73 75 6c 74 20 22 22 5d 7d 20 7b 0a 09 20 20 20 20 70 75 74 73 20 24 72 65 73 75 6c | .$result.""]}.{......puts.$resul |
2ce60 | 74 0a 09 7d 0a 09 74 6b 43 6f 6e 73 6f 6c 65 48 69 73 74 6f 72 79 20 72 65 73 65 74 0a 09 74 6b | t..}..tkConsoleHistory.reset..tk |
2ce80 | 43 6f 6e 73 6f 6c 65 50 72 6f 6d 70 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 74 6b 43 6f | ConsolePrompt.....}.else.{..tkCo |
2cea0 | 6e 73 6f 6c 65 50 72 6f 6d 70 74 20 70 61 72 74 69 61 6c 0a 20 20 20 20 7d 0a 20 20 20 20 2e 63 | nsolePrompt.partial.....}......c |
2cec0 | 6f 6e 73 6f 6c 65 20 79 76 69 65 77 20 2d 70 69 63 6b 70 6c 61 63 65 20 69 6e 73 65 72 74 0a 7d | onsole.yview.-pickplace.insert.} |
2cee0 | 0a 0a 23 20 74 6b 43 6f 6e 73 6f 6c 65 48 69 73 74 6f 72 79 20 2d 2d 0a 23 20 54 68 69 73 20 70 | ..#.tkConsoleHistory.--.#.This.p |
2cf00 | 72 6f 63 65 64 75 72 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 | rocedure.implements.command.line |
2cf20 | 20 68 69 73 74 6f 72 79 20 66 6f 72 20 74 68 65 0a 23 20 63 6f 6e 73 6f 6c 65 2e 20 20 49 6e 20 | .history.for.the.#.console...In. |
2cf40 | 67 65 6e 65 72 61 6c 20 69 73 20 65 76 61 6c 73 20 74 68 65 20 68 69 73 74 6f 72 79 20 63 6f 6d | general.is.evals.the.history.com |
2cf60 | 6d 61 6e 64 20 69 6e 20 74 68 65 0a 23 20 6d 61 69 6e 20 69 6e 74 65 72 70 72 65 74 65 72 20 74 | mand.in.the.#.main.interpreter.t |
2cf80 | 6f 20 6f 62 74 61 69 6e 20 74 68 65 20 68 69 73 74 6f 72 79 2e 20 20 54 68 65 20 67 6c 6f 62 61 | o.obtain.the.history...The.globa |
2cfa0 | 6c 20 76 61 72 69 61 62 6c 65 0a 23 20 68 69 73 74 4e 75 6d 20 69 73 20 75 73 65 64 20 74 6f 20 | l.variable.#.histNum.is.used.to. |
2cfc0 | 73 74 6f 72 65 20 74 68 65 20 63 75 72 72 65 6e 74 20 6c 6f 63 61 74 69 6f 6e 20 69 6e 20 74 68 | store.the.current.location.in.th |
2cfe0 | 65 20 68 69 73 74 6f 72 79 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 63 6d 64 20 | e.history..#.#.Arguments:.#.cmd. |
2d000 | 2d 09 57 68 69 63 68 20 61 63 74 69 6f 6e 20 74 6f 20 74 61 6b 65 3a 20 70 72 65 76 2c 20 6e 65 | -.Which.action.to.take:.prev,.ne |
2d020 | 78 74 2c 20 72 65 73 65 74 2e 0a 0a 73 65 74 20 68 69 73 74 4e 75 6d 20 31 0a 70 72 6f 63 20 74 | xt,.reset...set.histNum.1.proc.t |
2d040 | 6b 43 6f 6e 73 6f 6c 65 48 69 73 74 6f 72 79 20 7b 63 6d 64 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 | kConsoleHistory.{cmd}.{.....glob |
2d060 | 61 6c 20 68 69 73 74 4e 75 6d 0a 20 20 20 20 0a 20 20 20 20 73 77 69 74 63 68 20 24 63 6d 64 20 | al.histNum..........switch.$cmd. |
2d080 | 7b 0a 20 20 20 20 09 70 72 65 76 20 7b 0a 09 20 20 20 20 69 6e 63 72 20 68 69 73 74 4e 75 6d 20 | {......prev.{......incr.histNum. |
2d0a0 | 2d 31 0a 09 20 20 20 20 69 66 20 7b 24 68 69 73 74 4e 75 6d 20 3d 3d 20 30 7d 20 7b 0a 09 09 73 | -1......if.{$histNum.==.0}.{...s |
2d0c0 | 65 74 20 63 6d 64 20 7b 68 69 73 74 6f 72 79 20 65 76 65 6e 74 20 5b 65 78 70 72 20 7b 5b 68 69 | et.cmd.{history.event.[expr.{[hi |
2d0e0 | 73 74 6f 72 79 20 6e 65 78 74 69 64 5d 20 2d 31 7d 5d 7d 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 | story.nextid].-1}]}......}.else. |
2d100 | 7b 0a 09 09 73 65 74 20 63 6d 64 20 22 68 69 73 74 6f 72 79 20 65 76 65 6e 74 20 24 68 69 73 74 | {...set.cmd."history.event.$hist |
2d120 | 4e 75 6d 22 0a 09 20 20 20 20 7d 0a 20 20 20 20 09 20 20 20 20 69 66 20 7b 5b 63 61 74 63 68 20 | Num"......}..........if.{[catch. |
2d140 | 7b 63 6f 6e 73 6f 6c 65 69 6e 74 65 72 70 20 65 76 61 6c 20 24 63 6d 64 7d 20 63 6d 64 5d 7d 20 | {consoleinterp.eval.$cmd}.cmd]}. |
2d160 | 7b 0a 20 20 20 20 09 20 20 20 20 09 69 6e 63 72 20 68 69 73 74 4e 75 6d 0a 20 20 20 20 09 20 20 | {...........incr.histNum........ |
2d180 | 20 20 09 72 65 74 75 72 6e 0a 20 20 20 20 09 20 20 20 20 7d 0a 09 20 20 20 20 2e 63 6f 6e 73 6f | ...return..........}.......conso |
2d1a0 | 6c 65 20 64 65 6c 65 74 65 20 70 72 6f 6d 70 74 45 6e 64 20 65 6e 64 0a 20 20 20 20 09 20 20 20 | le.delete.promptEnd.end......... |
2d1c0 | 20 2e 63 6f 6e 73 6f 6c 65 20 69 6e 73 65 72 74 20 70 72 6f 6d 70 74 45 6e 64 20 24 63 6d 64 20 | ..console.insert.promptEnd.$cmd. |
2d1e0 | 7b 69 6e 70 75 74 20 73 74 64 69 6e 7d 0a 20 20 20 20 09 7d 0a 20 20 20 20 09 6e 65 78 74 20 7b | {input.stdin}......}......next.{ |
2d200 | 0a 09 20 20 20 20 69 6e 63 72 20 68 69 73 74 4e 75 6d 0a 09 20 20 20 20 69 66 20 7b 24 68 69 73 | ......incr.histNum......if.{$his |
2d220 | 74 4e 75 6d 20 3d 3d 20 30 7d 20 7b 0a 09 09 73 65 74 20 63 6d 64 20 7b 68 69 73 74 6f 72 79 20 | tNum.==.0}.{...set.cmd.{history. |
2d240 | 65 76 65 6e 74 20 5b 65 78 70 72 20 7b 5b 68 69 73 74 6f 72 79 20 6e 65 78 74 69 64 5d 20 2d 31 | event.[expr.{[history.nextid].-1 |
2d260 | 7d 5d 7d 0a 09 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 68 69 73 74 4e 75 6d 20 3e 20 30 7d | }]}......}.elseif.{$histNum.>.0} |
2d280 | 20 7b 0a 09 09 73 65 74 20 63 6d 64 20 22 22 0a 09 09 73 65 74 20 68 69 73 74 4e 75 6d 20 31 0a | .{...set.cmd.""...set.histNum.1. |
2d2a0 | 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 73 65 74 20 63 6d 64 20 22 68 69 73 74 6f 72 79 | .....}.else.{...set.cmd."history |
2d2c0 | 20 65 76 65 6e 74 20 24 68 69 73 74 4e 75 6d 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 | .event.$histNum"......}......if. |
2d2e0 | 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 63 6d 64 20 22 22 5d 7d 20 7b 0a 09 09 63 | {[string.compare.$cmd.""]}.{...c |
2d300 | 61 74 63 68 20 7b 63 6f 6e 73 6f 6c 65 69 6e 74 65 72 70 20 65 76 61 6c 20 24 63 6d 64 7d 20 63 | atch.{consoleinterp.eval.$cmd}.c |
2d320 | 6d 64 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 2e 63 6f 6e 73 6f 6c 65 20 64 65 6c 65 74 65 20 70 | md......}.......console.delete.p |
2d340 | 72 6f 6d 70 74 45 6e 64 20 65 6e 64 0a 09 20 20 20 20 2e 63 6f 6e 73 6f 6c 65 20 69 6e 73 65 72 | romptEnd.end.......console.inser |
2d360 | 74 20 70 72 6f 6d 70 74 45 6e 64 20 24 63 6d 64 20 7b 69 6e 70 75 74 20 73 74 64 69 6e 7d 0a 20 | t.promptEnd.$cmd.{input.stdin}.. |
2d380 | 20 20 20 09 7d 0a 20 20 20 20 09 72 65 73 65 74 20 7b 0a 20 20 20 20 09 20 20 20 20 73 65 74 20 | ....}......reset.{..........set. |
2d3a0 | 68 69 73 74 4e 75 6d 20 31 0a 20 20 20 20 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 43 6f | histNum.1......}.....}.}..#.tkCo |
2d3c0 | 6e 73 6f 6c 65 50 72 6f 6d 70 74 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 | nsolePrompt.--.#.This.procedure. |
2d3e0 | 64 72 61 77 73 20 74 68 65 20 70 72 6f 6d 70 74 2e 20 20 49 66 20 74 63 6c 5f 70 72 6f 6d 70 74 | draws.the.prompt...If.tcl_prompt |
2d400 | 31 20 6f 72 20 74 63 6c 5f 70 72 6f 6d 70 74 32 0a 23 20 65 78 69 73 74 73 20 69 6e 20 74 68 65 | 1.or.tcl_prompt2.#.exists.in.the |
2d420 | 20 6d 61 69 6e 20 69 6e 74 65 72 70 72 65 74 65 72 20 69 74 20 77 69 6c 6c 20 62 65 20 63 61 6c | .main.interpreter.it.will.be.cal |
2d440 | 6c 65 64 20 74 6f 20 67 65 6e 65 72 61 74 65 20 74 68 65 20 0a 23 20 70 72 6f 6d 70 74 2e 20 20 | led.to.generate.the..#.prompt... |
2d460 | 4f 74 68 65 72 77 69 73 65 2c 20 61 20 68 61 72 64 20 63 6f 64 65 64 20 64 65 66 61 75 6c 74 20 | Otherwise,.a.hard.coded.default. |
2d480 | 70 72 6f 6d 70 74 20 69 73 20 70 72 69 6e 74 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 | prompt.is.printed..#.#.Arguments |
2d4a0 | 3a 0a 23 20 70 61 72 74 69 61 6c 20 2d 09 46 6c 61 67 20 74 6f 20 73 70 65 63 69 66 79 20 77 68 | :.#.partial.-.Flag.to.specify.wh |
2d4c0 | 69 63 68 20 70 72 6f 6d 70 74 20 74 6f 20 70 72 69 6e 74 2e 0a 0a 70 72 6f 63 20 74 6b 43 6f 6e | ich.prompt.to.print...proc.tkCon |
2d4e0 | 73 6f 6c 65 50 72 6f 6d 70 74 20 7b 7b 70 61 72 74 69 61 6c 20 6e 6f 72 6d 61 6c 7d 7d 20 7b 0a | solePrompt.{{partial.normal}}.{. |
2d500 | 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 70 61 72 74 69 61 6c 20 22 | ....if.{[string.equal.$partial." |
2d520 | 6e 6f 72 6d 61 6c 22 5d 7d 20 7b 0a 09 73 65 74 20 74 65 6d 70 20 5b 2e 63 6f 6e 73 6f 6c 65 20 | normal"]}.{..set.temp.[.console. |
2d540 | 69 6e 64 65 78 20 22 65 6e 64 20 2d 20 31 20 63 68 61 72 22 5d 0a 09 2e 63 6f 6e 73 6f 6c 65 20 | index."end.-.1.char"]...console. |
2d560 | 6d 61 72 6b 20 73 65 74 20 6f 75 74 70 75 74 20 65 6e 64 0a 20 20 20 20 09 69 66 20 7b 5b 63 6f | mark.set.output.end......if.{[co |
2d580 | 6e 73 6f 6c 65 69 6e 74 65 72 70 20 65 76 61 6c 20 22 69 6e 66 6f 20 65 78 69 73 74 73 20 74 63 | nsoleinterp.eval."info.exists.tc |
2d5a0 | 6c 5f 70 72 6f 6d 70 74 31 22 5d 7d 20 7b 0a 20 20 20 20 09 20 20 20 20 63 6f 6e 73 6f 6c 65 69 | l_prompt1"]}.{..........consolei |
2d5c0 | 6e 74 65 72 70 20 65 76 61 6c 20 22 65 76 61 6c 20 5c 5b 73 65 74 20 74 63 6c 5f 70 72 6f 6d 70 | nterp.eval."eval.\[set.tcl_promp |
2d5e0 | 74 31 5c 5d 22 0a 20 20 20 20 09 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 09 20 20 20 20 70 75 74 | t1\]"......}.else.{..........put |
2d600 | 73 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 25 20 22 0a 20 20 20 20 09 7d 0a 20 20 20 20 7d 20 65 | s.-nonewline."%."......}.....}.e |
2d620 | 6c 73 65 20 7b 0a 09 73 65 74 20 74 65 6d 70 20 5b 2e 63 6f 6e 73 6f 6c 65 20 69 6e 64 65 78 20 | lse.{..set.temp.[.console.index. |
2d640 | 6f 75 74 70 75 74 5d 0a 09 2e 63 6f 6e 73 6f 6c 65 20 6d 61 72 6b 20 73 65 74 20 6f 75 74 70 75 | output]...console.mark.set.outpu |
2d660 | 74 20 65 6e 64 0a 20 20 20 20 09 69 66 20 7b 5b 63 6f 6e 73 6f 6c 65 69 6e 74 65 72 70 20 65 76 | t.end......if.{[consoleinterp.ev |
2d680 | 61 6c 20 22 69 6e 66 6f 20 65 78 69 73 74 73 20 74 63 6c 5f 70 72 6f 6d 70 74 32 22 5d 7d 20 7b | al."info.exists.tcl_prompt2"]}.{ |
2d6a0 | 0a 20 20 20 20 09 20 20 20 20 63 6f 6e 73 6f 6c 65 69 6e 74 65 72 70 20 65 76 61 6c 20 22 65 76 | ..........consoleinterp.eval."ev |
2d6c0 | 61 6c 20 5c 5b 73 65 74 20 74 63 6c 5f 70 72 6f 6d 70 74 32 5c 5d 22 0a 20 20 20 20 09 7d 20 65 | al.\[set.tcl_prompt2\]"......}.e |
2d6e0 | 6c 73 65 20 7b 0a 09 20 20 20 20 70 75 74 73 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 3e 20 22 0a | lse.{......puts.-nonewline.">.". |
2d700 | 20 20 20 20 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 66 6c 75 73 68 20 73 74 64 6f 75 74 0a 20 20 | .....}.....}.....flush.stdout... |
2d720 | 20 20 2e 63 6f 6e 73 6f 6c 65 20 6d 61 72 6b 20 73 65 74 20 6f 75 74 70 75 74 20 24 74 65 6d 70 | ...console.mark.set.output.$temp |
2d740 | 0a 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 2e 63 6f 6e 73 6f 6c 65 20 65 6e | .....tkTextSetCursor..console.en |
2d760 | 64 0a 20 20 20 20 2e 63 6f 6e 73 6f 6c 65 20 6d 61 72 6b 20 73 65 74 20 70 72 6f 6d 70 74 45 6e | d......console.mark.set.promptEn |
2d780 | 64 20 69 6e 73 65 72 74 0a 20 20 20 20 2e 63 6f 6e 73 6f 6c 65 20 6d 61 72 6b 20 67 72 61 76 69 | d.insert......console.mark.gravi |
2d7a0 | 74 79 20 70 72 6f 6d 70 74 45 6e 64 20 6c 65 66 74 0a 7d 0a 0a 23 20 74 6b 43 6f 6e 73 6f 6c 65 | ty.promptEnd.left.}..#.tkConsole |
2d7c0 | 42 69 6e 64 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 66 69 72 73 74 20 65 | Bind.--.#.This.procedure.first.e |
2d7e0 | 6e 73 75 72 65 73 20 74 68 61 74 20 74 68 65 20 64 65 66 61 75 6c 74 20 62 69 6e 64 69 6e 67 73 | nsures.that.the.default.bindings |
2d800 | 20 66 6f 72 20 74 68 65 20 54 65 78 74 0a 23 20 63 6c 61 73 73 20 68 61 76 65 20 62 65 65 6e 20 | .for.the.Text.#.class.have.been. |
2d820 | 64 65 66 69 6e 65 64 2e 20 20 54 68 65 6e 20 63 65 72 74 61 69 6e 20 62 69 6e 64 69 6e 67 73 20 | defined...Then.certain.bindings. |
2d840 | 61 72 65 20 6f 76 65 72 72 69 64 64 65 6e 20 66 6f 72 0a 23 20 74 68 65 20 63 6c 61 73 73 2e 0a | are.overridden.for.#.the.class.. |
2d860 | 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 74 6b 43 | #.#.Arguments:.#.None...proc.tkC |
2d880 | 6f 6e 73 6f 6c 65 42 69 6e 64 20 7b 77 69 6e 7d 20 7b 0a 20 20 20 20 62 69 6e 64 74 61 67 73 20 | onsoleBind.{win}.{.....bindtags. |
2d8a0 | 24 77 69 6e 20 22 24 77 69 6e 20 54 65 78 74 20 2e 20 61 6c 6c 22 0a 0a 20 20 20 20 23 20 49 67 | $win."$win.Text...all"......#.Ig |
2d8c0 | 6e 6f 72 65 20 61 6c 6c 20 41 6c 74 2c 20 4d 65 74 61 2c 20 61 6e 64 20 43 6f 6e 74 72 6f 6c 20 | nore.all.Alt,.Meta,.and.Control. |
2d8e0 | 6b 65 79 70 72 65 73 73 65 73 20 75 6e 6c 65 73 73 20 65 78 70 6c 69 63 69 74 6c 79 20 62 6f 75 | keypresses.unless.explicitly.bou |
2d900 | 6e 64 2e 0a 20 20 20 20 23 20 4f 74 68 65 72 77 69 73 65 2c 20 69 66 20 61 20 77 69 64 67 65 74 | nd......#.Otherwise,.if.a.widget |
2d920 | 20 62 69 6e 64 69 6e 67 20 66 6f 72 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 69 73 20 64 65 66 | .binding.for.one.of.these.is.def |
2d940 | 69 6e 65 64 2c 20 74 68 65 0a 20 20 20 20 23 20 3c 4b 65 79 50 72 65 73 73 3e 20 63 6c 61 73 73 | ined,.the.....#.<KeyPress>.class |
2d960 | 20 62 69 6e 64 69 6e 67 20 77 69 6c 6c 20 61 6c 73 6f 20 66 69 72 65 20 61 6e 64 20 69 6e 73 65 | .binding.will.also.fire.and.inse |
2d980 | 72 74 20 74 68 65 20 63 68 61 72 61 63 74 65 72 2c 0a 20 20 20 20 23 20 77 68 69 63 68 20 69 73 | rt.the.character,.....#.which.is |
2d9a0 | 20 77 72 6f 6e 67 2e 20 20 44 69 74 74 6f 20 66 6f 72 20 3c 45 73 63 61 70 65 3e 2e 0a 0a 20 20 | .wrong...Ditto.for.<Escape>..... |
2d9c0 | 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 41 6c 74 2d 4b 65 79 50 72 65 73 73 3e 20 7b 23 20 6e 6f | ..bind.$win.<Alt-KeyPress>.{#.no |
2d9e0 | 74 68 69 6e 67 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 4d 65 74 61 2d 4b 65 79 50 | thing.}.....bind.$win.<Meta-KeyP |
2da00 | 72 65 73 73 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 | ress>.{#.nothing}.....bind.$win. |
2da20 | 3c 43 6f 6e 74 72 6f 6c 2d 4b 65 79 50 72 65 73 73 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 7d 0a 20 | <Control-KeyPress>.{#.nothing}.. |
2da40 | 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 45 73 63 61 70 65 3e 20 7b 23 20 6e 6f 74 68 69 6e 67 | ...bind.$win.<Escape>.{#.nothing |
2da60 | 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 4b 50 5f 45 6e 74 65 72 3e 20 7b 23 20 6e 6f | }.....bind.$win.<KP_Enter>.{#.no |
2da80 | 74 68 69 6e 67 7d 0a 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 54 61 62 3e 20 7b 0a 09 74 | thing}......bind.$win.<Tab>.{..t |
2daa0 | 6b 43 6f 6e 73 6f 6c 65 49 6e 73 65 72 74 20 25 57 20 5c 74 0a 09 66 6f 63 75 73 20 25 57 0a 09 | kConsoleInsert.%W.\t..focus.%W.. |
2dac0 | 62 72 65 61 6b 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 52 65 74 75 72 | break.....}.....bind.$win.<Retur |
2dae0 | 6e 3e 20 7b 0a 09 25 57 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 7b 65 6e 64 20 2d 20 | n>.{..%W.mark.set.insert.{end.-. |
2db00 | 31 63 7d 0a 09 74 6b 43 6f 6e 73 6f 6c 65 49 6e 73 65 72 74 20 25 57 20 22 5c 6e 22 0a 09 74 6b | 1c}..tkConsoleInsert.%W."\n"..tk |
2db20 | 43 6f 6e 73 6f 6c 65 49 6e 76 6f 6b 65 0a 09 62 72 65 61 6b 0a 20 20 20 20 7d 0a 20 20 20 20 62 | ConsoleInvoke..break.....}.....b |
2db40 | 69 6e 64 20 24 77 69 6e 20 3c 44 65 6c 65 74 65 3e 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 | ind.$win.<Delete>.{..if.{[string |
2db60 | 20 63 6f 6d 70 61 72 65 20 5b 25 57 20 74 61 67 20 6e 65 78 74 72 61 6e 67 65 20 73 65 6c 20 31 | .compare.[%W.tag.nextrange.sel.1 |
2db80 | 2e 30 20 65 6e 64 5d 20 22 22 5d 7d 20 7b 0a 09 20 20 20 20 25 57 20 74 61 67 20 72 65 6d 6f 76 | .0.end].""]}.{......%W.tag.remov |
2dba0 | 65 20 73 65 6c 20 73 65 6c 2e 66 69 72 73 74 20 70 72 6f 6d 70 74 45 6e 64 0a 09 7d 20 65 6c 73 | e.sel.sel.first.promptEnd..}.els |
2dbc0 | 65 69 66 20 7b 5b 25 57 20 63 6f 6d 70 61 72 65 20 69 6e 73 65 72 74 20 3c 20 70 72 6f 6d 70 74 | eif.{[%W.compare.insert.<.prompt |
2dbe0 | 45 6e 64 5d 7d 20 7b 0a 09 20 20 20 20 62 72 65 61 6b 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 | End]}.{......break..}.....}..... |
2dc00 | 62 69 6e 64 20 24 77 69 6e 20 3c 42 61 63 6b 53 70 61 63 65 3e 20 7b 0a 09 69 66 20 7b 5b 73 74 | bind.$win.<BackSpace>.{..if.{[st |
2dc20 | 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 25 57 20 74 61 67 20 6e 65 78 74 72 61 6e 67 65 20 73 | ring.compare.[%W.tag.nextrange.s |
2dc40 | 65 6c 20 31 2e 30 20 65 6e 64 5d 20 22 22 5d 7d 20 7b 0a 09 20 20 20 20 25 57 20 74 61 67 20 72 | el.1.0.end].""]}.{......%W.tag.r |
2dc60 | 65 6d 6f 76 65 20 73 65 6c 20 73 65 6c 2e 66 69 72 73 74 20 70 72 6f 6d 70 74 45 6e 64 0a 09 7d | emove.sel.sel.first.promptEnd..} |
2dc80 | 20 65 6c 73 65 69 66 20 7b 5b 25 57 20 63 6f 6d 70 61 72 65 20 69 6e 73 65 72 74 20 3c 3d 20 70 | .elseif.{[%W.compare.insert.<=.p |
2dca0 | 72 6f 6d 70 74 45 6e 64 5d 7d 20 7b 0a 09 20 20 20 20 62 72 65 61 6b 0a 09 7d 0a 20 20 20 20 7d | romptEnd]}.{......break..}.....} |
2dcc0 | 0a 20 20 20 20 66 6f 72 65 61 63 68 20 6c 65 66 74 20 7b 43 6f 6e 74 72 6f 6c 2d 61 20 48 6f 6d | .....foreach.left.{Control-a.Hom |
2dce0 | 65 7d 20 7b 0a 09 62 69 6e 64 20 24 77 69 6e 20 3c 24 6c 65 66 74 3e 20 7b 0a 09 20 20 20 20 69 | e}.{..bind.$win.<$left>.{......i |
2dd00 | 66 20 7b 5b 25 57 20 63 6f 6d 70 61 72 65 20 69 6e 73 65 72 74 20 3c 20 70 72 6f 6d 70 74 45 6e | f.{[%W.compare.insert.<.promptEn |
2dd20 | 64 5d 7d 20 7b 0a 09 09 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 7b 69 6e 73 65 | d]}.{...tkTextSetCursor.%W.{inse |
2dd40 | 72 74 20 6c 69 6e 65 73 74 61 72 74 7d 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 74 6b | rt.linestart}......}.else.{...tk |
2dd60 | 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 70 72 6f 6d 70 74 45 6e 64 0a 20 20 20 20 20 | TextSetCursor.%W.promptEnd...... |
2dd80 | 20 20 20 20 20 20 20 7d 0a 09 20 20 20 20 62 72 65 61 6b 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 | .......}......break..}.....}.... |
2dda0 | 20 66 6f 72 65 61 63 68 20 72 69 67 68 74 20 7b 43 6f 6e 74 72 6f 6c 2d 65 20 45 6e 64 7d 20 7b | .foreach.right.{Control-e.End}.{ |
2ddc0 | 0a 09 62 69 6e 64 20 24 77 69 6e 20 3c 24 72 69 67 68 74 3e 20 7b 0a 09 20 20 20 20 74 6b 54 65 | ..bind.$win.<$right>.{......tkTe |
2dde0 | 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 7b 69 6e 73 65 72 74 20 6c 69 6e 65 65 6e 64 7d 0a | xtSetCursor.%W.{insert.lineend}. |
2de00 | 09 20 20 20 20 62 72 65 61 6b 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 | .....break..}.....}.....bind.$wi |
2de20 | 6e 20 3c 43 6f 6e 74 72 6f 6c 2d 64 3e 20 7b 0a 09 69 66 20 7b 5b 25 57 20 63 6f 6d 70 61 72 65 | n.<Control-d>.{..if.{[%W.compare |
2de40 | 20 69 6e 73 65 72 74 20 3c 20 70 72 6f 6d 70 74 45 6e 64 5d 7d 20 7b 0a 09 20 20 20 20 62 72 65 | .insert.<.promptEnd]}.{......bre |
2de60 | 61 6b 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 43 6f 6e 74 72 | ak..}.....}.....bind.$win.<Contr |
2de80 | 6f 6c 2d 6b 3e 20 7b 0a 09 69 66 20 7b 5b 25 57 20 63 6f 6d 70 61 72 65 20 69 6e 73 65 72 74 20 | ol-k>.{..if.{[%W.compare.insert. |
2dea0 | 3c 20 70 72 6f 6d 70 74 45 6e 64 5d 7d 20 7b 0a 09 20 20 20 20 25 57 20 6d 61 72 6b 20 73 65 74 | <.promptEnd]}.{......%W.mark.set |
2dec0 | 20 69 6e 73 65 72 74 20 70 72 6f 6d 70 74 45 6e 64 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 | .insert.promptEnd..}.....}.....b |
2dee0 | 69 6e 64 20 24 77 69 6e 20 3c 43 6f 6e 74 72 6f 6c 2d 74 3e 20 7b 0a 09 69 66 20 7b 5b 25 57 20 | ind.$win.<Control-t>.{..if.{[%W. |
2df00 | 63 6f 6d 70 61 72 65 20 69 6e 73 65 72 74 20 3c 20 70 72 6f 6d 70 74 45 6e 64 5d 7d 20 7b 0a 09 | compare.insert.<.promptEnd]}.{.. |
2df20 | 20 20 20 20 62 72 65 61 6b 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e | ....break..}.....}.....bind.$win |
2df40 | 20 3c 4d 65 74 61 2d 64 3e 20 7b 0a 09 69 66 20 7b 5b 25 57 20 63 6f 6d 70 61 72 65 20 69 6e 73 | .<Meta-d>.{..if.{[%W.compare.ins |
2df60 | 65 72 74 20 3c 20 70 72 6f 6d 70 74 45 6e 64 5d 7d 20 7b 0a 09 20 20 20 20 62 72 65 61 6b 0a 09 | ert.<.promptEnd]}.{......break.. |
2df80 | 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 4d 65 74 61 2d 42 61 63 6b | }.....}.....bind.$win.<Meta-Back |
2dfa0 | 53 70 61 63 65 3e 20 7b 0a 09 69 66 20 7b 5b 25 57 20 63 6f 6d 70 61 72 65 20 69 6e 73 65 72 74 | Space>.{..if.{[%W.compare.insert |
2dfc0 | 20 3c 3d 20 70 72 6f 6d 70 74 45 6e 64 5d 7d 20 7b 0a 09 20 20 20 20 62 72 65 61 6b 0a 09 7d 0a | .<=.promptEnd]}.{......break..}. |
2dfe0 | 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 43 6f 6e 74 72 6f 6c 2d 68 3e 20 | ....}.....bind.$win.<Control-h>. |
2e000 | 7b 0a 09 69 66 20 7b 5b 25 57 20 63 6f 6d 70 61 72 65 20 69 6e 73 65 72 74 20 3c 3d 20 70 72 6f | {..if.{[%W.compare.insert.<=.pro |
2e020 | 6d 70 74 45 6e 64 5d 7d 20 7b 0a 09 20 20 20 20 62 72 65 61 6b 0a 09 7d 0a 20 20 20 20 7d 0a 20 | mptEnd]}.{......break..}.....}.. |
2e040 | 20 20 20 66 6f 72 65 61 63 68 20 70 72 65 76 20 7b 43 6f 6e 74 72 6f 6c 2d 70 20 55 70 7d 20 7b | ...foreach.prev.{Control-p.Up}.{ |
2e060 | 0a 09 62 69 6e 64 20 24 77 69 6e 20 3c 24 70 72 65 76 3e 20 7b 0a 09 20 20 20 20 74 6b 43 6f 6e | ..bind.$win.<$prev>.{......tkCon |
2e080 | 73 6f 6c 65 48 69 73 74 6f 72 79 20 70 72 65 76 0a 09 20 20 20 20 62 72 65 61 6b 0a 09 7d 0a 20 | soleHistory.prev......break..}.. |
2e0a0 | 20 20 20 7d 0a 20 20 20 20 66 6f 72 65 61 63 68 20 70 72 65 76 20 7b 43 6f 6e 74 72 6f 6c 2d 6e | ...}.....foreach.prev.{Control-n |
2e0c0 | 20 44 6f 77 6e 7d 20 7b 0a 09 62 69 6e 64 20 24 77 69 6e 20 3c 24 70 72 65 76 3e 20 7b 0a 09 20 | .Down}.{..bind.$win.<$prev>.{... |
2e0e0 | 20 20 20 74 6b 43 6f 6e 73 6f 6c 65 48 69 73 74 6f 72 79 20 6e 65 78 74 0a 09 20 20 20 20 62 72 | ...tkConsoleHistory.next......br |
2e100 | 65 61 6b 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 49 6e 73 65 | eak..}.....}.....bind.$win.<Inse |
2e120 | 72 74 3e 20 7b 0a 09 63 61 74 63 68 20 7b 74 6b 43 6f 6e 73 6f 6c 65 49 6e 73 65 72 74 20 25 57 | rt>.{..catch.{tkConsoleInsert.%W |
2e140 | 20 5b 73 65 6c 65 63 74 69 6f 6e 20 67 65 74 20 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 5d 7d 0a | .[selection.get.-displayof.%W]}. |
2e160 | 09 62 72 65 61 6b 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 4b 65 79 50 | .break.....}.....bind.$win.<KeyP |
2e180 | 72 65 73 73 3e 20 7b 0a 09 74 6b 43 6f 6e 73 6f 6c 65 49 6e 73 65 72 74 20 25 57 20 25 41 0a 09 | ress>.{..tkConsoleInsert.%W.%A.. |
2e1a0 | 62 72 65 61 6b 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 65 61 63 68 20 6c 65 66 74 20 7b 43 6f | break.....}.....foreach.left.{Co |
2e1c0 | 6e 74 72 6f 6c 2d 62 20 4c 65 66 74 7d 20 7b 0a 09 62 69 6e 64 20 24 77 69 6e 20 3c 24 6c 65 66 | ntrol-b.Left}.{..bind.$win.<$lef |
2e1e0 | 74 3e 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 25 57 20 63 6f 6d 70 61 72 65 20 69 6e 73 65 72 74 | t>.{......if.{[%W.compare.insert |
2e200 | 20 3d 3d 20 70 72 6f 6d 70 74 45 6e 64 5d 7d 20 7b 0a 09 09 62 72 65 61 6b 0a 09 20 20 20 20 7d | .==.promptEnd]}.{...break......} |
2e220 | 0a 09 20 20 20 20 74 6b 54 65 78 74 53 65 74 43 75 72 73 6f 72 20 25 57 20 69 6e 73 65 72 74 2d | ......tkTextSetCursor.%W.insert- |
2e240 | 31 63 0a 09 20 20 20 20 62 72 65 61 6b 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 65 61 | 1c......break..}.....}.....forea |
2e260 | 63 68 20 72 69 67 68 74 20 7b 43 6f 6e 74 72 6f 6c 2d 66 20 52 69 67 68 74 7d 20 7b 0a 09 62 69 | ch.right.{Control-f.Right}.{..bi |
2e280 | 6e 64 20 24 77 69 6e 20 3c 24 72 69 67 68 74 3e 20 7b 0a 09 20 20 20 20 74 6b 54 65 78 74 53 65 | nd.$win.<$right>.{......tkTextSe |
2e2a0 | 74 43 75 72 73 6f 72 20 25 57 20 69 6e 73 65 72 74 2b 31 63 0a 09 20 20 20 20 62 72 65 61 6b 0a | tCursor.%W.insert+1c......break. |
2e2c0 | 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 46 39 3e 20 7b 0a 09 65 | .}.....}.....bind.$win.<F9>.{..e |
2e2e0 | 76 61 6c 20 64 65 73 74 72 6f 79 20 5b 77 69 6e 66 6f 20 63 68 69 6c 64 20 2e 5d 0a 09 69 66 20 | val.destroy.[winfo.child..]..if. |
2e300 | 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 | {[string.equal.$tcl_platform(pla |
2e320 | 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 09 20 20 20 20 73 6f 75 72 | tform)."macintosh"]}.{......sour |
2e340 | 63 65 20 2d 72 73 72 63 20 43 6f 6e 73 6f 6c 65 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 | ce.-rsrc.Console..}.else.{...... |
2e360 | 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 74 6b 5f 6c 69 62 72 61 72 79 20 63 6f | source.[file.join.$tk_library.co |
2e380 | 6e 73 6f 6c 65 2e 74 63 6c 5d 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 | nsole.tcl]..}.....}.....bind.$wi |
2e3a0 | 6e 20 3c 3c 43 75 74 3e 3e 20 7b 0a 20 20 20 20 20 20 20 20 23 20 53 61 6d 65 20 61 73 20 74 68 | n.<<Cut>>.{.........#.Same.as.th |
2e3c0 | 65 20 63 6f 70 79 20 65 76 65 6e 74 0a 20 09 69 66 20 7b 21 5b 63 61 74 63 68 20 7b 73 65 74 20 | e.copy.event...if.{![catch.{set. |
2e3e0 | 64 61 74 61 20 5b 25 57 20 67 65 74 20 73 65 6c 2e 66 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 5d | data.[%W.get.sel.first.sel.last] |
2e400 | 7d 5d 7d 20 7b 0a 09 20 20 20 20 63 6c 69 70 62 6f 61 72 64 20 63 6c 65 61 72 20 2d 64 69 73 70 | }]}.{......clipboard.clear.-disp |
2e420 | 6c 61 79 6f 66 20 25 57 0a 09 20 20 20 20 63 6c 69 70 62 6f 61 72 64 20 61 70 70 65 6e 64 20 2d | layof.%W......clipboard.append.- |
2e440 | 64 69 73 70 6c 61 79 6f 66 20 25 57 20 24 64 61 74 61 0a 09 7d 0a 09 62 72 65 61 6b 0a 20 20 20 | displayof.%W.$data..}..break.... |
2e460 | 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 3c 3c 43 6f 70 79 3e 3e 20 7b 0a 20 09 69 66 | .}.....bind.$win.<<Copy>>.{...if |
2e480 | 20 7b 21 5b 63 61 74 63 68 20 7b 73 65 74 20 64 61 74 61 20 5b 25 57 20 67 65 74 20 73 65 6c 2e | .{![catch.{set.data.[%W.get.sel. |
2e4a0 | 66 69 72 73 74 20 73 65 6c 2e 6c 61 73 74 5d 7d 5d 7d 20 7b 0a 09 20 20 20 20 63 6c 69 70 62 6f | first.sel.last]}]}.{......clipbo |
2e4c0 | 61 72 64 20 63 6c 65 61 72 20 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 0a 09 20 20 20 20 63 6c 69 | ard.clear.-displayof.%W......cli |
2e4e0 | 70 62 6f 61 72 64 20 61 70 70 65 6e 64 20 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 20 24 64 61 74 | pboard.append.-displayof.%W.$dat |
2e500 | 61 0a 09 7d 0a 09 62 72 65 61 6b 0a 20 20 20 20 7d 0a 20 20 20 20 62 69 6e 64 20 24 77 69 6e 20 | a..}..break.....}.....bind.$win. |
2e520 | 3c 3c 50 61 73 74 65 3e 3e 20 7b 0a 09 63 61 74 63 68 20 7b 0a 09 20 20 20 20 73 65 74 20 63 6c | <<Paste>>.{..catch.{......set.cl |
2e540 | 69 70 20 5b 73 65 6c 65 63 74 69 6f 6e 20 67 65 74 20 2d 64 69 73 70 6c 61 79 6f 66 20 25 57 20 | ip.[selection.get.-displayof.%W. |
2e560 | 2d 73 65 6c 65 63 74 69 6f 6e 20 43 4c 49 50 42 4f 41 52 44 5d 0a 09 20 20 20 20 73 65 74 20 6c | -selection.CLIPBOARD]......set.l |
2e580 | 69 73 74 20 5b 73 70 6c 69 74 20 24 63 6c 69 70 20 5c 6e 5c 72 5d 0a 09 20 20 20 20 74 6b 43 6f | ist.[split.$clip.\n\r]......tkCo |
2e5a0 | 6e 73 6f 6c 65 49 6e 73 65 72 74 20 25 57 20 5b 6c 69 6e 64 65 78 20 24 6c 69 73 74 20 30 5d 0a | nsoleInsert.%W.[lindex.$list.0]. |
2e5c0 | 09 20 20 20 20 66 6f 72 65 61 63 68 20 78 20 5b 6c 72 61 6e 67 65 20 24 6c 69 73 74 20 31 20 65 | .....foreach.x.[lrange.$list.1.e |
2e5e0 | 6e 64 5d 20 7b 0a 09 09 25 57 20 6d 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 7b 65 6e 64 20 | nd].{...%W.mark.set.insert.{end. |
2e600 | 2d 20 31 63 7d 0a 09 09 74 6b 43 6f 6e 73 6f 6c 65 49 6e 73 65 72 74 20 25 57 20 22 5c 6e 22 0a | -.1c}...tkConsoleInsert.%W."\n". |
2e620 | 09 09 74 6b 43 6f 6e 73 6f 6c 65 49 6e 76 6f 6b 65 0a 09 09 74 6b 43 6f 6e 73 6f 6c 65 49 6e 73 | ..tkConsoleInvoke...tkConsoleIns |
2e640 | 65 72 74 20 25 57 20 24 78 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 62 72 65 61 6b 0a 20 20 20 20 7d | ert.%W.$x......}..}..break.....} |
2e660 | 0a 7d 0a 0a 23 20 74 6b 43 6f 6e 73 6f 6c 65 49 6e 73 65 72 74 20 2d 2d 0a 23 20 49 6e 73 65 72 | .}..#.tkConsoleInsert.--.#.Inser |
2e680 | 74 20 61 20 73 74 72 69 6e 67 20 69 6e 74 6f 20 61 20 74 65 78 74 20 61 74 20 74 68 65 20 70 6f | t.a.string.into.a.text.at.the.po |
2e6a0 | 69 6e 74 20 6f 66 20 74 68 65 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 2e 0a 23 20 49 | int.of.the.insertion.cursor..#.I |
2e6c0 | 66 20 74 68 65 72 65 20 69 73 20 61 20 73 65 6c 65 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 74 65 | f.there.is.a.selection.in.the.te |
2e6e0 | 78 74 2c 20 61 6e 64 20 69 74 20 63 6f 76 65 72 73 20 74 68 65 20 70 6f 69 6e 74 20 6f 66 20 74 | xt,.and.it.covers.the.point.of.t |
2e700 | 68 65 0a 23 20 69 6e 73 65 72 74 69 6f 6e 20 63 75 72 73 6f 72 2c 20 74 68 65 6e 20 64 65 6c 65 | he.#.insertion.cursor,.then.dele |
2e720 | 74 65 20 74 68 65 20 73 65 6c 65 63 74 69 6f 6e 20 62 65 66 6f 72 65 20 69 6e 73 65 72 74 69 6e | te.the.selection.before.insertin |
2e740 | 67 2e 20 20 49 6e 73 65 72 74 69 6f 6e 0a 23 20 69 73 20 72 65 73 74 72 69 63 74 65 64 20 74 6f | g...Insertion.#.is.restricted.to |
2e760 | 20 74 68 65 20 70 72 6f 6d 70 74 20 61 72 65 61 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a | .the.prompt.area..#.#.Arguments: |
2e780 | 0a 23 20 77 20 2d 09 09 54 68 65 20 74 65 78 74 20 77 69 6e 64 6f 77 20 69 6e 20 77 68 69 63 68 | .#.w.-..The.text.window.in.which |
2e7a0 | 20 74 6f 20 69 6e 73 65 72 74 20 74 68 65 20 73 74 72 69 6e 67 0a 23 20 73 20 2d 09 09 54 68 65 | .to.insert.the.string.#.s.-..The |
2e7c0 | 20 73 74 72 69 6e 67 20 74 6f 20 69 6e 73 65 72 74 20 28 75 73 75 61 6c 6c 79 20 6a 75 73 74 20 | .string.to.insert.(usually.just. |
2e7e0 | 61 20 73 69 6e 67 6c 65 20 63 68 61 72 61 63 74 65 72 29 0a 0a 70 72 6f 63 20 74 6b 43 6f 6e 73 | a.single.character)..proc.tkCons |
2e800 | 6f 6c 65 49 6e 73 65 72 74 20 7b 77 20 73 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e | oleInsert.{w.s}.{.....if.{[strin |
2e820 | 67 20 65 71 75 61 6c 20 24 73 20 22 22 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a | g.equal.$s.""]}.{..return.....}. |
2e840 | 20 20 20 20 63 61 74 63 68 20 7b 0a 09 69 66 20 7b 5b 24 77 20 63 6f 6d 70 61 72 65 20 73 65 6c | ....catch.{..if.{[$w.compare.sel |
2e860 | 2e 66 69 72 73 74 20 3c 3d 20 69 6e 73 65 72 74 5d 0a 09 09 26 26 20 5b 24 77 20 63 6f 6d 70 61 | .first.<=.insert]...&&.[$w.compa |
2e880 | 72 65 20 73 65 6c 2e 6c 61 73 74 20 3e 3d 20 69 6e 73 65 72 74 5d 7d 20 7b 0a 09 20 20 20 20 24 | re.sel.last.>=.insert]}.{......$ |
2e8a0 | 77 20 74 61 67 20 72 65 6d 6f 76 65 20 73 65 6c 20 73 65 6c 2e 66 69 72 73 74 20 70 72 6f 6d 70 | w.tag.remove.sel.sel.first.promp |
2e8c0 | 74 45 6e 64 0a 09 20 20 20 20 24 77 20 64 65 6c 65 74 65 20 73 65 6c 2e 66 69 72 73 74 20 73 65 | tEnd......$w.delete.sel.first.se |
2e8e0 | 6c 2e 6c 61 73 74 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 24 77 20 63 6f 6d 70 | l.last..}.....}.....if.{[$w.comp |
2e900 | 61 72 65 20 69 6e 73 65 72 74 20 3c 20 70 72 6f 6d 70 74 45 6e 64 5d 7d 20 7b 0a 09 24 77 20 6d | are.insert.<.promptEnd]}.{..$w.m |
2e920 | 61 72 6b 20 73 65 74 20 69 6e 73 65 72 74 20 65 6e 64 09 0a 20 20 20 20 7d 0a 20 20 20 20 24 77 | ark.set.insert.end......}.....$w |
2e940 | 20 69 6e 73 65 72 74 20 69 6e 73 65 72 74 20 24 73 20 7b 69 6e 70 75 74 20 73 74 64 69 6e 7d 0a | .insert.insert.$s.{input.stdin}. |
2e960 | 20 20 20 20 24 77 20 73 65 65 20 69 6e 73 65 72 74 0a 7d 0a 0a 23 20 74 6b 43 6f 6e 73 6f 6c 65 | ....$w.see.insert.}..#.tkConsole |
2e980 | 4f 75 74 70 75 74 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 72 6f 75 74 69 6e 65 20 69 73 20 63 61 | Output.--.#.#.This.routine.is.ca |
2e9a0 | 6c 6c 65 64 20 64 69 72 65 63 74 6c 79 20 62 79 20 43 6f 6e 73 6f 6c 65 50 75 74 73 43 6d 64 20 | lled.directly.by.ConsolePutsCmd. |
2e9c0 | 74 6f 20 63 61 75 73 65 20 61 20 73 74 72 69 6e 67 0a 23 20 74 6f 20 62 65 20 64 69 73 70 6c 61 | to.cause.a.string.#.to.be.displa |
2e9e0 | 79 65 64 20 69 6e 20 74 68 65 20 63 6f 6e 73 6f 6c 65 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 | yed.in.the.console..#.#.Argument |
2ea00 | 73 3a 0a 23 20 64 65 73 74 20 2d 09 54 68 65 20 6f 75 74 70 75 74 20 74 61 67 20 74 6f 20 62 65 | s:.#.dest.-.The.output.tag.to.be |
2ea20 | 20 75 73 65 64 3a 20 65 69 74 68 65 72 20 22 73 74 64 65 72 72 22 20 6f 72 20 22 73 74 64 6f 75 | .used:.either."stderr".or."stdou |
2ea40 | 74 22 2e 0a 23 20 73 74 72 69 6e 67 20 2d 09 54 68 65 20 73 74 72 69 6e 67 20 74 6f 20 62 65 20 | t"..#.string.-.The.string.to.be. |
2ea60 | 64 69 73 70 6c 61 79 65 64 2e 0a 0a 70 72 6f 63 20 74 6b 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 | displayed...proc.tkConsoleOutput |
2ea80 | 20 7b 64 65 73 74 20 73 74 72 69 6e 67 7d 20 7b 0a 20 20 20 20 2e 63 6f 6e 73 6f 6c 65 20 69 6e | .{dest.string}.{......console.in |
2eaa0 | 73 65 72 74 20 6f 75 74 70 75 74 20 24 73 74 72 69 6e 67 20 24 64 65 73 74 0a 20 20 20 20 2e 63 | sert.output.$string.$dest......c |
2eac0 | 6f 6e 73 6f 6c 65 20 73 65 65 20 69 6e 73 65 72 74 0a 7d 0a 0a 23 20 74 6b 43 6f 6e 73 6f 6c 65 | onsole.see.insert.}..#.tkConsole |
2eae0 | 45 78 69 74 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 72 6f 75 74 69 6e 65 20 69 73 20 63 61 6c 6c | Exit.--.#.#.This.routine.is.call |
2eb00 | 65 64 20 62 79 20 43 6f 6e 73 6f 6c 65 45 76 65 6e 74 50 72 6f 63 20 77 68 65 6e 20 74 68 65 20 | ed.by.ConsoleEventProc.when.the. |
2eb20 | 6d 61 69 6e 20 77 69 6e 64 6f 77 20 6f 66 0a 23 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e | main.window.of.#.the.application |
2eb40 | 20 69 73 20 64 65 73 74 72 6f 79 65 64 2e 20 20 44 6f 6e 27 74 20 63 61 6c 6c 20 65 78 69 74 20 | .is.destroyed...Don't.call.exit. |
2eb60 | 2d 20 74 68 61 74 20 70 72 6f 62 61 62 6c 79 20 61 6c 72 65 61 64 79 0a 23 20 68 61 70 70 65 6e | -.that.probably.already.#.happen |
2eb80 | 65 64 2e 20 20 4a 75 73 74 20 64 65 6c 65 74 65 20 6f 75 72 20 77 69 6e 64 6f 77 2e 0a 23 0a 23 | ed...Just.delete.our.window..#.# |
2eba0 | 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 74 6b 43 6f 6e 73 | .Arguments:.#.None...proc.tkCons |
2ebc0 | 6f 6c 65 45 78 69 74 20 7b 7d 20 7b 0a 20 20 20 20 64 65 73 74 72 6f 79 20 2e 0a 7d 0a 0a 23 20 | oleExit.{}.{.....destroy...}..#. |
2ebe0 | 74 6b 43 6f 6e 73 6f 6c 65 41 62 6f 75 74 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 72 6f 75 74 69 | tkConsoleAbout.--.#.#.This.routi |
2ec00 | 6e 65 20 64 69 73 70 6c 61 79 73 20 61 6e 20 41 62 6f 75 74 20 62 6f 78 20 74 6f 20 73 68 6f 77 | ne.displays.an.About.box.to.show |
2ec20 | 20 54 63 6c 2f 54 6b 20 76 65 72 73 69 6f 6e 20 69 6e 66 6f 2e 0a 23 0a 23 20 41 72 67 75 6d 65 | .Tcl/Tk.version.info..#.#.Argume |
2ec40 | 6e 74 73 3a 0a 23 20 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 74 6b 43 6f 6e 73 6f 6c 65 41 62 6f 75 | nts:.#.None...proc.tkConsoleAbou |
2ec60 | 74 20 7b 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 5f 70 61 74 63 68 4c 65 76 65 6c 0a | t.{}.{.....global.tk_patchLevel. |
2ec80 | 20 20 20 20 74 6b 5f 6d 65 73 73 61 67 65 42 6f 78 20 2d 74 79 70 65 20 6f 6b 20 2d 6d 65 73 73 | ....tk_messageBox.-type.ok.-mess |
2eca0 | 61 67 65 20 22 54 63 6c 20 66 6f 72 20 57 69 6e 64 6f 77 73 0a 43 6f 70 79 72 69 67 68 74 20 5c | age."Tcl.for.Windows.Copyright.\ |
2ecc0 | 32 35 31 20 31 39 39 39 20 53 63 72 69 70 74 69 63 73 20 43 6f 72 70 6f 72 61 74 69 6f 6e 0a 0a | 251.1999.Scriptics.Corporation.. |
2ece0 | 54 63 6c 20 5b 69 6e 66 6f 20 70 61 74 63 68 6c 65 76 65 6c 5d 0a 54 6b 20 24 74 6b 5f 70 61 74 | Tcl.[info.patchlevel].Tk.$tk_pat |
2ed00 | 63 68 4c 65 76 65 6c 22 0a 7d 0a 0a 23 20 6e 6f 77 20 69 6e 69 74 69 61 6c 69 7a 65 20 74 68 65 | chLevel".}..#.now.initialize.the |
2ed20 | 20 63 6f 6e 73 6f 6c 65 0a 0a 74 6b 43 6f 6e 73 6f 6c 65 49 6e 69 74 0a 00 00 39 c3 23 20 6d 73 | .console..tkConsoleInit...9.#.ms |
2ed40 | 67 62 6f 78 2e 74 63 6c 20 2d 2d 0a 23 0a 23 09 49 6d 70 6c 65 6d 65 6e 74 73 20 6d 65 73 73 61 | gbox.tcl.--.#.#.Implements.messa |
2ed60 | 67 65 62 6f 78 65 73 20 66 6f 72 20 70 6c 61 74 66 6f 72 6d 73 20 74 68 61 74 20 64 6f 20 6e 6f | geboxes.for.platforms.that.do.no |
2ed80 | 74 20 68 61 76 65 20 6e 61 74 69 76 65 0a 23 09 6d 65 73 73 61 67 65 62 6f 78 20 73 75 70 70 6f | t.have.native.#.messagebox.suppo |
2eda0 | 72 74 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 6d 73 67 62 6f 78 2e 74 63 | rt..#.#.RCS:.@(#).$Id:.msgbox.tc |
2edc0 | 6c 2c 76 20 31 2e 38 20 31 39 39 39 2f 31 32 2f 30 33 20 30 37 3a 31 35 3a 30 32 20 68 6f 62 62 | l,v.1.8.1999/12/03.07:15:02.hobb |
2ede0 | 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 2d 31 | s.Exp.$.#.#.Copyright.(c).1994-1 |
2ee00 | 39 39 37 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 | 997.Sun.Microsystems,.Inc..#.#.S |
2ee20 | 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 | ee.the.file."license.terms".for. |
2ee40 | 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 | information.on.usage.and.redistr |
2ee60 | 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 | ibution.#.of.this.file,.and.for. |
2ee80 | 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a | a.DISCLAIMER.OF.ALL.WARRANTIES.. |
2eea0 | 23 0a 0a 23 20 45 6e 73 75 72 65 20 65 78 69 73 74 65 6e 63 65 20 6f 66 20 3a 3a 74 6b 3a 3a 64 | #..#.Ensure.existence.of.::tk::d |
2eec0 | 69 61 6c 6f 67 20 6e 61 6d 65 73 70 61 63 65 0a 23 0a 6e 61 6d 65 73 70 61 63 65 20 65 76 61 6c | ialog.namespace.#.namespace.eval |
2eee0 | 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f 67 20 7b 7d 0a 0a 69 6d 61 67 65 20 63 72 65 61 74 65 20 62 | .::tk::dialog.{}..image.create.b |
2ef00 | 69 74 6d 61 70 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 62 31 20 2d 66 6f 72 65 67 72 6f 75 | itmap.::tk::dialog::b1.-foregrou |
2ef20 | 6e 64 20 62 6c 61 63 6b 20 5c 0a 2d 64 61 74 61 20 22 23 64 65 66 69 6e 65 20 62 31 5f 77 69 64 | nd.black.\.-data."#define.b1_wid |
2ef40 | 74 68 20 33 32 5c 6e 23 64 65 66 69 6e 65 20 62 31 5f 68 65 69 67 68 74 20 33 32 0a 73 74 61 74 | th.32\n#define.b1_height.32.stat |
2ef60 | 69 63 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 71 31 5f 62 69 74 73 5b 5d 20 3d 20 7b 0a 20 | ic.unsigned.char.q1_bits[].=.{.. |
2ef80 | 20 20 30 78 30 30 2c 20 30 78 66 38 2c 20 30 78 31 66 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | ..0x00,.0xf8,.0x1f,.0x00,.0x00,. |
2efa0 | 30 78 30 37 2c 20 30 78 65 30 2c 20 30 78 30 30 2c 20 30 78 63 30 2c 20 30 78 30 30 2c 20 30 78 | 0x07,.0xe0,.0x00,.0xc0,.0x00,.0x |
2efc0 | 30 30 2c 20 30 78 30 33 2c 0a 20 20 20 30 78 32 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 | 00,.0x03,....0x20,.0x00,.0x00,.0 |
2efe0 | 78 30 34 2c 20 30 78 31 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 38 2c 20 30 78 30 | x04,.0x10,.0x00,.0x00,.0x08,.0x0 |
2f000 | 38 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 31 30 2c 0a 20 20 20 30 78 30 34 2c 20 30 78 | 8,.0x00,.0x00,.0x10,....0x04,.0x |
2f020 | 30 30 2c 20 30 78 30 30 2c 20 30 78 32 30 2c 20 30 78 30 32 2c 20 30 78 30 30 2c 20 30 78 30 30 | 00,.0x00,.0x20,.0x02,.0x00,.0x00 |
2f040 | 2c 20 30 78 34 30 2c 20 30 78 30 32 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 34 30 2c 0a | ,.0x40,.0x02,.0x00,.0x00,.0x40,. |
2f060 | 20 20 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 31 2c | ...0x01,.0x00,.0x00,.0x80,.0x01, |
2f080 | 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 | .0x00,.0x00,.0x80,.0x01,.0x00,.0 |
2f0a0 | 78 30 30 2c 20 30 78 38 30 2c 0a 20 20 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | x00,.0x80,....0x01,.0x00,.0x00,. |
2f0c0 | 30 78 38 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 | 0x80,.0x01,.0x00,.0x00,.0x80,.0x |
2f0e0 | 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 0a 20 20 20 30 78 30 31 2c 20 30 | 01,.0x00,.0x00,.0x80,....0x01,.0 |
2f100 | 78 30 30 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 32 2c 20 30 78 30 30 2c 20 30 78 30 | x00,.0x00,.0x80,.0x02,.0x00,.0x0 |
2f120 | 30 2c 20 30 78 34 30 2c 20 30 78 30 32 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 34 30 2c | 0,.0x40,.0x02,.0x00,.0x00,.0x40, |
2f140 | 0a 20 20 20 30 78 30 34 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 32 30 2c 20 30 78 30 38 | ....0x04,.0x00,.0x00,.0x20,.0x08 |
2f160 | 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 31 30 2c 20 30 78 31 30 2c 20 30 78 30 30 2c 20 | ,.0x00,.0x00,.0x10,.0x10,.0x00,. |
2f180 | 30 78 30 30 2c 20 30 78 30 38 2c 0a 20 20 20 30 78 36 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | 0x00,.0x08,....0x60,.0x00,.0x00, |
2f1a0 | 20 30 78 30 34 2c 20 30 78 38 30 2c 20 30 78 30 33 2c 20 30 78 38 30 2c 20 30 78 30 33 2c 20 30 | .0x04,.0x80,.0x03,.0x80,.0x03,.0 |
2f1c0 | 78 30 30 2c 20 30 78 30 63 2c 20 30 78 37 38 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 | x00,.0x0c,.0x78,.0x00,....0x00,. |
2f1e0 | 30 78 33 30 2c 20 30 78 30 34 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 34 30 2c 20 30 78 | 0x30,.0x04,.0x00,.0x00,.0x40,.0x |
2f200 | 30 34 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 34 30 2c 20 30 78 30 34 2c 20 30 78 30 30 | 04,.0x00,.0x00,.0x40,.0x04,.0x00 |
2f220 | 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 34 2c 20 30 78 30 30 2c 20 30 78 30 | ,....0x00,.0x80,.0x04,.0x00,.0x0 |
2f240 | 30 2c 20 30 78 30 30 2c 20 30 78 30 35 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | 0,.0x00,.0x05,.0x00,.0x00,.0x00, |
2f260 | 20 30 78 30 36 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 | .0x06,.0x00,....0x00,.0x00,.0x00 |
2f280 | 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 7d 3b | ,.0x00,.0x00,.0x00,.0x00,.0x00}; |
2f2a0 | 22 0a 69 6d 61 67 65 20 63 72 65 61 74 65 20 62 69 74 6d 61 70 20 3a 3a 74 6b 3a 3a 64 69 61 6c | ".image.create.bitmap.::tk::dial |
2f2c0 | 6f 67 3a 3a 62 32 20 2d 66 6f 72 65 67 72 6f 75 6e 64 20 77 68 69 74 65 20 5c 0a 2d 64 61 74 61 | og::b2.-foreground.white.\.-data |
2f2e0 | 20 22 23 64 65 66 69 6e 65 20 62 32 5f 77 69 64 74 68 20 33 32 5c 6e 23 64 65 66 69 6e 65 20 62 | ."#define.b2_width.32\n#define.b |
2f300 | 32 5f 68 65 69 67 68 74 20 33 32 0a 73 74 61 74 69 63 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 | 2_height.32.static.unsigned.char |
2f320 | 20 62 32 5f 62 69 74 73 5b 5d 20 3d 20 7b 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 | .b2_bits[].=.{....0x00,.0x00,.0x |
2f340 | 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 66 38 2c 20 30 78 31 66 2c 20 30 78 30 30 | 00,.0x00,.0x00,.0xf8,.0x1f,.0x00 |
2f360 | 2c 20 30 78 30 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 63 | ,.0x00,.0xff,.0xff,.0x00,....0xc |
2f380 | 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 30 33 2c 20 30 78 65 30 2c 20 30 78 66 66 2c | 0,.0xff,.0xff,.0x03,.0xe0,.0xff, |
2f3a0 | 20 30 78 66 66 2c 20 30 78 30 37 2c 20 30 78 66 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 | .0xff,.0x07,.0xf0,.0xff,.0xff,.0 |
2f3c0 | 78 30 66 2c 0a 20 20 20 30 78 66 38 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 31 66 2c 20 | x0f,....0xf8,.0xff,.0xff,.0x1f,. |
2f3e0 | 30 78 66 63 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 33 66 2c 20 30 78 66 63 2c 20 30 78 | 0xfc,.0xff,.0xff,.0x3f,.0xfc,.0x |
2f400 | 66 66 2c 20 30 78 66 66 2c 20 30 78 33 66 2c 0a 20 20 20 30 78 66 65 2c 20 30 78 66 66 2c 20 30 | ff,.0xff,.0x3f,....0xfe,.0xff,.0 |
2f420 | 78 66 66 2c 20 30 78 37 66 2c 20 30 78 66 65 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 37 | xff,.0x7f,.0xfe,.0xff,.0xff,.0x7 |
2f440 | 66 2c 20 30 78 66 65 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 37 66 2c 0a 20 20 20 30 78 | f,.0xfe,.0xff,.0xff,.0x7f,....0x |
2f460 | 66 65 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 37 66 2c 20 30 78 66 65 2c 20 30 78 66 66 | fe,.0xff,.0xff,.0x7f,.0xfe,.0xff |
2f480 | 2c 20 30 78 66 66 2c 20 30 78 37 66 2c 20 30 78 66 65 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 | ,.0xff,.0x7f,.0xfe,.0xff,.0xff,. |
2f4a0 | 30 78 37 66 2c 0a 20 20 20 30 78 66 65 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 37 66 2c | 0x7f,....0xfe,.0xff,.0xff,.0x7f, |
2f4c0 | 20 30 78 66 63 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 33 66 2c 20 30 78 66 63 2c 20 30 | .0xfc,.0xff,.0xff,.0x3f,.0xfc,.0 |
2f4e0 | 78 66 66 2c 20 30 78 66 66 2c 20 30 78 33 66 2c 0a 20 20 20 30 78 66 38 2c 20 30 78 66 66 2c 20 | xff,.0xff,.0x3f,....0xf8,.0xff,. |
2f500 | 30 78 66 66 2c 20 30 78 31 66 2c 20 30 78 66 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 | 0xff,.0x1f,.0xf0,.0xff,.0xff,.0x |
2f520 | 30 66 2c 20 30 78 65 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 30 37 2c 0a 20 20 20 30 | 0f,.0xe0,.0xff,.0xff,.0x07,....0 |
2f540 | 78 38 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 20 30 78 66 | x80,.0xff,.0xff,.0x03,.0x00,.0xf |
2f560 | 63 2c 20 30 78 37 66 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 66 30 2c 20 30 78 30 37 2c | c,.0x7f,.0x00,.0x00,.0xf0,.0x07, |
2f580 | 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 63 30 2c 20 30 78 30 33 2c 20 30 78 30 30 | .0x00,....0x00,.0xc0,.0x03,.0x00 |
2f5a0 | 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | ,.0x00,.0x80,.0x03,.0x00,.0x00,. |
2f5c0 | 30 78 38 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c | 0x80,.0x03,.0x00,....0x00,.0x00, |
2f5e0 | 20 30 78 30 33 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 32 2c 20 30 | .0x03,.0x00,.0x00,.0x00,.0x02,.0 |
2f600 | 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 | x00,.0x00,.0x00,.0x00,.0x00,.... |
2f620 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 | 0x00,.0x00,.0x00,.0x00,.0x00,.0x |
2f640 | 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 7d 3b 22 0a 69 6d 61 67 65 20 63 72 65 61 74 65 20 62 | 00,.0x00,.0x00};".image.create.b |
2f660 | 69 74 6d 61 70 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 71 20 2d 66 6f 72 65 67 72 6f 75 6e | itmap.::tk::dialog::q.-foregroun |
2f680 | 64 20 62 6c 75 65 20 5c 0a 2d 64 61 74 61 20 22 23 64 65 66 69 6e 65 20 71 5f 77 69 64 74 68 20 | d.blue.\.-data."#define.q_width. |
2f6a0 | 33 32 5c 6e 23 64 65 66 69 6e 65 20 71 5f 68 65 69 67 68 74 20 33 32 0a 73 74 61 74 69 63 20 75 | 32\n#define.q_height.32.static.u |
2f6c0 | 6e 73 69 67 6e 65 64 20 63 68 61 72 20 71 5f 62 69 74 73 5b 5d 20 3d 20 7b 0a 20 20 20 30 78 30 | nsigned.char.q_bits[].=.{....0x0 |
2f6e0 | 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | 0,.0x00,.0x00,.0x00,.0x00,.0x00, |
2f700 | 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 | .0x00,.0x00,.0x00,.0x00,.0x00,.0 |
2f720 | 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | x00,....0x00,.0x00,.0x00,.0x00,. |
2f740 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 | 0x00,.0x00,.0x00,.0x00,.0x00,.0x |
2f760 | 65 30 2c 20 30 78 30 37 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 31 30 2c 20 30 | e0,.0x07,.0x00,....0x00,.0x10,.0 |
2f780 | 78 30 66 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 31 38 2c 20 30 78 31 65 2c 20 30 78 30 | x0f,.0x00,.0x00,.0x18,.0x1e,.0x0 |
2f7a0 | 30 2c 20 30 78 30 30 2c 20 30 78 33 38 2c 20 30 78 31 65 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 | 0,.0x00,.0x38,.0x1e,.0x00,....0x |
2f7c0 | 30 30 2c 20 30 78 33 38 2c 20 30 78 31 65 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 31 30 | 00,.0x38,.0x1e,.0x00,.0x00,.0x10 |
2f7e0 | 2c 20 30 78 30 66 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 37 2c 20 | ,.0x0f,.0x00,.0x00,.0x80,.0x07,. |
2f800 | 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 63 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c | 0x00,....0x00,.0xc0,.0x01,.0x00, |
2f820 | 20 30 78 30 30 2c 20 30 78 63 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 | .0x00,.0xc0,.0x00,.0x00,.0x00,.0 |
2f840 | 78 63 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | xc0,.0x00,.0x00,....0x00,.0x00,. |
2f860 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 63 30 2c 20 30 78 30 30 2c 20 30 78 | 0x00,.0x00,.0x00,.0xc0,.0x00,.0x |
2f880 | 30 30 2c 20 30 78 30 30 2c 20 30 78 65 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c 0a 20 20 20 30 | 00,.0x00,.0xe0,.0x01,.0x00,....0 |
2f8a0 | 78 30 30 2c 20 30 78 65 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 63 | x00,.0xe0,.0x01,.0x00,.0x00,.0xc |
2f8c0 | 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | 0,.0x00,.0x00,.0x00,.0x00,.0x00, |
2f8e0 | 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 | .0x00,....0x00,.0x00,.0x00,.0x00 |
2f900 | 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | ,.0x00,.0x00,.0x00,.0x00,.0x00,. |
2f920 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c | 0x00,.0x00,.0x00,....0x00,.0x00, |
2f940 | 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 | .0x00,.0x00,.0x00,.0x00,.0x00,.0 |
2f960 | 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 | x00,.0x00,.0x00,.0x00,.0x00,.... |
2f980 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 | 0x00,.0x00,.0x00,.0x00,.0x00,.0x |
2f9a0 | 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 | 00,.0x00,.0x00,.0x00,.0x00,.0x00 |
2f9c0 | 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 | ,.0x00,....0x00,.0x00,.0x00,.0x0 |
2f9e0 | 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 7d 3b 22 0a 69 6d 61 | 0,.0x00,.0x00,.0x00,.0x00};".ima |
2fa00 | 67 65 20 63 72 65 61 74 65 20 62 69 74 6d 61 70 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 69 | ge.create.bitmap.::tk::dialog::i |
2fa20 | 20 2d 66 6f 72 65 67 72 6f 75 6e 64 20 62 6c 75 65 20 5c 0a 2d 64 61 74 61 20 22 23 64 65 66 69 | .-foreground.blue.\.-data."#defi |
2fa40 | 6e 65 20 69 5f 77 69 64 74 68 20 33 32 5c 6e 23 64 65 66 69 6e 65 20 69 5f 68 65 69 67 68 74 20 | ne.i_width.32\n#define.i_height. |
2fa60 | 33 32 0a 73 74 61 74 69 63 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 69 5f 62 69 74 73 5b 5d | 32.static.unsigned.char.i_bits[] |
2fa80 | 20 3d 20 7b 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | .=.{....0x00,.0x00,.0x00,.0x00,. |
2faa0 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 | 0x00,.0x00,.0x00,.0x00,.0x00,.0x |
2fac0 | 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 65 30 2c 20 30 | 00,.0x00,.0x00,....0x00,.0xe0,.0 |
2fae0 | 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 66 30 2c 20 30 78 30 33 2c 20 30 78 30 | x01,.0x00,.0x00,.0xf0,.0x03,.0x0 |
2fb00 | 30 2c 20 30 78 30 30 2c 20 30 78 66 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 | 0,.0x00,.0xf0,.0x03,.0x00,....0x |
2fb20 | 30 30 2c 20 30 78 65 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 | 00,.0xe0,.0x01,.0x00,.0x00,.0x00 |
2fb40 | 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | ,.0x00,.0x00,.0x00,.0x00,.0x00,. |
2fb60 | 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 66 38 2c 20 30 78 30 33 2c 20 30 78 30 30 2c | 0x00,....0x00,.0xf8,.0x03,.0x00, |
2fb80 | 20 30 78 30 30 2c 20 30 78 66 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 | .0x00,.0xf0,.0x03,.0x00,.0x00,.0 |
2fba0 | 78 65 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 65 30 2c 20 | xe0,.0x03,.0x00,....0x00,.0xe0,. |
2fbc0 | 30 78 30 33 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 65 30 2c 20 30 78 30 33 2c 20 30 78 | 0x03,.0x00,.0x00,.0xe0,.0x03,.0x |
2fbe0 | 30 30 2c 20 30 78 30 30 2c 20 30 78 65 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 0a 20 20 20 30 | 00,.0x00,.0xe0,.0x03,.0x00,....0 |
2fc00 | 78 30 30 2c 20 30 78 65 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 65 | x00,.0xe0,.0x03,.0x00,.0x00,.0xe |
2fc20 | 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 66 30 2c 20 30 78 30 37 2c | 0,.0x03,.0x00,.0x00,.0xf0,.0x07, |
2fc40 | 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 66 38 2c 20 30 78 30 66 2c 20 30 78 30 30 | .0x00,....0x00,.0xf8,.0x0f,.0x00 |
2fc60 | 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | ,.0x00,.0x00,.0x00,.0x00,.0x00,. |
2fc80 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c | 0x00,.0x00,.0x00,....0x00,.0x00, |
2fca0 | 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 | .0x00,.0x00,.0x00,.0x00,.0x00,.0 |
2fcc0 | 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 | x00,.0x00,.0x00,.0x00,.0x00,.... |
2fce0 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 | 0x00,.0x00,.0x00,.0x00,.0x00,.0x |
2fd00 | 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 | 00,.0x00,.0x00,.0x00,.0x00,.0x00 |
2fd20 | 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 | ,.0x00,....0x00,.0x00,.0x00,.0x0 |
2fd40 | 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | 0,.0x00,.0x00,.0x00,.0x00,.0x00, |
2fd60 | 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 | .0x00,.0x00,.0x00,....0x00,.0x00 |
2fd80 | 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | ,.0x00,.0x00,.0x00,.0x00,.0x00,. |
2fda0 | 30 78 30 30 7d 3b 22 0a 69 6d 61 67 65 20 63 72 65 61 74 65 20 62 69 74 6d 61 70 20 3a 3a 74 6b | 0x00};".image.create.bitmap.::tk |
2fdc0 | 3a 3a 64 69 61 6c 6f 67 3a 3a 77 31 20 2d 66 6f 72 65 67 72 6f 75 6e 64 20 62 6c 61 63 6b 20 5c | ::dialog::w1.-foreground.black.\ |
2fde0 | 0a 2d 64 61 74 61 20 22 23 64 65 66 69 6e 65 20 77 31 5f 77 69 64 74 68 20 33 32 5c 6e 23 64 65 | .-data."#define.w1_width.32\n#de |
2fe00 | 66 69 6e 65 20 77 31 5f 68 65 69 67 68 74 20 33 32 0a 73 74 61 74 69 63 20 75 6e 73 69 67 6e 65 | fine.w1_height.32.static.unsigne |
2fe20 | 64 20 63 68 61 72 20 77 31 5f 62 69 74 73 5b 5d 20 3d 20 7b 0a 20 20 20 30 78 30 30 2c 20 30 78 | d.char.w1_bits[].=.{....0x00,.0x |
2fe40 | 38 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 34 30 2c 20 30 78 30 32 | 80,.0x01,.0x00,.0x00,.0x40,.0x02 |
2fe60 | 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 32 30 2c 20 30 78 30 34 2c 20 30 78 30 30 2c 0a | ,.0x00,.0x00,.0x20,.0x04,.0x00,. |
2fe80 | 20 20 20 30 78 30 30 2c 20 30 78 31 30 2c 20 30 78 30 34 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | ...0x00,.0x10,.0x04,.0x00,.0x00, |
2fea0 | 20 30 78 31 30 2c 20 30 78 30 38 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 38 2c 20 30 | .0x10,.0x08,.0x00,.0x00,.0x08,.0 |
2fec0 | 78 30 38 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 38 2c 20 30 78 31 30 2c 20 | x08,.0x00,....0x00,.0x08,.0x10,. |
2fee0 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 34 2c 20 30 78 31 30 2c 20 30 78 30 30 2c 20 30 78 | 0x00,.0x00,.0x04,.0x10,.0x00,.0x |
2ff00 | 30 30 2c 20 30 78 30 34 2c 20 30 78 32 30 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 | 00,.0x04,.0x20,.0x00,....0x00,.0 |
2ff20 | 78 30 32 2c 20 30 78 32 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 32 2c 20 30 78 34 | x02,.0x20,.0x00,.0x00,.0x02,.0x4 |
2ff40 | 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 31 2c 20 30 78 34 30 2c 20 30 78 30 30 2c | 0,.0x00,.0x00,.0x01,.0x40,.0x00, |
2ff60 | 0a 20 20 20 30 78 30 30 2c 20 30 78 30 31 2c 20 30 78 38 30 2c 20 30 78 30 30 2c 20 30 78 38 30 | ....0x00,.0x01,.0x80,.0x00,.0x80 |
2ff80 | 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 30 2c 20 | ,.0x00,.0x80,.0x00,.0x80,.0x00,. |
2ffa0 | 30 78 30 30 2c 20 30 78 30 31 2c 0a 20 20 20 30 78 34 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | 0x00,.0x01,....0x40,.0x00,.0x00, |
2ffc0 | 20 30 78 30 31 2c 20 30 78 34 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 32 2c 20 30 | .0x01,.0x40,.0x00,.0x00,.0x02,.0 |
2ffe0 | 78 32 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 32 2c 0a 20 20 20 30 78 32 30 2c 20 | x20,.0x00,.0x00,.0x02,....0x20,. |
30000 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 34 2c 20 30 78 31 30 2c 20 30 78 30 30 2c 20 30 78 | 0x00,.0x00,.0x04,.0x10,.0x00,.0x |
30020 | 30 30 2c 20 30 78 30 34 2c 20 30 78 31 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 38 | 00,.0x04,.0x10,.0x00,.0x00,.0x08 |
30040 | 2c 0a 20 20 20 30 78 30 38 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 38 2c 20 30 78 30 | ,....0x08,.0x00,.0x00,.0x08,.0x0 |
30060 | 38 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 31 30 2c 20 30 78 30 34 2c 20 30 78 30 30 2c | 8,.0x00,.0x00,.0x10,.0x04,.0x00, |
30080 | 20 30 78 30 30 2c 20 30 78 31 30 2c 0a 20 20 20 30 78 30 34 2c 20 30 78 30 30 2c 20 30 78 30 30 | .0x00,.0x10,....0x04,.0x00,.0x00 |
300a0 | 2c 20 30 78 32 30 2c 20 30 78 30 32 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 32 30 2c 20 | ,.0x20,.0x02,.0x00,.0x00,.0x20,. |
300c0 | 30 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 34 30 2c 0a 20 20 20 30 78 30 31 2c | 0x01,.0x00,.0x00,.0x40,....0x01, |
300e0 | 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 34 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 | .0x00,.0x00,.0x40,.0x01,.0x00,.0 |
30100 | 78 30 30 2c 20 30 78 34 30 2c 20 30 78 30 32 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 32 | x00,.0x40,.0x02,.0x00,.0x00,.0x2 |
30120 | 30 2c 0a 20 20 20 30 78 66 63 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 31 66 2c 20 30 78 | 0,....0xfc,.0xff,.0xff,.0x1f,.0x |
30140 | 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 7d 3b 22 0a 69 6d 61 67 65 20 63 72 | 00,.0x00,.0x00,.0x00};".image.cr |
30160 | 65 61 74 65 20 62 69 74 6d 61 70 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 77 32 20 2d 66 6f | eate.bitmap.::tk::dialog::w2.-fo |
30180 | 72 65 67 72 6f 75 6e 64 20 79 65 6c 6c 6f 77 20 5c 0a 2d 64 61 74 61 20 22 23 64 65 66 69 6e 65 | reground.yellow.\.-data."#define |
301a0 | 20 77 32 5f 77 69 64 74 68 20 33 32 5c 6e 23 64 65 66 69 6e 65 20 77 32 5f 68 65 69 67 68 74 20 | .w2_width.32\n#define.w2_height. |
301c0 | 33 32 0a 73 74 61 74 69 63 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 77 32 5f 62 69 74 73 5b | 32.static.unsigned.char.w2_bits[ |
301e0 | 5d 20 3d 20 7b 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | ].=.{....0x00,.0x00,.0x00,.0x00, |
30200 | 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 | .0x00,.0x80,.0x01,.0x00,.0x00,.0 |
30220 | 78 63 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 65 30 2c 20 | xc0,.0x03,.0x00,....0x00,.0xe0,. |
30240 | 30 78 30 33 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 65 30 2c 20 30 78 30 37 2c 20 30 78 | 0x03,.0x00,.0x00,.0xe0,.0x07,.0x |
30260 | 30 30 2c 20 30 78 30 30 2c 20 30 78 66 30 2c 20 30 78 30 37 2c 20 30 78 30 30 2c 0a 20 20 20 30 | 00,.0x00,.0xf0,.0x07,.0x00,....0 |
30280 | 78 30 30 2c 20 30 78 66 30 2c 20 30 78 30 66 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 66 | x00,.0xf0,.0x0f,.0x00,.0x00,.0xf |
302a0 | 38 2c 20 30 78 30 66 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 66 38 2c 20 30 78 31 66 2c | 8,.0x0f,.0x00,.0x00,.0xf8,.0x1f, |
302c0 | 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 66 63 2c 20 30 78 31 66 2c 20 30 78 30 30 | .0x00,....0x00,.0xfc,.0x1f,.0x00 |
302e0 | 2c 20 30 78 30 30 2c 20 30 78 66 63 2c 20 30 78 33 66 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | ,.0x00,.0xfc,.0x3f,.0x00,.0x00,. |
30300 | 30 78 66 65 2c 20 30 78 33 66 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 66 65 2c | 0xfe,.0x3f,.0x00,....0x00,.0xfe, |
30320 | 20 30 78 37 66 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 66 66 2c 20 30 78 37 66 2c 20 30 | .0x7f,.0x00,.0x00,.0xff,.0x7f,.0 |
30340 | 78 30 30 2c 20 30 78 30 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 30 30 2c 0a 20 20 20 | x00,.0x00,.0xff,.0xff,.0x00,.... |
30360 | 30 78 38 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 | 0x80,.0xff,.0xff,.0x00,.0x80,.0x |
30380 | 66 66 2c 20 30 78 66 66 2c 20 30 78 30 31 2c 20 30 78 63 30 2c 20 30 78 66 66 2c 20 30 78 66 66 | ff,.0xff,.0x01,.0xc0,.0xff,.0xff |
303a0 | 2c 20 30 78 30 31 2c 0a 20 20 20 30 78 63 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 30 | ,.0x01,....0xc0,.0xff,.0xff,.0x0 |
303c0 | 33 2c 20 30 78 65 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 30 33 2c 20 30 78 65 30 2c | 3,.0xe0,.0xff,.0xff,.0x03,.0xe0, |
303e0 | 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 30 37 2c 0a 20 20 20 30 78 66 30 2c 20 30 78 66 66 | .0xff,.0xff,.0x07,....0xf0,.0xff |
30400 | 2c 20 30 78 66 66 2c 20 30 78 30 37 2c 20 30 78 66 30 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 | ,.0xff,.0x07,.0xf0,.0xff,.0xff,. |
30420 | 30 78 30 66 2c 20 30 78 66 38 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 30 66 2c 0a 20 20 | 0x0f,.0xf8,.0xff,.0xff,.0x0f,... |
30440 | 20 30 78 66 38 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 31 66 2c 20 30 78 66 63 2c 20 30 | .0xf8,.0xff,.0xff,.0x1f,.0xfc,.0 |
30460 | 78 66 66 2c 20 30 78 66 66 2c 20 30 78 31 66 2c 20 30 78 66 65 2c 20 30 78 66 66 2c 20 30 78 66 | xff,.0xff,.0x1f,.0xfe,.0xff,.0xf |
30480 | 66 2c 20 30 78 33 66 2c 0a 20 20 20 30 78 66 65 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 | f,.0x3f,....0xfe,.0xff,.0xff,.0x |
304a0 | 33 66 2c 20 30 78 66 65 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 33 66 2c 20 30 78 66 63 | 3f,.0xfe,.0xff,.0xff,.0x3f,.0xfc |
304c0 | 2c 20 30 78 66 66 2c 20 30 78 66 66 2c 20 30 78 31 66 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 | ,.0xff,.0xff,.0x1f,....0x00,.0x0 |
304e0 | 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | 0,.0x00,.0x00,.0x00,.0x00,.0x00, |
30500 | 20 30 78 30 30 7d 3b 22 0a 69 6d 61 67 65 20 63 72 65 61 74 65 20 62 69 74 6d 61 70 20 3a 3a 74 | .0x00};".image.create.bitmap.::t |
30520 | 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 77 33 20 2d 66 6f 72 65 67 72 6f 75 6e 64 20 62 6c 61 63 6b 20 | k::dialog::w3.-foreground.black. |
30540 | 5c 0a 2d 64 61 74 61 20 22 23 64 65 66 69 6e 65 20 77 33 5f 77 69 64 74 68 20 33 32 5c 6e 23 64 | \.-data."#define.w3_width.32\n#d |
30560 | 65 66 69 6e 65 20 77 33 5f 68 65 69 67 68 74 20 33 32 0a 73 74 61 74 69 63 20 75 6e 73 69 67 6e | efine.w3_height.32.static.unsign |
30580 | 65 64 20 63 68 61 72 20 77 33 5f 62 69 74 73 5b 5d 20 3d 20 7b 0a 20 20 20 30 78 30 30 2c 20 30 | ed.char.w3_bits[].=.{....0x00,.0 |
305a0 | 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 | x00,.0x00,.0x00,.0x00,.0x00,.0x0 |
305c0 | 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | 0,.0x00,.0x00,.0x00,.0x00,.0x00, |
305e0 | 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 | ....0x00,.0x00,.0x00,.0x00,.0x00 |
30600 | 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | ,.0x00,.0x00,.0x00,.0x00,.0x00,. |
30620 | 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c | 0x00,.0x00,....0x00,.0x00,.0x00, |
30640 | 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 | .0x00,.0x00,.0x00,.0x00,.0x00,.0 |
30660 | 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 | x00,.0x00,.0x00,.0x00,....0x00,. |
30680 | 30 78 63 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 65 30 2c 20 30 78 | 0xc0,.0x03,.0x00,.0x00,.0xe0,.0x |
306a0 | 30 37 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 65 30 2c 20 30 78 30 37 2c 20 30 78 30 30 | 07,.0x00,.0x00,.0xe0,.0x07,.0x00 |
306c0 | 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 65 30 2c 20 30 78 30 37 2c 20 30 78 30 30 2c 20 30 78 30 | ,....0x00,.0xe0,.0x07,.0x00,.0x0 |
306e0 | 30 2c 20 30 78 65 30 2c 20 30 78 30 37 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 65 30 2c | 0,.0xe0,.0x07,.0x00,.0x00,.0xe0, |
30700 | 20 30 78 30 37 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 63 30 2c 20 30 78 30 33 | .0x07,.0x00,....0x00,.0xc0,.0x03 |
30720 | 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 63 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 20 | ,.0x00,.0x00,.0xc0,.0x03,.0x00,. |
30740 | 30 78 30 30 2c 20 30 78 63 30 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c | 0x00,.0xc0,.0x03,.0x00,....0x00, |
30760 | 20 30 78 38 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 | .0x80,.0x01,.0x00,.0x00,.0x80,.0 |
30780 | 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 31 2c 20 30 78 30 | x01,.0x00,.0x00,.0x80,.0x01,.0x0 |
307a0 | 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 | 0,....0x00,.0x00,.0x00,.0x00,.0x |
307c0 | 30 30 2c 20 30 78 38 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 63 30 | 00,.0x80,.0x01,.0x00,.0x00,.0xc0 |
307e0 | 2c 20 30 78 30 33 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 63 30 2c 20 30 78 30 | ,.0x03,.0x00,....0x00,.0xc0,.0x0 |
30800 | 33 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 38 30 2c 20 30 78 30 31 2c 20 30 78 30 30 2c | 3,.0x00,.0x00,.0x80,.0x01,.0x00, |
30820 | 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 0a 20 20 20 30 78 30 30 | .0x00,.0x00,.0x00,.0x00,....0x00 |
30840 | 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 | ,.0x00,.0x00,.0x00,.0x00,.0x00,. |
30860 | 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 | 0x00,.0x00,.0x00,.0x00,.0x00,.0x |
30880 | 30 30 2c 0a 20 20 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 | 00,....0x00,.0x00,.0x00,.0x00,.0 |
308a0 | 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 2c 20 30 78 30 30 7d 3b 22 0a 0a 23 20 74 6b 4d 65 | x00,.0x00,.0x00,.0x00};"..#.tkMe |
308c0 | 73 73 61 67 65 42 6f 78 20 2d 2d 0a 23 0a 23 09 50 6f 70 73 20 75 70 20 61 20 6d 65 73 73 61 67 | ssageBox.--.#.#.Pops.up.a.messag |
308e0 | 65 62 6f 78 20 77 69 74 68 20 61 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e 2d 73 75 70 70 6c 69 65 | ebox.with.an.application-supplie |
30900 | 64 20 6d 65 73 73 61 67 65 20 77 69 74 68 0a 23 09 61 6e 20 69 63 6f 6e 20 61 6e 64 20 61 20 6c | d.message.with.#.an.icon.and.a.l |
30920 | 69 73 74 20 6f 66 20 62 75 74 74 6f 6e 73 2e 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 77 | ist.of.buttons..This.procedure.w |
30940 | 69 6c 6c 20 62 65 20 63 61 6c 6c 65 64 0a 23 09 62 79 20 74 6b 5f 6d 65 73 73 61 67 65 42 6f 78 | ill.be.called.#.by.tk_messageBox |
30960 | 20 69 66 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 6e | .if.the.platform.does.not.have.n |
30980 | 61 74 69 76 65 0a 23 09 6d 65 73 73 61 67 65 62 6f 78 20 73 75 70 70 6f 72 74 2c 20 6f 72 20 69 | ative.#.messagebox.support,.or.i |
309a0 | 66 20 74 68 65 20 70 61 72 74 69 63 75 6c 61 72 20 74 79 70 65 20 6f 66 20 6d 65 73 73 61 67 65 | f.the.particular.type.of.message |
309c0 | 62 6f 78 20 69 73 0a 23 09 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 20 6e 61 74 69 76 65 6c 79 2e | box.is.#.not.supported.natively. |
309e0 | 0a 23 0a 23 09 43 6f 6c 6f 72 20 69 63 6f 6e 73 20 61 72 65 20 75 73 65 64 20 6f 6e 20 55 6e 69 | .#.#.Color.icons.are.used.on.Uni |
30a00 | 78 20 64 69 73 70 6c 61 79 73 20 74 68 61 74 20 68 61 76 65 20 61 20 63 6f 6c 6f 72 0a 23 09 64 | x.displays.that.have.a.color.#.d |
30a20 | 65 70 74 68 20 6f 66 20 34 20 6f 72 20 6d 6f 72 65 20 61 6e 64 20 24 74 6b 5f 73 74 72 69 63 74 | epth.of.4.or.more.and.$tk_strict |
30a40 | 4d 6f 74 69 66 20 69 73 20 6e 6f 74 20 6f 6e 2e 0a 23 0a 23 09 54 68 69 73 20 70 72 6f 63 65 64 | Motif.is.not.on..#.#.This.proced |
30a60 | 75 72 65 20 69 73 20 61 20 70 72 69 76 61 74 65 20 70 72 6f 63 65 64 75 72 65 20 73 68 6f 75 6c | ure.is.a.private.procedure.shoul |
30a80 | 64 6e 27 74 20 62 65 20 63 61 6c 6c 65 64 0a 23 09 64 69 72 65 63 74 6c 79 2e 20 43 61 6c 6c 20 | dn't.be.called.#.directly..Call. |
30aa0 | 74 6b 5f 6d 65 73 73 61 67 65 42 6f 78 20 69 6e 73 74 65 61 64 2e 0a 23 0a 23 09 53 65 65 20 74 | tk_messageBox.instead..#.#.See.t |
30ac0 | 68 65 20 75 73 65 72 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 64 65 74 61 69 6c | he.user.documentation.for.detail |
30ae0 | 73 20 6f 6e 20 77 68 61 74 20 74 6b 5f 6d 65 73 73 61 67 65 42 6f 78 20 64 6f 65 73 2e 0a 23 0a | s.on.what.tk_messageBox.does..#. |
30b00 | 70 72 6f 63 20 74 6b 4d 65 73 73 61 67 65 42 6f 78 20 7b 61 72 67 73 7d 20 7b 0a 20 20 20 20 67 | proc.tkMessageBox.{args}.{.....g |
30b20 | 6c 6f 62 61 6c 20 74 6b 50 72 69 76 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 20 74 6b 5f 73 74 72 | lobal.tkPriv.tcl_platform.tk_str |
30b40 | 69 63 74 4d 6f 74 69 66 0a 0a 20 20 20 20 73 65 74 20 77 20 74 6b 50 72 69 76 4d 73 67 42 6f 78 | ictMotif......set.w.tkPrivMsgBox |
30b60 | 0a 20 20 20 20 75 70 76 61 72 20 23 30 20 24 77 20 64 61 74 61 0a 0a 20 20 20 20 23 0a 20 20 20 | .....upvar.#0.$w.data......#.... |
30b80 | 20 23 20 54 68 65 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 74 69 74 6c | .#.The.default.value.of.the.titl |
30ba0 | 65 20 69 73 20 73 70 61 63 65 20 28 22 20 22 29 20 6e 6f 74 20 74 68 65 20 65 6d 70 74 79 20 73 | e.is.space.(".").not.the.empty.s |
30bc0 | 74 72 69 6e 67 0a 20 20 20 20 23 20 62 65 63 61 75 73 65 20 66 6f 72 20 73 6f 6d 65 20 77 69 6e | tring.....#.because.for.some.win |
30be0 | 64 6f 77 20 6d 61 6e 61 67 65 72 73 2c 20 61 20 0a 20 20 20 20 23 09 09 77 6d 20 74 69 74 6c 65 | dow.managers,.a......#..wm.title |
30c00 | 20 2e 66 6f 6f 20 22 22 0a 20 20 20 20 23 20 63 61 75 73 65 73 20 74 68 65 20 77 69 6e 64 6f 77 | ..foo."".....#.causes.the.window |
30c20 | 20 74 69 74 6c 65 20 74 6f 20 62 65 20 22 66 6f 6f 22 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 | .title.to.be."foo".instead.of.th |
30c40 | 65 20 65 6d 70 74 79 20 73 74 72 69 6e 67 2e 0a 20 20 20 20 23 0a 20 20 20 20 73 65 74 20 73 70 | e.empty.string......#.....set.sp |
30c60 | 65 63 73 20 7b 0a 09 7b 2d 64 65 66 61 75 6c 74 20 22 22 20 22 22 20 22 22 7d 0a 20 20 20 20 20 | ecs.{..{-default.""."".""}...... |
30c80 | 20 20 20 7b 2d 69 63 6f 6e 20 22 22 20 22 22 20 22 69 6e 66 6f 22 7d 0a 20 20 20 20 20 20 20 20 | ...{-icon."".""."info"}......... |
30ca0 | 7b 2d 6d 65 73 73 61 67 65 20 22 22 20 22 22 20 22 22 7d 0a 20 20 20 20 20 20 20 20 7b 2d 70 61 | {-message.""."".""}.........{-pa |
30cc0 | 72 65 6e 74 20 22 22 20 22 22 20 2e 7d 0a 20 20 20 20 20 20 20 20 7b 2d 74 69 74 6c 65 20 22 22 | rent."".""..}.........{-title."" |
30ce0 | 20 22 22 20 22 20 22 7d 0a 20 20 20 20 20 20 20 20 7b 2d 74 79 70 65 20 22 22 20 22 22 20 22 6f | .""."."}.........{-type."".""."o |
30d00 | 6b 22 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 74 63 6c 50 61 72 73 65 43 6f 6e 66 69 67 53 70 65 | k"}.....}......tclParseConfigSpe |
30d20 | 63 20 24 77 20 24 73 70 65 63 73 20 22 22 20 24 61 72 67 73 0a 0a 20 20 20 20 69 66 20 7b 5b 6c | c.$w.$specs."".$args......if.{[l |
30d40 | 73 65 61 72 63 68 20 2d 65 78 61 63 74 20 7b 69 6e 66 6f 20 77 61 72 6e 69 6e 67 20 65 72 72 6f | search.-exact.{info.warning.erro |
30d60 | 72 20 71 75 65 73 74 69 6f 6e 7d 20 24 64 61 74 61 28 2d 69 63 6f 6e 29 5d 20 3d 3d 20 2d 31 7d | r.question}.$data(-icon)].==.-1} |
30d80 | 20 7b 0a 09 65 72 72 6f 72 20 22 62 61 64 20 2d 69 63 6f 6e 20 76 61 6c 75 65 20 5c 22 24 64 61 | .{..error."bad.-icon.value.\"$da |
30da0 | 74 61 28 2d 69 63 6f 6e 29 5c 22 3a 20 6d 75 73 74 20 62 65 20 65 72 72 6f 72 2c 20 69 6e 66 6f | ta(-icon)\":.must.be.error,.info |
30dc0 | 2c 20 71 75 65 73 74 69 6f 6e 2c 20 6f 72 20 77 61 72 6e 69 6e 67 22 0a 20 20 20 20 7d 0a 20 20 | ,.question,.or.warning".....}... |
30de0 | 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 | ..if.{[string.equal.$tcl_platfor |
30e00 | 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 09 73 77 69 | m(platform)."macintosh"]}.{..swi |
30e20 | 74 63 68 20 2d 2d 20 24 64 61 74 61 28 2d 69 63 6f 6e 29 20 7b 0a 09 20 20 20 20 22 65 72 72 6f | tch.--.$data(-icon).{......"erro |
30e40 | 72 22 20 20 20 20 20 7b 73 65 74 20 64 61 74 61 28 2d 69 63 6f 6e 29 20 22 73 74 6f 70 22 7d 0a | r".....{set.data(-icon)."stop"}. |
30e60 | 09 20 20 20 20 22 77 61 72 6e 69 6e 67 22 20 20 20 7b 73 65 74 20 64 61 74 61 28 2d 69 63 6f 6e | ....."warning"...{set.data(-icon |
30e80 | 29 20 22 63 61 75 74 69 6f 6e 22 7d 0a 09 20 20 20 20 22 69 6e 66 6f 22 20 20 20 20 20 20 7b 73 | )."caution"}......"info"......{s |
30ea0 | 65 74 20 64 61 74 61 28 2d 69 63 6f 6e 29 20 22 6e 6f 74 65 22 7d 0a 09 7d 0a 20 20 20 20 7d 0a | et.data(-icon)."note"}..}.....}. |
30ec0 | 0a 20 20 20 20 69 66 20 7b 21 5b 77 69 6e 66 6f 20 65 78 69 73 74 73 20 24 64 61 74 61 28 2d 70 | .....if.{![winfo.exists.$data(-p |
30ee0 | 61 72 65 6e 74 29 5d 7d 20 7b 0a 09 65 72 72 6f 72 20 22 62 61 64 20 77 69 6e 64 6f 77 20 70 61 | arent)]}.{..error."bad.window.pa |
30f00 | 74 68 20 6e 61 6d 65 20 5c 22 24 64 61 74 61 28 2d 70 61 72 65 6e 74 29 5c 22 22 0a 20 20 20 20 | th.name.\"$data(-parent)\""..... |
30f20 | 7d 0a 0a 20 20 20 20 73 77 69 74 63 68 20 2d 2d 20 24 64 61 74 61 28 2d 74 79 70 65 29 20 7b 0a | }......switch.--.$data(-type).{. |
30f40 | 09 61 62 6f 72 74 72 65 74 72 79 69 67 6e 6f 72 65 20 7b 0a 09 20 20 20 20 73 65 74 20 62 75 74 | .abortretryignore.{......set.but |
30f60 | 74 6f 6e 73 20 7b 0a 09 09 7b 61 62 6f 72 74 20 20 2d 77 69 64 74 68 20 36 20 2d 74 65 78 74 20 | tons.{...{abort..-width.6.-text. |
30f80 | 41 62 6f 72 74 20 2d 75 6e 64 65 72 20 30 7d 0a 09 09 7b 72 65 74 72 79 20 20 2d 77 69 64 74 68 | Abort.-under.0}...{retry..-width |
30fa0 | 20 36 20 2d 74 65 78 74 20 52 65 74 72 79 20 2d 75 6e 64 65 72 20 30 7d 0a 09 09 7b 69 67 6e 6f | .6.-text.Retry.-under.0}...{igno |
30fc0 | 72 65 20 2d 77 69 64 74 68 20 36 20 2d 74 65 78 74 20 49 67 6e 6f 72 65 20 2d 75 6e 64 65 72 20 | re.-width.6.-text.Ignore.-under. |
30fe0 | 30 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 6f 6b 20 7b 0a 09 20 20 20 20 73 65 74 20 62 75 74 74 | 0}......}..}..ok.{......set.butt |
31000 | 6f 6e 73 20 7b 0a 09 09 7b 6f 6b 20 2d 77 69 64 74 68 20 36 20 2d 74 65 78 74 20 4f 4b 20 2d 75 | ons.{...{ok.-width.6.-text.OK.-u |
31020 | 6e 64 65 72 20 30 7d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 | nder.0}......}......if.{[string. |
31040 | 65 71 75 61 6c 20 24 64 61 74 61 28 2d 64 65 66 61 75 6c 74 29 20 22 22 5d 7d 20 7b 0a 09 09 73 | equal.$data(-default).""]}.{...s |
31060 | 65 74 20 64 61 74 61 28 2d 64 65 66 61 75 6c 74 29 20 22 6f 6b 22 0a 09 20 20 20 20 7d 0a 09 7d | et.data(-default)."ok"......}..} |
31080 | 0a 09 6f 6b 63 61 6e 63 65 6c 20 7b 0a 09 20 20 20 20 73 65 74 20 62 75 74 74 6f 6e 73 20 7b 0a | ..okcancel.{......set.buttons.{. |
310a0 | 09 09 7b 6f 6b 20 20 20 20 20 2d 77 69 64 74 68 20 36 20 2d 74 65 78 74 20 4f 4b 20 20 20 20 20 | ..{ok.....-width.6.-text.OK..... |
310c0 | 2d 75 6e 64 65 72 20 30 7d 0a 09 09 7b 63 61 6e 63 65 6c 20 2d 77 69 64 74 68 20 36 20 2d 74 65 | -under.0}...{cancel.-width.6.-te |
310e0 | 78 74 20 43 61 6e 63 65 6c 20 2d 75 6e 64 65 72 20 30 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 72 | xt.Cancel.-under.0}......}..}..r |
31100 | 65 74 72 79 63 61 6e 63 65 6c 20 7b 0a 09 20 20 20 20 73 65 74 20 62 75 74 74 6f 6e 73 20 7b 0a | etrycancel.{......set.buttons.{. |
31120 | 09 09 7b 72 65 74 72 79 20 20 2d 77 69 64 74 68 20 36 20 2d 74 65 78 74 20 52 65 74 72 79 20 20 | ..{retry..-width.6.-text.Retry.. |
31140 | 2d 75 6e 64 65 72 20 30 7d 0a 09 09 7b 63 61 6e 63 65 6c 20 2d 77 69 64 74 68 20 36 20 2d 74 65 | -under.0}...{cancel.-width.6.-te |
31160 | 78 74 20 43 61 6e 63 65 6c 20 2d 75 6e 64 65 72 20 30 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 79 | xt.Cancel.-under.0}......}..}..y |
31180 | 65 73 6e 6f 20 7b 0a 09 20 20 20 20 73 65 74 20 62 75 74 74 6f 6e 73 20 7b 0a 09 09 7b 79 65 73 | esno.{......set.buttons.{...{yes |
311a0 | 20 20 20 20 2d 77 69 64 74 68 20 36 20 2d 74 65 78 74 20 59 65 73 20 2d 75 6e 64 65 72 20 30 7d | ....-width.6.-text.Yes.-under.0} |
311c0 | 0a 09 09 7b 6e 6f 20 20 20 20 20 2d 77 69 64 74 68 20 36 20 2d 74 65 78 74 20 4e 6f 20 20 2d 75 | ...{no.....-width.6.-text.No..-u |
311e0 | 6e 64 65 72 20 30 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 79 65 73 6e 6f 63 61 6e 63 65 6c 20 7b | nder.0}......}..}..yesnocancel.{ |
31200 | 0a 09 20 20 20 20 73 65 74 20 62 75 74 74 6f 6e 73 20 7b 0a 09 09 7b 79 65 73 20 20 20 20 2d 77 | ......set.buttons.{...{yes....-w |
31220 | 69 64 74 68 20 36 20 2d 74 65 78 74 20 59 65 73 20 2d 75 6e 64 65 72 20 30 7d 0a 09 09 7b 6e 6f | idth.6.-text.Yes.-under.0}...{no |
31240 | 20 20 20 20 20 2d 77 69 64 74 68 20 36 20 2d 74 65 78 74 20 4e 6f 20 20 2d 75 6e 64 65 72 20 30 | .....-width.6.-text.No..-under.0 |
31260 | 7d 0a 09 09 7b 63 61 6e 63 65 6c 20 2d 77 69 64 74 68 20 36 20 2d 74 65 78 74 20 43 61 6e 63 65 | }...{cancel.-width.6.-text.Cance |
31280 | 6c 20 2d 75 6e 64 65 72 20 30 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 64 65 66 61 75 6c 74 20 7b | l.-under.0}......}..}..default.{ |
312a0 | 0a 09 20 20 20 20 65 72 72 6f 72 20 22 62 61 64 20 2d 74 79 70 65 20 76 61 6c 75 65 20 5c 22 24 | ......error."bad.-type.value.\"$ |
312c0 | 64 61 74 61 28 2d 74 79 70 65 29 5c 22 3a 20 6d 75 73 74 20 62 65 20 61 62 6f 72 74 72 65 74 72 | data(-type)\":.must.be.abortretr |
312e0 | 79 69 67 6e 6f 72 65 2c 20 6f 6b 2c 20 6f 6b 63 61 6e 63 65 6c 2c 20 72 65 74 72 79 63 61 6e 63 | yignore,.ok,.okcancel,.retrycanc |
31300 | 65 6c 2c 20 79 65 73 6e 6f 2c 20 6f 72 20 79 65 73 6e 6f 63 61 6e 63 65 6c 22 0a 09 7d 0a 20 20 | el,.yesno,.or.yesnocancel"..}... |
31320 | 20 20 7d 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 64 61 | ..}......if.{[string.compare.$da |
31340 | 74 61 28 2d 64 65 66 61 75 6c 74 29 20 22 22 5d 7d 20 7b 0a 09 73 65 74 20 76 61 6c 69 64 20 30 | ta(-default).""]}.{..set.valid.0 |
31360 | 0a 09 66 6f 72 65 61 63 68 20 62 74 6e 20 24 62 75 74 74 6f 6e 73 20 7b 0a 09 20 20 20 20 69 66 | ..foreach.btn.$buttons.{......if |
31380 | 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 6c 69 6e 64 65 78 20 24 62 74 6e 20 30 5d 20 | .{[string.equal.[lindex.$btn.0]. |
313a0 | 24 64 61 74 61 28 2d 64 65 66 61 75 6c 74 29 5d 7d 20 7b 0a 09 09 73 65 74 20 76 61 6c 69 64 20 | $data(-default)]}.{...set.valid. |
313c0 | 31 0a 09 09 62 72 65 61 6b 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 69 66 20 7b 21 24 76 61 6c 69 64 | 1...break......}..}..if.{!$valid |
313e0 | 7d 20 7b 0a 09 20 20 20 20 65 72 72 6f 72 20 22 69 6e 76 61 6c 69 64 20 64 65 66 61 75 6c 74 20 | }.{......error."invalid.default. |
31400 | 62 75 74 74 6f 6e 20 5c 22 24 64 61 74 61 28 2d 64 65 66 61 75 6c 74 29 5c 22 22 0a 09 7d 0a 20 | button.\"$data(-default)\""..}.. |
31420 | 20 20 20 7d 0a 0a 20 20 20 20 23 20 32 2e 20 53 65 74 20 74 68 65 20 64 69 61 6c 6f 67 20 74 6f | ...}......#.2..Set.the.dialog.to |
31440 | 20 62 65 20 61 20 63 68 69 6c 64 20 77 69 6e 64 6f 77 20 6f 66 20 24 70 61 72 65 6e 74 0a 20 20 | .be.a.child.window.of.$parent... |
31460 | 20 20 23 0a 20 20 20 20 23 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 | ..#.....#.....if.{[string.compar |
31480 | 65 20 24 64 61 74 61 28 2d 70 61 72 65 6e 74 29 20 2e 5d 7d 20 7b 0a 09 73 65 74 20 77 20 24 64 | e.$data(-parent)..]}.{..set.w.$d |
314a0 | 61 74 61 28 2d 70 61 72 65 6e 74 29 2e 5f 5f 74 6b 5f 5f 6d 65 73 73 61 67 65 62 6f 78 0a 20 20 | ata(-parent).__tk__messagebox... |
314c0 | 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 77 20 2e 5f 5f 74 6b 5f 5f 6d 65 73 73 61 67 65 | ..}.else.{..set.w..__tk__message |
314e0 | 62 6f 78 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 33 2e 20 43 72 65 61 74 65 20 74 68 65 20 74 | box.....}......#.3..Create.the.t |
31500 | 6f 70 2d 6c 65 76 65 6c 20 77 69 6e 64 6f 77 20 61 6e 64 20 64 69 76 69 64 65 20 69 74 20 69 6e | op-level.window.and.divide.it.in |
31520 | 74 6f 20 74 6f 70 0a 20 20 20 20 23 20 61 6e 64 20 62 6f 74 74 6f 6d 20 70 61 72 74 73 2e 0a 0a | to.top.....#.and.bottom.parts... |
31540 | 20 20 20 20 63 61 74 63 68 20 7b 64 65 73 74 72 6f 79 20 24 77 7d 0a 20 20 20 20 74 6f 70 6c 65 | ....catch.{destroy.$w}.....tople |
31560 | 76 65 6c 20 24 77 20 2d 63 6c 61 73 73 20 44 69 61 6c 6f 67 0a 20 20 20 20 77 6d 20 74 69 74 6c | vel.$w.-class.Dialog.....wm.titl |
31580 | 65 20 24 77 20 24 64 61 74 61 28 2d 74 69 74 6c 65 29 0a 20 20 20 20 77 6d 20 69 63 6f 6e 6e 61 | e.$w.$data(-title).....wm.iconna |
315a0 | 6d 65 20 24 77 20 44 69 61 6c 6f 67 0a 20 20 20 20 77 6d 20 70 72 6f 74 6f 63 6f 6c 20 24 77 20 | me.$w.Dialog.....wm.protocol.$w. |
315c0 | 57 4d 5f 44 45 4c 45 54 45 5f 57 49 4e 44 4f 57 20 7b 20 7d 0a 20 20 20 20 77 6d 20 74 72 61 6e | WM_DELETE_WINDOW.{.}.....wm.tran |
315e0 | 73 69 65 6e 74 20 24 77 20 24 64 61 74 61 28 2d 70 61 72 65 6e 74 29 0a 20 20 20 20 69 66 20 7b | sient.$w.$data(-parent).....if.{ |
31600 | 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 | [string.equal.$tcl_platform(plat |
31620 | 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 09 75 6e 73 75 70 70 6f 72 74 | form)."macintosh"]}.{..unsupport |
31640 | 65 64 31 20 73 74 79 6c 65 20 24 77 20 64 42 6f 78 50 72 6f 63 0a 20 20 20 20 7d 0a 0a 20 20 20 | ed1.style.$w.dBoxProc.....}..... |
31660 | 20 66 72 61 6d 65 20 24 77 2e 62 6f 74 0a 20 20 20 20 70 61 63 6b 20 24 77 2e 62 6f 74 20 2d 73 | .frame.$w.bot.....pack.$w.bot.-s |
31680 | 69 64 65 20 62 6f 74 74 6f 6d 20 2d 66 69 6c 6c 20 62 6f 74 68 0a 20 20 20 20 66 72 61 6d 65 20 | ide.bottom.-fill.both.....frame. |
316a0 | 24 77 2e 74 6f 70 0a 20 20 20 20 70 61 63 6b 20 24 77 2e 74 6f 70 20 2d 73 69 64 65 20 74 6f 70 | $w.top.....pack.$w.top.-side.top |
316c0 | 20 2d 66 69 6c 6c 20 62 6f 74 68 20 2d 65 78 70 61 6e 64 20 31 0a 20 20 20 20 69 66 20 7b 5b 73 | .-fill.both.-expand.1.....if.{[s |
316e0 | 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 | tring.compare.$tcl_platform(plat |
31700 | 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 7b 0a 09 24 77 2e 62 6f 74 20 63 6f | form)."macintosh"]}.{..$w.bot.co |
31720 | 6e 66 69 67 75 72 65 20 2d 72 65 6c 69 65 66 20 72 61 69 73 65 64 20 2d 62 64 20 31 0a 09 24 77 | nfigure.-relief.raised.-bd.1..$w |
31740 | 2e 74 6f 70 20 63 6f 6e 66 69 67 75 72 65 20 2d 72 65 6c 69 65 66 20 72 61 69 73 65 64 20 2d 62 | .top.configure.-relief.raised.-b |
31760 | 64 20 31 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 34 2e 20 46 69 6c 6c 20 74 68 65 20 74 6f 70 | d.1.....}......#.4..Fill.the.top |
31780 | 20 70 61 72 74 20 77 69 74 68 20 62 69 74 6d 61 70 20 61 6e 64 20 6d 65 73 73 61 67 65 20 28 75 | .part.with.bitmap.and.message.(u |
317a0 | 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 0a 20 20 20 20 23 20 64 61 74 61 62 61 73 65 20 66 6f 72 | se.the.option.....#.database.for |
317c0 | 20 2d 77 72 61 70 6c 65 6e 67 74 68 20 61 6e 64 20 2d 66 6f 6e 74 20 73 6f 20 74 68 61 74 20 74 | .-wraplength.and.-font.so.that.t |
317e0 | 68 65 79 20 63 61 6e 20 62 65 0a 20 20 20 20 23 20 6f 76 65 72 72 69 64 64 65 6e 20 62 79 20 74 | hey.can.be.....#.overridden.by.t |
31800 | 68 65 20 63 61 6c 6c 65 72 29 2e 0a 0a 20 20 20 20 6f 70 74 69 6f 6e 20 61 64 64 20 2a 44 69 61 | he.caller).......option.add.*Dia |
31820 | 6c 6f 67 2e 6d 73 67 2e 77 72 61 70 4c 65 6e 67 74 68 20 33 69 20 77 69 64 67 65 74 44 65 66 61 | log.msg.wrapLength.3i.widgetDefa |
31840 | 75 6c 74 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 | ult.....if.{[string.equal.$tcl_p |
31860 | 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 | latform(platform)."macintosh"]}. |
31880 | 7b 0a 09 6f 70 74 69 6f 6e 20 61 64 64 20 2a 44 69 61 6c 6f 67 2e 6d 73 67 2e 66 6f 6e 74 20 73 | {..option.add.*Dialog.msg.font.s |
318a0 | 79 73 74 65 6d 20 77 69 64 67 65 74 44 65 66 61 75 6c 74 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b | ystem.widgetDefault.....}.else.{ |
318c0 | 0a 09 6f 70 74 69 6f 6e 20 61 64 64 20 2a 44 69 61 6c 6f 67 2e 6d 73 67 2e 66 6f 6e 74 20 7b 54 | ..option.add.*Dialog.msg.font.{T |
318e0 | 69 6d 65 73 20 31 38 7d 20 77 69 64 67 65 74 44 65 66 61 75 6c 74 0a 20 20 20 20 7d 0a 0a 20 20 | imes.18}.widgetDefault.....}.... |
31900 | 20 20 6c 61 62 65 6c 20 24 77 2e 6d 73 67 20 2d 6a 75 73 74 69 66 79 20 6c 65 66 74 20 2d 74 65 | ..label.$w.msg.-justify.left.-te |
31920 | 78 74 20 24 64 61 74 61 28 2d 6d 65 73 73 61 67 65 29 0a 20 20 20 20 70 61 63 6b 20 24 77 2e 6d | xt.$data(-message).....pack.$w.m |
31940 | 73 67 20 2d 69 6e 20 24 77 2e 74 6f 70 20 2d 73 69 64 65 20 72 69 67 68 74 20 2d 65 78 70 61 6e | sg.-in.$w.top.-side.right.-expan |
31960 | 64 20 31 20 2d 66 69 6c 6c 20 62 6f 74 68 20 2d 70 61 64 78 20 33 6d 20 2d 70 61 64 79 20 33 6d | d.1.-fill.both.-padx.3m.-pady.3m |
31980 | 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 64 61 74 61 28 2d | .....if.{[string.compare.$data(- |
319a0 | 69 63 6f 6e 29 20 22 22 5d 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 | icon).""]}.{..if.{[string.equal. |
319c0 | 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f | $tcl_platform(platform)."macinto |
319e0 | 73 68 22 5d 20 5c 0a 09 09 7c 7c 20 28 5b 77 69 6e 66 6f 20 64 65 70 74 68 20 24 77 5d 20 3c 20 | sh"].\...||.([winfo.depth.$w].<. |
31a00 | 34 29 20 7c 7c 20 24 74 6b 5f 73 74 72 69 63 74 4d 6f 74 69 66 7d 20 7b 0a 09 20 20 20 20 6c 61 | 4).||.$tk_strictMotif}.{......la |
31a20 | 62 65 6c 20 24 77 2e 62 69 74 6d 61 70 20 2d 62 69 74 6d 61 70 20 24 64 61 74 61 28 2d 69 63 6f | bel.$w.bitmap.-bitmap.$data(-ico |
31a40 | 6e 29 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 63 61 6e 76 61 73 20 24 77 2e 62 69 74 6d | n)..}.else.{......canvas.$w.bitm |
31a60 | 61 70 20 2d 77 69 64 74 68 20 33 32 20 2d 68 65 69 67 68 74 20 33 32 20 2d 68 69 67 68 6c 69 67 | ap.-width.32.-height.32.-highlig |
31a80 | 68 74 74 68 69 63 6b 6e 65 73 73 20 30 0a 09 20 20 20 20 73 77 69 74 63 68 20 24 64 61 74 61 28 | htthickness.0......switch.$data( |
31aa0 | 2d 69 63 6f 6e 29 20 7b 0a 09 09 65 72 72 6f 72 20 7b 0a 09 09 20 20 20 20 24 77 2e 62 69 74 6d | -icon).{...error.{.......$w.bitm |
31ac0 | 61 70 20 63 72 65 61 74 65 20 6f 76 61 6c 20 30 20 30 20 33 31 20 33 31 20 2d 66 69 6c 6c 20 72 | ap.create.oval.0.0.31.31.-fill.r |
31ae0 | 65 64 20 2d 6f 75 74 6c 69 6e 65 20 62 6c 61 63 6b 0a 09 09 20 20 20 20 24 77 2e 62 69 74 6d 61 | ed.-outline.black.......$w.bitma |
31b00 | 70 20 63 72 65 61 74 65 20 6c 69 6e 65 20 39 20 39 20 32 33 20 32 33 20 2d 66 69 6c 6c 20 77 68 | p.create.line.9.9.23.23.-fill.wh |
31b20 | 69 74 65 20 2d 77 69 64 74 68 20 34 0a 09 09 20 20 20 20 24 77 2e 62 69 74 6d 61 70 20 63 72 65 | ite.-width.4.......$w.bitmap.cre |
31b40 | 61 74 65 20 6c 69 6e 65 20 39 20 32 33 20 32 33 20 39 20 2d 66 69 6c 6c 20 77 68 69 74 65 20 2d | ate.line.9.23.23.9.-fill.white.- |
31b60 | 77 69 64 74 68 20 34 0a 09 09 7d 0a 09 09 69 6e 66 6f 20 7b 0a 09 09 20 20 20 20 24 77 2e 62 69 | width.4...}...info.{.......$w.bi |
31b80 | 74 6d 61 70 20 63 72 65 61 74 65 20 69 6d 61 67 65 20 30 20 30 20 2d 61 6e 63 68 6f 72 20 6e 77 | tmap.create.image.0.0.-anchor.nw |
31ba0 | 20 5c 0a 09 09 09 20 20 20 20 2d 69 6d 61 67 65 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 62 | .\........-image.::tk::dialog::b |
31bc0 | 31 0a 09 09 20 20 20 20 24 77 2e 62 69 74 6d 61 70 20 63 72 65 61 74 65 20 69 6d 61 67 65 20 30 | 1.......$w.bitmap.create.image.0 |
31be0 | 20 30 20 2d 61 6e 63 68 6f 72 20 6e 77 20 5c 0a 09 09 09 20 20 20 20 2d 69 6d 61 67 65 20 3a 3a | .0.-anchor.nw.\........-image.:: |
31c00 | 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 62 32 0a 09 09 20 20 20 20 24 77 2e 62 69 74 6d 61 70 20 63 | tk::dialog::b2.......$w.bitmap.c |
31c20 | 72 65 61 74 65 20 69 6d 61 67 65 20 30 20 30 20 2d 61 6e 63 68 6f 72 20 6e 77 20 5c 0a 09 09 09 | reate.image.0.0.-anchor.nw.\.... |
31c40 | 20 20 20 20 2d 69 6d 61 67 65 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 69 0a 09 09 7d 0a 09 | ....-image.::tk::dialog::i...}.. |
31c60 | 09 71 75 65 73 74 69 6f 6e 20 7b 0a 09 09 20 20 20 20 24 77 2e 62 69 74 6d 61 70 20 63 72 65 61 | .question.{.......$w.bitmap.crea |
31c80 | 74 65 20 69 6d 61 67 65 20 30 20 30 20 2d 61 6e 63 68 6f 72 20 6e 77 20 5c 0a 09 09 09 20 20 20 | te.image.0.0.-anchor.nw.\....... |
31ca0 | 20 2d 69 6d 61 67 65 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 62 31 0a 09 09 20 20 20 20 24 | .-image.::tk::dialog::b1.......$ |
31cc0 | 77 2e 62 69 74 6d 61 70 20 63 72 65 61 74 65 20 69 6d 61 67 65 20 30 20 30 20 2d 61 6e 63 68 6f | w.bitmap.create.image.0.0.-ancho |
31ce0 | 72 20 6e 77 20 5c 0a 09 09 09 20 20 20 20 2d 69 6d 61 67 65 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f | r.nw.\........-image.::tk::dialo |
31d00 | 67 3a 3a 62 32 0a 09 09 20 20 20 20 24 77 2e 62 69 74 6d 61 70 20 63 72 65 61 74 65 20 69 6d 61 | g::b2.......$w.bitmap.create.ima |
31d20 | 67 65 20 30 20 30 20 2d 61 6e 63 68 6f 72 20 6e 77 20 5c 0a 09 09 09 20 20 20 20 2d 69 6d 61 67 | ge.0.0.-anchor.nw.\........-imag |
31d40 | 65 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 71 0a 09 09 7d 0a 09 09 64 65 66 61 75 6c 74 20 | e.::tk::dialog::q...}...default. |
31d60 | 7b 0a 09 09 20 20 20 20 24 77 2e 62 69 74 6d 61 70 20 63 72 65 61 74 65 20 69 6d 61 67 65 20 30 | {.......$w.bitmap.create.image.0 |
31d80 | 20 30 20 2d 61 6e 63 68 6f 72 20 6e 77 20 5c 0a 09 09 09 20 20 20 20 2d 69 6d 61 67 65 20 3a 3a | .0.-anchor.nw.\........-image.:: |
31da0 | 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 77 31 0a 09 09 20 20 20 20 24 77 2e 62 69 74 6d 61 70 20 63 | tk::dialog::w1.......$w.bitmap.c |
31dc0 | 72 65 61 74 65 20 69 6d 61 67 65 20 30 20 30 20 2d 61 6e 63 68 6f 72 20 6e 77 20 5c 0a 09 09 09 | reate.image.0.0.-anchor.nw.\.... |
31de0 | 20 20 20 20 2d 69 6d 61 67 65 20 3a 3a 74 6b 3a 3a 64 69 61 6c 6f 67 3a 3a 77 32 0a 09 09 20 20 | ....-image.::tk::dialog::w2..... |
31e00 | 20 20 24 77 2e 62 69 74 6d 61 70 20 63 72 65 61 74 65 20 69 6d 61 67 65 20 30 20 30 20 2d 61 6e | ..$w.bitmap.create.image.0.0.-an |
31e20 | 63 68 6f 72 20 6e 77 20 5c 0a 09 09 09 20 20 20 20 2d 69 6d 61 67 65 20 3a 3a 74 6b 3a 3a 64 69 | chor.nw.\........-image.::tk::di |
31e40 | 61 6c 6f 67 3a 3a 77 33 0a 09 09 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 70 61 63 6b 20 24 77 2e | alog::w3...}......}..}..pack.$w. |
31e60 | 62 69 74 6d 61 70 20 2d 69 6e 20 24 77 2e 74 6f 70 20 2d 73 69 64 65 20 6c 65 66 74 20 2d 70 61 | bitmap.-in.$w.top.-side.left.-pa |
31e80 | 64 78 20 33 6d 20 2d 70 61 64 79 20 33 6d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 35 2e 20 43 | dx.3m.-pady.3m.....}......#.5..C |
31ea0 | 72 65 61 74 65 20 61 20 72 6f 77 20 6f 66 20 62 75 74 74 6f 6e 73 20 61 74 20 74 68 65 20 62 6f | reate.a.row.of.buttons.at.the.bo |
31ec0 | 74 74 6f 6d 20 6f 66 20 74 68 65 20 64 69 61 6c 6f 67 2e 0a 0a 20 20 20 20 73 65 74 20 69 20 30 | ttom.of.the.dialog.......set.i.0 |
31ee0 | 0a 20 20 20 20 66 6f 72 65 61 63 68 20 62 75 74 20 24 62 75 74 74 6f 6e 73 20 7b 0a 09 73 65 74 | .....foreach.but.$buttons.{..set |
31f00 | 20 6e 61 6d 65 20 5b 6c 69 6e 64 65 78 20 24 62 75 74 20 30 5d 0a 09 73 65 74 20 6f 70 74 73 20 | .name.[lindex.$but.0]..set.opts. |
31f20 | 5b 6c 72 61 6e 67 65 20 24 62 75 74 20 31 20 65 6e 64 5d 0a 09 69 66 20 7b 21 5b 6c 6c 65 6e 67 | [lrange.$but.1.end]..if.{![lleng |
31f40 | 74 68 20 24 6f 70 74 73 5d 7d 20 7b 0a 09 20 20 20 20 23 20 43 61 70 69 74 61 6c 69 7a 65 20 74 | th.$opts]}.{......#.Capitalize.t |
31f60 | 68 65 20 66 69 72 73 74 20 6c 65 74 74 65 72 20 6f 66 20 24 6e 61 6d 65 0a 09 20 20 20 20 73 65 | he.first.letter.of.$name......se |
31f80 | 74 20 63 61 70 4e 61 6d 65 20 5b 73 74 72 69 6e 67 20 74 6f 75 70 70 65 72 20 24 6e 61 6d 65 20 | t.capName.[string.toupper.$name. |
31fa0 | 30 5d 0a 09 20 20 20 20 73 65 74 20 6f 70 74 73 20 5b 6c 69 73 74 20 2d 74 65 78 74 20 24 63 61 | 0]......set.opts.[list.-text.$ca |
31fc0 | 70 4e 61 6d 65 5d 0a 09 7d 0a 0a 09 65 76 61 6c 20 62 75 74 74 6f 6e 20 5b 6c 69 73 74 20 24 77 | pName]..}...eval.button.[list.$w |
31fe0 | 2e 24 6e 61 6d 65 5d 20 24 6f 70 74 73 20 5b 6c 69 73 74 20 2d 63 6f 6d 6d 61 6e 64 20 5b 6c 69 | .$name].$opts.[list.-command.[li |
32000 | 73 74 20 73 65 74 20 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 29 20 24 6e 61 6d 65 5d 5d 0a 0a 09 | st.set.tkPriv(button).$name]]... |
32020 | 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6e 61 6d 65 20 24 64 61 74 61 28 2d 64 | if.{[string.equal.$name.$data(-d |
32040 | 65 66 61 75 6c 74 29 5d 7d 20 7b 0a 09 20 20 20 20 24 77 2e 24 6e 61 6d 65 20 63 6f 6e 66 69 67 | efault)]}.{......$w.$name.config |
32060 | 75 72 65 20 2d 64 65 66 61 75 6c 74 20 61 63 74 69 76 65 0a 09 7d 0a 09 70 61 63 6b 20 24 77 2e | ure.-default.active..}..pack.$w. |
32080 | 24 6e 61 6d 65 20 2d 69 6e 20 24 77 2e 62 6f 74 20 2d 73 69 64 65 20 6c 65 66 74 20 2d 65 78 70 | $name.-in.$w.bot.-side.left.-exp |
320a0 | 61 6e 64 20 31 20 2d 70 61 64 78 20 33 6d 20 2d 70 61 64 79 20 32 6d 0a 0a 09 23 20 63 72 65 61 | and.1.-padx.3m.-pady.2m...#.crea |
320c0 | 74 65 20 74 68 65 20 62 69 6e 64 69 6e 67 20 66 6f 72 20 74 68 65 20 6b 65 79 20 61 63 63 65 6c | te.the.binding.for.the.key.accel |
320e0 | 65 72 61 74 6f 72 2c 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 75 6e 64 65 72 6c 69 6e 65 0a 09 | erator,.based.on.the.underline.. |
32100 | 23 0a 09 73 65 74 20 75 6e 64 65 72 49 64 78 20 5b 24 77 2e 24 6e 61 6d 65 20 63 67 65 74 20 2d | #..set.underIdx.[$w.$name.cget.- |
32120 | 75 6e 64 65 72 5d 0a 09 69 66 20 7b 24 75 6e 64 65 72 49 64 78 20 3e 3d 20 30 7d 20 7b 0a 09 20 | under]..if.{$underIdx.>=.0}.{... |
32140 | 20 20 20 73 65 74 20 6b 65 79 20 5b 73 74 72 69 6e 67 20 69 6e 64 65 78 20 5b 24 77 2e 24 6e 61 | ...set.key.[string.index.[$w.$na |
32160 | 6d 65 20 63 67 65 74 20 2d 74 65 78 74 5d 20 24 75 6e 64 65 72 49 64 78 5d 0a 09 20 20 20 20 62 | me.cget.-text].$underIdx]......b |
32180 | 69 6e 64 20 24 77 20 3c 41 6c 74 2d 5b 73 74 72 69 6e 67 20 74 6f 6c 6f 77 65 72 20 24 6b 65 79 | ind.$w.<Alt-[string.tolower.$key |
321a0 | 5d 3e 20 20 5b 6c 69 73 74 20 24 77 2e 24 6e 61 6d 65 20 69 6e 76 6f 6b 65 5d 0a 09 20 20 20 20 | ]>..[list.$w.$name.invoke]...... |
321c0 | 62 69 6e 64 20 24 77 20 3c 41 6c 74 2d 5b 73 74 72 69 6e 67 20 74 6f 75 70 70 65 72 20 24 6b 65 | bind.$w.<Alt-[string.toupper.$ke |
321e0 | 79 5d 3e 20 20 5b 6c 69 73 74 20 24 77 2e 24 6e 61 6d 65 20 69 6e 76 6f 6b 65 5d 0a 09 7d 0a 09 | y]>..[list.$w.$name.invoke]..}.. |
32200 | 69 6e 63 72 20 69 0a 20 20 20 20 7d 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f | incr.i.....}......if.{[string.co |
32220 | 6d 70 61 72 65 20 7b 7d 20 24 64 61 74 61 28 2d 64 65 66 61 75 6c 74 29 5d 7d 20 7b 0a 09 62 69 | mpare.{}.$data(-default)]}.{..bi |
32240 | 6e 64 20 24 77 20 3c 46 6f 63 75 73 49 6e 3e 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 | nd.$w.<FocusIn>.{......if.{[stri |
32260 | 6e 67 20 65 71 75 61 6c 20 42 75 74 74 6f 6e 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 25 57 5d | ng.equal.Button.[winfo.class.%W] |
32280 | 5d 7d 20 7b 0a 09 09 25 57 20 63 6f 6e 66 69 67 75 72 65 20 2d 64 65 66 61 75 6c 74 20 61 63 74 | ]}.{...%W.configure.-default.act |
322a0 | 69 76 65 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 62 69 6e 64 20 24 77 20 3c 46 6f 63 75 73 4f 75 74 | ive......}..}..bind.$w.<FocusOut |
322c0 | 3e 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 42 75 74 74 6f | >.{......if.{[string.equal.Butto |
322e0 | 6e 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 25 57 5d 5d 7d 20 7b 0a 09 09 25 57 20 63 6f 6e 66 | n.[winfo.class.%W]]}.{...%W.conf |
32300 | 69 67 75 72 65 20 2d 64 65 66 61 75 6c 74 20 6e 6f 72 6d 61 6c 0a 09 20 20 20 20 7d 0a 09 7d 0a | igure.-default.normal......}..}. |
32320 | 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 36 2e 20 43 72 65 61 74 65 20 61 20 62 69 6e 64 69 6e 67 | ....}......#.6..Create.a.binding |
32340 | 20 66 6f 72 20 3c 52 65 74 75 72 6e 3e 20 6f 6e 20 74 68 65 20 64 69 61 6c 6f 67 0a 0a 20 20 20 | .for.<Return>.on.the.dialog..... |
32360 | 20 62 69 6e 64 20 24 77 20 3c 52 65 74 75 72 6e 3e 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 | .bind.$w.<Return>.{..if.{[string |
32380 | 20 65 71 75 61 6c 20 42 75 74 74 6f 6e 20 5b 77 69 6e 66 6f 20 63 6c 61 73 73 20 25 57 5d 5d 7d | .equal.Button.[winfo.class.%W]]} |
323a0 | 20 7b 0a 09 20 20 20 20 74 6b 42 75 74 74 6f 6e 49 6e 76 6f 6b 65 20 25 57 0a 09 7d 0a 20 20 20 | .{......tkButtonInvoke.%W..}.... |
323c0 | 20 7d 0a 0a 20 20 20 20 23 20 37 2e 20 57 69 74 68 64 72 61 77 20 74 68 65 20 77 69 6e 64 6f 77 | .}......#.7..Withdraw.the.window |
323e0 | 2c 20 74 68 65 6e 20 75 70 64 61 74 65 20 61 6c 6c 20 74 68 65 20 67 65 6f 6d 65 74 72 79 20 69 | ,.then.update.all.the.geometry.i |
32400 | 6e 66 6f 72 6d 61 74 69 6f 6e 0a 20 20 20 20 23 20 73 6f 20 77 65 20 6b 6e 6f 77 20 68 6f 77 20 | nformation.....#.so.we.know.how. |
32420 | 62 69 67 20 69 74 20 77 61 6e 74 73 20 74 6f 20 62 65 2c 20 74 68 65 6e 20 63 65 6e 74 65 72 20 | big.it.wants.to.be,.then.center. |
32440 | 74 68 65 20 77 69 6e 64 6f 77 20 69 6e 20 74 68 65 0a 20 20 20 20 23 20 64 69 73 70 6c 61 79 20 | the.window.in.the.....#.display. |
32460 | 61 6e 64 20 64 65 2d 69 63 6f 6e 69 66 79 20 69 74 2e 0a 0a 20 20 20 20 3a 3a 74 6b 3a 3a 50 6c | and.de-iconify.it.......::tk::Pl |
32480 | 61 63 65 57 69 6e 64 6f 77 20 24 77 20 77 69 64 67 65 74 20 24 64 61 74 61 28 2d 70 61 72 65 6e | aceWindow.$w.widget.$data(-paren |
324a0 | 74 29 0a 0a 20 20 20 20 23 20 38 2e 20 53 65 74 20 61 20 67 72 61 62 20 61 6e 64 20 63 6c 61 69 | t)......#.8..Set.a.grab.and.clai |
324c0 | 6d 20 74 68 65 20 66 6f 63 75 73 20 74 6f 6f 2e 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e | m.the.focus.too.......if.{[strin |
324e0 | 67 20 63 6f 6d 70 61 72 65 20 24 64 61 74 61 28 2d 64 65 66 61 75 6c 74 29 20 22 22 5d 7d 20 7b | g.compare.$data(-default).""]}.{ |
32500 | 0a 09 73 65 74 20 66 6f 63 75 73 20 24 77 2e 24 64 61 74 61 28 2d 64 65 66 61 75 6c 74 29 0a 20 | ..set.focus.$w.$data(-default).. |
32520 | 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 66 6f 63 75 73 20 24 77 0a 20 20 20 20 7d 0a | ...}.else.{..set.focus.$w.....}. |
32540 | 20 20 20 20 3a 3a 74 6b 3a 3a 53 65 74 46 6f 63 75 73 47 72 61 62 20 24 77 20 24 66 6f 63 75 73 | ....::tk::SetFocusGrab.$w.$focus |
32560 | 0a 0a 20 20 20 20 23 20 39 2e 20 57 61 69 74 20 66 6f 72 20 74 68 65 20 75 73 65 72 20 74 6f 20 | ......#.9..Wait.for.the.user.to. |
32580 | 72 65 73 70 6f 6e 64 2c 20 74 68 65 6e 20 72 65 73 74 6f 72 65 20 74 68 65 20 66 6f 63 75 73 20 | respond,.then.restore.the.focus. |
325a0 | 61 6e 64 0a 20 20 20 20 23 20 72 65 74 75 72 6e 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 | and.....#.return.the.index.of.th |
325c0 | 65 20 73 65 6c 65 63 74 65 64 20 62 75 74 74 6f 6e 2e 20 20 52 65 73 74 6f 72 65 20 74 68 65 20 | e.selected.button...Restore.the. |
325e0 | 66 6f 63 75 73 0a 20 20 20 20 23 20 62 65 66 6f 72 65 20 64 65 6c 65 74 69 6e 67 20 74 68 65 20 | focus.....#.before.deleting.the. |
32600 | 77 69 6e 64 6f 77 2c 20 73 69 6e 63 65 20 6f 74 68 65 72 77 69 73 65 20 74 68 65 20 77 69 6e 64 | window,.since.otherwise.the.wind |
32620 | 6f 77 20 6d 61 6e 61 67 65 72 0a 20 20 20 20 23 20 6d 61 79 20 74 61 6b 65 20 74 68 65 20 66 6f | ow.manager.....#.may.take.the.fo |
32640 | 63 75 73 20 61 77 61 79 20 73 6f 20 77 65 20 63 61 6e 27 74 20 72 65 64 69 72 65 63 74 20 69 74 | cus.away.so.we.can't.redirect.it |
32660 | 2e 20 20 46 69 6e 61 6c 6c 79 2c 0a 20 20 20 20 23 20 72 65 73 74 6f 72 65 20 61 6e 79 20 67 72 | ...Finally,.....#.restore.any.gr |
32680 | 61 62 20 74 68 61 74 20 77 61 73 20 69 6e 20 65 66 66 65 63 74 2e 0a 0a 20 20 20 20 74 6b 77 61 | ab.that.was.in.effect.......tkwa |
326a0 | 69 74 20 76 61 72 69 61 62 6c 65 20 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 29 0a 0a 20 20 20 20 | it.variable.tkPriv(button)...... |
326c0 | 3a 3a 74 6b 3a 3a 52 65 73 74 6f 72 65 46 6f 63 75 73 47 72 61 62 20 24 77 20 24 66 6f 63 75 73 | ::tk::RestoreFocusGrab.$w.$focus |
326e0 | 0a 0a 20 20 20 20 72 65 74 75 72 6e 20 24 74 6b 50 72 69 76 28 62 75 74 74 6f 6e 29 0a 7d 0a 00 | ......return.$tkPriv(button).}.. |
32700 | 00 1c 01 23 20 63 6f 6d 64 6c 67 2e 74 63 6c 20 2d 2d 0a 23 0a 23 09 53 6f 6d 65 20 66 75 6e 63 | ...#.comdlg.tcl.--.#.#.Some.func |
32720 | 74 69 6f 6e 73 20 6e 65 65 64 65 64 20 66 6f 72 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 64 69 61 6c | tions.needed.for.the.common.dial |
32740 | 6f 67 20 62 6f 78 65 73 2e 20 50 72 6f 62 61 62 6c 79 20 6e 65 65 64 20 74 6f 20 67 6f 0a 23 09 | og.boxes..Probably.need.to.go.#. |
32760 | 69 6e 20 61 20 64 69 66 66 65 72 65 6e 74 20 66 69 6c 65 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 | in.a.different.file..#.#.RCS:.@( |
32780 | 23 29 20 24 49 64 3a 20 63 6f 6d 64 6c 67 2e 74 63 6c 2c 76 20 31 2e 36 20 31 39 39 39 2f 31 32 | #).$Id:.comdlg.tcl,v.1.6.1999/12 |
327a0 | 2f 30 37 20 30 33 3a 30 34 3a 34 33 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 | /07.03:04:43.hobbs.Exp.$.#.#.Cop |
327c0 | 79 72 69 67 68 74 20 28 63 29 20 31 39 39 36 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 | yright.(c).1996.Sun.Microsystems |
327e0 | 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 | ,.Inc..#.#.See.the.file."license |
32800 | 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 | .terms".for.information.on.usage |
32820 | 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 | .and.redistribution.#.of.this.fi |
32840 | 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 | le,.and.for.a.DISCLAIMER.OF.ALL. |
32860 | 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 0a 0a 23 20 74 63 6c 50 61 72 73 65 43 6f 6e 66 69 67 53 | WARRANTIES..#..#.tclParseConfigS |
32880 | 70 65 63 20 2d 2d 0a 23 0a 23 09 50 61 72 73 65 73 20 61 20 6c 69 73 74 20 6f 66 20 22 2d 6f 70 | pec.--.#.#.Parses.a.list.of."-op |
328a0 | 74 69 6f 6e 20 76 61 6c 75 65 22 20 70 61 69 72 73 2e 20 49 66 20 61 6c 6c 20 6f 70 74 69 6f 6e | tion.value".pairs..If.all.option |
328c0 | 73 20 61 6e 64 0a 23 09 76 61 6c 75 65 73 20 61 72 65 20 6c 65 67 61 6c 2c 20 74 68 65 20 76 61 | s.and.#.values.are.legal,.the.va |
328e0 | 6c 75 65 73 20 61 72 65 20 73 74 6f 72 65 64 20 69 6e 0a 23 09 24 64 61 74 61 28 24 6f 70 74 69 | lues.are.stored.in.#.$data($opti |
32900 | 6f 6e 29 2e 20 4f 74 68 65 72 77 69 73 65 20 61 6e 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20 | on)..Otherwise.an.error.message. |
32920 | 69 73 20 72 65 74 75 72 6e 65 64 2e 20 57 68 65 6e 0a 23 09 61 6e 20 65 72 72 6f 72 20 68 61 70 | is.returned..When.#.an.error.hap |
32940 | 70 65 6e 73 2c 20 74 68 65 20 64 61 74 61 28 29 20 61 72 72 61 79 20 6d 61 79 20 68 61 76 65 20 | pens,.the.data().array.may.have. |
32960 | 62 65 65 6e 20 70 61 72 74 69 61 6c 6c 79 0a 23 09 6d 6f 64 69 66 69 65 64 2c 20 62 75 74 20 61 | been.partially.#.modified,.but.a |
32980 | 6c 6c 20 74 68 65 20 6d 6f 64 69 66 69 65 64 20 6d 65 6d 62 65 72 73 20 6f 66 20 74 68 65 20 64 | ll.the.modified.members.of.the.d |
329a0 | 61 74 61 28 30 20 61 72 72 61 79 20 61 72 65 0a 23 09 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 | ata(0.array.are.#.guaranteed.to. |
329c0 | 68 61 76 65 20 76 61 6c 69 64 20 76 61 6c 75 65 73 2e 20 54 68 69 73 20 69 73 20 64 69 66 66 65 | have.valid.values..This.is.diffe |
329e0 | 72 65 6e 74 20 74 68 61 6e 0a 23 09 54 6b 5f 43 6f 6e 66 69 67 75 72 65 57 69 64 67 65 74 28 29 | rent.than.#.Tk_ConfigureWidget() |
32a00 | 20 77 68 69 63 68 20 64 6f 65 73 20 6e 6f 74 20 6d 6f 64 69 66 79 20 74 68 65 20 76 61 6c 75 65 | .which.does.not.modify.the.value |
32a20 | 20 6f 66 20 61 0a 23 09 77 69 64 67 65 74 20 72 65 63 6f 72 64 20 69 66 20 61 6e 79 20 65 72 72 | .of.a.#.widget.record.if.any.err |
32a40 | 6f 72 20 6f 63 63 75 72 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 0a 23 20 77 20 | or.occurs..#.#.Arguments:.#.#.w. |
32a60 | 3d 20 77 69 64 67 65 74 20 72 65 63 6f 72 64 20 74 6f 20 6d 6f 64 69 66 79 2e 20 4d 75 73 74 20 | =.widget.record.to.modify..Must. |
32a80 | 62 65 20 74 68 65 20 70 61 74 68 6e 61 6d 65 20 6f 66 20 61 20 77 69 64 67 65 74 2e 0a 23 0a 23 | be.the.pathname.of.a.widget..#.# |
32aa0 | 20 73 70 65 63 73 20 3d 20 7b 0a 23 20 20 20 20 7b 2d 63 6f 6d 6d 61 6e 64 6c 69 6e 65 73 77 69 | .specs.=.{.#....{-commandlineswi |
32ac0 | 74 63 68 20 72 65 73 6f 75 72 63 65 4e 61 6d 65 20 52 65 73 6f 75 72 63 65 43 6c 61 73 73 20 64 | tch.resourceName.ResourceClass.d |
32ae0 | 65 66 61 75 6c 74 56 61 6c 75 65 20 76 65 72 69 66 69 65 72 7d 0a 23 20 20 20 20 7b 2e 2e 2e 2e | efaultValue.verifier}.#....{.... |
32b00 | 7d 0a 23 20 7d 0a 23 0a 23 20 66 6c 61 67 73 20 3d 20 63 75 72 72 65 6e 74 6c 79 20 75 6e 75 73 | }.#.}.#.#.flags.=.currently.unus |
32b20 | 65 64 2e 0a 23 0a 23 20 61 72 67 4c 69 73 74 20 3d 20 54 68 65 20 6c 69 73 74 20 6f 66 20 20 22 | ed..#.#.argList.=.The.list.of.." |
32b40 | 2d 6f 70 74 69 6f 6e 20 76 61 6c 75 65 22 20 70 61 69 72 73 2e 0a 23 0a 70 72 6f 63 20 74 63 6c | -option.value".pairs..#.proc.tcl |
32b60 | 50 61 72 73 65 43 6f 6e 66 69 67 53 70 65 63 20 7b 77 20 73 70 65 63 73 20 66 6c 61 67 73 20 61 | ParseConfigSpec.{w.specs.flags.a |
32b80 | 72 67 4c 69 73 74 7d 20 7b 0a 20 20 20 20 75 70 76 61 72 20 23 30 20 24 77 20 64 61 74 61 0a 0a | rgList}.{.....upvar.#0.$w.data.. |
32ba0 | 20 20 20 20 23 20 31 3a 20 50 75 74 20 74 68 65 20 73 70 65 63 73 20 69 6e 20 61 73 73 6f 63 69 | ....#.1:.Put.the.specs.in.associ |
32bc0 | 61 74 69 76 65 20 61 72 72 61 79 73 20 66 6f 72 20 66 61 73 74 65 72 20 61 63 63 65 73 73 0a 20 | ative.arrays.for.faster.access.. |
32be0 | 20 20 20 23 0a 20 20 20 20 66 6f 72 65 61 63 68 20 73 70 65 63 20 24 73 70 65 63 73 20 7b 0a 09 | ...#.....foreach.spec.$specs.{.. |
32c00 | 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 73 70 65 63 5d 20 3c 20 34 7d 20 7b 0a 09 20 20 20 20 | if.{[llength.$spec].<.4}.{...... |
32c20 | 65 72 72 6f 72 20 22 5c 22 73 70 65 63 5c 22 20 73 68 6f 75 6c 64 20 63 6f 6e 74 61 69 6e 20 35 | error."\"spec\".should.contain.5 |
32c40 | 20 6f 72 20 34 20 65 6c 65 6d 65 6e 74 73 22 0a 09 7d 0a 09 73 65 74 20 63 6d 64 73 77 20 5b 6c | .or.4.elements"..}..set.cmdsw.[l |
32c60 | 69 6e 64 65 78 20 24 73 70 65 63 20 30 5d 0a 09 73 65 74 20 63 6d 64 28 24 63 6d 64 73 77 29 20 | index.$spec.0]..set.cmd($cmdsw). |
32c80 | 22 22 0a 09 73 65 74 20 72 6e 61 6d 65 28 24 63 6d 64 73 77 29 20 20 20 5b 6c 69 6e 64 65 78 20 | ""..set.rname($cmdsw)...[lindex. |
32ca0 | 24 73 70 65 63 20 31 5d 0a 09 73 65 74 20 72 63 6c 61 73 73 28 24 63 6d 64 73 77 29 20 20 5b 6c | $spec.1]..set.rclass($cmdsw)..[l |
32cc0 | 69 6e 64 65 78 20 24 73 70 65 63 20 32 5d 0a 09 73 65 74 20 64 65 66 28 24 63 6d 64 73 77 29 20 | index.$spec.2]..set.def($cmdsw). |
32ce0 | 20 20 20 20 5b 6c 69 6e 64 65 78 20 24 73 70 65 63 20 33 5d 0a 09 73 65 74 20 76 65 72 70 72 6f | ....[lindex.$spec.3]..set.verpro |
32d00 | 63 28 24 63 6d 64 73 77 29 20 5b 6c 69 6e 64 65 78 20 24 73 70 65 63 20 34 5d 0a 20 20 20 20 7d | c($cmdsw).[lindex.$spec.4].....} |
32d20 | 0a 0a 20 20 20 20 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 61 72 67 4c 69 73 74 5d 20 26 20 31 | ......if.{[llength.$argList].&.1 |
32d40 | 7d 20 7b 0a 09 73 65 74 20 63 6d 64 73 77 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 4c 69 73 74 20 | }.{..set.cmdsw.[lindex.$argList. |
32d60 | 65 6e 64 5d 0a 09 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 63 6d 64 28 24 63 6d 64 | end]..if.{![info.exists.cmd($cmd |
32d80 | 73 77 29 5d 7d 20 7b 0a 09 20 20 20 20 65 72 72 6f 72 20 22 62 61 64 20 6f 70 74 69 6f 6e 20 5c | sw)]}.{......error."bad.option.\ |
32da0 | 22 24 63 6d 64 73 77 5c 22 3a 20 6d 75 73 74 20 62 65 20 5b 74 63 6c 4c 69 73 74 56 61 6c 69 64 | "$cmdsw\":.must.be.[tclListValid |
32dc0 | 46 6c 61 67 73 20 63 6d 64 5d 22 0a 09 7d 0a 09 65 72 72 6f 72 20 22 76 61 6c 75 65 20 66 6f 72 | Flags.cmd]"..}..error."value.for |
32de0 | 20 5c 22 24 63 6d 64 73 77 5c 22 20 6d 69 73 73 69 6e 67 22 0a 20 20 20 20 7d 0a 0a 20 20 20 20 | .\"$cmdsw\".missing".....}...... |
32e00 | 23 20 32 3a 20 73 65 74 20 74 68 65 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 73 0a 20 20 20 20 | #.2:.set.the.default.values..... |
32e20 | 23 0a 20 20 20 20 66 6f 72 65 61 63 68 20 63 6d 64 73 77 20 5b 61 72 72 61 79 20 6e 61 6d 65 73 | #.....foreach.cmdsw.[array.names |
32e40 | 20 63 6d 64 5d 20 7b 0a 09 73 65 74 20 64 61 74 61 28 24 63 6d 64 73 77 29 20 24 64 65 66 28 24 | .cmd].{..set.data($cmdsw).$def($ |
32e60 | 63 6d 64 73 77 29 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 33 3a 20 70 61 72 73 65 20 74 68 65 | cmdsw).....}......#.3:.parse.the |
32e80 | 20 61 72 67 75 6d 65 6e 74 20 6c 69 73 74 0a 20 20 20 20 23 0a 20 20 20 20 66 6f 72 65 61 63 68 | .argument.list.....#.....foreach |
32ea0 | 20 7b 63 6d 64 73 77 20 76 61 6c 75 65 7d 20 24 61 72 67 4c 69 73 74 20 7b 0a 09 69 66 20 7b 21 | .{cmdsw.value}.$argList.{..if.{! |
32ec0 | 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 63 6d 64 28 24 63 6d 64 73 77 29 5d 7d 20 7b 0a 09 20 20 | [info.exists.cmd($cmdsw)]}.{.... |
32ee0 | 20 20 65 72 72 6f 72 20 22 62 61 64 20 6f 70 74 69 6f 6e 20 5c 22 24 63 6d 64 73 77 5c 22 3a 20 | ..error."bad.option.\"$cmdsw\":. |
32f00 | 6d 75 73 74 20 62 65 20 5b 74 63 6c 4c 69 73 74 56 61 6c 69 64 46 6c 61 67 73 20 63 6d 64 5d 22 | must.be.[tclListValidFlags.cmd]" |
32f20 | 0a 09 7d 0a 09 73 65 74 20 64 61 74 61 28 24 63 6d 64 73 77 29 20 24 76 61 6c 75 65 0a 20 20 20 | ..}..set.data($cmdsw).$value.... |
32f40 | 20 7d 0a 0a 20 20 20 20 23 20 44 6f 6e 65 21 0a 7d 0a 0a 70 72 6f 63 20 74 63 6c 4c 69 73 74 56 | .}......#.Done!.}..proc.tclListV |
32f60 | 61 6c 69 64 46 6c 61 67 73 20 7b 76 7d 20 7b 0a 20 20 20 20 75 70 76 61 72 20 24 76 20 63 6d 64 | alidFlags.{v}.{.....upvar.$v.cmd |
32f80 | 0a 0a 20 20 20 20 73 65 74 20 6c 65 6e 20 5b 6c 6c 65 6e 67 74 68 20 5b 61 72 72 61 79 20 6e 61 | ......set.len.[llength.[array.na |
32fa0 | 6d 65 73 20 63 6d 64 5d 5d 0a 20 20 20 20 73 65 74 20 69 20 31 0a 20 20 20 20 73 65 74 20 73 65 | mes.cmd]].....set.i.1.....set.se |
32fc0 | 70 61 72 61 74 6f 72 20 22 22 0a 20 20 20 20 73 65 74 20 65 72 72 6f 72 6d 73 67 20 22 22 0a 20 | parator."".....set.errormsg."".. |
32fe0 | 20 20 20 66 6f 72 65 61 63 68 20 63 6d 64 73 77 20 5b 6c 73 6f 72 74 20 5b 61 72 72 61 79 20 6e | ...foreach.cmdsw.[lsort.[array.n |
33000 | 61 6d 65 73 20 63 6d 64 5d 5d 20 7b 0a 09 61 70 70 65 6e 64 20 65 72 72 6f 72 6d 73 67 20 22 24 | ames.cmd]].{..append.errormsg."$ |
33020 | 73 65 70 61 72 61 74 6f 72 24 63 6d 64 73 77 22 0a 09 69 6e 63 72 20 69 0a 09 69 66 20 7b 24 69 | separator$cmdsw"..incr.i..if.{$i |
33040 | 20 3d 3d 20 24 6c 65 6e 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 73 65 70 61 72 61 74 6f 72 20 22 | .==.$len}.{......set.separator." |
33060 | 2c 20 6f 72 20 22 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 73 65 74 20 73 65 70 61 72 61 | ,.or."..}.else.{......set.separa |
33080 | 74 6f 72 20 22 2c 20 22 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 65 72 | tor.",."..}.....}.....return.$er |
330a0 | 72 6f 72 6d 73 67 0a 7d 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | rormsg.}..#--------------------- |
330c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
330e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 0a 23 09 09 09 46 6f 63 75 73 20 47 72 | -----------------.#.#...Focus.Gr |
33100 | 6f 75 70 0a 23 0a 23 20 46 6f 63 75 73 20 67 72 6f 75 70 73 20 61 72 65 20 75 73 65 64 20 74 6f | oup.#.#.Focus.groups.are.used.to |
33120 | 20 68 61 6e 64 6c 65 20 74 68 65 20 75 73 65 72 27 73 20 66 6f 63 75 73 69 6e 67 20 61 63 74 69 | .handle.the.user's.focusing.acti |
33140 | 6f 6e 73 20 69 6e 73 69 64 65 20 61 0a 23 20 74 6f 70 6c 65 76 65 6c 2e 0a 23 0a 23 20 4f 6e 65 | ons.inside.a.#.toplevel..#.#.One |
33160 | 20 65 78 61 6d 70 6c 65 20 6f 66 20 75 73 69 6e 67 20 66 6f 63 75 73 20 67 72 6f 75 70 73 20 69 | .example.of.using.focus.groups.i |
33180 | 73 3a 20 77 68 65 6e 20 74 68 65 20 75 73 65 72 20 66 6f 63 75 73 65 73 20 6f 6e 20 61 6e 0a 23 | s:.when.the.user.focuses.on.an.# |
331a0 | 20 65 6e 74 72 79 2c 20 74 68 65 20 74 65 78 74 20 69 6e 20 74 68 65 20 65 6e 74 72 79 20 69 73 | .entry,.the.text.in.the.entry.is |
331c0 | 20 68 69 67 68 6c 69 67 68 74 65 64 20 61 6e 64 20 74 68 65 20 63 75 72 73 6f 72 20 69 73 20 70 | .highlighted.and.the.cursor.is.p |
331e0 | 75 74 20 74 6f 0a 23 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 74 65 78 74 2e 20 57 68 65 | ut.to.#.the.end.of.the.text..Whe |
33200 | 6e 20 74 68 65 20 75 73 65 72 20 63 68 61 6e 67 65 73 20 66 6f 63 75 73 20 74 6f 20 61 6e 6f 74 | n.the.user.changes.focus.to.anot |
33220 | 68 65 72 20 77 69 64 67 65 74 2c 0a 23 20 74 68 65 20 74 65 78 74 20 69 6e 20 74 68 65 20 70 72 | her.widget,.#.the.text.in.the.pr |
33240 | 65 76 69 6f 75 73 6c 79 20 66 6f 63 75 73 65 64 20 65 6e 74 72 79 20 69 73 20 76 61 6c 69 64 61 | eviously.focused.entry.is.valida |
33260 | 74 65 64 2e 0a 23 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ted..#.#------------------------ |
33280 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
332a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 0a 23 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f | --------------...#.tkFocusGroup_ |
332c0 | 43 72 65 61 74 65 20 2d 2d 0a 23 0a 23 09 43 72 65 61 74 65 20 61 20 66 6f 63 75 73 20 67 72 6f | Create.--.#.#.Create.a.focus.gro |
332e0 | 75 70 2e 20 41 6c 6c 20 74 68 65 20 77 69 64 67 65 74 73 20 69 6e 20 61 20 66 6f 63 75 73 20 67 | up..All.the.widgets.in.a.focus.g |
33300 | 72 6f 75 70 20 6d 75 73 74 20 62 65 0a 23 09 77 69 74 68 69 6e 20 74 68 65 20 73 61 6d 65 20 66 | roup.must.be.#.within.the.same.f |
33320 | 6f 63 75 73 20 74 6f 70 6c 65 76 65 6c 2e 20 45 61 63 68 20 74 6f 70 6c 65 76 65 6c 20 63 61 6e | ocus.toplevel..Each.toplevel.can |
33340 | 20 68 61 76 65 20 6f 6e 6c 79 0a 23 09 6f 6e 65 20 66 6f 63 75 73 20 67 72 6f 75 70 2c 20 77 68 | .have.only.#.one.focus.group,.wh |
33360 | 69 63 68 20 69 73 20 69 64 65 6e 74 69 66 69 65 64 20 62 79 20 74 68 65 20 6e 61 6d 65 20 6f 66 | ich.is.identified.by.the.name.of |
33380 | 20 74 68 65 0a 23 09 74 6f 70 6c 65 76 65 6c 20 77 69 64 67 65 74 2e 0a 23 0a 70 72 6f 63 20 74 | .the.#.toplevel.widget..#.proc.t |
333a0 | 6b 46 6f 63 75 73 47 72 6f 75 70 5f 43 72 65 61 74 65 20 7b 74 7d 20 7b 0a 20 20 20 20 67 6c 6f | kFocusGroup_Create.{t}.{.....glo |
333c0 | 62 61 6c 20 74 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 | bal.tkPriv.....if.{[string.compa |
333e0 | 72 65 20 5b 77 69 6e 66 6f 20 74 6f 70 6c 65 76 65 6c 20 24 74 5d 20 24 74 5d 7d 20 7b 0a 09 65 | re.[winfo.toplevel.$t].$t]}.{..e |
33400 | 72 72 6f 72 20 22 24 74 20 69 73 20 6e 6f 74 20 61 20 74 6f 70 6c 65 76 65 6c 20 77 69 6e 64 6f | rror."$t.is.not.a.toplevel.windo |
33420 | 77 22 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 | w".....}.....if.{![info.exists.t |
33440 | 6b 50 72 69 76 28 66 67 2c 24 74 29 5d 7d 20 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 66 67 2c | kPriv(fg,$t)]}.{..set.tkPriv(fg, |
33460 | 24 74 29 20 31 0a 09 73 65 74 20 74 6b 50 72 69 76 28 66 6f 63 75 73 2c 24 74 29 20 22 22 0a 09 | $t).1..set.tkPriv(focus,$t)."".. |
33480 | 62 69 6e 64 20 24 74 20 3c 46 6f 63 75 73 49 6e 3e 20 20 5b 6c 69 73 74 20 74 6b 46 6f 63 75 73 | bind.$t.<FocusIn>..[list.tkFocus |
334a0 | 47 72 6f 75 70 5f 49 6e 20 20 24 74 20 25 57 20 25 64 5d 0a 09 62 69 6e 64 20 24 74 20 3c 46 6f | Group_In..$t.%W.%d]..bind.$t.<Fo |
334c0 | 63 75 73 4f 75 74 3e 20 5b 6c 69 73 74 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f 4f 75 74 20 24 | cusOut>.[list.tkFocusGroup_Out.$ |
334e0 | 74 20 25 57 20 25 64 5d 0a 09 62 69 6e 64 20 24 74 20 3c 44 65 73 74 72 6f 79 3e 20 20 5b 6c 69 | t.%W.%d]..bind.$t.<Destroy>..[li |
33500 | 73 74 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f 44 65 73 74 72 6f 79 20 24 74 20 25 57 5d 0a 20 | st.tkFocusGroup_Destroy.$t.%W].. |
33520 | 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f 42 69 6e 64 49 6e 20 2d 2d | ...}.}..#.tkFocusGroup_BindIn.-- |
33540 | 0a 23 0a 23 20 41 64 64 20 61 20 77 69 64 67 65 74 20 69 6e 74 6f 20 74 68 65 20 22 46 6f 63 75 | .#.#.Add.a.widget.into.the."Focu |
33560 | 73 49 6e 22 20 6c 69 73 74 20 6f 66 20 74 68 65 20 66 6f 63 75 73 20 67 72 6f 75 70 2e 20 54 68 | sIn".list.of.the.focus.group..Th |
33580 | 65 20 24 63 6d 64 20 77 69 6c 6c 20 62 65 0a 23 20 63 61 6c 6c 65 64 20 77 68 65 6e 20 74 68 65 | e.$cmd.will.be.#.called.when.the |
335a0 | 20 77 69 64 67 65 74 20 69 73 20 66 6f 63 75 73 65 64 20 6f 6e 20 62 79 20 74 68 65 20 75 73 65 | .widget.is.focused.on.by.the.use |
335c0 | 72 2e 0a 23 0a 70 72 6f 63 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f 42 69 6e 64 49 6e 20 7b 74 | r..#.proc.tkFocusGroup_BindIn.{t |
335e0 | 20 77 20 63 6d 64 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 46 6f 63 75 73 49 6e 20 74 | .w.cmd}.{.....global.tkFocusIn.t |
33600 | 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 6b 50 72 | kPriv.....if.{![info.exists.tkPr |
33620 | 69 76 28 66 67 2c 24 74 29 5d 7d 20 7b 0a 09 65 72 72 6f 72 20 22 66 6f 63 75 73 20 67 72 6f 75 | iv(fg,$t)]}.{..error."focus.grou |
33640 | 70 20 5c 22 24 74 5c 22 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 22 0a 20 20 20 20 7d 0a 20 20 | p.\"$t\".doesn't.exist".....}... |
33660 | 20 20 73 65 74 20 74 6b 46 6f 63 75 73 49 6e 28 24 74 2c 24 77 29 20 24 63 6d 64 0a 7d 0a 0a 0a | ..set.tkFocusIn($t,$w).$cmd.}... |
33680 | 23 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f 42 69 6e 64 4f 75 74 20 2d 2d 0a 23 0a 23 09 41 64 | #.tkFocusGroup_BindOut.--.#.#.Ad |
336a0 | 64 20 61 20 77 69 64 67 65 74 20 69 6e 74 6f 20 74 68 65 20 22 46 6f 63 75 73 4f 75 74 22 20 6c | d.a.widget.into.the."FocusOut".l |
336c0 | 69 73 74 20 6f 66 20 74 68 65 20 66 6f 63 75 73 20 67 72 6f 75 70 2e 20 54 68 65 0a 23 09 24 63 | ist.of.the.focus.group..The.#.$c |
336e0 | 6d 64 20 77 69 6c 6c 20 62 65 20 63 61 6c 6c 65 64 20 77 68 65 6e 20 74 68 65 20 77 69 64 67 65 | md.will.be.called.when.the.widge |
33700 | 74 20 6c 6f 73 65 73 20 74 68 65 20 66 6f 63 75 73 20 28 55 73 65 72 0a 23 09 74 79 70 65 73 20 | t.loses.the.focus.(User.#.types. |
33720 | 54 61 62 20 6f 72 20 63 6c 69 63 6b 20 6f 6e 20 61 6e 6f 74 68 65 72 20 77 69 64 67 65 74 29 2e | Tab.or.click.on.another.widget). |
33740 | 0a 23 0a 70 72 6f 63 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f 42 69 6e 64 4f 75 74 20 7b 74 20 | .#.proc.tkFocusGroup_BindOut.{t. |
33760 | 77 20 63 6d 64 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 46 6f 63 75 73 4f 75 74 20 74 | w.cmd}.{.....global.tkFocusOut.t |
33780 | 6b 50 72 69 76 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 6b 50 72 | kPriv.....if.{![info.exists.tkPr |
337a0 | 69 76 28 66 67 2c 24 74 29 5d 7d 20 7b 0a 09 65 72 72 6f 72 20 22 66 6f 63 75 73 20 67 72 6f 75 | iv(fg,$t)]}.{..error."focus.grou |
337c0 | 70 20 5c 22 24 74 5c 22 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 22 0a 20 20 20 20 7d 0a 20 20 | p.\"$t\".doesn't.exist".....}... |
337e0 | 20 20 73 65 74 20 74 6b 46 6f 63 75 73 4f 75 74 28 24 74 2c 24 77 29 20 24 63 6d 64 0a 7d 0a 0a | ..set.tkFocusOut($t,$w).$cmd.}.. |
33800 | 23 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f 44 65 73 74 72 6f 79 20 2d 2d 0a 23 0a 23 09 43 6c | #.tkFocusGroup_Destroy.--.#.#.Cl |
33820 | 65 61 6e 73 20 75 70 20 77 68 65 6e 20 6d 65 6d 62 65 72 73 20 6f 66 20 74 68 65 20 66 6f 63 75 | eans.up.when.members.of.the.focu |
33840 | 73 20 67 72 6f 75 70 20 69 73 20 64 65 6c 65 74 65 64 2c 20 6f 72 20 77 68 65 6e 20 74 68 65 0a | s.group.is.deleted,.or.when.the. |
33860 | 23 09 74 6f 70 6c 65 76 65 6c 20 69 74 73 65 6c 66 20 67 65 74 73 20 64 65 6c 65 74 65 64 2e 0a | #.toplevel.itself.gets.deleted.. |
33880 | 23 0a 70 72 6f 63 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f 44 65 73 74 72 6f 79 20 7b 74 20 77 | #.proc.tkFocusGroup_Destroy.{t.w |
338a0 | 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 76 20 74 6b 46 6f 63 75 73 49 6e 20 | }.{.....global.tkPriv.tkFocusIn. |
338c0 | 74 6b 46 6f 63 75 73 4f 75 74 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 | tkFocusOut......if.{[string.equa |
338e0 | 6c 20 24 74 20 24 77 5d 7d 20 7b 0a 09 75 6e 73 65 74 20 74 6b 50 72 69 76 28 66 67 2c 24 74 29 | l.$t.$w]}.{..unset.tkPriv(fg,$t) |
33900 | 0a 09 75 6e 73 65 74 20 74 6b 50 72 69 76 28 66 6f 63 75 73 2c 24 74 29 20 0a 0a 09 66 6f 72 65 | ..unset.tkPriv(focus,$t)....fore |
33920 | 61 63 68 20 6e 61 6d 65 20 5b 61 72 72 61 79 20 6e 61 6d 65 73 20 74 6b 46 6f 63 75 73 49 6e 20 | ach.name.[array.names.tkFocusIn. |
33940 | 24 74 2c 2a 5d 20 7b 0a 09 20 20 20 20 75 6e 73 65 74 20 74 6b 46 6f 63 75 73 49 6e 28 24 6e 61 | $t,*].{......unset.tkFocusIn($na |
33960 | 6d 65 29 0a 09 7d 0a 09 66 6f 72 65 61 63 68 20 6e 61 6d 65 20 5b 61 72 72 61 79 20 6e 61 6d 65 | me)..}..foreach.name.[array.name |
33980 | 73 20 74 6b 46 6f 63 75 73 4f 75 74 20 24 74 2c 2a 5d 20 7b 0a 09 20 20 20 20 75 6e 73 65 74 20 | s.tkFocusOut.$t,*].{......unset. |
339a0 | 74 6b 46 6f 63 75 73 4f 75 74 28 24 6e 61 6d 65 29 0a 09 7d 0a 20 20 20 20 7d 20 65 6c 73 65 20 | tkFocusOut($name)..}.....}.else. |
339c0 | 7b 0a 09 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 6b 50 72 69 76 28 66 6f 63 75 73 | {..if.{[info.exists.tkPriv(focus |
339e0 | 2c 24 74 29 5d 20 26 26 20 5c 0a 09 09 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 | ,$t)].&&.\...[string.equal.$tkPr |
33a00 | 69 76 28 66 6f 63 75 73 2c 24 74 29 20 24 77 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 74 6b 50 | iv(focus,$t).$w]}.{......set.tkP |
33a20 | 72 69 76 28 66 6f 63 75 73 2c 24 74 29 20 22 22 0a 09 7d 0a 09 63 61 74 63 68 20 7b 0a 09 20 20 | riv(focus,$t).""..}..catch.{.... |
33a40 | 20 20 75 6e 73 65 74 20 74 6b 46 6f 63 75 73 49 6e 28 24 74 2c 24 77 29 0a 09 7d 0a 09 63 61 74 | ..unset.tkFocusIn($t,$w)..}..cat |
33a60 | 63 68 20 7b 0a 09 20 20 20 20 75 6e 73 65 74 20 74 6b 46 6f 63 75 73 4f 75 74 28 24 74 2c 24 77 | ch.{......unset.tkFocusOut($t,$w |
33a80 | 29 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f 49 6e 20 | )..}.....}.}..#.tkFocusGroup_In. |
33aa0 | 2d 2d 0a 23 0a 23 09 48 61 6e 64 6c 65 73 20 74 68 65 20 3c 46 6f 63 75 73 49 6e 3e 20 65 76 65 | --.#.#.Handles.the.<FocusIn>.eve |
33ac0 | 6e 74 2e 20 43 61 6c 6c 73 20 74 68 65 20 46 6f 63 75 73 49 6e 20 63 6f 6d 6d 61 6e 64 20 66 6f | nt..Calls.the.FocusIn.command.fo |
33ae0 | 72 20 74 68 65 20 6e 65 77 6c 79 0a 23 09 66 6f 63 75 73 65 64 20 77 69 64 67 65 74 20 69 6e 20 | r.the.newly.#.focused.widget.in. |
33b00 | 74 68 65 20 66 6f 63 75 73 20 67 72 6f 75 70 2e 0a 23 0a 70 72 6f 63 20 74 6b 46 6f 63 75 73 47 | the.focus.group..#.proc.tkFocusG |
33b20 | 72 6f 75 70 5f 49 6e 20 7b 74 20 77 20 64 65 74 61 69 6c 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 | roup_In.{t.w.detail}.{.....globa |
33b40 | 6c 20 74 6b 50 72 69 76 20 74 6b 46 6f 63 75 73 49 6e 0a 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e | l.tkPriv.tkFocusIn......if.{![in |
33b60 | 66 6f 20 65 78 69 73 74 73 20 74 6b 46 6f 63 75 73 49 6e 28 24 74 2c 24 77 29 5d 7d 20 7b 0a 09 | fo.exists.tkFocusIn($t,$w)]}.{.. |
33b80 | 73 65 74 20 74 6b 46 6f 63 75 73 49 6e 28 24 74 2c 24 77 29 20 22 22 0a 09 72 65 74 75 72 6e 0a | set.tkFocusIn($t,$w).""..return. |
33ba0 | 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 6b 50 72 | ....}.....if.{![info.exists.tkPr |
33bc0 | 69 76 28 66 6f 63 75 73 2c 24 74 29 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 | iv(focus,$t)]}.{..return.....}.. |
33be0 | 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 6b 50 72 69 76 28 66 6f 63 | ...if.{[string.equal.$tkPriv(foc |
33c00 | 75 73 2c 24 74 29 20 24 77 5d 7d 20 7b 0a 09 23 20 54 68 69 73 20 69 73 20 61 6c 72 65 61 64 79 | us,$t).$w]}.{..#.This.is.already |
33c20 | 20 69 6e 20 66 6f 63 75 73 0a 09 23 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 20 65 6c 73 65 20 | .in.focus..#..return.....}.else. |
33c40 | 7b 0a 09 73 65 74 20 74 6b 50 72 69 76 28 66 6f 63 75 73 2c 24 74 29 20 24 77 0a 09 65 76 61 6c | {..set.tkPriv(focus,$t).$w..eval |
33c60 | 20 24 74 6b 46 6f 63 75 73 49 6e 28 24 74 2c 24 77 29 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b | .$tkFocusIn($t,$w).....}.}..#.tk |
33c80 | 46 6f 63 75 73 47 72 6f 75 70 5f 4f 75 74 20 2d 2d 0a 23 0a 23 09 48 61 6e 64 6c 65 73 20 74 68 | FocusGroup_Out.--.#.#.Handles.th |
33ca0 | 65 20 3c 46 6f 63 75 73 4f 75 74 3e 20 65 76 65 6e 74 2e 20 43 68 65 63 6b 73 20 69 66 20 74 68 | e.<FocusOut>.event..Checks.if.th |
33cc0 | 69 73 20 69 73 20 72 65 61 6c 6c 79 20 61 20 6c 6f 73 65 0a 23 09 66 6f 63 75 73 20 65 76 65 6e | is.is.really.a.lose.#.focus.even |
33ce0 | 74 2c 20 6e 6f 74 20 6f 6e 65 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 74 68 65 20 6d 6f 75 73 | t,.not.one.generated.by.the.mous |
33d00 | 65 20 6d 6f 76 69 6e 67 20 6f 75 74 20 6f 66 20 74 68 65 0a 23 09 74 6f 70 6c 65 76 65 6c 20 77 | e.moving.out.of.the.#.toplevel.w |
33d20 | 69 6e 64 6f 77 2e 20 20 43 61 6c 6c 73 20 74 68 65 20 46 6f 63 75 73 4f 75 74 20 63 6f 6d 6d 61 | indow...Calls.the.FocusOut.comma |
33d40 | 6e 64 20 66 6f 72 20 74 68 65 20 77 69 64 67 65 74 0a 23 09 77 68 6f 20 6c 6f 73 65 73 20 69 74 | nd.for.the.widget.#.who.loses.it |
33d60 | 73 20 66 6f 63 75 73 2e 0a 23 0a 70 72 6f 63 20 74 6b 46 6f 63 75 73 47 72 6f 75 70 5f 4f 75 74 | s.focus..#.proc.tkFocusGroup_Out |
33d80 | 20 7b 74 20 77 20 64 65 74 61 69 6c 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 6b 50 72 69 | .{t.w.detail}.{.....global.tkPri |
33da0 | 76 20 74 6b 46 6f 63 75 73 4f 75 74 0a 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f | v.tkFocusOut......if.{[string.co |
33dc0 | 6d 70 61 72 65 20 24 64 65 74 61 69 6c 20 4e 6f 74 69 66 79 4e 6f 6e 6c 69 6e 65 61 72 5d 20 26 | mpare.$detail.NotifyNonlinear].& |
33de0 | 26 0a 09 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 64 65 74 61 69 6c 20 4e 6f 74 69 66 | &..[string.compare.$detail.Notif |
33e00 | 79 4e 6f 6e 6c 69 6e 65 61 72 56 69 72 74 75 61 6c 5d 7d 20 7b 0a 09 23 20 54 68 69 73 20 69 73 | yNonlinearVirtual]}.{..#.This.is |
33e20 | 20 63 61 75 73 65 64 20 62 79 20 6d 6f 75 73 65 20 6d 6f 76 69 6e 67 20 6f 75 74 20 6f 66 20 74 | .caused.by.mouse.moving.out.of.t |
33e40 | 68 65 20 77 69 6e 64 6f 77 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b | he.window..return.....}.....if.{ |
33e60 | 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 6b 50 72 69 76 28 66 6f 63 75 73 2c 24 74 29 5d 7d | ![info.exists.tkPriv(focus,$t)]} |
33e80 | 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 | .{..return.....}.....if.{![info. |
33ea0 | 65 78 69 73 74 73 20 74 6b 46 6f 63 75 73 4f 75 74 28 24 74 2c 24 77 29 5d 7d 20 7b 0a 09 72 65 | exists.tkFocusOut($t,$w)]}.{..re |
33ec0 | 74 75 72 6e 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 65 76 61 6c 20 24 74 6b 46 6f 63 75 73 | turn.....}.else.{..eval.$tkFocus |
33ee0 | 4f 75 74 28 24 74 2c 24 77 29 0a 09 73 65 74 20 74 6b 50 72 69 76 28 66 6f 63 75 73 2c 24 74 29 | Out($t,$w)..set.tkPriv(focus,$t) |
33f00 | 20 22 22 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 6b 46 44 47 65 74 46 69 6c 65 54 79 70 65 73 20 | ."".....}.}..#.tkFDGetFileTypes. |
33f20 | 2d 2d 0a 23 0a 23 09 50 72 6f 63 65 73 73 20 74 68 65 20 73 74 72 69 6e 67 20 67 69 76 65 6e 20 | --.#.#.Process.the.string.given. |
33f40 | 62 79 20 74 68 65 20 2d 66 69 6c 65 74 79 70 65 73 20 6f 70 74 69 6f 6e 20 6f 66 20 74 68 65 20 | by.the.-filetypes.option.of.the. |
33f60 | 66 69 6c 65 0a 23 09 64 69 61 6c 6f 67 73 2e 20 53 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 43 | file.#.dialogs..Similar.to.the.C |
33f80 | 20 66 75 6e 63 74 69 6f 6e 20 54 6b 47 65 74 46 69 6c 65 46 69 6c 74 65 72 73 28 29 20 6f 6e 20 | .function.TkGetFileFilters().on. |
33fa0 | 74 68 65 20 4d 61 63 0a 23 09 61 6e 64 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 0a | the.Mac.#.and.Windows.platform.. |
33fc0 | 23 0a 70 72 6f 63 20 74 6b 46 44 47 65 74 46 69 6c 65 54 79 70 65 73 20 7b 73 74 72 69 6e 67 7d | #.proc.tkFDGetFileTypes.{string} |
33fe0 | 20 7b 0a 20 20 20 20 66 6f 72 65 61 63 68 20 74 20 24 73 74 72 69 6e 67 20 7b 0a 09 69 66 20 7b | .{.....foreach.t.$string.{..if.{ |
34000 | 5b 6c 6c 65 6e 67 74 68 20 24 74 5d 20 3c 20 32 20 7c 7c 20 5b 6c 6c 65 6e 67 74 68 20 24 74 5d | [llength.$t].<.2.||.[llength.$t] |
34020 | 20 3e 20 33 7d 20 7b 0a 09 20 20 20 20 65 72 72 6f 72 20 22 62 61 64 20 66 69 6c 65 20 74 79 70 | .>.3}.{......error."bad.file.typ |
34040 | 65 20 5c 22 24 74 5c 22 2c 20 73 68 6f 75 6c 64 20 62 65 20 5c 22 74 79 70 65 4e 61 6d 65 20 7b | e.\"$t\",.should.be.\"typeName.{ |
34060 | 65 78 74 65 6e 73 69 6f 6e 20 3f 65 78 74 65 6e 73 69 6f 6e 73 20 2e 2e 2e 3f 7d 20 3f 7b 6d 61 | extension.?extensions....?}.?{ma |
34080 | 63 54 79 70 65 20 3f 6d 61 63 54 79 70 65 73 20 2e 2e 2e 3f 7d 3f 5c 22 22 0a 09 7d 0a 09 65 76 | cType.?macTypes....?}?\""..}..ev |
340a0 | 61 6c 20 6c 61 70 70 65 6e 64 20 5b 6c 69 73 74 20 66 69 6c 65 54 79 70 65 73 28 5b 6c 69 6e 64 | al.lappend.[list.fileTypes([lind |
340c0 | 65 78 20 24 74 20 30 5d 29 5d 20 5b 6c 69 6e 64 65 78 20 24 74 20 31 5d 0a 20 20 20 20 7d 0a 0a | ex.$t.0])].[lindex.$t.1].....}.. |
340e0 | 20 20 20 20 73 65 74 20 74 79 70 65 73 20 7b 7d 0a 20 20 20 20 66 6f 72 65 61 63 68 20 74 20 24 | ....set.types.{}.....foreach.t.$ |
34100 | 73 74 72 69 6e 67 20 7b 0a 09 73 65 74 20 6c 61 62 65 6c 20 5b 6c 69 6e 64 65 78 20 24 74 20 30 | string.{..set.label.[lindex.$t.0 |
34120 | 5d 0a 09 73 65 74 20 65 78 74 73 20 7b 7d 0a 0a 09 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 | ]..set.exts.{}...if.{[info.exist |
34140 | 73 20 68 61 73 44 6f 6e 65 54 79 70 65 28 24 6c 61 62 65 6c 29 5d 7d 20 7b 0a 09 20 20 20 20 63 | s.hasDoneType($label)]}.{......c |
34160 | 6f 6e 74 69 6e 75 65 0a 09 7d 0a 0a 09 73 65 74 20 6e 61 6d 65 20 22 24 6c 61 62 65 6c 20 28 22 | ontinue..}...set.name."$label.(" |
34180 | 0a 09 73 65 74 20 73 65 70 20 22 22 0a 09 66 6f 72 65 61 63 68 20 65 78 74 20 24 66 69 6c 65 54 | ..set.sep.""..foreach.ext.$fileT |
341a0 | 79 70 65 73 28 24 6c 61 62 65 6c 29 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 | ypes($label).{......if.{[string. |
341c0 | 65 71 75 61 6c 20 24 65 78 74 20 22 22 5d 7d 20 7b 0a 09 09 63 6f 6e 74 69 6e 75 65 0a 09 20 20 | equal.$ext.""]}.{...continue.... |
341e0 | 20 20 7d 0a 09 20 20 20 20 72 65 67 73 75 62 20 7b 5e 5b 2e 5d 7d 20 24 65 78 74 20 22 2a 2e 22 | ..}......regsub.{^[.]}.$ext."*." |
34200 | 20 65 78 74 0a 09 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 68 61 73 47 | .ext......if.{![info.exists.hasG |
34220 | 6f 74 45 78 74 28 24 6c 61 62 65 6c 2c 24 65 78 74 29 5d 7d 20 7b 0a 09 09 61 70 70 65 6e 64 20 | otExt($label,$ext)]}.{...append. |
34240 | 6e 61 6d 65 20 24 73 65 70 24 65 78 74 0a 09 09 6c 61 70 70 65 6e 64 20 65 78 74 73 20 24 65 78 | name.$sep$ext...lappend.exts.$ex |
34260 | 74 0a 09 09 73 65 74 20 68 61 73 47 6f 74 45 78 74 28 24 6c 61 62 65 6c 2c 24 65 78 74 29 20 31 | t...set.hasGotExt($label,$ext).1 |
34280 | 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 73 65 74 20 73 65 70 20 2c 0a 09 7d 0a 09 61 70 70 65 6e | ......}......set.sep.,..}..appen |
342a0 | 64 20 6e 61 6d 65 20 22 29 22 0a 09 6c 61 70 70 65 6e 64 20 74 79 70 65 73 20 5b 6c 69 73 74 20 | d.name.")"..lappend.types.[list. |
342c0 | 24 6e 61 6d 65 20 24 65 78 74 73 5d 0a 0a 09 73 65 74 20 68 61 73 44 6f 6e 65 54 79 70 65 28 24 | $name.$exts]...set.hasDoneType($ |
342e0 | 6c 61 62 65 6c 29 20 31 0a 20 20 20 20 7d 0a 0a 20 20 20 20 72 65 74 75 72 6e 20 24 74 79 70 65 | label).1.....}......return.$type |
34300 | 73 0a 7d 0a 00 00 42 fd 23 20 69 6e 69 74 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 44 65 66 61 75 6c | s.}...B.#.init.tcl.--.#.#.Defaul |
34320 | 74 20 73 79 73 74 65 6d 20 73 74 61 72 74 75 70 20 66 69 6c 65 20 66 6f 72 20 54 63 6c 2d 62 61 | t.system.startup.file.for.Tcl-ba |
34340 | 73 65 64 20 61 70 70 6c 69 63 61 74 69 6f 6e 73 2e 20 20 44 65 66 69 6e 65 73 0a 23 20 22 75 6e | sed.applications...Defines.#."un |
34360 | 6b 6e 6f 77 6e 22 20 70 72 6f 63 65 64 75 72 65 20 61 6e 64 20 61 75 74 6f 2d 6c 6f 61 64 20 66 | known".procedure.and.auto-load.f |
34380 | 61 63 69 6c 69 74 69 65 73 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 69 6e | acilities..#.#.RCS:.@(#).$Id:.in |
343a0 | 69 74 2e 74 63 6c 2c 76 20 31 2e 33 39 20 32 30 30 30 2f 30 32 2f 30 31 20 31 39 3a 32 36 3a 30 | it.tcl,v.1.39.2000/02/01.19:26:0 |
343c0 | 38 20 65 72 69 63 6d 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 | 8.ericm.Exp.$.#.#.Copyright.(c). |
343e0 | 31 39 39 31 2d 31 39 39 33 20 54 68 65 20 52 65 67 65 6e 74 73 20 6f 66 20 74 68 65 20 55 6e 69 | 1991-1993.The.Regents.of.the.Uni |
34400 | 76 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e 0a 23 20 43 6f 70 79 72 69 67 | versity.of.California..#.Copyrig |
34420 | 68 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 36 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d | ht.(c).1994-1996.Sun.Microsystem |
34440 | 73 2c 20 49 6e 63 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 38 2d 31 39 39 | s,.Inc..#.Copyright.(c).1998-199 |
34460 | 39 20 53 63 72 69 70 74 69 63 73 20 43 6f 72 70 6f 72 61 74 69 6f 6e 2e 0a 23 0a 23 20 53 65 65 | 9.Scriptics.Corporation..#.#.See |
34480 | 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 6e | .the.file."license.terms".for.in |
344a0 | 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 | formation.on.usage.and.redistrib |
344c0 | 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 20 | ution.#.of.this.file,.and.for.a. |
344e0 | 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 0a | DISCLAIMER.OF.ALL.WARRANTIES..#. |
34500 | 0a 69 66 20 7b 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 20 70 61 63 6b 61 67 65 5d 20 3d 3d 20 | .if.{[info.commands.package].==. |
34520 | 22 22 7d 20 7b 0a 20 20 20 20 65 72 72 6f 72 20 22 76 65 72 73 69 6f 6e 20 6d 69 73 6d 61 74 63 | ""}.{.....error."version.mismatc |
34540 | 68 3a 20 6c 69 62 72 61 72 79 5c 6e 73 63 72 69 70 74 73 20 65 78 70 65 63 74 20 54 63 6c 20 76 | h:.library\nscripts.expect.Tcl.v |
34560 | 65 72 73 69 6f 6e 20 37 2e 35 62 31 20 6f 72 20 6c 61 74 65 72 20 62 75 74 20 74 68 65 20 6c 6f | ersion.7.5b1.or.later.but.the.lo |
34580 | 61 64 65 64 20 76 65 72 73 69 6f 6e 20 69 73 5c 6e 6f 6e 6c 79 20 5b 69 6e 66 6f 20 70 61 74 63 | aded.version.is\nonly.[info.patc |
345a0 | 68 6c 65 76 65 6c 5d 22 0a 7d 0a 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 20 2d 65 78 61 63 | hlevel]".}.package.require.-exac |
345c0 | 74 20 54 63 6c 20 38 2e 33 0a 0a 23 20 43 6f 6d 70 75 74 65 20 74 68 65 20 61 75 74 6f 20 70 61 | t.Tcl.8.3..#.Compute.the.auto.pa |
345e0 | 74 68 20 74 6f 20 75 73 65 20 69 6e 20 74 68 69 73 20 69 6e 74 65 72 70 72 65 74 65 72 2e 0a 23 | th.to.use.in.this.interpreter..# |
34600 | 20 54 68 65 20 76 61 6c 75 65 73 20 6f 6e 20 74 68 65 20 70 61 74 68 20 63 6f 6d 65 20 66 72 6f | .The.values.on.the.path.come.fro |
34620 | 6d 20 73 65 76 65 72 61 6c 20 6c 6f 63 61 74 69 6f 6e 73 3a 0a 23 0a 23 20 54 68 65 20 65 6e 76 | m.several.locations:.#.#.The.env |
34640 | 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 20 54 43 4c 4c 49 42 50 41 54 48 0a 23 0a 23 | ironment.variable.TCLLIBPATH.#.# |
34660 | 20 74 63 6c 5f 6c 69 62 72 61 72 79 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 20 64 69 72 65 63 | .tcl_library,.which.is.the.direc |
34680 | 74 6f 72 79 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 69 73 20 69 6e 69 74 2e 74 63 6c 20 73 63 | tory.containing.this.init.tcl.sc |
346a0 | 72 69 70 74 2e 0a 23 20 74 63 6c 49 6e 69 74 53 63 72 69 70 74 2e 68 20 73 65 61 72 63 68 65 73 | ript..#.tclInitScript.h.searches |
346c0 | 20 61 72 6f 75 6e 64 20 66 6f 72 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 63 6f 6e 74 61 69 | .around.for.the.directory.contai |
346e0 | 6e 69 6e 67 20 74 68 69 73 0a 23 20 69 6e 69 74 2e 74 63 6c 20 61 6e 64 20 64 65 66 69 6e 65 73 | ning.this.#.init.tcl.and.defines |
34700 | 20 74 63 6c 5f 6c 69 62 72 61 72 79 20 74 6f 20 74 68 61 74 20 6c 6f 63 61 74 69 6f 6e 20 62 65 | .tcl_library.to.that.location.be |
34720 | 66 6f 72 65 20 73 6f 75 72 63 69 6e 67 20 69 74 2e 0a 23 0a 23 20 54 68 65 20 70 61 72 65 6e 74 | fore.sourcing.it..#.#.The.parent |
34740 | 20 64 69 72 65 63 74 6f 72 79 20 6f 66 20 74 63 6c 5f 6c 69 62 72 61 72 79 2e 20 41 64 64 69 6e | .directory.of.tcl_library..Addin |
34760 | 67 20 74 68 65 20 70 61 72 65 6e 74 0a 23 20 6d 65 61 6e 73 20 74 68 61 74 20 70 61 63 6b 61 67 | g.the.parent.#.means.that.packag |
34780 | 65 73 20 69 6e 20 70 65 65 72 20 64 69 72 65 63 74 6f 72 69 65 73 20 77 69 6c 6c 20 62 65 20 66 | es.in.peer.directories.will.be.f |
347a0 | 6f 75 6e 64 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 0a 23 0a 23 20 41 6c 73 6f 20 61 64 64 | ound.automatically..#.#.Also.add |
347c0 | 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 77 68 65 72 65 20 74 68 65 20 65 78 65 63 75 74 61 | .the.directory.where.the.executa |
347e0 | 62 6c 65 20 69 73 20 6c 6f 63 61 74 65 64 2c 20 70 6c 75 73 20 2e 2e 2f 6c 69 62 0a 23 20 72 65 | ble.is.located,.plus.../lib.#.re |
34800 | 6c 61 74 69 76 65 20 74 6f 20 74 68 61 74 20 70 61 74 68 2e 0a 23 0a 23 20 74 63 6c 5f 70 6b 67 | lative.to.that.path..#.#.tcl_pkg |
34820 | 50 61 74 68 2c 20 77 68 69 63 68 20 69 73 20 73 65 74 20 62 79 20 74 68 65 20 70 6c 61 74 66 6f | Path,.which.is.set.by.the.platfo |
34840 | 72 6d 2d 73 70 65 63 69 66 69 63 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 72 6f 75 74 69 | rm-specific.initialization.routi |
34860 | 6e 65 73 0a 23 09 4f 6e 20 55 4e 49 58 20 69 74 20 69 73 20 63 6f 6d 70 69 6c 65 64 20 69 6e 0a | nes.#.On.UNIX.it.is.compiled.in. |
34880 | 23 20 20 20 20 20 20 20 4f 6e 20 57 69 6e 64 6f 77 73 2c 20 69 74 20 69 73 20 6e 6f 74 20 75 73 | #.......On.Windows,.it.is.not.us |
348a0 | 65 64 0a 23 09 4f 6e 20 4d 61 63 69 6e 74 6f 73 68 20 69 74 20 69 73 20 22 54 6f 6f 6c 20 43 6f | ed.#.On.Macintosh.it.is."Tool.Co |
348c0 | 6d 6d 61 6e 64 20 4c 61 6e 67 75 61 67 65 22 20 69 6e 20 74 68 65 20 45 78 74 65 6e 73 69 6f 6e | mmand.Language".in.the.Extension |
348e0 | 73 20 66 6f 6c 64 65 72 0a 0a 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 61 75 74 6f | s.folder..if.{![info.exists.auto |
34900 | 5f 70 61 74 68 5d 7d 20 7b 0a 20 20 20 20 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 20 65 6e | _path]}.{.....if.{[info.exist.en |
34920 | 76 28 54 43 4c 4c 49 42 50 41 54 48 29 5d 7d 20 7b 0a 09 73 65 74 20 61 75 74 6f 5f 70 61 74 68 | v(TCLLIBPATH)]}.{..set.auto_path |
34940 | 20 24 65 6e 76 28 54 43 4c 4c 49 42 50 41 54 48 29 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 | .$env(TCLLIBPATH).....}.else.{.. |
34960 | 73 65 74 20 61 75 74 6f 5f 70 61 74 68 20 22 22 0a 20 20 20 20 7d 0a 7d 0a 69 66 20 7b 5b 73 74 | set.auto_path."".....}.}.if.{[st |
34980 | 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 5b 69 6e 66 6f 20 6c 69 62 72 61 72 79 5d 20 7b 7d 5d 7d | ring.compare.[info.library].{}]} |
349a0 | 20 7b 0a 20 20 20 20 66 6f 72 65 61 63 68 20 5f 5f 64 69 72 20 5b 6c 69 73 74 20 5b 69 6e 66 6f | .{.....foreach.__dir.[list.[info |
349c0 | 20 6c 69 62 72 61 72 79 5d 20 5b 66 69 6c 65 20 64 69 72 6e 61 6d 65 20 5b 69 6e 66 6f 20 6c 69 | .library].[file.dirname.[info.li |
349e0 | 62 72 61 72 79 5d 5d 5d 20 7b 0a 09 69 66 20 7b 5b 6c 73 65 61 72 63 68 20 2d 65 78 61 63 74 20 | brary]]].{..if.{[lsearch.-exact. |
34a00 | 24 61 75 74 6f 5f 70 61 74 68 20 24 5f 5f 64 69 72 5d 20 3c 20 30 7d 20 7b 0a 09 20 20 20 20 6c | $auto_path.$__dir].<.0}.{......l |
34a20 | 61 70 70 65 6e 64 20 61 75 74 6f 5f 70 61 74 68 20 24 5f 5f 64 69 72 0a 09 7d 0a 20 20 20 20 7d | append.auto_path.$__dir..}.....} |
34a40 | 0a 7d 0a 73 65 74 20 5f 5f 64 69 72 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b 66 69 6c 65 20 64 69 | .}.set.__dir.[file.join.[file.di |
34a60 | 72 6e 61 6d 65 20 5b 66 69 6c 65 20 64 69 72 6e 61 6d 65 20 5c 0a 09 5b 69 6e 66 6f 20 6e 61 6d | rname.[file.dirname.\..[info.nam |
34a80 | 65 6f 66 65 78 65 63 75 74 61 62 6c 65 5d 5d 5d 20 6c 69 62 5d 0a 69 66 20 7b 5b 6c 73 65 61 72 | eofexecutable]]].lib].if.{[lsear |
34aa0 | 63 68 20 2d 65 78 61 63 74 20 24 61 75 74 6f 5f 70 61 74 68 20 24 5f 5f 64 69 72 5d 20 3c 20 30 | ch.-exact.$auto_path.$__dir].<.0 |
34ac0 | 7d 20 7b 0a 20 20 20 20 6c 61 70 70 65 6e 64 20 61 75 74 6f 5f 70 61 74 68 20 24 5f 5f 64 69 72 | }.{.....lappend.auto_path.$__dir |
34ae0 | 0a 7d 0a 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 20 74 63 6c 5f 70 6b 67 50 61 74 68 5d 7d | .}.if.{[info.exist.tcl_pkgPath]} |
34b00 | 20 7b 0a 20 20 20 20 66 6f 72 65 61 63 68 20 5f 5f 64 69 72 20 24 74 63 6c 5f 70 6b 67 50 61 74 | .{.....foreach.__dir.$tcl_pkgPat |
34b20 | 68 20 7b 0a 09 69 66 20 7b 5b 6c 73 65 61 72 63 68 20 2d 65 78 61 63 74 20 24 61 75 74 6f 5f 70 | h.{..if.{[lsearch.-exact.$auto_p |
34b40 | 61 74 68 20 24 5f 5f 64 69 72 5d 20 3c 20 30 7d 20 7b 0a 09 20 20 20 20 6c 61 70 70 65 6e 64 20 | ath.$__dir].<.0}.{......lappend. |
34b60 | 61 75 74 6f 5f 70 61 74 68 20 24 5f 5f 64 69 72 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 69 66 20 7b | auto_path.$__dir..}.....}.}.if.{ |
34b80 | 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 5f 5f 64 69 72 5d 7d 20 7b 0a 20 20 20 20 75 6e 73 65 74 | [info.exists.__dir]}.{.....unset |
34ba0 | 20 5f 5f 64 69 72 0a 7d 0a 20 20 0a 23 20 57 69 6e 64 6f 77 73 20 73 70 65 63 69 66 69 63 20 65 | .__dir.}....#.Windows.specific.e |
34bc0 | 6e 64 20 6f 66 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 0a 0a 69 66 20 7b 28 21 5b 69 6e 74 | nd.of.initialization..if.{(![int |
34be0 | 65 72 70 20 69 73 73 61 66 65 5d 29 20 26 26 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 | erp.issafe]).&&.[string.equal.$t |
34c00 | 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 77 69 6e 64 6f 77 73 22 5d | cl_platform(platform)."windows"] |
34c20 | 7d 20 7b 0a 20 20 20 20 6e 61 6d 65 73 70 61 63 65 20 65 76 61 6c 20 74 63 6c 20 7b 0a 09 70 72 | }.{.....namespace.eval.tcl.{..pr |
34c40 | 6f 63 20 65 6e 76 54 72 61 63 65 50 72 6f 63 20 7b 6c 6f 20 6e 31 20 6e 32 20 6f 70 7d 20 7b 0a | oc.envTraceProc.{lo.n1.n2.op}.{. |
34c60 | 09 20 20 20 20 73 65 74 20 78 20 24 3a 3a 65 6e 76 28 24 6e 32 29 0a 09 20 20 20 20 73 65 74 20 | .....set.x.$::env($n2)......set. |
34c80 | 3a 3a 65 6e 76 28 24 6c 6f 29 20 24 78 0a 09 20 20 20 20 73 65 74 20 3a 3a 65 6e 76 28 5b 73 74 | ::env($lo).$x......set.::env([st |
34ca0 | 72 69 6e 67 20 74 6f 75 70 70 65 72 20 24 6c 6f 5d 29 20 24 78 0a 09 7d 0a 20 20 20 20 7d 0a 20 | ring.toupper.$lo]).$x..}.....}.. |
34cc0 | 20 20 20 66 6f 72 65 61 63 68 20 70 20 5b 61 72 72 61 79 20 6e 61 6d 65 73 20 65 6e 76 5d 20 7b | ...foreach.p.[array.names.env].{ |
34ce0 | 0a 09 73 65 74 20 75 20 5b 73 74 72 69 6e 67 20 74 6f 75 70 70 65 72 20 24 70 5d 0a 09 69 66 20 | ..set.u.[string.toupper.$p]..if. |
34d00 | 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 75 20 24 70 5d 7d 20 7b 0a 09 20 20 20 20 | {[string.compare.$u.$p]}.{...... |
34d20 | 73 77 69 74 63 68 20 2d 2d 20 24 75 20 7b 0a 09 09 43 4f 4d 53 50 45 43 20 2d 0a 09 09 50 41 54 | switch.--.$u.{...COMSPEC.-...PAT |
34d40 | 48 20 7b 0a 09 09 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 65 6e 76 28 | H.{.......if.{![info.exists.env( |
34d60 | 24 75 29 5d 7d 20 7b 0a 09 09 09 73 65 74 20 65 6e 76 28 24 75 29 20 24 65 6e 76 28 24 70 29 0a | $u)]}.{....set.env($u).$env($p). |
34d80 | 09 09 20 20 20 20 7d 0a 09 09 20 20 20 20 74 72 61 63 65 20 76 61 72 69 61 62 6c 65 20 65 6e 76 | ......}.......trace.variable.env |
34da0 | 28 24 70 29 20 77 20 5b 6c 69 73 74 20 74 63 6c 3a 3a 65 6e 76 54 72 61 63 65 50 72 6f 63 20 24 | ($p).w.[list.tcl::envTraceProc.$ |
34dc0 | 70 5d 0a 09 09 20 20 20 20 74 72 61 63 65 20 76 61 72 69 61 62 6c 65 20 65 6e 76 28 24 75 29 20 | p].......trace.variable.env($u). |
34de0 | 77 20 5b 6c 69 73 74 20 74 63 6c 3a 3a 65 6e 76 54 72 61 63 65 50 72 6f 63 20 24 70 5d 0a 09 09 | w.[list.tcl::envTraceProc.$p]... |
34e00 | 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 69 6e 66 6f 20 | }......}..}.....}.....if.{[info. |
34e20 | 65 78 69 73 74 73 20 70 5d 7d 20 7b 0a 09 75 6e 73 65 74 20 70 0a 20 20 20 20 7d 0a 20 20 20 20 | exists.p]}.{..unset.p.....}..... |
34e40 | 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 75 5d 7d 20 7b 0a 09 75 6e 73 65 74 20 75 0a | if.{[info.exists.u]}.{..unset.u. |
34e60 | 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 65 6e 76 28 | ....}.....if.{![info.exists.env( |
34e80 | 43 4f 4d 53 50 45 43 29 5d 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 | COMSPEC)]}.{..if.{[string.equal. |
34ea0 | 24 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 6f 73 29 20 22 57 69 6e 64 6f 77 73 20 4e 54 22 5d 7d | $tcl_platform(os)."Windows.NT"]} |
34ec0 | 20 7b 0a 09 20 20 20 20 73 65 74 20 65 6e 76 28 43 4f 4d 53 50 45 43 29 20 63 6d 64 2e 65 78 65 | .{......set.env(COMSPEC).cmd.exe |
34ee0 | 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 73 65 74 20 65 6e 76 28 43 4f 4d 53 50 45 43 29 | ..}.else.{......set.env(COMSPEC) |
34f00 | 20 63 6f 6d 6d 61 6e 64 2e 63 6f 6d 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 53 65 74 75 70 | .command.com..}.....}.}..#.Setup |
34f20 | 20 74 68 65 20 75 6e 6b 6e 6f 77 6e 20 70 61 63 6b 61 67 65 20 68 61 6e 64 6c 65 72 0a 0a 70 61 | .the.unknown.package.handler..pa |
34f40 | 63 6b 61 67 65 20 75 6e 6b 6e 6f 77 6e 20 74 63 6c 50 6b 67 55 6e 6b 6e 6f 77 6e 0a 0a 23 20 43 | ckage.unknown.tclPkgUnknown..#.C |
34f60 | 6f 6e 64 69 74 69 6f 6e 61 6c 69 7a 65 20 66 6f 72 20 70 72 65 73 65 6e 63 65 20 6f 66 20 65 78 | onditionalize.for.presence.of.ex |
34f80 | 65 63 2e 0a 0a 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 | ec...if.{[llength.[info.commands |
34fa0 | 20 65 78 65 63 5d 5d 20 3d 3d 20 30 7d 20 7b 0a 0a 20 20 20 20 23 20 53 6f 6d 65 20 6d 61 63 68 | .exec]].==.0}.{......#.Some.mach |
34fc0 | 69 6e 65 73 2c 20 73 75 63 68 20 61 73 20 74 68 65 20 4d 61 63 69 6e 74 6f 73 68 2c 20 64 6f 20 | ines,.such.as.the.Macintosh,.do. |
34fe0 | 6e 6f 74 20 68 61 76 65 20 65 78 65 63 2e 20 41 6c 73 6f 2c 20 6f 6e 20 61 6c 6c 0a 20 20 20 20 | not.have.exec..Also,.on.all..... |
35000 | 23 20 70 6c 61 74 66 6f 72 6d 73 2c 20 73 61 66 65 20 69 6e 74 65 72 70 72 65 74 65 72 73 20 64 | #.platforms,.safe.interpreters.d |
35020 | 6f 20 6e 6f 74 20 68 61 76 65 20 65 78 65 63 2e 0a 0a 20 20 20 20 73 65 74 20 61 75 74 6f 5f 6e | o.not.have.exec.......set.auto_n |
35040 | 6f 65 78 65 63 20 31 0a 7d 0a 73 65 74 20 65 72 72 6f 72 43 6f 64 65 20 22 22 0a 73 65 74 20 65 | oexec.1.}.set.errorCode."".set.e |
35060 | 72 72 6f 72 49 6e 66 6f 20 22 22 0a 0a 23 20 44 65 66 69 6e 65 20 61 20 6c 6f 67 20 63 6f 6d 6d | rrorInfo.""..#.Define.a.log.comm |
35080 | 61 6e 64 20 28 77 68 69 63 68 20 63 61 6e 20 62 65 20 6f 76 65 72 77 69 74 74 65 6e 20 74 6f 20 | and.(which.can.be.overwitten.to. |
350a0 | 6c 6f 67 20 65 72 72 6f 72 73 0a 23 20 64 69 66 66 65 72 65 6e 74 6c 79 2c 20 73 70 65 63 69 61 | log.errors.#.differently,.specia |
350c0 | 6c 6c 79 20 77 68 65 6e 20 73 74 64 65 72 72 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 | lly.when.stderr.is.not.available |
350e0 | 29 0a 0a 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 20 74 | )..if.{[llength.[info.commands.t |
35100 | 63 6c 4c 6f 67 5d 5d 20 3d 3d 20 30 7d 20 7b 0a 20 20 20 20 70 72 6f 63 20 74 63 6c 4c 6f 67 20 | clLog]].==.0}.{.....proc.tclLog. |
35120 | 7b 73 74 72 69 6e 67 7d 20 7b 0a 09 63 61 74 63 68 20 7b 70 75 74 73 20 73 74 64 65 72 72 20 24 | {string}.{..catch.{puts.stderr.$ |
35140 | 73 74 72 69 6e 67 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 75 6e 6b 6e 6f 77 6e 20 2d 2d 0a 23 20 | string}.....}.}..#.unknown.--.#. |
35160 | 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 63 61 6c 6c 65 64 20 77 68 65 6e 20 61 20 | This.procedure.is.called.when.a. |
35180 | 54 63 6c 20 63 6f 6d 6d 61 6e 64 20 69 73 20 69 6e 76 6f 6b 65 64 20 74 68 61 74 20 64 6f 65 73 | Tcl.command.is.invoked.that.does |
351a0 | 6e 27 74 0a 23 20 65 78 69 73 74 20 69 6e 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 2e 20 | n't.#.exist.in.the.interpreter.. |
351c0 | 20 49 74 20 74 61 6b 65 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 74 65 70 73 20 74 6f | .It.takes.the.following.steps.to |
351e0 | 20 6d 61 6b 65 20 74 68 65 0a 23 20 63 6f 6d 6d 61 6e 64 20 61 76 61 69 6c 61 62 6c 65 3a 0a 23 | .make.the.#.command.available:.# |
35200 | 0a 23 09 31 2e 20 53 65 65 20 69 66 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 68 61 73 20 74 68 65 | .#.1..See.if.the.command.has.the |
35220 | 20 66 6f 72 6d 20 22 6e 61 6d 65 73 70 61 63 65 20 69 6e 73 63 6f 70 65 20 6e 73 20 63 6d 64 22 | .form."namespace.inscope.ns.cmd" |
35240 | 20 61 6e 64 0a 23 09 20 20 20 69 66 20 73 6f 2c 20 63 6f 6e 63 61 74 65 6e 61 74 65 20 69 74 73 | .and.#....if.so,.concatenate.its |
35260 | 20 61 72 67 75 6d 65 6e 74 73 20 6f 6e 74 6f 20 74 68 65 20 65 6e 64 20 61 6e 64 20 65 76 61 6c | .arguments.onto.the.end.and.eval |
35280 | 75 61 74 65 20 69 74 2e 0a 23 09 32 2e 20 53 65 65 20 69 66 20 74 68 65 20 61 75 74 6f 6c 6f 61 | uate.it..#.2..See.if.the.autoloa |
352a0 | 64 20 66 61 63 69 6c 69 74 79 20 63 61 6e 20 6c 6f 63 61 74 65 20 74 68 65 20 63 6f 6d 6d 61 6e | d.facility.can.locate.the.comman |
352c0 | 64 20 69 6e 20 61 0a 23 09 20 20 20 54 63 6c 20 73 63 72 69 70 74 20 66 69 6c 65 2e 20 20 49 66 | d.in.a.#....Tcl.script.file...If |
352e0 | 20 73 6f 2c 20 6c 6f 61 64 20 69 74 20 61 6e 64 20 65 78 65 63 75 74 65 20 69 74 2e 0a 23 09 33 | .so,.load.it.and.execute.it..#.3 |
35300 | 2e 20 49 66 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 77 61 73 20 69 6e 76 6f 6b 65 64 20 69 6e 74 | ..If.the.command.was.invoked.int |
35320 | 65 72 61 63 74 69 76 65 6c 79 20 61 74 20 74 6f 70 2d 6c 65 76 65 6c 3a 0a 23 09 20 20 20 20 28 | eractively.at.top-level:.#.....( |
35340 | 61 29 20 73 65 65 20 69 66 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 65 78 69 73 74 73 20 61 73 20 | a).see.if.the.command.exists.as. |
35360 | 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 55 4e 49 58 20 70 72 6f 67 72 61 6d 2e 0a 23 09 09 49 | an.executable.UNIX.program..#..I |
35380 | 66 20 73 6f 2c 20 22 65 78 65 63 22 20 74 68 65 20 63 6f 6d 6d 61 6e 64 2e 0a 23 09 20 20 20 20 | f.so,."exec".the.command..#..... |
353a0 | 28 62 29 20 73 65 65 20 69 66 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 72 65 71 75 65 73 74 73 20 | (b).see.if.the.command.requests. |
353c0 | 63 73 68 2d 6c 69 6b 65 20 68 69 73 74 6f 72 79 20 73 75 62 73 74 69 74 75 74 69 6f 6e 0a 23 09 | csh-like.history.substitution.#. |
353e0 | 09 69 6e 20 6f 6e 65 20 6f 66 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 66 6f 72 6d 73 20 21 21 2c 20 | .in.one.of.the.common.forms.!!,. |
35400 | 21 3c 6e 75 6d 62 65 72 3e 2c 20 6f 72 20 5e 6f 6c 64 5e 6e 65 77 2e 20 20 49 66 0a 23 09 09 73 | !<number>,.or.^old^new...If.#..s |
35420 | 6f 2c 20 65 6d 75 6c 61 74 65 20 63 73 68 27 73 20 68 69 73 74 6f 72 79 20 73 75 62 73 74 69 74 | o,.emulate.csh's.history.substit |
35440 | 75 74 69 6f 6e 2e 0a 23 09 20 20 20 20 28 63 29 20 73 65 65 20 69 66 20 74 68 65 20 63 6f 6d 6d | ution..#.....(c).see.if.the.comm |
35460 | 61 6e 64 20 69 73 20 61 20 75 6e 69 71 75 65 20 61 62 62 72 65 76 69 61 74 69 6f 6e 20 66 6f 72 | and.is.a.unique.abbreviation.for |
35480 | 20 61 6e 6f 74 68 65 72 0a 23 09 09 63 6f 6d 6d 61 6e 64 2e 20 20 49 66 20 73 6f 2c 20 69 6e 76 | .another.#..command...If.so,.inv |
354a0 | 6f 6b 65 20 74 68 65 20 63 6f 6d 6d 61 6e 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a | oke.the.command..#.#.Arguments:. |
354c0 | 23 20 61 72 67 73 20 2d 09 41 20 6c 69 73 74 20 77 68 6f 73 65 20 65 6c 65 6d 65 6e 74 73 20 61 | #.args.-.A.list.whose.elements.a |
354e0 | 72 65 20 74 68 65 20 77 6f 72 64 73 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 0a 23 09 09 | re.the.words.of.the.original.#.. |
35500 | 63 6f 6d 6d 61 6e 64 2c 20 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6e | command,.including.the.command.n |
35520 | 61 6d 65 2e 0a 0a 70 72 6f 63 20 75 6e 6b 6e 6f 77 6e 20 61 72 67 73 20 7b 0a 20 20 20 20 67 6c | ame...proc.unknown.args.{.....gl |
35540 | 6f 62 61 6c 20 61 75 74 6f 5f 6e 6f 65 78 65 63 20 61 75 74 6f 5f 6e 6f 6c 6f 61 64 20 65 6e 76 | obal.auto_noexec.auto_noload.env |
35560 | 20 75 6e 6b 6e 6f 77 6e 5f 70 65 6e 64 69 6e 67 20 74 63 6c 5f 69 6e 74 65 72 61 63 74 69 76 65 | .unknown_pending.tcl_interactive |
35580 | 0a 20 20 20 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 43 6f 64 65 20 65 72 72 6f 72 49 6e 66 6f 0a | .....global.errorCode.errorInfo. |
355a0 | 0a 20 20 20 20 23 20 49 66 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 77 6f 72 64 20 68 61 73 20 74 | .....#.If.the.command.word.has.t |
355c0 | 68 65 20 66 6f 72 6d 20 22 6e 61 6d 65 73 70 61 63 65 20 69 6e 73 63 6f 70 65 20 6e 73 20 63 6d | he.form."namespace.inscope.ns.cm |
355e0 | 64 22 0a 20 20 20 20 23 20 74 68 65 6e 20 63 6f 6e 63 61 74 65 6e 61 74 65 20 69 74 73 20 61 72 | d".....#.then.concatenate.its.ar |
35600 | 67 75 6d 65 6e 74 73 20 6f 6e 74 6f 20 74 68 65 20 65 6e 64 20 61 6e 64 20 65 76 61 6c 75 61 74 | guments.onto.the.end.and.evaluat |
35620 | 65 20 69 74 2e 0a 0a 20 20 20 20 73 65 74 20 63 6d 64 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 | e.it.......set.cmd.[lindex.$args |
35640 | 20 30 5d 0a 20 20 20 20 69 66 20 7b 5b 72 65 67 65 78 70 20 22 5e 6e 61 6d 65 73 70 61 63 65 5c | .0].....if.{[regexp."^namespace\ |
35660 | 5b 20 5c 74 5c 6e 5c 5d 2b 69 6e 73 63 6f 70 65 22 20 24 63 6d 64 5d 20 26 26 20 5b 6c 6c 65 6e | [.\t\n\]+inscope".$cmd].&&.[llen |
35680 | 67 74 68 20 24 63 6d 64 5d 20 3d 3d 20 34 7d 20 7b 0a 20 20 20 20 20 20 20 20 73 65 74 20 61 72 | gth.$cmd].==.4}.{.........set.ar |
356a0 | 67 6c 69 73 74 20 5b 6c 72 61 6e 67 65 20 24 61 72 67 73 20 31 20 65 6e 64 5d 0a 09 73 65 74 20 | glist.[lrange.$args.1.end]..set. |
356c0 | 72 65 74 20 5b 63 61 74 63 68 20 7b 75 70 6c 65 76 65 6c 20 24 63 6d 64 20 24 61 72 67 6c 69 73 | ret.[catch.{uplevel.$cmd.$arglis |
356e0 | 74 7d 20 72 65 73 75 6c 74 5d 0a 20 20 20 20 20 20 20 20 69 66 20 7b 24 72 65 74 20 3d 3d 20 30 | t}.result].........if.{$ret.==.0 |
35700 | 7d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 0a 20 | }.{.............return.$result.. |
35720 | 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e 20 2d 63 6f 64 | .......}.else.{......return.-cod |
35740 | 65 20 24 72 65 74 20 2d 65 72 72 6f 72 63 6f 64 65 20 24 65 72 72 6f 72 43 6f 64 65 20 24 72 65 | e.$ret.-errorcode.$errorCode.$re |
35760 | 73 75 6c 74 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 53 61 76 65 | sult.........}.....}......#.Save |
35780 | 20 74 68 65 20 76 61 6c 75 65 73 20 6f 66 20 65 72 72 6f 72 43 6f 64 65 20 61 6e 64 20 65 72 72 | .the.values.of.errorCode.and.err |
357a0 | 6f 72 49 6e 66 6f 20 76 61 72 69 61 62 6c 65 73 2c 20 73 69 6e 63 65 20 74 68 65 79 0a 20 20 20 | orInfo.variables,.since.they.... |
357c0 | 20 23 20 6d 61 79 20 67 65 74 20 6d 6f 64 69 66 69 65 64 20 69 66 20 63 61 75 67 68 74 20 65 72 | .#.may.get.modified.if.caught.er |
357e0 | 72 6f 72 73 20 6f 63 63 75 72 20 62 65 6c 6f 77 2e 20 20 54 68 65 20 76 61 72 69 61 62 6c 65 73 | rors.occur.below...The.variables |
35800 | 20 77 69 6c 6c 0a 20 20 20 20 23 20 62 65 20 72 65 73 74 6f 72 65 64 20 6a 75 73 74 20 62 65 66 | .will.....#.be.restored.just.bef |
35820 | 6f 72 65 20 72 65 2d 65 78 65 63 75 74 69 6e 67 20 74 68 65 20 6d 69 73 73 69 6e 67 20 63 6f 6d | ore.re-executing.the.missing.com |
35840 | 6d 61 6e 64 2e 0a 0a 20 20 20 20 73 65 74 20 73 61 76 65 64 45 72 72 6f 72 43 6f 64 65 20 24 65 | mand.......set.savedErrorCode.$e |
35860 | 72 72 6f 72 43 6f 64 65 0a 20 20 20 20 73 65 74 20 73 61 76 65 64 45 72 72 6f 72 49 6e 66 6f 20 | rrorCode.....set.savedErrorInfo. |
35880 | 24 65 72 72 6f 72 49 6e 66 6f 0a 20 20 20 20 73 65 74 20 6e 61 6d 65 20 5b 6c 69 6e 64 65 78 20 | $errorInfo.....set.name.[lindex. |
358a0 | 24 61 72 67 73 20 30 5d 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 61 | $args.0].....if.{![info.exists.a |
358c0 | 75 74 6f 5f 6e 6f 6c 6f 61 64 5d 7d 20 7b 0a 09 23 0a 09 23 20 4d 61 6b 65 20 73 75 72 65 20 77 | uto_noload]}.{..#..#.Make.sure.w |
358e0 | 65 27 72 65 20 6e 6f 74 20 74 72 79 69 6e 67 20 74 6f 20 6c 6f 61 64 20 74 68 65 20 73 61 6d 65 | e're.not.trying.to.load.the.same |
35900 | 20 70 72 6f 63 20 74 77 69 63 65 2e 0a 09 23 0a 09 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 | .proc.twice...#..if.{[info.exist |
35920 | 73 20 75 6e 6b 6e 6f 77 6e 5f 70 65 6e 64 69 6e 67 28 24 6e 61 6d 65 29 5d 7d 20 7b 0a 09 20 20 | s.unknown_pending($name)]}.{.... |
35940 | 20 20 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 73 65 6c 66 2d 72 65 66 65 72 | ..return.-code.error."self-refer |
35960 | 65 6e 74 69 61 6c 20 72 65 63 75 72 73 69 6f 6e 20 69 6e 20 5c 22 75 6e 6b 6e 6f 77 6e 5c 22 20 | ential.recursion.in.\"unknown\". |
35980 | 66 6f 72 20 63 6f 6d 6d 61 6e 64 20 5c 22 24 6e 61 6d 65 5c 22 22 3b 0a 09 7d 0a 09 73 65 74 20 | for.command.\"$name\"";..}..set. |
359a0 | 75 6e 6b 6e 6f 77 6e 5f 70 65 6e 64 69 6e 67 28 24 6e 61 6d 65 29 20 70 65 6e 64 69 6e 67 3b 0a | unknown_pending($name).pending;. |
359c0 | 09 73 65 74 20 72 65 74 20 5b 63 61 74 63 68 20 7b 61 75 74 6f 5f 6c 6f 61 64 20 24 6e 61 6d 65 | .set.ret.[catch.{auto_load.$name |
359e0 | 20 5b 75 70 6c 65 76 65 6c 20 31 20 7b 6e 61 6d 65 73 70 61 63 65 20 63 75 72 72 65 6e 74 7d 5d | .[uplevel.1.{namespace.current}] |
35a00 | 7d 20 6d 73 67 5d 0a 09 75 6e 73 65 74 20 75 6e 6b 6e 6f 77 6e 5f 70 65 6e 64 69 6e 67 28 24 6e | }.msg]..unset.unknown_pending($n |
35a20 | 61 6d 65 29 3b 0a 09 69 66 20 7b 24 72 65 74 20 21 3d 20 30 7d 20 7b 0a 09 20 20 20 20 61 70 70 | ame);..if.{$ret.!=.0}.{......app |
35a40 | 65 6e 64 20 65 72 72 6f 72 49 6e 66 6f 20 22 5c 6e 20 20 20 20 28 61 75 74 6f 6c 6f 61 64 69 6e | end.errorInfo."\n....(autoloadin |
35a60 | 67 20 5c 22 24 6e 61 6d 65 5c 22 29 22 0a 09 20 20 20 20 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 | g.\"$name\")"......return.-code. |
35a80 | 24 72 65 74 20 2d 65 72 72 6f 72 63 6f 64 65 20 24 65 72 72 6f 72 43 6f 64 65 20 2d 65 72 72 6f | $ret.-errorcode.$errorCode.-erro |
35aa0 | 72 69 6e 66 6f 20 24 65 72 72 6f 72 49 6e 66 6f 20 24 6d 73 67 0a 09 7d 0a 09 69 66 20 7b 21 5b | rinfo.$errorInfo.$msg..}..if.{![ |
35ac0 | 61 72 72 61 79 20 73 69 7a 65 20 75 6e 6b 6e 6f 77 6e 5f 70 65 6e 64 69 6e 67 5d 7d 20 7b 0a 09 | array.size.unknown_pending]}.{.. |
35ae0 | 20 20 20 20 75 6e 73 65 74 20 75 6e 6b 6e 6f 77 6e 5f 70 65 6e 64 69 6e 67 0a 09 7d 0a 09 69 66 | ....unset.unknown_pending..}..if |
35b00 | 20 7b 24 6d 73 67 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 65 72 72 6f 72 43 6f 64 65 20 24 73 61 | .{$msg}.{......set.errorCode.$sa |
35b20 | 76 65 64 45 72 72 6f 72 43 6f 64 65 0a 09 20 20 20 20 73 65 74 20 65 72 72 6f 72 49 6e 66 6f 20 | vedErrorCode......set.errorInfo. |
35b40 | 24 73 61 76 65 64 45 72 72 6f 72 49 6e 66 6f 0a 09 20 20 20 20 73 65 74 20 63 6f 64 65 20 5b 63 | $savedErrorInfo......set.code.[c |
35b60 | 61 74 63 68 20 7b 75 70 6c 65 76 65 6c 20 31 20 24 61 72 67 73 7d 20 6d 73 67 5d 0a 09 20 20 20 | atch.{uplevel.1.$args}.msg]..... |
35b80 | 20 69 66 20 7b 24 63 6f 64 65 20 3d 3d 20 20 31 7d 20 7b 0a 09 09 23 0a 09 09 23 20 53 74 72 69 | .if.{$code.==..1}.{...#...#.Stri |
35ba0 | 70 20 74 68 65 20 6c 61 73 74 20 66 69 76 65 20 6c 69 6e 65 73 20 6f 66 66 20 74 68 65 20 65 72 | p.the.last.five.lines.off.the.er |
35bc0 | 72 6f 72 20 73 74 61 63 6b 20 28 74 68 65 79 27 72 65 0a 09 09 23 20 66 72 6f 6d 20 74 68 65 20 | ror.stack.(they're...#.from.the. |
35be0 | 22 75 70 6c 65 76 65 6c 22 20 63 6f 6d 6d 61 6e 64 29 2e 0a 09 09 23 0a 0a 09 09 73 65 74 20 6e | "uplevel".command)....#....set.n |
35c00 | 65 77 20 5b 73 70 6c 69 74 20 24 65 72 72 6f 72 49 6e 66 6f 20 5c 6e 5d 0a 09 09 73 65 74 20 6e | ew.[split.$errorInfo.\n]...set.n |
35c20 | 65 77 20 5b 6a 6f 69 6e 20 5b 6c 72 61 6e 67 65 20 24 6e 65 77 20 30 20 5b 65 78 70 72 20 7b 5b | ew.[join.[lrange.$new.0.[expr.{[ |
35c40 | 6c 6c 65 6e 67 74 68 20 24 6e 65 77 5d 20 2d 20 36 7d 5d 5d 20 5c 6e 5d 0a 09 09 72 65 74 75 72 | llength.$new].-.6}]].\n]...retur |
35c60 | 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 2d 65 72 72 6f 72 63 6f 64 65 20 24 65 72 72 6f 72 43 | n.-code.error.-errorcode.$errorC |
35c80 | 6f 64 65 20 5c 0a 09 09 09 2d 65 72 72 6f 72 69 6e 66 6f 20 24 6e 65 77 20 24 6d 73 67 0a 09 20 | ode.\....-errorinfo.$new.$msg... |
35ca0 | 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 24 63 6f 64 65 | ...}.else.{...return.-code.$code |
35cc0 | 20 24 6d 73 67 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 69 66 20 7b 28 | .$msg......}..}.....}......if.{( |
35ce0 | 5b 69 6e 66 6f 20 6c 65 76 65 6c 5d 20 3d 3d 20 31 29 20 26 26 20 5b 73 74 72 69 6e 67 20 65 71 | [info.level].==.1).&&.[string.eq |
35d00 | 75 61 6c 20 5b 69 6e 66 6f 20 73 63 72 69 70 74 5d 20 22 22 5d 20 5c 0a 09 20 20 20 20 26 26 20 | ual.[info.script].""].\......&&. |
35d20 | 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 74 63 6c 5f 69 6e 74 65 72 61 63 74 69 76 65 5d 20 26 26 | [info.exists.tcl_interactive].&& |
35d40 | 20 24 74 63 6c 5f 69 6e 74 65 72 61 63 74 69 76 65 7d 20 7b 0a 09 69 66 20 7b 21 5b 69 6e 66 6f | .$tcl_interactive}.{..if.{![info |
35d60 | 20 65 78 69 73 74 73 20 61 75 74 6f 5f 6e 6f 65 78 65 63 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 | .exists.auto_noexec]}.{......set |
35d80 | 20 6e 65 77 20 5b 61 75 74 6f 5f 65 78 65 63 6f 6b 20 24 6e 61 6d 65 5d 0a 09 20 20 20 20 69 66 | .new.[auto_execok.$name]......if |
35da0 | 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 7b 7d 20 24 6e 65 77 5d 7d 20 7b 0a 09 09 | .{[string.compare.{}.$new]}.{... |
35dc0 | 73 65 74 20 65 72 72 6f 72 43 6f 64 65 20 24 73 61 76 65 64 45 72 72 6f 72 43 6f 64 65 0a 09 09 | set.errorCode.$savedErrorCode... |
35de0 | 73 65 74 20 65 72 72 6f 72 49 6e 66 6f 20 24 73 61 76 65 64 45 72 72 6f 72 49 6e 66 6f 0a 09 09 | set.errorInfo.$savedErrorInfo... |
35e00 | 73 65 74 20 72 65 64 69 72 20 22 22 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c | set.redir.""...if.{[string.equal |
35e20 | 20 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 20 63 6f 6e 73 6f 6c 65 5d 20 22 22 5d 7d 20 7b 0a | .[info.commands.console].""]}.{. |
35e40 | 09 09 20 20 20 20 73 65 74 20 72 65 64 69 72 20 22 3e 26 40 73 74 64 6f 75 74 20 3c 40 73 74 64 | ......set.redir.">&@stdout.<@std |
35e60 | 69 6e 22 0a 09 09 7d 0a 09 09 72 65 74 75 72 6e 20 5b 75 70 6c 65 76 65 6c 20 65 78 65 63 20 24 | in"...}...return.[uplevel.exec.$ |
35e80 | 72 65 64 69 72 20 24 6e 65 77 20 5b 6c 72 61 6e 67 65 20 24 61 72 67 73 20 31 20 65 6e 64 5d 5d | redir.$new.[lrange.$args.1.end]] |
35ea0 | 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 73 65 74 20 65 72 72 6f 72 43 6f 64 65 20 24 73 61 76 65 64 | ......}..}..set.errorCode.$saved |
35ec0 | 45 72 72 6f 72 43 6f 64 65 0a 09 73 65 74 20 65 72 72 6f 72 49 6e 66 6f 20 24 73 61 76 65 64 45 | ErrorCode..set.errorInfo.$savedE |
35ee0 | 72 72 6f 72 49 6e 66 6f 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6e 61 6d | rrorInfo..if.{[string.equal.$nam |
35f00 | 65 20 22 21 21 22 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 6e 65 77 63 6d 64 20 5b 68 69 73 74 | e."!!"]}.{......set.newcmd.[hist |
35f20 | 6f 72 79 20 65 76 65 6e 74 5d 0a 09 7d 20 65 6c 73 65 69 66 20 7b 5b 72 65 67 65 78 70 20 7b 5e | ory.event]..}.elseif.{[regexp.{^ |
35f40 | 21 28 2e 2b 29 24 7d 20 24 6e 61 6d 65 20 64 75 6d 6d 79 20 65 76 65 6e 74 5d 7d 20 7b 0a 09 20 | !(.+)$}.$name.dummy.event]}.{... |
35f60 | 20 20 20 73 65 74 20 6e 65 77 63 6d 64 20 5b 68 69 73 74 6f 72 79 20 65 76 65 6e 74 20 24 65 76 | ...set.newcmd.[history.event.$ev |
35f80 | 65 6e 74 5d 0a 09 7d 20 65 6c 73 65 69 66 20 7b 5b 72 65 67 65 78 70 20 7b 5e 5c 5e 28 5b 5e 5e | ent]..}.elseif.{[regexp.{^\^([^^ |
35fa0 | 5d 2a 29 5c 5e 28 5b 5e 5e 5d 2a 29 5c 5e 3f 24 7d 20 24 6e 61 6d 65 20 64 75 6d 6d 79 20 6f 6c | ]*)\^([^^]*)\^?$}.$name.dummy.ol |
35fc0 | 64 20 6e 65 77 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 6e 65 77 63 6d 64 20 5b 68 69 73 74 6f | d.new]}.{......set.newcmd.[histo |
35fe0 | 72 79 20 65 76 65 6e 74 20 2d 31 5d 0a 09 20 20 20 20 63 61 74 63 68 20 7b 72 65 67 73 75 62 20 | ry.event.-1]......catch.{regsub. |
36000 | 2d 61 6c 6c 20 2d 2d 20 24 6f 6c 64 20 24 6e 65 77 63 6d 64 20 24 6e 65 77 20 6e 65 77 63 6d 64 | -all.--.$old.$newcmd.$new.newcmd |
36020 | 7d 0a 09 7d 0a 09 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 6e 65 77 63 6d 64 5d 7d 20 | }..}..if.{[info.exists.newcmd]}. |
36040 | 7b 0a 09 20 20 20 20 74 63 6c 4c 6f 67 20 24 6e 65 77 63 6d 64 0a 09 20 20 20 20 68 69 73 74 6f | {......tclLog.$newcmd......histo |
36060 | 72 79 20 63 68 61 6e 67 65 20 24 6e 65 77 63 6d 64 20 30 0a 09 20 20 20 20 72 65 74 75 72 6e 20 | ry.change.$newcmd.0......return. |
36080 | 5b 75 70 6c 65 76 65 6c 20 24 6e 65 77 63 6d 64 5d 0a 09 7d 0a 0a 09 73 65 74 20 72 65 74 20 5b | [uplevel.$newcmd]..}...set.ret.[ |
360a0 | 63 61 74 63 68 20 7b 73 65 74 20 63 6d 64 73 20 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 20 24 | catch.{set.cmds.[info.commands.$ |
360c0 | 6e 61 6d 65 2a 5d 7d 20 6d 73 67 5d 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 | name*]}.msg]..if.{[string.equal. |
360e0 | 24 6e 61 6d 65 20 22 3a 3a 22 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 6e 61 6d 65 20 22 22 0a | $name."::"]}.{......set.name."". |
36100 | 09 7d 0a 09 69 66 20 7b 24 72 65 74 20 21 3d 20 30 7d 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e | .}..if.{$ret.!=.0}.{......return |
36120 | 20 2d 63 6f 64 65 20 24 72 65 74 20 2d 65 72 72 6f 72 63 6f 64 65 20 24 65 72 72 6f 72 43 6f 64 | .-code.$ret.-errorcode.$errorCod |
36140 | 65 20 5c 0a 09 09 22 65 72 72 6f 72 20 69 6e 20 75 6e 6b 6e 6f 77 6e 20 77 68 69 6c 65 20 63 68 | e.\..."error.in.unknown.while.ch |
36160 | 65 63 6b 69 6e 67 20 69 66 20 5c 22 24 6e 61 6d 65 5c 22 20 69 73 20 61 20 75 6e 69 71 75 65 20 | ecking.if.\"$name\".is.a.unique. |
36180 | 63 6f 6d 6d 61 6e 64 20 61 62 62 72 65 76 69 61 74 69 6f 6e 3a 20 24 6d 73 67 22 0a 09 7d 0a 09 | command.abbreviation:.$msg"..}.. |
361a0 | 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 63 6d 64 73 5d 20 3d 3d 20 31 7d 20 7b 0a 09 20 20 20 | if.{[llength.$cmds].==.1}.{..... |
361c0 | 20 72 65 74 75 72 6e 20 5b 75 70 6c 65 76 65 6c 20 5b 6c 72 65 70 6c 61 63 65 20 24 61 72 67 73 | .return.[uplevel.[lreplace.$args |
361e0 | 20 30 20 30 20 24 63 6d 64 73 5d 5d 0a 09 7d 0a 09 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 63 | .0.0.$cmds]]..}..if.{[llength.$c |
36200 | 6d 64 73 5d 7d 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 | mds]}.{......if.{[string.equal.$ |
36220 | 6e 61 6d 65 20 22 22 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 | name.""]}.{...return.-code.error |
36240 | 20 22 65 6d 70 74 79 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 20 5c 22 5c 22 22 0a 09 20 20 20 20 | ."empty.command.name.\"\""...... |
36260 | 7d 20 65 6c 73 65 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 5c 0a | }.else.{...return.-code.error.\. |
36280 | 09 09 09 22 61 6d 62 69 67 75 6f 75 73 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 20 5c 22 24 6e 61 | ..."ambiguous.command.name.\"$na |
362a0 | 6d 65 5c 22 3a 20 5b 6c 73 6f 72 74 20 24 63 6d 64 73 5d 22 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 | me\":.[lsort.$cmds]"......}..}.. |
362c0 | 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 69 6e 76 | ...}.....return.-code.error."inv |
362e0 | 61 6c 69 64 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 20 5c 22 24 6e 61 6d 65 5c 22 22 0a 7d 0a 0a | alid.command.name.\"$name\"".}.. |
36300 | 23 20 61 75 74 6f 5f 6c 6f 61 64 20 2d 2d 0a 23 20 43 68 65 63 6b 73 20 61 20 63 6f 6c 6c 65 63 | #.auto_load.--.#.Checks.a.collec |
36320 | 74 69 6f 6e 20 6f 66 20 6c 69 62 72 61 72 79 20 64 69 72 65 63 74 6f 72 69 65 73 20 74 6f 20 73 | tion.of.library.directories.to.s |
36340 | 65 65 20 69 66 20 61 20 70 72 6f 63 65 64 75 72 65 0a 23 20 69 73 20 64 65 66 69 6e 65 64 20 69 | ee.if.a.procedure.#.is.defined.i |
36360 | 6e 20 6f 6e 65 20 6f 66 20 74 68 65 6d 2e 20 20 49 66 20 73 6f 2c 20 69 74 20 73 6f 75 72 63 65 | n.one.of.them...If.so,.it.source |
36380 | 73 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 0a 23 20 6c 69 62 72 61 72 79 20 66 69 6c 65 | s.the.appropriate.#.library.file |
363a0 | 20 74 6f 20 63 72 65 61 74 65 20 74 68 65 20 70 72 6f 63 65 64 75 72 65 2e 20 20 52 65 74 75 72 | .to.create.the.procedure...Retur |
363c0 | 6e 73 20 31 20 69 66 20 69 74 20 73 75 63 63 65 73 73 66 75 6c 6c 79 0a 23 20 6c 6f 61 64 65 64 | ns.1.if.it.successfully.#.loaded |
363e0 | 20 74 68 65 20 70 72 6f 63 65 64 75 72 65 2c 20 30 20 6f 74 68 65 72 77 69 73 65 2e 0a 23 0a 23 | .the.procedure,.0.otherwise..#.# |
36400 | 20 41 72 67 75 6d 65 6e 74 73 3a 20 0a 23 20 63 6d 64 20 2d 09 09 09 4e 61 6d 65 20 6f 66 20 74 | .Arguments:..#.cmd.-...Name.of.t |
36420 | 68 65 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 66 69 6e 64 20 61 6e 64 20 6c 6f 61 64 2e 0a 23 20 6e | he.command.to.find.and.load..#.n |
36440 | 61 6d 65 73 70 61 63 65 20 28 6f 70 74 69 6f 6e 61 6c 29 20 20 54 68 65 20 6e 61 6d 65 73 70 61 | amespace.(optional)..The.namespa |
36460 | 63 65 20 77 68 65 72 65 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 69 73 20 62 65 69 6e 67 20 75 73 | ce.where.the.command.is.being.us |
36480 | 65 64 20 2d 20 6d 75 73 74 20 62 65 0a 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ed.-.must.be.#.................. |
364a0 | 20 20 20 20 20 61 20 63 61 6e 6f 6e 69 63 61 6c 20 6e 61 6d 65 73 70 61 63 65 20 61 73 20 72 65 | .....a.canonical.namespace.as.re |
364c0 | 74 75 72 6e 65 64 20 5b 6e 61 6d 65 73 70 61 63 65 20 63 75 72 72 65 6e 74 5d 0a 23 20 20 20 20 | turned.[namespace.current].#.... |
364e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 2e | ...................for.instance. |
36500 | 20 49 66 20 6e 6f 74 20 67 69 76 65 6e 2c 20 6e 61 6d 65 73 70 61 63 65 20 63 75 72 72 65 6e 74 | .If.not.given,.namespace.current |
36520 | 20 69 73 20 75 73 65 64 2e 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 6c 6f 61 64 20 7b 63 6d 64 20 7b | .is.used...proc.auto_load.{cmd.{ |
36540 | 6e 61 6d 65 73 70 61 63 65 20 7b 7d 7d 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 61 75 74 6f | namespace.{}}}.{.....global.auto |
36560 | 5f 69 6e 64 65 78 20 61 75 74 6f 5f 6f 6c 64 70 61 74 68 20 61 75 74 6f 5f 70 61 74 68 0a 0a 20 | _index.auto_oldpath.auto_path... |
36580 | 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 24 6e 61 6d 65 73 70 61 63 65 | ...if.{[string.length.$namespace |
365a0 | 5d 20 3d 3d 20 30 7d 20 7b 0a 09 73 65 74 20 6e 61 6d 65 73 70 61 63 65 20 5b 75 70 6c 65 76 65 | ].==.0}.{..set.namespace.[upleve |
365c0 | 6c 20 7b 6e 61 6d 65 73 70 61 63 65 20 63 75 72 72 65 6e 74 7d 5d 0a 20 20 20 20 7d 0a 20 20 20 | l.{namespace.current}].....}.... |
365e0 | 20 73 65 74 20 6e 61 6d 65 4c 69 73 74 20 5b 61 75 74 6f 5f 71 75 61 6c 69 66 79 20 24 63 6d 64 | .set.nameList.[auto_qualify.$cmd |
36600 | 20 24 6e 61 6d 65 73 70 61 63 65 5d 0a 20 20 20 20 23 20 77 6f 72 6b 61 72 6f 75 6e 64 20 6e 6f | .$namespace].....#.workaround.no |
36620 | 6e 20 63 61 6e 6f 6e 69 63 61 6c 20 61 75 74 6f 5f 69 6e 64 65 78 20 65 6e 74 72 69 65 73 20 74 | n.canonical.auto_index.entries.t |
36640 | 68 61 74 20 6d 69 67 68 74 20 62 65 20 61 72 6f 75 6e 64 0a 20 20 20 20 23 20 66 72 6f 6d 20 6f | hat.might.be.around.....#.from.o |
36660 | 6c 64 65 72 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 20 76 65 72 73 69 6f 6e 73 0a 20 20 20 20 6c | lder.auto_mkindex.versions.....l |
36680 | 61 70 70 65 6e 64 20 6e 61 6d 65 4c 69 73 74 20 24 63 6d 64 0a 20 20 20 20 66 6f 72 65 61 63 68 | append.nameList.$cmd.....foreach |
366a0 | 20 6e 61 6d 65 20 24 6e 61 6d 65 4c 69 73 74 20 7b 0a 09 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 | .name.$nameList.{..if.{[info.exi |
366c0 | 73 74 73 20 61 75 74 6f 5f 69 6e 64 65 78 28 24 6e 61 6d 65 29 5d 7d 20 7b 0a 09 20 20 20 20 75 | sts.auto_index($name)]}.{......u |
366e0 | 70 6c 65 76 65 6c 20 23 30 20 24 61 75 74 6f 5f 69 6e 64 65 78 28 24 6e 61 6d 65 29 0a 09 20 20 | plevel.#0.$auto_index($name).... |
36700 | 20 20 72 65 74 75 72 6e 20 5b 65 78 70 72 20 7b 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 20 24 | ..return.[expr.{[info.commands.$ |
36720 | 6e 61 6d 65 5d 20 21 3d 20 22 22 7d 5d 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 21 | name].!=.""}]..}.....}.....if.{! |
36740 | 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 61 75 74 6f 5f 70 61 74 68 5d 7d 20 7b 0a 09 72 65 74 75 | [info.exists.auto_path]}.{..retu |
36760 | 72 6e 20 30 0a 20 20 20 20 7d 0a 0a 20 20 20 20 69 66 20 7b 21 5b 61 75 74 6f 5f 6c 6f 61 64 5f | rn.0.....}......if.{![auto_load_ |
36780 | 69 6e 64 65 78 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 30 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f | index]}.{..return.0.....}.....fo |
367a0 | 72 65 61 63 68 20 6e 61 6d 65 20 24 6e 61 6d 65 4c 69 73 74 20 7b 0a 09 69 66 20 7b 5b 69 6e 66 | reach.name.$nameList.{..if.{[inf |
367c0 | 6f 20 65 78 69 73 74 73 20 61 75 74 6f 5f 69 6e 64 65 78 28 24 6e 61 6d 65 29 5d 7d 20 7b 0a 09 | o.exists.auto_index($name)]}.{.. |
367e0 | 20 20 20 20 75 70 6c 65 76 65 6c 20 23 30 20 24 61 75 74 6f 5f 69 6e 64 65 78 28 24 6e 61 6d 65 | ....uplevel.#0.$auto_index($name |
36800 | 29 0a 09 20 20 20 20 23 20 54 68 65 72 65 27 73 20 61 20 63 6f 75 70 6c 65 20 6f 66 20 77 61 79 | )......#.There's.a.couple.of.way |
36820 | 73 20 74 6f 20 6c 6f 6f 6b 20 66 6f 72 20 61 20 63 6f 6d 6d 61 6e 64 20 6f 66 20 61 20 67 69 76 | s.to.look.for.a.command.of.a.giv |
36840 | 65 6e 0a 09 20 20 20 20 23 20 6e 61 6d 65 2e 20 20 4f 6e 65 20 69 73 20 74 6f 20 75 73 65 0a 09 | en......#.name...One.is.to.use.. |
36860 | 20 20 20 20 23 20 20 20 20 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 20 24 6e 61 6d 65 0a 09 20 20 | ....#....info.commands.$name.... |
36880 | 20 20 23 20 55 6e 66 6f 72 74 75 6e 61 74 65 6c 79 2c 20 69 66 20 74 68 65 20 6e 61 6d 65 20 68 | ..#.Unfortunately,.if.the.name.h |
368a0 | 61 73 20 67 6c 6f 62 2d 6d 61 67 69 63 20 63 68 61 72 73 20 69 6e 20 69 74 20 6c 69 6b 65 20 2a | as.glob-magic.chars.in.it.like.* |
368c0 | 0a 09 20 20 20 20 23 20 6f 72 20 5b 5d 2c 20 69 74 20 6d 61 79 20 6e 6f 74 20 6d 61 74 63 68 2e | ......#.or.[],.it.may.not.match. |
368e0 | 20 20 46 6f 72 20 6f 75 72 20 70 75 72 70 6f 73 65 73 20 68 65 72 65 2c 20 61 20 62 65 74 74 65 | ..For.our.purposes.here,.a.bette |
36900 | 72 0a 09 20 20 20 20 23 20 72 6f 75 74 65 20 69 73 20 74 6f 20 75 73 65 20 0a 09 20 20 20 20 23 | r......#.route.is.to.use.......# |
36920 | 20 20 20 20 6e 61 6d 65 73 70 61 63 65 20 77 68 69 63 68 20 2d 63 6f 6d 6d 61 6e 64 20 24 6e 61 | ....namespace.which.-command.$na |
36940 | 6d 65 0a 09 20 20 20 20 69 66 20 7b 20 21 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 6e 61 6d | me......if.{.![string.equal.[nam |
36960 | 65 73 70 61 63 65 20 77 68 69 63 68 20 2d 63 6f 6d 6d 61 6e 64 20 24 6e 61 6d 65 5d 20 22 22 5d | espace.which.-command.$name].""] |
36980 | 20 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 31 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a | .}.{...return.1......}..}.....}. |
369a0 | 20 20 20 20 72 65 74 75 72 6e 20 30 0a 7d 0a 0a 23 20 61 75 74 6f 5f 6c 6f 61 64 5f 69 6e 64 65 | ....return.0.}..#.auto_load_inde |
369c0 | 78 20 2d 2d 0a 23 20 4c 6f 61 64 73 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 63 6c | x.--.#.Loads.the.contents.of.tcl |
369e0 | 49 6e 64 65 78 20 66 69 6c 65 73 20 6f 6e 20 74 68 65 20 61 75 74 6f 5f 70 61 74 68 20 64 69 72 | Index.files.on.the.auto_path.dir |
36a00 | 65 63 74 6f 72 79 0a 23 20 6c 69 73 74 2e 20 20 54 68 69 73 20 69 73 20 75 73 75 61 6c 6c 79 20 | ectory.#.list...This.is.usually. |
36a20 | 69 6e 76 6f 6b 65 64 20 77 69 74 68 69 6e 20 61 75 74 6f 5f 6c 6f 61 64 20 74 6f 20 6c 6f 61 64 | invoked.within.auto_load.to.load |
36a40 | 20 74 68 65 20 69 6e 64 65 78 0a 23 20 6f 66 20 61 76 61 69 6c 61 62 6c 65 20 63 6f 6d 6d 61 6e | .the.index.#.of.available.comman |
36a60 | 64 73 2e 20 20 52 65 74 75 72 6e 73 20 31 20 69 66 20 74 68 65 20 69 6e 64 65 78 20 69 73 20 6c | ds...Returns.1.if.the.index.is.l |
36a80 | 6f 61 64 65 64 2c 20 61 6e 64 20 30 20 69 66 0a 23 20 74 68 65 20 69 6e 64 65 78 20 69 73 20 61 | oaded,.and.0.if.#.the.index.is.a |
36aa0 | 6c 72 65 61 64 79 20 6c 6f 61 64 65 64 20 61 6e 64 20 75 70 20 74 6f 20 64 61 74 65 2e 0a 23 0a | lready.loaded.and.up.to.date..#. |
36ac0 | 23 20 41 72 67 75 6d 65 6e 74 73 3a 20 0a 23 20 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 61 75 74 6f | #.Arguments:..#.None...proc.auto |
36ae0 | 5f 6c 6f 61 64 5f 69 6e 64 65 78 20 7b 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 61 75 74 6f | _load_index.{}.{.....global.auto |
36b00 | 5f 69 6e 64 65 78 20 61 75 74 6f 5f 6f 6c 64 70 61 74 68 20 61 75 74 6f 5f 70 61 74 68 20 65 72 | _index.auto_oldpath.auto_path.er |
36b20 | 72 6f 72 49 6e 66 6f 20 65 72 72 6f 72 43 6f 64 65 0a 0a 20 20 20 20 69 66 20 7b 5b 69 6e 66 6f | rorInfo.errorCode......if.{[info |
36b40 | 20 65 78 69 73 74 73 20 61 75 74 6f 5f 6f 6c 64 70 61 74 68 5d 20 26 26 20 5c 0a 09 20 20 20 20 | .exists.auto_oldpath].&&.\...... |
36b60 | 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 61 75 74 6f 5f 6f 6c 64 70 61 74 68 20 24 61 75 74 | [string.equal.$auto_oldpath.$aut |
36b80 | 6f 5f 70 61 74 68 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 30 0a 20 20 20 20 7d 0a 20 20 20 20 73 | o_path]}.{..return.0.....}.....s |
36ba0 | 65 74 20 61 75 74 6f 5f 6f 6c 64 70 61 74 68 20 24 61 75 74 6f 5f 70 61 74 68 0a 0a 20 20 20 20 | et.auto_oldpath.$auto_path...... |
36bc0 | 23 20 43 68 65 63 6b 20 69 66 20 77 65 20 61 72 65 20 61 20 73 61 66 65 20 69 6e 74 65 72 70 72 | #.Check.if.we.are.a.safe.interpr |
36be0 | 65 74 65 72 2e 20 49 6e 20 74 68 61 74 20 63 61 73 65 2c 20 77 65 20 73 75 70 70 6f 72 74 20 6f | eter..In.that.case,.we.support.o |
36c00 | 6e 6c 79 0a 20 20 20 20 23 20 6e 65 77 65 72 20 66 6f 72 6d 61 74 20 74 63 6c 49 6e 64 65 78 20 | nly.....#.newer.format.tclIndex. |
36c20 | 66 69 6c 65 73 2e 0a 0a 20 20 20 20 73 65 74 20 69 73 73 61 66 65 20 5b 69 6e 74 65 72 70 20 69 | files.......set.issafe.[interp.i |
36c40 | 73 73 61 66 65 5d 0a 20 20 20 20 66 6f 72 20 7b 73 65 74 20 69 20 5b 65 78 70 72 20 7b 5b 6c 6c | ssafe].....for.{set.i.[expr.{[ll |
36c60 | 65 6e 67 74 68 20 24 61 75 74 6f 5f 70 61 74 68 5d 20 2d 20 31 7d 5d 7d 20 7b 24 69 20 3e 3d 20 | ength.$auto_path].-.1}]}.{$i.>=. |
36c80 | 30 7d 20 7b 69 6e 63 72 20 69 20 2d 31 7d 20 7b 0a 09 73 65 74 20 64 69 72 20 5b 6c 69 6e 64 65 | 0}.{incr.i.-1}.{..set.dir.[linde |
36ca0 | 78 20 24 61 75 74 6f 5f 70 61 74 68 20 24 69 5d 0a 09 73 65 74 20 66 20 22 22 0a 09 69 66 20 7b | x.$auto_path.$i]..set.f.""..if.{ |
36cc0 | 24 69 73 73 61 66 65 7d 20 7b 0a 09 20 20 20 20 63 61 74 63 68 20 7b 73 6f 75 72 63 65 20 5b 66 | $issafe}.{......catch.{source.[f |
36ce0 | 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 74 63 6c 49 6e 64 65 78 5d 7d 0a 09 7d 20 65 6c 73 65 | ile.join.$dir.tclIndex]}..}.else |
36d00 | 69 66 20 7b 5b 63 61 74 63 68 20 7b 73 65 74 20 66 20 5b 6f 70 65 6e 20 5b 66 69 6c 65 20 6a 6f | if.{[catch.{set.f.[open.[file.jo |
36d20 | 69 6e 20 24 64 69 72 20 74 63 6c 49 6e 64 65 78 5d 5d 7d 5d 7d 20 7b 0a 09 20 20 20 20 63 6f 6e | in.$dir.tclIndex]]}]}.{......con |
36d40 | 74 69 6e 75 65 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 73 65 74 20 65 72 72 6f 72 20 5b | tinue..}.else.{......set.error.[ |
36d60 | 63 61 74 63 68 20 7b 0a 09 09 73 65 74 20 69 64 20 5b 67 65 74 73 20 24 66 5d 0a 09 09 69 66 20 | catch.{...set.id.[gets.$f]...if. |
36d80 | 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 69 64 20 5c 0a 09 09 09 22 23 20 54 63 6c 20 61 | {[string.equal.$id.\...."#.Tcl.a |
36da0 | 75 74 6f 6c 6f 61 64 20 69 6e 64 65 78 20 66 69 6c 65 2c 20 76 65 72 73 69 6f 6e 20 32 2e 30 22 | utoload.index.file,.version.2.0" |
36dc0 | 5d 7d 20 7b 0a 09 09 20 20 20 20 65 76 61 6c 20 5b 72 65 61 64 20 24 66 5d 0a 09 09 7d 20 65 6c | ]}.{.......eval.[read.$f]...}.el |
36de0 | 73 65 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 69 64 20 22 23 20 54 63 6c 20 61 | seif.{[string.equal.$id."#.Tcl.a |
36e00 | 75 74 6f 6c 6f 61 64 20 69 6e 64 65 78 20 66 69 6c 65 3a 20 65 61 63 68 20 6c 69 6e 65 20 69 64 | utoload.index.file:.each.line.id |
36e20 | 65 6e 74 69 66 69 65 73 20 61 20 54 63 6c 22 5d 7d 20 7b 0a 09 09 20 20 20 20 77 68 69 6c 65 20 | entifies.a.Tcl"]}.{.......while. |
36e40 | 7b 5b 67 65 74 73 20 24 66 20 6c 69 6e 65 5d 20 3e 3d 20 30 7d 20 7b 0a 09 09 09 69 66 20 7b 5b | {[gets.$f.line].>=.0}.{....if.{[ |
36e60 | 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 73 74 72 69 6e 67 20 69 6e 64 65 78 20 24 6c 69 6e 65 | string.equal.[string.index.$line |
36e80 | 20 30 5d 20 22 23 22 5d 20 5c 0a 09 09 09 09 7c 7c 20 28 5b 6c 6c 65 6e 67 74 68 20 24 6c 69 6e | .0]."#"].\.....||.([llength.$lin |
36ea0 | 65 5d 20 21 3d 20 32 29 7d 20 7b 0a 09 09 09 20 20 20 20 63 6f 6e 74 69 6e 75 65 0a 09 09 09 7d | e].!=.2)}.{........continue....} |
36ec0 | 0a 09 09 09 73 65 74 20 6e 61 6d 65 20 5b 6c 69 6e 64 65 78 20 24 6c 69 6e 65 20 30 5d 0a 09 09 | ....set.name.[lindex.$line.0]... |
36ee0 | 09 73 65 74 20 61 75 74 6f 5f 69 6e 64 65 78 28 24 6e 61 6d 65 29 20 5c 0a 09 09 09 09 22 73 6f | .set.auto_index($name).\....."so |
36f00 | 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 5b 6c 69 6e 64 65 78 20 24 6c 69 | urce.[file.join.$dir.[lindex.$li |
36f20 | 6e 65 20 31 5d 5d 22 0a 09 09 20 20 20 20 7d 0a 09 09 7d 20 65 6c 73 65 20 7b 0a 09 09 20 20 20 | ne.1]]".......}...}.else.{...... |
36f40 | 20 65 72 72 6f 72 20 22 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 74 63 6c 49 6e 64 65 78 | .error."[file.join.$dir.tclIndex |
36f60 | 5d 20 69 73 6e 27 74 20 61 20 70 72 6f 70 65 72 20 54 63 6c 20 69 6e 64 65 78 20 66 69 6c 65 22 | ].isn't.a.proper.Tcl.index.file" |
36f80 | 0a 09 09 7d 0a 09 20 20 20 20 7d 20 6d 73 67 5d 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e | ...}......}.msg]......if.{[strin |
36fa0 | 67 20 63 6f 6d 70 61 72 65 20 24 66 20 22 22 5d 7d 20 7b 0a 09 09 63 6c 6f 73 65 20 24 66 0a 09 | g.compare.$f.""]}.{...close.$f.. |
36fc0 | 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 24 65 72 72 6f 72 7d 20 7b 0a 09 09 65 72 72 6f 72 | ....}......if.{$error}.{...error |
36fe0 | 20 24 6d 73 67 20 24 65 72 72 6f 72 49 6e 66 6f 20 24 65 72 72 6f 72 43 6f 64 65 0a 09 20 20 20 | .$msg.$errorInfo.$errorCode..... |
37000 | 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 31 0a 7d 0a 0a 23 20 61 75 | .}..}.....}.....return.1.}..#.au |
37020 | 74 6f 5f 71 75 61 6c 69 66 79 20 2d 2d 0a 23 0a 23 20 43 6f 6d 70 75 74 65 20 61 20 66 75 6c 6c | to_qualify.--.#.#.Compute.a.full |
37040 | 79 20 71 75 61 6c 69 66 69 65 64 20 6e 61 6d 65 73 20 6c 69 73 74 20 66 6f 72 20 75 73 65 20 69 | y.qualified.names.list.for.use.i |
37060 | 6e 20 74 68 65 20 61 75 74 6f 5f 69 6e 64 65 78 20 61 72 72 61 79 2e 0a 23 20 46 6f 72 20 68 69 | n.the.auto_index.array..#.For.hi |
37080 | 73 74 6f 72 69 63 61 6c 20 72 65 61 73 6f 6e 73 2c 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 20 74 68 | storical.reasons,.commands.in.th |
370a0 | 65 20 67 6c 6f 62 61 6c 20 6e 61 6d 65 73 70 61 63 65 20 64 6f 20 6e 6f 74 20 68 61 76 65 20 6c | e.global.namespace.do.not.have.l |
370c0 | 65 61 64 69 6e 67 0a 23 20 3a 3a 20 69 6e 20 74 68 65 20 69 6e 64 65 78 20 6b 65 79 2e 20 54 68 | eading.#.::.in.the.index.key..Th |
370e0 | 65 20 6c 69 73 74 20 68 61 73 20 74 77 6f 20 65 6c 65 6d 65 6e 74 73 20 77 68 65 6e 20 74 68 65 | e.list.has.two.elements.when.the |
37100 | 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 20 69 73 0a 23 20 72 65 6c 61 74 69 76 65 20 28 6e 6f 20 | .command.name.is.#.relative.(no. |
37120 | 6c 65 61 64 69 6e 67 20 3a 3a 29 20 61 6e 64 20 74 68 65 20 6e 61 6d 65 73 70 61 63 65 20 69 73 | leading.::).and.the.namespace.is |
37140 | 20 6e 6f 74 20 74 68 65 20 67 6c 6f 62 61 6c 20 6f 6e 65 2e 20 4f 74 68 65 72 77 69 73 65 0a 23 | .not.the.global.one..Otherwise.# |
37160 | 20 6f 6e 6c 79 20 6f 6e 65 20 6e 61 6d 65 20 69 73 20 72 65 74 75 72 6e 65 64 20 28 61 6e 64 20 | .only.one.name.is.returned.(and. |
37180 | 73 65 61 72 63 68 65 64 20 69 6e 20 74 68 65 20 61 75 74 6f 5f 69 6e 64 65 78 29 2e 0a 23 0a 23 | searched.in.the.auto_index)..#.# |
371a0 | 20 41 72 67 75 6d 65 6e 74 73 20 2d 0a 23 20 63 6d 64 09 09 54 68 65 20 63 6f 6d 6d 61 6e 64 20 | .Arguments.-.#.cmd..The.command. |
371c0 | 6e 61 6d 65 2e 20 43 61 6e 20 62 65 20 61 6e 79 20 6e 61 6d 65 20 61 63 63 65 70 74 65 64 20 66 | name..Can.be.any.name.accepted.f |
371e0 | 6f 72 20 63 6f 6d 6d 61 6e 64 0a 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 76 6f 63 | or.command.#...............invoc |
37200 | 61 74 69 6f 6e 73 20 28 4c 69 6b 65 20 22 66 6f 6f 3a 3a 3a 3a 62 61 72 22 29 2e 0a 23 20 6e 61 | ations.(Like."foo::::bar")..#.na |
37220 | 6d 65 73 70 61 63 65 09 54 68 65 20 6e 61 6d 65 73 70 61 63 65 20 77 68 65 72 65 20 74 68 65 20 | mespace.The.namespace.where.the. |
37240 | 63 6f 6d 6d 61 6e 64 20 69 73 20 62 65 69 6e 67 20 75 73 65 64 20 2d 20 6d 75 73 74 20 62 65 0a | command.is.being.used.-.must.be. |
37260 | 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 20 63 61 6e 6f 6e 69 63 61 6c 20 6e 61 6d 65 | #...............a.canonical.name |
37280 | 73 70 61 63 65 20 61 73 20 72 65 74 75 72 6e 65 64 20 62 79 20 5b 6e 61 6d 65 73 70 61 63 65 20 | space.as.returned.by.[namespace. |
372a0 | 63 75 72 72 65 6e 74 5d 0a 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 69 6e 73 | current].#...............for.ins |
372c0 | 74 61 6e 63 65 2e 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 71 75 61 6c 69 66 79 20 7b 63 6d 64 20 6e | tance...proc.auto_qualify.{cmd.n |
372e0 | 61 6d 65 73 70 61 63 65 7d 20 7b 0a 0a 20 20 20 20 23 20 63 6f 75 6e 74 20 73 65 70 61 72 61 74 | amespace}.{......#.count.separat |
37300 | 6f 72 73 20 61 6e 64 20 63 6c 65 61 6e 20 74 68 65 6d 20 75 70 0a 20 20 20 20 23 20 28 6d 61 6b | ors.and.clean.them.up.....#.(mak |
37320 | 69 6e 67 20 73 75 72 65 20 74 68 61 74 20 66 6f 6f 3a 3a 3a 3a 3a 62 61 72 20 77 69 6c 6c 20 62 | ing.sure.that.foo:::::bar.will.b |
37340 | 65 20 74 72 65 61 74 65 64 20 61 73 20 66 6f 6f 3a 3a 62 61 72 29 0a 20 20 20 20 73 65 74 20 6e | e.treated.as.foo::bar).....set.n |
37360 | 20 5b 72 65 67 73 75 62 20 2d 61 6c 6c 20 7b 3a 3a 2b 7d 20 24 63 6d 64 20 3a 3a 20 63 6d 64 5d | .[regsub.-all.{::+}.$cmd.::.cmd] |
37380 | 0a 0a 20 20 20 20 23 20 49 67 6e 6f 72 65 20 6e 61 6d 65 73 70 61 63 65 20 69 66 20 74 68 65 20 | ......#.Ignore.namespace.if.the. |
373a0 | 6e 61 6d 65 20 73 74 61 72 74 73 20 77 69 74 68 20 3a 3a 0a 20 20 20 20 23 20 48 61 6e 64 6c 65 | name.starts.with.::.....#.Handle |
373c0 | 20 73 70 65 63 69 61 6c 20 63 61 73 65 20 6f 66 20 6f 6e 6c 79 20 6c 65 61 64 69 6e 67 20 3a 3a | .special.case.of.only.leading.:: |
373e0 | 0a 0a 20 20 20 20 23 20 42 65 66 6f 72 65 20 65 61 63 68 20 72 65 74 75 72 6e 20 63 61 73 65 20 | ......#.Before.each.return.case. |
37400 | 77 65 20 67 69 76 65 20 61 6e 20 65 78 61 6d 70 6c 65 20 6f 66 20 77 68 69 63 68 20 63 61 74 65 | we.give.an.example.of.which.cate |
37420 | 67 6f 72 79 20 69 74 20 69 73 0a 20 20 20 20 23 20 77 69 74 68 20 74 68 65 20 66 6f 6c 6c 6f 77 | gory.it.is.....#.with.the.follow |
37440 | 69 6e 67 20 66 6f 72 6d 20 3a 0a 20 20 20 20 23 20 28 20 69 6e 70 75 74 43 6d 64 2c 20 69 6e 70 | ing.form.:.....#.(.inputCmd,.inp |
37460 | 75 74 4e 61 6d 65 53 70 61 63 65 29 20 2d 3e 20 6f 75 74 70 75 74 0a 0a 20 20 20 20 69 66 20 7b | utNameSpace).->.output......if.{ |
37480 | 5b 72 65 67 65 78 70 20 7b 5e 3a 3a 28 2e 2a 29 24 7d 20 24 63 6d 64 20 78 20 74 61 69 6c 5d 7d | [regexp.{^::(.*)$}.$cmd.x.tail]} |
374a0 | 20 7b 0a 09 69 66 20 7b 24 6e 20 3e 20 31 7d 20 7b 0a 09 20 20 20 20 23 20 28 20 3a 3a 66 6f 6f | .{..if.{$n.>.1}.{......#.(.::foo |
374c0 | 3a 3a 62 61 72 20 2c 20 2a 20 29 20 2d 3e 20 3a 3a 66 6f 6f 3a 3a 62 61 72 0a 09 20 20 20 20 72 | ::bar.,.*.).->.::foo::bar......r |
374e0 | 65 74 75 72 6e 20 5b 6c 69 73 74 20 24 63 6d 64 5d 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 | eturn.[list.$cmd]..}.else.{..... |
37500 | 20 23 20 28 20 3a 3a 67 6c 6f 62 61 6c 20 2c 20 2a 20 29 20 2d 3e 20 67 6c 6f 62 61 6c 0a 09 20 | .#.(.::global.,.*.).->.global... |
37520 | 20 20 20 72 65 74 75 72 6e 20 5b 6c 69 73 74 20 24 74 61 69 6c 5d 0a 09 7d 0a 20 20 20 20 7d 0a | ...return.[list.$tail]..}.....}. |
37540 | 20 20 20 20 0a 20 20 20 20 23 20 50 6f 74 65 6e 74 69 61 6c 6c 79 20 72 65 74 75 72 6e 69 6e 67 | .........#.Potentially.returning |
37560 | 20 32 20 65 6c 65 6d 65 6e 74 73 20 74 6f 20 74 72 79 20 20 3a 0a 20 20 20 20 23 20 28 69 66 20 | .2.elements.to.try..:.....#.(if. |
37580 | 74 68 65 20 63 75 72 72 65 6e 74 20 6e 61 6d 65 73 70 61 63 65 20 69 73 20 6e 6f 74 20 74 68 65 | the.current.namespace.is.not.the |
375a0 | 20 67 6c 6f 62 61 6c 20 6f 6e 65 29 0a 0a 20 20 20 20 69 66 20 7b 24 6e 20 3d 3d 20 30 7d 20 7b | .global.one)......if.{$n.==.0}.{ |
375c0 | 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6e 61 6d 65 73 70 61 63 65 20 3a | ..if.{[string.equal.$namespace.: |
375e0 | 3a 5d 7d 20 7b 0a 09 20 20 20 20 23 20 28 20 6e 6f 63 6f 6c 6f 6e 73 20 2c 20 3a 3a 20 29 20 2d | :]}.{......#.(.nocolons.,.::.).- |
37600 | 3e 20 6e 6f 63 6f 6c 6f 6e 73 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 6c 69 73 74 20 24 63 6d | >.nocolons......return.[list.$cm |
37620 | 64 5d 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 23 20 28 20 6e 6f 63 6f 6c 6f 6e 73 20 2c | d]..}.else.{......#.(.nocolons., |
37640 | 20 3a 3a 73 75 62 20 29 20 2d 3e 20 3a 3a 73 75 62 3a 3a 6e 6f 63 6f 6c 6f 6e 73 20 6e 6f 63 6f | .::sub.).->.::sub::nocolons.noco |
37660 | 6c 6f 6e 73 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 6c 69 73 74 20 24 7b 6e 61 6d 65 73 70 61 | lons......return.[list.${namespa |
37680 | 63 65 7d 3a 3a 24 63 6d 64 20 24 63 6d 64 5d 0a 09 7d 0a 20 20 20 20 7d 20 65 6c 73 65 69 66 20 | ce}::$cmd.$cmd]..}.....}.elseif. |
376a0 | 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 6e 61 6d 65 73 70 61 63 65 20 3a 3a 5d 7d 20 7b | {[string.equal.$namespace.::]}.{ |
376c0 | 0a 09 23 20 20 28 20 66 6f 6f 3a 3a 62 61 72 20 2c 20 3a 3a 20 29 20 2d 3e 20 3a 3a 66 6f 6f 3a | ..#..(.foo::bar.,.::.).->.::foo: |
376e0 | 3a 62 61 72 0a 09 72 65 74 75 72 6e 20 5b 6c 69 73 74 20 3a 3a 24 63 6d 64 5d 0a 20 20 20 20 7d | :bar..return.[list.::$cmd].....} |
37700 | 20 65 6c 73 65 20 7b 0a 09 23 20 28 20 66 6f 6f 3a 3a 62 61 72 20 2c 20 3a 3a 73 75 62 20 29 20 | .else.{..#.(.foo::bar.,.::sub.). |
37720 | 2d 3e 20 3a 3a 73 75 62 3a 3a 66 6f 6f 3a 3a 62 61 72 20 3a 3a 66 6f 6f 3a 3a 62 61 72 0a 09 72 | ->.::sub::foo::bar.::foo::bar..r |
37740 | 65 74 75 72 6e 20 5b 6c 69 73 74 20 24 7b 6e 61 6d 65 73 70 61 63 65 7d 3a 3a 24 63 6d 64 20 3a | eturn.[list.${namespace}::$cmd.: |
37760 | 3a 24 63 6d 64 5d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 61 75 74 6f 5f 69 6d 70 6f 72 74 20 2d 2d | :$cmd].....}.}..#.auto_import.-- |
37780 | 0a 23 0a 23 20 49 6e 76 6f 6b 65 64 20 64 75 72 69 6e 67 20 22 6e 61 6d 65 73 70 61 63 65 20 69 | .#.#.Invoked.during."namespace.i |
377a0 | 6d 70 6f 72 74 22 20 74 6f 20 6d 61 6b 65 20 73 65 65 20 69 66 20 74 68 65 20 69 6d 70 6f 72 74 | mport".to.make.see.if.the.import |
377c0 | 65 64 20 63 6f 6d 6d 61 6e 64 73 0a 23 20 72 65 73 69 64 65 20 69 6e 20 61 6e 20 61 75 74 6f 6c | ed.commands.#.reside.in.an.autol |
377e0 | 6f 61 64 65 64 20 6c 69 62 72 61 72 79 2e 20 20 49 66 20 73 6f 2c 20 74 68 65 20 63 6f 6d 6d 61 | oaded.library...If.so,.the.comma |
37800 | 6e 64 73 20 61 72 65 20 6c 6f 61 64 65 64 20 73 6f 0a 23 20 74 68 61 74 20 74 68 65 79 20 77 69 | nds.are.loaded.so.#.that.they.wi |
37820 | 6c 6c 20 62 65 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 74 68 65 20 69 6d 70 6f 72 74 20 6c | ll.be.available.for.the.import.l |
37840 | 69 6e 6b 73 2e 20 20 49 66 20 6e 6f 74 2c 20 74 68 65 6e 20 74 68 69 73 0a 23 20 70 72 6f 63 65 | inks...If.not,.then.this.#.proce |
37860 | 64 75 72 65 20 64 6f 65 73 20 6e 6f 74 68 69 6e 67 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 | dure.does.nothing..#.#.Arguments |
37880 | 20 2d 0a 23 20 70 61 74 74 65 72 6e 09 54 68 65 20 70 61 74 74 65 72 6e 20 6f 66 20 63 6f 6d 6d | .-.#.pattern.The.pattern.of.comm |
378a0 | 61 6e 64 73 20 62 65 69 6e 67 20 69 6d 70 6f 72 74 65 64 20 28 6c 69 6b 65 20 22 66 6f 6f 3a 3a | ands.being.imported.(like."foo:: |
378c0 | 2a 22 29 0a 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 20 63 61 6e 6f 6e 69 63 61 6c 20 | *").#...............a.canonical. |
378e0 | 6e 61 6d 65 73 70 61 63 65 20 61 73 20 72 65 74 75 72 6e 65 64 20 62 79 20 5b 6e 61 6d 65 73 70 | namespace.as.returned.by.[namesp |
37900 | 61 63 65 20 63 75 72 72 65 6e 74 5d 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 69 6d 70 6f 72 74 20 7b | ace.current]..proc.auto_import.{ |
37920 | 70 61 74 74 65 72 6e 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 61 75 74 6f 5f 69 6e 64 65 78 | pattern}.{.....global.auto_index |
37940 | 0a 0a 20 20 20 20 73 65 74 20 6e 73 20 5b 75 70 6c 65 76 65 6c 20 6e 61 6d 65 73 70 61 63 65 20 | ......set.ns.[uplevel.namespace. |
37960 | 63 75 72 72 65 6e 74 5d 0a 20 20 20 20 73 65 74 20 70 61 74 74 65 72 6e 4c 69 73 74 20 5b 61 75 | current].....set.patternList.[au |
37980 | 74 6f 5f 71 75 61 6c 69 66 79 20 24 70 61 74 74 65 72 6e 20 24 6e 73 5d 0a 0a 20 20 20 20 61 75 | to_qualify.$pattern.$ns]......au |
379a0 | 74 6f 5f 6c 6f 61 64 5f 69 6e 64 65 78 0a 0a 20 20 20 20 66 6f 72 65 61 63 68 20 70 61 74 74 65 | to_load_index......foreach.patte |
379c0 | 72 6e 20 24 70 61 74 74 65 72 6e 4c 69 73 74 20 7b 0a 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 | rn.$patternList.{.........foreac |
379e0 | 68 20 6e 61 6d 65 20 5b 61 72 72 61 79 20 6e 61 6d 65 73 20 61 75 74 6f 5f 69 6e 64 65 78 5d 20 | h.name.[array.names.auto_index]. |
37a00 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 | {.............if.{[string.match. |
37a20 | 24 70 61 74 74 65 72 6e 20 24 6e 61 6d 65 5d 20 26 26 20 5c 0a 09 09 20 20 20 20 5b 73 74 72 69 | $pattern.$name].&&.\.......[stri |
37a40 | 6e 67 20 65 71 75 61 6c 20 22 22 20 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 20 24 6e 61 6d 65 | ng.equal."".[info.commands.$name |
37a60 | 5d 5d 7d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 70 6c 65 76 65 6c 20 23 30 | ]]}.{.................uplevel.#0 |
37a80 | 20 24 61 75 74 6f 5f 69 6e 64 65 78 28 24 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .$auto_index($name)............. |
37aa0 | 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 61 75 74 6f 5f 65 78 65 63 | }.........}.....}.}..#.auto_exec |
37ac0 | 6f 6b 20 2d 2d 0a 23 0a 23 20 52 65 74 75 72 6e 73 20 73 74 72 69 6e 67 20 74 68 61 74 20 69 6e | ok.--.#.#.Returns.string.that.in |
37ae0 | 64 69 63 61 74 65 73 20 6e 61 6d 65 20 6f 66 20 70 72 6f 67 72 61 6d 20 74 6f 20 65 78 65 63 75 | dicates.name.of.program.to.execu |
37b00 | 74 65 20 69 66 20 0a 23 20 6e 61 6d 65 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 61 20 73 | te.if..#.name.corresponds.to.a.s |
37b20 | 68 65 6c 6c 20 62 75 69 6c 74 69 6e 20 6f 72 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 69 6e | hell.builtin.or.an.executable.in |
37b40 | 20 74 68 65 0a 23 20 57 69 6e 64 6f 77 73 20 73 65 61 72 63 68 20 70 61 74 68 2c 20 6f 72 20 22 | .the.#.Windows.search.path,.or." |
37b60 | 22 20 6f 74 68 65 72 77 69 73 65 2e 20 20 42 75 69 6c 64 73 20 61 6e 20 61 73 73 6f 63 69 61 74 | ".otherwise...Builds.an.associat |
37b80 | 69 76 65 20 0a 23 20 61 72 72 61 79 20 61 75 74 6f 5f 65 78 65 63 73 20 74 68 61 74 20 63 61 63 | ive..#.array.auto_execs.that.cac |
37ba0 | 68 65 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 70 72 65 76 69 6f 75 73 20 63 | hes.information.about.previous.c |
37bc0 | 68 65 63 6b 73 2c 20 0a 23 20 66 6f 72 20 73 70 65 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e | hecks,..#.for.speed..#.#.Argumen |
37be0 | 74 73 3a 20 0a 23 20 6e 61 6d 65 20 2d 09 09 09 4e 61 6d 65 20 6f 66 20 61 20 63 6f 6d 6d 61 6e | ts:..#.name.-...Name.of.a.comman |
37c00 | 64 2e 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 77 69 6e 64 6f 77 73 20 24 74 | d...if.{[string.equal.windows.$t |
37c20 | 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 5d 7d 20 7b 0a 23 20 57 69 6e 64 | cl_platform(platform)]}.{.#.Wind |
37c40 | 6f 77 73 20 76 65 72 73 69 6f 6e 2e 0a 23 0a 23 20 4e 6f 74 65 20 74 68 61 74 20 69 6e 66 6f 20 | ows.version..#.#.Note.that.info. |
37c60 | 65 78 65 63 75 74 61 62 6c 65 20 64 6f 65 73 6e 27 74 20 77 6f 72 6b 20 75 6e 64 65 72 20 57 69 | executable.doesn't.work.under.Wi |
37c80 | 6e 64 6f 77 73 2c 20 73 6f 20 77 65 20 68 61 76 65 20 74 6f 0a 23 20 6c 6f 6f 6b 20 66 6f 72 20 | ndows,.so.we.have.to.#.look.for. |
37ca0 | 66 69 6c 65 73 20 77 69 74 68 20 2e 65 78 65 2c 20 2e 63 6f 6d 2c 20 6f 72 20 2e 62 61 74 20 65 | files.with..exe,..com,.or..bat.e |
37cc0 | 78 74 65 6e 73 69 6f 6e 73 2e 20 20 41 6c 73 6f 2c 20 74 68 65 20 70 61 74 68 0a 23 20 6d 61 79 | xtensions...Also,.the.path.#.may |
37ce0 | 20 62 65 20 69 6e 20 74 68 65 20 50 61 74 68 20 6f 72 20 50 41 54 48 20 65 6e 76 69 72 6f 6e 6d | .be.in.the.Path.or.PATH.environm |
37d00 | 65 6e 74 20 76 61 72 69 61 62 6c 65 73 2c 20 61 6e 64 20 70 61 74 68 0a 23 20 63 6f 6d 70 6f 6e | ent.variables,.and.path.#.compon |
37d20 | 65 6e 74 73 20 61 72 65 20 73 65 70 61 72 61 74 65 64 20 77 69 74 68 20 73 65 6d 69 63 6f 6c 6f | ents.are.separated.with.semicolo |
37d40 | 6e 73 2c 20 6e 6f 74 20 63 6f 6c 6f 6e 73 20 61 73 20 75 6e 64 65 72 20 55 6e 69 78 2e 0a 23 0a | ns,.not.colons.as.under.Unix..#. |
37d60 | 70 72 6f 63 20 61 75 74 6f 5f 65 78 65 63 6f 6b 20 6e 61 6d 65 20 7b 0a 20 20 20 20 67 6c 6f 62 | proc.auto_execok.name.{.....glob |
37d80 | 61 6c 20 61 75 74 6f 5f 65 78 65 63 73 20 65 6e 76 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 0a 0a | al.auto_execs.env.tcl_platform.. |
37da0 | 20 20 20 20 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 61 75 74 6f 5f 65 78 65 63 73 28 | ....if.{[info.exists.auto_execs( |
37dc0 | 24 6e 61 6d 65 29 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 24 61 75 74 6f 5f 65 78 65 63 73 28 24 | $name)]}.{..return.$auto_execs($ |
37de0 | 6e 61 6d 65 29 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 61 75 74 6f 5f 65 78 65 63 73 28 24 | name).....}.....set.auto_execs($ |
37e00 | 6e 61 6d 65 29 20 22 22 0a 0a 20 20 20 20 73 65 74 20 73 68 65 6c 6c 42 75 69 6c 74 69 6e 73 20 | name).""......set.shellBuiltins. |
37e20 | 5b 6c 69 73 74 20 63 6c 73 20 63 6f 70 79 20 64 61 74 65 20 64 65 6c 20 65 72 61 73 65 20 64 69 | [list.cls.copy.date.del.erase.di |
37e40 | 72 20 65 63 68 6f 20 6d 6b 64 69 72 20 5c 0a 09 20 20 20 20 6d 64 20 72 65 6e 61 6d 65 20 72 65 | r.echo.mkdir.\......md.rename.re |
37e60 | 6e 20 72 6d 64 69 72 20 72 64 20 74 69 6d 65 20 74 79 70 65 20 76 65 72 20 76 6f 6c 5d 0a 20 20 | n.rmdir.rd.time.type.ver.vol]... |
37e80 | 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 66 6f 72 | ..if.{[string.equal.$tcl_platfor |
37ea0 | 6d 28 6f 73 29 20 22 57 69 6e 64 6f 77 73 20 4e 54 22 5d 7d 20 7b 0a 09 23 20 4e 54 20 69 6e 63 | m(os)."Windows.NT"]}.{..#.NT.inc |
37ec0 | 6c 75 64 65 73 20 74 68 65 20 27 73 74 61 72 74 27 20 62 75 69 6c 74 2d 69 6e 0a 09 6c 61 70 70 | ludes.the.'start'.built-in..lapp |
37ee0 | 65 6e 64 20 73 68 65 6c 6c 42 75 69 6c 74 69 6e 73 20 22 73 74 61 72 74 22 0a 20 20 20 20 7d 0a | end.shellBuiltins."start".....}. |
37f00 | 0a 20 20 20 20 69 66 20 7b 5b 6c 73 65 61 72 63 68 20 2d 65 78 61 63 74 20 24 73 68 65 6c 6c 42 | .....if.{[lsearch.-exact.$shellB |
37f20 | 75 69 6c 74 69 6e 73 20 24 6e 61 6d 65 5d 20 21 3d 20 2d 31 7d 20 7b 0a 09 72 65 74 75 72 6e 20 | uiltins.$name].!=.-1}.{..return. |
37f40 | 5b 73 65 74 20 61 75 74 6f 5f 65 78 65 63 73 28 24 6e 61 6d 65 29 20 5b 6c 69 73 74 20 24 65 6e | [set.auto_execs($name).[list.$en |
37f60 | 76 28 43 4f 4d 53 50 45 43 29 20 2f 63 20 24 6e 61 6d 65 5d 5d 0a 20 20 20 20 7d 0a 0a 20 20 20 | v(COMSPEC)./c.$name]].....}..... |
37f80 | 20 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 5b 66 69 6c 65 20 73 70 6c 69 74 20 24 6e 61 6d 65 5d | .if.{[llength.[file.split.$name] |
37fa0 | 5d 20 21 3d 20 31 7d 20 7b 0a 09 66 6f 72 65 61 63 68 20 65 78 74 20 7b 7b 7d 20 2e 63 6f 6d 20 | ].!=.1}.{..foreach.ext.{{}..com. |
37fc0 | 2e 65 78 65 20 2e 62 61 74 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 66 69 6c 65 20 24 7b 6e 61 6d | .exe..bat}.{......set.file.${nam |
37fe0 | 65 7d 24 7b 65 78 74 7d 0a 09 20 20 20 20 69 66 20 7b 5b 66 69 6c 65 20 65 78 69 73 74 73 20 24 | e}${ext}......if.{[file.exists.$ |
38000 | 66 69 6c 65 5d 20 26 26 20 21 5b 66 69 6c 65 20 69 73 64 69 72 65 63 74 6f 72 79 20 24 66 69 6c | file].&&.![file.isdirectory.$fil |
38020 | 65 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 5b 73 65 74 20 61 75 74 6f 5f 65 78 65 63 73 28 24 | e]}.{...return.[set.auto_execs($ |
38040 | 6e 61 6d 65 29 20 5b 6c 69 73 74 20 24 66 69 6c 65 5d 5d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 72 | name).[list.$file]]......}..}..r |
38060 | 65 74 75 72 6e 20 22 22 0a 20 20 20 20 7d 0a 0a 20 20 20 20 73 65 74 20 70 61 74 68 20 22 5b 66 | eturn."".....}......set.path."[f |
38080 | 69 6c 65 20 64 69 72 6e 61 6d 65 20 5b 69 6e 66 6f 20 6e 61 6d 65 6f 66 5d 5d 3b 2e 3b 22 0a 20 | ile.dirname.[info.nameof]];.;".. |
380a0 | 20 20 20 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 65 6e 76 28 57 49 4e 44 49 52 29 5d | ...if.{[info.exists.env(WINDIR)] |
380c0 | 7d 20 7b 0a 09 73 65 74 20 77 69 6e 64 69 72 20 24 65 6e 76 28 57 49 4e 44 49 52 29 20 0a 20 20 | }.{..set.windir.$env(WINDIR).... |
380e0 | 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 77 69 6e 64 69 72 5d | ..}.....if.{[info.exists.windir] |
38100 | 7d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c 61 74 | }.{..if.{[string.equal.$tcl_plat |
38120 | 66 6f 72 6d 28 6f 73 29 20 22 57 69 6e 64 6f 77 73 20 4e 54 22 5d 7d 20 7b 0a 09 20 20 20 20 61 | form(os)."Windows.NT"]}.{......a |
38140 | 70 70 65 6e 64 20 70 61 74 68 20 22 24 77 69 6e 64 69 72 2f 73 79 73 74 65 6d 33 32 3b 22 0a 09 | ppend.path."$windir/system32;".. |
38160 | 7d 0a 09 61 70 70 65 6e 64 20 70 61 74 68 20 22 24 77 69 6e 64 69 72 2f 73 79 73 74 65 6d 3b 24 | }..append.path."$windir/system;$ |
38180 | 77 69 6e 64 69 72 3b 22 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 6f 72 65 61 63 68 20 76 61 72 20 | windir;".....}......foreach.var. |
381a0 | 7b 50 41 54 48 20 50 61 74 68 20 70 61 74 68 7d 20 7b 0a 09 69 66 20 7b 5b 69 6e 66 6f 20 65 78 | {PATH.Path.path}.{..if.{[info.ex |
381c0 | 69 73 74 73 20 65 6e 76 28 24 76 61 72 29 5d 7d 20 7b 0a 09 20 20 20 20 61 70 70 65 6e 64 20 70 | ists.env($var)]}.{......append.p |
381e0 | 61 74 68 20 22 3b 24 65 6e 76 28 24 76 61 72 29 22 0a 09 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 | ath.";$env($var)"..}.....}...... |
38200 | 66 6f 72 65 61 63 68 20 64 69 72 20 5b 73 70 6c 69 74 20 24 70 61 74 68 20 7b 3b 7d 5d 20 7b 0a | foreach.dir.[split.$path.{;}].{. |
38220 | 09 23 20 53 6b 69 70 20 61 6c 72 65 61 64 79 20 63 68 65 63 6b 65 64 20 64 69 72 65 63 74 6f 72 | .#.Skip.already.checked.director |
38240 | 69 65 73 0a 09 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 63 68 65 63 6b 65 64 28 24 64 | ies..if.{[info.exists.checked($d |
38260 | 69 72 29 5d 20 7c 7c 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 7b 7d 20 24 64 69 72 5d 7d 20 | ir)].||.[string.equal.{}.$dir]}. |
38280 | 7b 20 63 6f 6e 74 69 6e 75 65 20 7d 0a 09 73 65 74 20 63 68 65 63 6b 65 64 28 24 64 69 72 29 20 | {.continue.}..set.checked($dir). |
382a0 | 7b 7d 0a 09 66 6f 72 65 61 63 68 20 65 78 74 20 7b 7b 7d 20 2e 63 6f 6d 20 2e 65 78 65 20 2e 62 | {}..foreach.ext.{{}..com..exe..b |
382c0 | 61 74 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 66 69 6c 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 | at}.{......set.file.[file.join.$ |
382e0 | 64 69 72 20 24 7b 6e 61 6d 65 7d 24 7b 65 78 74 7d 5d 0a 09 20 20 20 20 69 66 20 7b 5b 66 69 6c | dir.${name}${ext}]......if.{[fil |
38300 | 65 20 65 78 69 73 74 73 20 24 66 69 6c 65 5d 20 26 26 20 21 5b 66 69 6c 65 20 69 73 64 69 72 65 | e.exists.$file].&&.![file.isdire |
38320 | 63 74 6f 72 79 20 24 66 69 6c 65 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 5b 73 65 74 20 61 75 | ctory.$file]}.{...return.[set.au |
38340 | 74 6f 5f 65 78 65 63 73 28 24 6e 61 6d 65 29 20 5b 6c 69 73 74 20 24 66 69 6c 65 5d 5d 0a 09 20 | to_execs($name).[list.$file]]... |
38360 | 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 22 22 0a 7d 0a 0a 7d | ...}..}.....}.....return."".}..} |
38380 | 20 65 6c 73 65 20 7b 0a 23 20 55 6e 69 78 20 76 65 72 73 69 6f 6e 2e 0a 23 0a 70 72 6f 63 20 61 | .else.{.#.Unix.version..#.proc.a |
383a0 | 75 74 6f 5f 65 78 65 63 6f 6b 20 6e 61 6d 65 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 61 75 74 | uto_execok.name.{.....global.aut |
383c0 | 6f 5f 65 78 65 63 73 20 65 6e 76 0a 0a 20 20 20 20 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 | o_execs.env......if.{[info.exist |
383e0 | 73 20 61 75 74 6f 5f 65 78 65 63 73 28 24 6e 61 6d 65 29 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 | s.auto_execs($name)]}.{..return. |
38400 | 24 61 75 74 6f 5f 65 78 65 63 73 28 24 6e 61 6d 65 29 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 | $auto_execs($name).....}.....set |
38420 | 20 61 75 74 6f 5f 65 78 65 63 73 28 24 6e 61 6d 65 29 20 22 22 0a 20 20 20 20 69 66 20 7b 5b 6c | .auto_execs($name)."".....if.{[l |
38440 | 6c 65 6e 67 74 68 20 5b 66 69 6c 65 20 73 70 6c 69 74 20 24 6e 61 6d 65 5d 5d 20 21 3d 20 31 7d | length.[file.split.$name]].!=.1} |
38460 | 20 7b 0a 09 69 66 20 7b 5b 66 69 6c 65 20 65 78 65 63 75 74 61 62 6c 65 20 24 6e 61 6d 65 5d 20 | .{..if.{[file.executable.$name]. |
38480 | 26 26 20 21 5b 66 69 6c 65 20 69 73 64 69 72 65 63 74 6f 72 79 20 24 6e 61 6d 65 5d 7d 20 7b 0a | &&.![file.isdirectory.$name]}.{. |
384a0 | 09 20 20 20 20 73 65 74 20 61 75 74 6f 5f 65 78 65 63 73 28 24 6e 61 6d 65 29 20 5b 6c 69 73 74 | .....set.auto_execs($name).[list |
384c0 | 20 24 6e 61 6d 65 5d 0a 09 7d 0a 09 72 65 74 75 72 6e 20 24 61 75 74 6f 5f 65 78 65 63 73 28 24 | .$name]..}..return.$auto_execs($ |
384e0 | 6e 61 6d 65 29 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 65 61 63 68 20 64 69 72 20 5b 73 70 6c | name).....}.....foreach.dir.[spl |
38500 | 69 74 20 24 65 6e 76 28 50 41 54 48 29 20 3a 5d 20 7b 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 | it.$env(PATH).:].{..if.{[string. |
38520 | 65 71 75 61 6c 20 24 64 69 72 20 22 22 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 64 69 72 20 2e | equal.$dir.""]}.{......set.dir.. |
38540 | 0a 09 7d 0a 09 73 65 74 20 66 69 6c 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 24 6e | ..}..set.file.[file.join.$dir.$n |
38560 | 61 6d 65 5d 0a 09 69 66 20 7b 5b 66 69 6c 65 20 65 78 65 63 75 74 61 62 6c 65 20 24 66 69 6c 65 | ame]..if.{[file.executable.$file |
38580 | 5d 20 26 26 20 21 5b 66 69 6c 65 20 69 73 64 69 72 65 63 74 6f 72 79 20 24 66 69 6c 65 5d 7d 20 | ].&&.![file.isdirectory.$file]}. |
385a0 | 7b 0a 09 20 20 20 20 73 65 74 20 61 75 74 6f 5f 65 78 65 63 73 28 24 6e 61 6d 65 29 20 5b 6c 69 | {......set.auto_execs($name).[li |
385c0 | 73 74 20 24 66 69 6c 65 5d 0a 09 20 20 20 20 72 65 74 75 72 6e 20 24 61 75 74 6f 5f 65 78 65 63 | st.$file]......return.$auto_exec |
385e0 | 73 28 24 6e 61 6d 65 29 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 22 22 0a | s($name)..}.....}.....return."". |
38600 | 7d 0a 0a 7d 0a 00 00 4a e2 23 20 61 75 74 6f 2e 74 63 6c 20 2d 2d 0a 23 0a 23 20 75 74 69 6c 69 | }..}...J.#.auto.tcl.--.#.#.utili |
38620 | 74 79 20 70 72 6f 63 73 20 66 6f 72 6d 65 72 6c 79 20 69 6e 20 69 6e 69 74 2e 74 63 6c 20 64 65 | ty.procs.formerly.in.init.tcl.de |
38640 | 61 6c 69 6e 67 20 77 69 74 68 20 61 75 74 6f 20 65 78 65 63 75 74 69 6f 6e 0a 23 20 6f 66 20 63 | aling.with.auto.execution.#.of.c |
38660 | 6f 6d 6d 61 6e 64 73 20 61 6e 64 20 63 61 6e 20 62 65 20 61 75 74 6f 20 6c 6f 61 64 65 64 20 74 | ommands.and.can.be.auto.loaded.t |
38680 | 68 65 6d 73 65 6c 76 65 73 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 61 75 | hemselves..#.#.RCS:.@(#).$Id:.au |
386a0 | 74 6f 2e 74 63 6c 2c 76 20 31 2e 37 20 32 30 30 30 2f 30 32 2f 30 38 20 31 30 3a 30 36 3a 31 32 | to.tcl,v.1.7.2000/02/08.10:06:12 |
386c0 | 20 68 6f 62 62 73 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 | .hobbs.Exp.$.#.#.Copyright.(c).1 |
386e0 | 39 39 31 2d 31 39 39 33 20 54 68 65 20 52 65 67 65 6e 74 73 20 6f 66 20 74 68 65 20 55 6e 69 76 | 991-1993.The.Regents.of.the.Univ |
38700 | 65 72 73 69 74 79 20 6f 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e 0a 23 20 43 6f 70 79 72 69 67 68 | ersity.of.California..#.Copyrigh |
38720 | 74 20 28 63 29 20 31 39 39 34 2d 31 39 39 38 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 | t.(c).1994-1998.Sun.Microsystems |
38740 | 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 | ,.Inc..#.#.See.the.file."license |
38760 | 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 | .terms".for.information.on.usage |
38780 | 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 | .and.redistribution.#.of.this.fi |
387a0 | 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 | le,.and.for.a.DISCLAIMER.OF.ALL. |
387c0 | 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 0a 0a 23 20 61 75 74 6f 5f 72 65 73 65 74 20 2d 2d 0a 23 | WARRANTIES..#..#.auto_reset.--.# |
387e0 | 0a 23 20 44 65 73 74 72 6f 79 20 61 6c 6c 20 63 61 63 68 65 64 20 69 6e 66 6f 72 6d 61 74 69 6f | .#.Destroy.all.cached.informatio |
38800 | 6e 20 66 6f 72 20 61 75 74 6f 2d 6c 6f 61 64 69 6e 67 20 61 6e 64 20 61 75 74 6f 2d 65 78 65 63 | n.for.auto-loading.and.auto-exec |
38820 | 75 74 69 6f 6e 2c 0a 23 20 73 6f 20 74 68 61 74 20 74 68 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e | ution,.#.so.that.the.information |
38840 | 20 67 65 74 73 20 72 65 63 6f 6d 70 75 74 65 64 20 74 68 65 20 6e 65 78 74 20 74 69 6d 65 20 69 | .gets.recomputed.the.next.time.i |
38860 | 74 27 73 20 6e 65 65 64 65 64 2e 0a 23 20 41 6c 73 6f 20 64 65 6c 65 74 65 20 61 6e 79 20 70 72 | t's.needed..#.Also.delete.any.pr |
38880 | 6f 63 65 64 75 72 65 73 20 74 68 61 74 20 61 72 65 20 6c 69 73 74 65 64 20 69 6e 20 74 68 65 20 | ocedures.that.are.listed.in.the. |
388a0 | 61 75 74 6f 2d 6c 6f 61 64 20 69 6e 64 65 78 0a 23 20 65 78 63 65 70 74 20 74 68 6f 73 65 20 64 | auto-load.index.#.except.those.d |
388c0 | 65 66 69 6e 65 64 20 69 6e 20 74 68 69 73 20 66 69 6c 65 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e | efined.in.this.file..#.#.Argumen |
388e0 | 74 73 3a 20 0a 23 20 4e 6f 6e 65 2e 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 72 65 73 65 74 20 7b 7d | ts:..#.None...proc.auto_reset.{} |
38900 | 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 61 75 74 6f 5f 65 78 65 63 73 20 61 75 74 6f 5f 69 6e | .{.....global.auto_execs.auto_in |
38920 | 64 65 78 20 61 75 74 6f 5f 6f 6c 64 70 61 74 68 0a 20 20 20 20 66 6f 72 65 61 63 68 20 70 20 5b | dex.auto_oldpath.....foreach.p.[ |
38940 | 69 6e 66 6f 20 70 72 6f 63 73 5d 20 7b 0a 09 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 | info.procs].{..if.{[info.exists. |
38960 | 61 75 74 6f 5f 69 6e 64 65 78 28 24 70 29 5d 20 26 26 20 21 5b 73 74 72 69 6e 67 20 6d 61 74 63 | auto_index($p)].&&.![string.matc |
38980 | 68 20 61 75 74 6f 5f 2a 20 24 70 5d 0a 09 09 26 26 20 28 5b 6c 73 65 61 72 63 68 20 2d 65 78 61 | h.auto_*.$p]...&&.([lsearch.-exa |
389a0 | 63 74 20 7b 75 6e 6b 6e 6f 77 6e 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74 63 6c 50 6b 67 53 65 | ct.{unknown.pkg_mkIndex.tclPkgSe |
389c0 | 74 75 70 0a 09 09 09 74 63 6c 5f 66 69 6e 64 4c 69 62 72 61 72 79 20 70 6b 67 5f 63 6f 6d 70 61 | tup....tcl_findLibrary.pkg_compa |
389e0 | 72 65 45 78 74 65 6e 73 69 6f 6e 0a 09 09 09 74 63 6c 4d 61 63 50 6b 67 53 65 61 72 63 68 20 74 | reExtension....tclMacPkgSearch.t |
38a00 | 63 6c 50 6b 67 55 6e 6b 6e 6f 77 6e 7d 20 24 70 5d 20 3c 20 30 29 7d 20 7b 0a 09 20 20 20 20 72 | clPkgUnknown}.$p].<.0)}.{......r |
38a20 | 65 6e 61 6d 65 20 24 70 20 7b 7d 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 63 61 74 63 68 20 7b | ename.$p.{}..}.....}.....catch.{ |
38a40 | 75 6e 73 65 74 20 61 75 74 6f 5f 65 78 65 63 73 7d 0a 20 20 20 20 63 61 74 63 68 20 7b 75 6e 73 | unset.auto_execs}.....catch.{uns |
38a60 | 65 74 20 61 75 74 6f 5f 69 6e 64 65 78 7d 0a 20 20 20 20 63 61 74 63 68 20 7b 75 6e 73 65 74 20 | et.auto_index}.....catch.{unset. |
38a80 | 61 75 74 6f 5f 6f 6c 64 70 61 74 68 7d 0a 7d 0a 0a 23 20 74 63 6c 5f 66 69 6e 64 4c 69 62 72 61 | auto_oldpath}.}..#.tcl_findLibra |
38aa0 | 72 79 20 2d 2d 0a 23 0a 23 09 54 68 69 73 20 69 73 20 61 20 75 74 69 6c 69 74 79 20 66 6f 72 20 | ry.--.#.#.This.is.a.utility.for. |
38ac0 | 65 78 74 65 6e 73 69 6f 6e 73 20 74 68 61 74 20 73 65 61 72 63 68 65 73 20 66 6f 72 20 61 20 6c | extensions.that.searches.for.a.l |
38ae0 | 69 62 72 61 72 79 20 64 69 72 65 63 74 6f 72 79 0a 23 09 75 73 69 6e 67 20 61 20 63 61 6e 6f 6e | ibrary.directory.#.using.a.canon |
38b00 | 69 63 61 6c 20 73 65 61 72 63 68 69 6e 67 20 61 6c 67 6f 72 69 74 68 6d 2e 20 41 20 73 69 64 65 | ical.searching.algorithm..A.side |
38b20 | 20 65 66 66 65 63 74 20 69 73 20 74 6f 20 73 6f 75 72 63 65 0a 23 09 74 68 65 20 69 6e 69 74 69 | .effect.is.to.source.#.the.initi |
38b40 | 61 6c 69 7a 61 74 69 6f 6e 20 73 63 72 69 70 74 20 61 6e 64 20 73 65 74 20 61 20 67 6c 6f 62 61 | alization.script.and.set.a.globa |
38b60 | 6c 20 6c 69 62 72 61 72 79 20 76 61 72 69 61 62 6c 65 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 | l.library.variable..#.#.Argument |
38b80 | 73 3a 0a 23 20 09 62 61 73 65 6e 61 6d 65 09 50 72 65 66 69 78 20 6f 66 20 74 68 65 20 64 69 72 | s:.#..basename.Prefix.of.the.dir |
38ba0 | 65 63 74 6f 72 79 20 6e 61 6d 65 2c 20 28 65 2e 67 2e 2c 20 22 74 6b 22 29 0a 23 09 76 65 72 73 | ectory.name,.(e.g.,."tk").#.vers |
38bc0 | 69 6f 6e 09 09 56 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 20 74 68 65 20 70 61 63 6b 61 | ion..Version.number.of.the.packa |
38be0 | 67 65 2c 20 28 65 2e 67 2e 2c 20 22 38 2e 30 22 29 0a 23 09 70 61 74 63 68 09 09 50 61 74 63 68 | ge,.(e.g.,."8.0").#.patch..Patch |
38c00 | 6c 65 76 65 6c 20 6f 66 20 74 68 65 20 70 61 63 6b 61 67 65 2c 20 28 65 2e 67 2e 2c 20 22 38 2e | level.of.the.package,.(e.g.,."8. |
38c20 | 30 2e 33 22 29 0a 23 09 69 6e 69 74 53 63 72 69 70 74 09 49 6e 69 74 69 61 6c 69 7a 61 74 69 6f | 0.3").#.initScript.Initializatio |
38c40 | 6e 20 73 63 72 69 70 74 20 74 6f 20 73 6f 75 72 63 65 20 28 65 2e 67 2e 2c 20 74 6b 2e 74 63 6c | n.script.to.source.(e.g.,.tk.tcl |
38c60 | 29 0a 23 09 65 6e 56 61 72 4e 61 6d 65 09 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 | ).#.enVarName.environment.variab |
38c80 | 6c 65 20 74 6f 20 68 6f 6e 6f 72 20 28 65 2e 67 2e 2c 20 54 4b 5f 4c 49 42 52 41 52 59 29 0a 23 | le.to.honor.(e.g.,.TK_LIBRARY).# |
38ca0 | 09 76 61 72 4e 61 6d 65 09 09 47 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 74 6f 20 73 65 74 | .varName..Global.variable.to.set |
38cc0 | 20 77 68 65 6e 20 64 6f 6e 65 20 28 65 2e 67 2e 2c 20 74 6b 5f 6c 69 62 72 61 72 79 29 0a 0a 70 | .when.done.(e.g.,.tk_library)..p |
38ce0 | 72 6f 63 20 74 63 6c 5f 66 69 6e 64 4c 69 62 72 61 72 79 20 7b 62 61 73 65 6e 61 6d 65 20 76 65 | roc.tcl_findLibrary.{basename.ve |
38d00 | 72 73 69 6f 6e 20 70 61 74 63 68 20 69 6e 69 74 53 63 72 69 70 74 20 65 6e 56 61 72 4e 61 6d 65 | rsion.patch.initScript.enVarName |
38d20 | 20 76 61 72 4e 61 6d 65 7d 20 7b 0a 20 20 20 20 75 70 76 61 72 20 23 30 20 24 76 61 72 4e 61 6d | .varName}.{.....upvar.#0.$varNam |
38d40 | 65 20 74 68 65 5f 6c 69 62 72 61 72 79 0a 20 20 20 20 67 6c 6f 62 61 6c 20 65 6e 76 20 65 72 72 | e.the_library.....global.env.err |
38d60 | 6f 72 49 6e 66 6f 0a 0a 20 20 20 20 73 65 74 20 64 69 72 73 20 7b 7d 0a 20 20 20 20 73 65 74 20 | orInfo......set.dirs.{}.....set. |
38d80 | 65 72 72 6f 72 73 20 7b 7d 0a 0a 20 20 20 20 23 20 54 68 65 20 43 20 61 70 70 6c 69 63 61 74 69 | errors.{}......#.The.C.applicati |
38da0 | 6f 6e 20 6d 61 79 20 68 61 76 65 20 68 61 72 64 77 69 72 65 64 20 61 20 70 61 74 68 2c 20 77 68 | on.may.have.hardwired.a.path,.wh |
38dc0 | 69 63 68 20 77 65 20 68 6f 6e 6f 72 0a 20 20 20 20 0a 20 20 20 20 69 66 20 7b 5b 69 6e 66 6f 20 | ich.we.honor..........if.{[info. |
38de0 | 65 78 69 73 74 20 74 68 65 5f 6c 69 62 72 61 72 79 5d 20 26 26 20 5b 73 74 72 69 6e 67 20 63 6f | exist.the_library].&&.[string.co |
38e00 | 6d 70 61 72 65 20 24 74 68 65 5f 6c 69 62 72 61 72 79 20 7b 7d 5d 7d 20 7b 0a 09 6c 61 70 70 65 | mpare.$the_library.{}]}.{..lappe |
38e20 | 6e 64 20 64 69 72 73 20 24 74 68 65 5f 6c 69 62 72 61 72 79 0a 20 20 20 20 7d 20 65 6c 73 65 20 | nd.dirs.$the_library.....}.else. |
38e40 | 7b 0a 0a 09 23 20 44 6f 20 74 68 65 20 63 61 6e 6f 6e 69 63 61 6c 20 73 65 61 72 63 68 0a 0a 09 | {...#.Do.the.canonical.search... |
38e60 | 23 20 31 2e 20 46 72 6f 6d 20 61 6e 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c | #.1..From.an.environment.variabl |
38e80 | 65 2c 20 69 66 20 69 74 20 65 78 69 73 74 73 0a 0a 20 20 20 20 20 20 20 20 69 66 20 7b 5b 69 6e | e,.if.it.exists..........if.{[in |
38ea0 | 66 6f 20 65 78 69 73 74 73 20 65 6e 76 28 24 65 6e 56 61 72 4e 61 6d 65 29 5d 7d 20 7b 0a 20 20 | fo.exists.env($enVarName)]}.{... |
38ec0 | 20 20 20 20 20 20 20 20 20 20 6c 61 70 70 65 6e 64 20 64 69 72 73 20 24 65 6e 76 28 24 65 6e 56 | ..........lappend.dirs.$env($enV |
38ee0 | 61 72 4e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 7d 0a 0a 09 23 20 32 2e 20 52 65 6c 61 74 69 76 | arName).........}...#.2..Relativ |
38f00 | 65 20 74 6f 20 74 68 65 20 54 63 6c 20 6c 69 62 72 61 72 79 0a 0a 20 20 20 20 20 20 20 20 6c 61 | e.to.the.Tcl.library..........la |
38f20 | 70 70 65 6e 64 20 64 69 72 73 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b 66 69 6c 65 20 64 69 72 6e | ppend.dirs.[file.join.[file.dirn |
38f40 | 61 6d 65 20 5b 69 6e 66 6f 20 6c 69 62 72 61 72 79 5d 5d 20 5c 0a 09 09 24 62 61 73 65 6e 61 6d | ame.[info.library]].\...$basenam |
38f60 | 65 24 76 65 72 73 69 6f 6e 5d 0a 0a 09 23 20 33 2e 20 56 61 72 69 6f 75 73 20 6c 6f 63 61 74 69 | e$version]...#.3..Various.locati |
38f80 | 6f 6e 73 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 0a 09 | ons.relative.to.the.executable.. |
38fa0 | 23 20 2e 2e 2f 6c 69 62 2f 66 6f 6f 31 2e 30 09 09 28 46 72 6f 6d 20 62 69 6e 20 64 69 72 65 63 | #.../lib/foo1.0..(From.bin.direc |
38fc0 | 74 6f 72 79 20 69 6e 20 69 6e 73 74 61 6c 6c 20 68 69 65 72 61 72 63 68 79 29 0a 09 23 20 2e 2e | tory.in.install.hierarchy)..#... |
38fe0 | 2f 2e 2e 2f 6c 69 62 2f 66 6f 6f 31 2e 30 09 28 46 72 6f 6d 20 62 69 6e 2f 61 72 63 68 20 64 69 | /../lib/foo1.0.(From.bin/arch.di |
39000 | 72 65 63 74 6f 72 79 20 69 6e 20 69 6e 73 74 61 6c 6c 20 68 69 65 72 61 72 63 68 79 29 0a 09 23 | rectory.in.install.hierarchy)..# |
39020 | 20 2e 2e 2f 6c 69 62 72 61 72 79 09 09 28 46 72 6f 6d 20 75 6e 69 78 20 64 69 72 65 63 74 6f 72 | .../library..(From.unix.director |
39040 | 79 20 69 6e 20 62 75 69 6c 64 20 68 69 65 72 61 72 63 68 79 29 0a 09 23 20 2e 2e 2f 2e 2e 2f 6c | y.in.build.hierarchy)..#.../../l |
39060 | 69 62 72 61 72 79 09 09 28 46 72 6f 6d 20 75 6e 69 78 2f 61 72 63 68 20 64 69 72 65 63 74 6f 72 | ibrary..(From.unix/arch.director |
39080 | 79 20 69 6e 20 62 75 69 6c 64 20 68 69 65 72 61 72 63 68 79 29 0a 09 23 20 2e 2e 2f 2e 2e 2f 66 | y.in.build.hierarchy)..#.../../f |
390a0 | 6f 6f 31 2e 30 62 31 2f 6c 69 62 72 61 72 79 20 28 46 72 6f 6d 20 75 6e 69 78 20 64 69 72 65 63 | oo1.0b1/library.(From.unix.direc |
390c0 | 74 6f 72 79 20 69 6e 20 70 61 72 61 6c 6c 65 6c 20 62 75 69 6c 64 20 68 69 65 72 61 72 63 68 79 | tory.in.parallel.build.hierarchy |
390e0 | 29 0a 09 23 20 2e 2e 2f 2e 2e 2f 2e 2e 2f 66 6f 6f 31 2e 30 62 31 2f 6c 69 62 72 61 72 79 20 28 | )..#.../../../foo1.0b1/library.( |
39100 | 46 72 6f 6d 20 75 6e 69 78 2f 61 72 63 68 20 64 69 72 65 63 74 6f 72 79 20 69 6e 20 70 61 72 61 | From.unix/arch.directory.in.para |
39120 | 6c 6c 65 6c 20 62 75 69 6c 64 20 68 69 65 72 61 72 63 68 79 29 0a 0a 20 20 20 20 20 20 20 20 73 | llel.build.hierarchy)..........s |
39140 | 65 74 20 70 61 72 65 6e 74 44 69 72 20 5b 66 69 6c 65 20 64 69 72 6e 61 6d 65 20 5b 66 69 6c 65 | et.parentDir.[file.dirname.[file |
39160 | 20 64 69 72 6e 61 6d 65 20 5b 69 6e 66 6f 20 6e 61 6d 65 6f 66 65 78 65 63 75 74 61 62 6c 65 5d | .dirname.[info.nameofexecutable] |
39180 | 5d 5d 0a 20 20 20 20 20 20 20 20 73 65 74 20 67 72 61 6e 64 50 61 72 65 6e 74 44 69 72 20 5b 66 | ]].........set.grandParentDir.[f |
391a0 | 69 6c 65 20 64 69 72 6e 61 6d 65 20 24 70 61 72 65 6e 74 44 69 72 5d 0a 20 20 20 20 20 20 20 20 | ile.dirname.$parentDir]......... |
391c0 | 6c 61 70 70 65 6e 64 20 64 69 72 73 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 70 61 72 65 6e 74 44 | lappend.dirs.[file.join.$parentD |
391e0 | 69 72 20 6c 69 62 20 24 62 61 73 65 6e 61 6d 65 24 76 65 72 73 69 6f 6e 5d 0a 20 20 20 20 20 20 | ir.lib.$basename$version]....... |
39200 | 20 20 6c 61 70 70 65 6e 64 20 64 69 72 73 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 67 72 61 6e 64 | ..lappend.dirs.[file.join.$grand |
39220 | 50 61 72 65 6e 74 44 69 72 20 6c 69 62 20 24 62 61 73 65 6e 61 6d 65 24 76 65 72 73 69 6f 6e 5d | ParentDir.lib.$basename$version] |
39240 | 0a 20 20 20 20 20 20 20 20 6c 61 70 70 65 6e 64 20 64 69 72 73 20 5b 66 69 6c 65 20 6a 6f 69 6e | .........lappend.dirs.[file.join |
39260 | 20 24 70 61 72 65 6e 74 44 69 72 20 6c 69 62 72 61 72 79 5d 0a 20 20 20 20 20 20 20 20 6c 61 70 | .$parentDir.library].........lap |
39280 | 70 65 6e 64 20 64 69 72 73 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 67 72 61 6e 64 50 61 72 65 6e | pend.dirs.[file.join.$grandParen |
392a0 | 74 44 69 72 20 6c 69 62 72 61 72 79 5d 0a 20 20 20 20 20 20 20 20 69 66 20 7b 21 5b 72 65 67 65 | tDir.library].........if.{![rege |
392c0 | 78 70 20 7b 2e 2a 5b 61 62 5d 5b 30 2d 39 5d 2a 7d 20 24 70 61 74 63 68 20 76 65 72 5d 7d 20 7b | xp.{.*[ab][0-9]*}.$patch.ver]}.{ |
392e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 76 65 72 20 24 76 65 72 73 69 6f 6e 0a 20 20 | .............set.ver.$version... |
39300 | 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 6c 61 70 70 65 6e 64 20 64 69 72 73 20 5b 66 69 | ......}.........lappend.dirs.[fi |
39320 | 6c 65 20 6a 6f 69 6e 20 24 67 72 61 6e 64 50 61 72 65 6e 74 44 69 72 20 24 62 61 73 65 6e 61 6d | le.join.$grandParentDir.$basenam |
39340 | 65 24 76 65 72 20 6c 69 62 72 61 72 79 5d 0a 20 20 20 20 20 20 20 20 6c 61 70 70 65 6e 64 20 64 | e$ver.library].........lappend.d |
39360 | 69 72 73 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b 66 69 6c 65 20 64 69 72 6e 61 6d 65 20 24 67 72 | irs.[file.join.[file.dirname.$gr |
39380 | 61 6e 64 50 61 72 65 6e 74 44 69 72 5d 20 24 62 61 73 65 6e 61 6d 65 24 76 65 72 20 6c 69 62 72 | andParentDir].$basename$ver.libr |
393a0 | 61 72 79 5d 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 65 61 63 68 20 69 20 24 64 69 72 73 20 7b | ary].....}.....foreach.i.$dirs.{ |
393c0 | 0a 20 20 20 20 20 20 20 20 73 65 74 20 74 68 65 5f 6c 69 62 72 61 72 79 20 24 69 0a 20 20 20 20 | .........set.the_library.$i..... |
393e0 | 20 20 20 20 73 65 74 20 66 69 6c 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 69 20 24 69 6e 69 74 | ....set.file.[file.join.$i.$init |
39400 | 53 63 72 69 70 74 5d 0a 0a 09 23 20 73 6f 75 72 63 65 20 65 76 65 72 79 74 68 69 6e 67 20 77 68 | Script]...#.source.everything.wh |
39420 | 65 6e 20 69 6e 20 61 20 73 61 66 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 62 65 63 61 75 73 65 | en.in.a.safe.interpreter.because |
39440 | 0a 09 23 20 77 65 20 68 61 76 65 20 61 20 73 6f 75 72 63 65 20 63 6f 6d 6d 61 6e 64 2c 20 62 75 | ..#.we.have.a.source.command,.bu |
39460 | 74 20 6e 6f 20 66 69 6c 65 20 65 78 69 73 74 73 20 63 6f 6d 6d 61 6e 64 0a 0a 20 20 20 20 20 20 | t.no.file.exists.command........ |
39480 | 20 20 69 66 20 7b 5b 69 6e 74 65 72 70 20 69 73 73 61 66 65 5d 20 7c 7c 20 5b 66 69 6c 65 20 65 | ..if.{[interp.issafe].||.[file.e |
394a0 | 78 69 73 74 73 20 24 66 69 6c 65 5d 7d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 7b | xists.$file]}.{.............if.{ |
394c0 | 21 5b 63 61 74 63 68 20 7b 75 70 6c 65 76 65 6c 20 23 30 20 5b 6c 69 73 74 20 73 6f 75 72 63 65 | ![catch.{uplevel.#0.[list.source |
394e0 | 20 24 66 69 6c 65 5d 7d 20 6d 73 67 5d 7d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .$file]}.msg]}.{................ |
39500 | 20 72 65 74 75 72 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 | .return.............}.else.{.... |
39520 | 20 20 20 20 20 20 20 20 20 20 20 20 20 61 70 70 65 6e 64 20 65 72 72 6f 72 73 20 22 24 66 69 6c | .............append.errors."$fil |
39540 | 65 3a 20 24 6d 73 67 5c 6e 24 65 72 72 6f 72 49 6e 66 6f 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 | e:.$msg\n$errorInfo\n".......... |
39560 | 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 6d 73 67 | ...}.........}.....}.....set.msg |
39580 | 20 22 43 61 6e 27 74 20 66 69 6e 64 20 61 20 75 73 61 62 6c 65 20 24 69 6e 69 74 53 63 72 69 70 | ."Can't.find.a.usable.$initScrip |
395a0 | 74 20 69 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 69 72 65 63 74 6f 72 69 65 73 3a 20 | t.in.the.following.directories:. |
395c0 | 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 6d 73 67 20 22 20 20 20 20 24 64 69 72 73 5c 6e 5c | \n".....append.msg."....$dirs\n\ |
395e0 | 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 6d 73 67 20 22 24 65 72 72 6f 72 73 5c 6e 5c 6e 22 0a | n".....append.msg."$errors\n\n". |
39600 | 20 20 20 20 61 70 70 65 6e 64 20 6d 73 67 20 22 54 68 69 73 20 70 72 6f 62 61 62 6c 79 20 6d 65 | ....append.msg."This.probably.me |
39620 | 61 6e 73 20 74 68 61 74 20 24 62 61 73 65 6e 61 6d 65 20 77 61 73 6e 27 74 20 69 6e 73 74 61 6c | ans.that.$basename.wasn't.instal |
39640 | 6c 65 64 20 70 72 6f 70 65 72 6c 79 2e 5c 6e 22 0a 20 20 20 20 65 72 72 6f 72 20 24 6d 73 67 0a | led.properly.\n".....error.$msg. |
39660 | 7d 0a 0a 0a 23 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | }...#.-------------------------- |
39680 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
396a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 0a 23 20 2d 2d | ------------.#.auto_mkindex.#.-- |
396c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
396e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
39700 | 2d 2d 2d 2d 0a 23 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 72 6f 63 65 64 75 72 65 73 20 | ----.#.The.following.procedures. |
39720 | 61 72 65 20 75 73 65 64 20 74 6f 20 67 65 6e 65 72 61 74 65 20 74 68 65 20 74 63 6c 49 6e 64 65 | are.used.to.generate.the.tclInde |
39740 | 78 20 66 69 6c 65 0a 23 20 66 72 6f 6d 20 54 63 6c 20 73 6f 75 72 63 65 20 66 69 6c 65 73 2e 20 | x.file.#.from.Tcl.source.files.. |
39760 | 20 54 68 65 79 20 75 73 65 20 61 20 73 70 65 63 69 61 6c 20 73 61 66 65 20 69 6e 74 65 72 70 72 | .They.use.a.special.safe.interpr |
39780 | 65 74 65 72 20 74 6f 0a 23 20 70 61 72 73 65 20 54 63 6c 20 73 6f 75 72 63 65 20 66 69 6c 65 73 | eter.to.#.parse.Tcl.source.files |
397a0 | 2c 20 77 72 69 74 69 6e 67 20 6f 75 74 20 69 6e 64 65 78 20 65 6e 74 72 69 65 73 20 61 73 20 22 | ,.writing.out.index.entries.as." |
397c0 | 70 72 6f 63 22 0a 23 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20 65 6e 63 6f 75 6e 74 65 72 65 64 | proc".#.commands.are.encountered |
397e0 | 2e 20 20 54 68 69 73 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 77 6f 6e 27 74 20 77 6f 72 | ...This.implementation.won't.wor |
39800 | 6b 20 69 6e 20 61 0a 23 20 73 61 66 65 20 69 6e 74 65 72 70 72 65 74 65 72 2c 20 73 69 6e 63 65 | k.in.a.#.safe.interpreter,.since |
39820 | 20 61 20 73 61 66 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 63 61 6e 27 74 20 63 72 65 61 74 65 | .a.safe.interpreter.can't.create |
39840 | 20 74 68 65 0a 23 20 73 70 65 63 69 61 6c 20 70 61 72 73 65 72 20 61 6e 64 20 6d 65 73 73 20 77 | .the.#.special.parser.and.mess.w |
39860 | 69 74 68 20 69 74 73 20 63 6f 6d 6d 61 6e 64 73 2e 20 20 0a 0a 69 66 20 7b 5b 69 6e 74 65 72 70 | ith.its.commands.....if.{[interp |
39880 | 20 69 73 73 61 66 65 5d 7d 20 7b 0a 20 20 20 20 72 65 74 75 72 6e 09 3b 23 20 53 74 6f 70 20 73 | .issafe]}.{.....return.;#.Stop.s |
398a0 | 6f 75 72 63 69 6e 67 20 74 68 65 20 66 69 6c 65 20 68 65 72 65 0a 7d 0a 0a 23 20 61 75 74 6f 5f | ourcing.the.file.here.}..#.auto_ |
398c0 | 6d 6b 69 6e 64 65 78 20 2d 2d 0a 23 20 52 65 67 65 6e 65 72 61 74 65 20 61 20 74 63 6c 49 6e 64 | mkindex.--.#.Regenerate.a.tclInd |
398e0 | 65 78 20 66 69 6c 65 20 66 72 6f 6d 20 54 63 6c 20 73 6f 75 72 63 65 20 66 69 6c 65 73 2e 20 20 | ex.file.from.Tcl.source.files... |
39900 | 54 61 6b 65 73 20 61 73 20 61 72 67 75 6d 65 6e 74 0a 23 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 | Takes.as.argument.#.the.name.of. |
39920 | 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 74 63 6c 49 6e | the.directory.in.which.the.tclIn |
39940 | 64 65 78 20 66 69 6c 65 20 69 73 20 74 6f 20 62 65 20 70 6c 61 63 65 64 2c 0a 23 20 66 6f 6c 6c | dex.file.is.to.be.placed,.#.foll |
39960 | 6f 77 65 64 20 62 79 20 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 67 6c 6f 62 20 70 61 74 74 65 | owed.by.any.number.of.glob.patte |
39980 | 72 6e 73 20 74 6f 20 75 73 65 20 69 6e 20 74 68 61 74 20 64 69 72 65 63 74 6f 72 79 20 74 6f 0a | rns.to.use.in.that.directory.to. |
399a0 | 23 20 6c 6f 63 61 74 65 20 61 6c 6c 20 6f 66 20 74 68 65 20 72 65 6c 65 76 61 6e 74 20 66 69 6c | #.locate.all.of.the.relevant.fil |
399c0 | 65 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 20 0a 23 20 64 69 72 20 2d 09 09 4e 61 6d | es..#.#.Arguments:..#.dir.-..Nam |
399e0 | 65 20 6f 66 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 69 6e 20 77 68 69 63 68 20 74 6f 20 63 | e.of.the.directory.in.which.to.c |
39a00 | 72 65 61 74 65 20 61 6e 20 69 6e 64 65 78 2e 0a 23 20 61 72 67 73 20 2d 09 41 6e 79 20 6e 75 6d | reate.an.index..#.args.-.Any.num |
39a20 | 62 65 72 20 6f 66 20 61 64 64 69 74 69 6f 6e 61 6c 20 61 72 67 75 6d 65 6e 74 73 20 67 69 76 69 | ber.of.additional.arguments.givi |
39a40 | 6e 67 20 74 68 65 0a 23 09 09 6e 61 6d 65 73 20 6f 66 20 66 69 6c 65 73 20 77 69 74 68 69 6e 20 | ng.the.#..names.of.files.within. |
39a60 | 64 69 72 2e 20 20 49 66 20 6e 6f 20 61 64 64 69 74 69 6f 6e 61 6c 0a 23 09 09 61 72 65 20 67 69 | dir...If.no.additional.#..are.gi |
39a80 | 76 65 6e 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 20 77 69 6c 6c 20 6c 6f 6f 6b 20 66 6f 72 20 2a | ven.auto_mkindex.will.look.for.* |
39aa0 | 2e 74 63 6c 2e 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 20 7b 64 69 72 20 61 72 | .tcl...proc.auto_mkindex.{dir.ar |
39ac0 | 67 73 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 43 6f 64 65 20 65 72 72 6f 72 | gs}.{.....global.errorCode.error |
39ae0 | 49 6e 66 6f 0a 0a 20 20 20 20 69 66 20 7b 5b 69 6e 74 65 72 70 20 69 73 73 61 66 65 5d 7d 20 7b | Info......if.{[interp.issafe]}.{ |
39b00 | 0a 20 20 20 20 20 20 20 20 65 72 72 6f 72 20 22 63 61 6e 27 74 20 67 65 6e 65 72 61 74 65 20 69 | .........error."can't.generate.i |
39b20 | 6e 64 65 78 20 77 69 74 68 69 6e 20 73 61 66 65 20 69 6e 74 65 72 70 72 65 74 65 72 22 0a 20 20 | ndex.within.safe.interpreter"... |
39b40 | 20 20 7d 0a 0a 20 20 20 20 73 65 74 20 6f 6c 64 44 69 72 20 5b 70 77 64 5d 0a 20 20 20 20 63 64 | ..}......set.oldDir.[pwd].....cd |
39b60 | 20 24 64 69 72 0a 20 20 20 20 73 65 74 20 64 69 72 20 5b 70 77 64 5d 0a 0a 20 20 20 20 61 70 70 | .$dir.....set.dir.[pwd]......app |
39b80 | 65 6e 64 20 69 6e 64 65 78 20 22 23 20 54 63 6c 20 61 75 74 6f 6c 6f 61 64 20 69 6e 64 65 78 20 | end.index."#.Tcl.autoload.index. |
39ba0 | 66 69 6c 65 2c 20 76 65 72 73 69 6f 6e 20 32 2e 30 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 | file,.version.2.0\n".....append. |
39bc0 | 69 6e 64 65 78 20 22 23 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 | index."#.This.file.is.generated. |
39be0 | 62 79 20 74 68 65 20 5c 22 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5c 22 20 63 6f 6d 6d 61 6e 64 5c | by.the.\"auto_mkindex\".command\ |
39c00 | 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 61 6e 64 20 73 6f 75 72 63 | n".....append.index."#.and.sourc |
39c20 | 65 64 20 74 6f 20 73 65 74 20 75 70 20 69 6e 64 65 78 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f | ed.to.set.up.indexing.informatio |
39c40 | 6e 20 66 6f 72 20 6f 6e 65 20 6f 72 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 | n.for.one.or\n".....append.index |
39c60 | 20 22 23 20 6d 6f 72 65 20 63 6f 6d 6d 61 6e 64 73 2e 20 20 54 79 70 69 63 61 6c 6c 79 20 65 61 | ."#.more.commands...Typically.ea |
39c80 | 63 68 20 6c 69 6e 65 20 69 73 20 61 20 63 6f 6d 6d 61 6e 64 20 74 68 61 74 5c 6e 22 0a 20 20 20 | ch.line.is.a.command.that\n".... |
39ca0 | 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 73 65 74 73 20 61 6e 20 65 6c 65 6d 65 6e 74 | .append.index."#.sets.an.element |
39cc0 | 20 69 6e 20 74 68 65 20 61 75 74 6f 5f 69 6e 64 65 78 20 61 72 72 61 79 2c 20 77 68 65 72 65 20 | .in.the.auto_index.array,.where. |
39ce0 | 74 68 65 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 65 6c 65 6d 65 | the\n".....append.index."#.eleme |
39d00 | 6e 74 20 6e 61 6d 65 20 69 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 20 63 6f 6d 6d 61 6e 64 | nt.name.is.the.name.of.a.command |
39d20 | 20 61 6e 64 20 74 68 65 20 76 61 6c 75 65 20 69 73 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 | .and.the.value.is\n".....append. |
39d40 | 69 6e 64 65 78 20 22 23 20 61 20 73 63 72 69 70 74 20 74 68 61 74 20 6c 6f 61 64 73 20 74 68 65 | index."#.a.script.that.loads.the |
39d60 | 20 63 6f 6d 6d 61 6e 64 2e 5c 6e 5c 6e 22 0a 20 20 20 20 69 66 20 7b 24 61 72 67 73 20 3d 3d 20 | .command.\n\n".....if.{$args.==. |
39d80 | 22 22 7d 20 7b 0a 09 73 65 74 20 61 72 67 73 20 2a 2e 74 63 6c 0a 20 20 20 20 7d 0a 0a 20 20 20 | ""}.{..set.args.*.tcl.....}..... |
39da0 | 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 69 6e 69 74 0a 20 20 20 20 66 | .auto_mkindex_parser::init.....f |
39dc0 | 6f 72 65 61 63 68 20 66 69 6c 65 20 5b 65 76 61 6c 20 67 6c 6f 62 20 24 61 72 67 73 5d 20 7b 0a | oreach.file.[eval.glob.$args].{. |
39de0 | 20 20 20 20 20 20 20 20 69 66 20 7b 5b 63 61 74 63 68 20 7b 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 | ........if.{[catch.{auto_mkindex |
39e00 | 5f 70 61 72 73 65 72 3a 3a 6d 6b 69 6e 64 65 78 20 24 66 69 6c 65 7d 20 6d 73 67 5d 20 3d 3d 20 | _parser::mkindex.$file}.msg].==. |
39e20 | 30 7d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 24 6d | 0}.{.............append.index.$m |
39e40 | 73 67 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | sg.........}.else.{............. |
39e60 | 73 65 74 20 63 6f 64 65 20 24 65 72 72 6f 72 43 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 | set.code.$errorCode............. |
39e80 | 73 65 74 20 69 6e 66 6f 20 24 65 72 72 6f 72 49 6e 66 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 | set.info.$errorInfo............. |
39ea0 | 63 64 20 24 6f 6c 64 44 69 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 72 72 6f 72 20 24 6d 73 | cd.$oldDir.............error.$ms |
39ec0 | 67 20 24 69 6e 66 6f 20 24 63 6f 64 65 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 | g.$info.$code.........}.....}... |
39ee0 | 20 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 63 6c 65 61 6e 75 70 0a 0a | ..auto_mkindex_parser::cleanup.. |
39f00 | 20 20 20 20 73 65 74 20 66 69 64 20 5b 6f 70 65 6e 20 22 74 63 6c 49 6e 64 65 78 22 20 77 5d 0a | ....set.fid.[open."tclIndex".w]. |
39f20 | 20 20 20 20 70 75 74 73 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 24 66 69 64 20 24 69 6e 64 65 78 0a | ....puts.-nonewline.$fid.$index. |
39f40 | 20 20 20 20 63 6c 6f 73 65 20 24 66 69 64 0a 20 20 20 20 63 64 20 24 6f 6c 64 44 69 72 0a 7d 0a | ....close.$fid.....cd.$oldDir.}. |
39f60 | 0a 23 20 4f 72 69 67 69 6e 61 6c 20 76 65 72 73 69 6f 6e 20 6f 66 20 61 75 74 6f 5f 6d 6b 69 6e | .#.Original.version.of.auto_mkin |
39f80 | 64 65 78 20 74 68 61 74 20 6a 75 73 74 20 73 65 61 72 63 68 65 73 20 74 68 65 20 73 6f 75 72 63 | dex.that.just.searches.the.sourc |
39fa0 | 65 0a 23 20 63 6f 64 65 20 66 6f 72 20 22 70 72 6f 63 22 20 61 74 20 74 68 65 20 62 65 67 69 6e | e.#.code.for."proc".at.the.begin |
39fc0 | 6e 69 6e 67 20 6f 66 20 74 68 65 20 6c 69 6e 65 2e 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 6d 6b 69 | ning.of.the.line...proc.auto_mki |
39fe0 | 6e 64 65 78 5f 6f 6c 64 20 7b 64 69 72 20 61 72 67 73 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c | ndex_old.{dir.args}.{.....global |
3a000 | 20 65 72 72 6f 72 43 6f 64 65 20 65 72 72 6f 72 49 6e 66 6f 0a 20 20 20 20 73 65 74 20 6f 6c 64 | .errorCode.errorInfo.....set.old |
3a020 | 44 69 72 20 5b 70 77 64 5d 0a 20 20 20 20 63 64 20 24 64 69 72 0a 20 20 20 20 73 65 74 20 64 69 | Dir.[pwd].....cd.$dir.....set.di |
3a040 | 72 20 5b 70 77 64 5d 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 54 63 6c 20 | r.[pwd].....append.index."#.Tcl. |
3a060 | 61 75 74 6f 6c 6f 61 64 20 69 6e 64 65 78 20 66 69 6c 65 2c 20 76 65 72 73 69 6f 6e 20 32 2e 30 | autoload.index.file,.version.2.0 |
3a080 | 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 54 68 69 73 20 66 69 6c | \n".....append.index."#.This.fil |
3a0a0 | 65 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 74 68 65 20 5c 22 61 75 74 6f 5f 6d 6b 69 | e.is.generated.by.the.\"auto_mki |
3a0c0 | 6e 64 65 78 5c 22 20 63 6f 6d 6d 61 6e 64 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 | ndex\".command\n".....append.ind |
3a0e0 | 65 78 20 22 23 20 61 6e 64 20 73 6f 75 72 63 65 64 20 74 6f 20 73 65 74 20 75 70 20 69 6e 64 65 | ex."#.and.sourced.to.set.up.inde |
3a100 | 78 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 6f 72 20 6f 6e 65 20 6f 72 5c 6e 22 0a 20 | xing.information.for.one.or\n".. |
3a120 | 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 6d 6f 72 65 20 63 6f 6d 6d 61 6e 64 73 | ...append.index."#.more.commands |
3a140 | 2e 20 20 54 79 70 69 63 61 6c 6c 79 20 65 61 63 68 20 6c 69 6e 65 20 69 73 20 61 20 63 6f 6d 6d | ...Typically.each.line.is.a.comm |
3a160 | 61 6e 64 20 74 68 61 74 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 | and.that\n".....append.index."#. |
3a180 | 73 65 74 73 20 61 6e 20 65 6c 65 6d 65 6e 74 20 69 6e 20 74 68 65 20 61 75 74 6f 5f 69 6e 64 65 | sets.an.element.in.the.auto_inde |
3a1a0 | 78 20 61 72 72 61 79 2c 20 77 68 65 72 65 20 74 68 65 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 | x.array,.where.the\n".....append |
3a1c0 | 20 69 6e 64 65 78 20 22 23 20 65 6c 65 6d 65 6e 74 20 6e 61 6d 65 20 69 73 20 74 68 65 20 6e 61 | .index."#.element.name.is.the.na |
3a1e0 | 6d 65 20 6f 66 20 61 20 63 6f 6d 6d 61 6e 64 20 61 6e 64 20 74 68 65 20 76 61 6c 75 65 20 69 73 | me.of.a.command.and.the.value.is |
3a200 | 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 61 20 73 63 72 69 70 74 | \n".....append.index."#.a.script |
3a220 | 20 74 68 61 74 20 6c 6f 61 64 73 20 74 68 65 20 63 6f 6d 6d 61 6e 64 2e 5c 6e 5c 6e 22 0a 20 20 | .that.loads.the.command.\n\n"... |
3a240 | 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 61 72 67 73 20 22 22 5d 7d 20 7b | ..if.{[string.equal.$args.""]}.{ |
3a260 | 0a 09 73 65 74 20 61 72 67 73 20 2a 2e 74 63 6c 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 65 61 | ..set.args.*.tcl.....}.....forea |
3a280 | 63 68 20 66 69 6c 65 20 5b 65 76 61 6c 20 67 6c 6f 62 20 24 61 72 67 73 5d 20 7b 0a 09 73 65 74 | ch.file.[eval.glob.$args].{..set |
3a2a0 | 20 66 20 22 22 0a 09 73 65 74 20 65 72 72 6f 72 20 5b 63 61 74 63 68 20 7b 0a 09 20 20 20 20 73 | .f.""..set.error.[catch.{......s |
3a2c0 | 65 74 20 66 20 5b 6f 70 65 6e 20 24 66 69 6c 65 5d 0a 09 20 20 20 20 77 68 69 6c 65 20 7b 5b 67 | et.f.[open.$file]......while.{[g |
3a2e0 | 65 74 73 20 24 66 20 6c 69 6e 65 5d 20 3e 3d 20 30 7d 20 7b 0a 09 09 69 66 20 7b 5b 72 65 67 65 | ets.$f.line].>=.0}.{...if.{[rege |
3a300 | 78 70 20 7b 5e 70 72 6f 63 5b 20 09 5d 2b 28 5b 5e 20 09 5d 2a 29 7d 20 24 6c 69 6e 65 20 6d 61 | xp.{^proc[..]+([^..]*)}.$line.ma |
3a320 | 74 63 68 20 70 72 6f 63 4e 61 6d 65 5d 7d 20 7b 0a 09 09 20 20 20 20 73 65 74 20 70 72 6f 63 4e | tch.procName]}.{.......set.procN |
3a340 | 61 6d 65 20 5b 6c 69 6e 64 65 78 20 5b 61 75 74 6f 5f 71 75 61 6c 69 66 79 20 24 70 72 6f 63 4e | ame.[lindex.[auto_qualify.$procN |
3a360 | 61 6d 65 20 22 3a 3a 22 5d 20 30 5d 0a 09 09 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 | ame."::"].0].......append.index. |
3a380 | 22 73 65 74 20 5b 6c 69 73 74 20 61 75 74 6f 5f 69 6e 64 65 78 28 24 70 72 6f 63 4e 61 6d 65 29 | "set.[list.auto_index($procName) |
3a3a0 | 5d 22 0a 09 09 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 20 5c 5b 6c 69 73 74 20 73 | ]".......append.index.".\[list.s |
3a3c0 | 6f 75 72 63 65 20 5c 5b 66 69 6c 65 20 6a 6f 69 6e 20 5c 24 64 69 72 20 5b 6c 69 73 74 20 24 66 | ource.\[file.join.\$dir.[list.$f |
3a3e0 | 69 6c 65 5d 5c 5d 5c 5d 5c 6e 22 0a 09 09 7d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 63 6c 6f 73 | ile]\]\]\n"...}......}......clos |
3a400 | 65 20 24 66 0a 09 7d 20 6d 73 67 5d 0a 09 69 66 20 7b 24 65 72 72 6f 72 7d 20 7b 0a 09 20 20 20 | e.$f..}.msg]..if.{$error}.{..... |
3a420 | 20 73 65 74 20 63 6f 64 65 20 24 65 72 72 6f 72 43 6f 64 65 0a 09 20 20 20 20 73 65 74 20 69 6e | .set.code.$errorCode......set.in |
3a440 | 66 6f 20 24 65 72 72 6f 72 49 6e 66 6f 0a 09 20 20 20 20 63 61 74 63 68 20 7b 63 6c 6f 73 65 20 | fo.$errorInfo......catch.{close. |
3a460 | 24 66 7d 0a 09 20 20 20 20 63 64 20 24 6f 6c 64 44 69 72 0a 09 20 20 20 20 65 72 72 6f 72 20 24 | $f}......cd.$oldDir......error.$ |
3a480 | 6d 73 67 20 24 69 6e 66 6f 20 24 63 6f 64 65 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 | msg.$info.$code..}.....}.....set |
3a4a0 | 20 66 20 22 22 0a 20 20 20 20 73 65 74 20 65 72 72 6f 72 20 5b 63 61 74 63 68 20 7b 0a 09 73 65 | .f."".....set.error.[catch.{..se |
3a4c0 | 74 20 66 20 5b 6f 70 65 6e 20 74 63 6c 49 6e 64 65 78 20 77 5d 0a 09 70 75 74 73 20 2d 6e 6f 6e | t.f.[open.tclIndex.w]..puts.-non |
3a4e0 | 65 77 6c 69 6e 65 20 24 66 20 24 69 6e 64 65 78 0a 09 63 6c 6f 73 65 20 24 66 0a 09 63 64 20 24 | ewline.$f.$index..close.$f..cd.$ |
3a500 | 6f 6c 64 44 69 72 0a 20 20 20 20 7d 20 6d 73 67 5d 0a 20 20 20 20 69 66 20 7b 24 65 72 72 6f 72 | oldDir.....}.msg].....if.{$error |
3a520 | 7d 20 7b 0a 09 73 65 74 20 63 6f 64 65 20 24 65 72 72 6f 72 43 6f 64 65 0a 09 73 65 74 20 69 6e | }.{..set.code.$errorCode..set.in |
3a540 | 66 6f 20 24 65 72 72 6f 72 49 6e 66 6f 0a 09 63 61 74 63 68 20 7b 63 6c 6f 73 65 20 24 66 7d 0a | fo.$errorInfo..catch.{close.$f}. |
3a560 | 09 63 64 20 24 6f 6c 64 44 69 72 0a 09 65 72 72 6f 72 20 24 6d 73 67 20 24 69 6e 66 6f 20 24 63 | .cd.$oldDir..error.$msg.$info.$c |
3a580 | 6f 64 65 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 43 72 65 61 74 65 20 61 20 73 61 66 65 20 69 6e 74 | ode.....}.}..#.Create.a.safe.int |
3a5a0 | 65 72 70 72 65 74 65 72 20 74 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 70 61 72 | erpreter.that.can.be.used.to.par |
3a5c0 | 73 65 20 54 63 6c 20 73 6f 75 72 63 65 20 66 69 6c 65 73 0a 23 20 67 65 6e 65 72 61 74 65 20 61 | se.Tcl.source.files.#.generate.a |
3a5e0 | 20 74 63 6c 49 6e 64 65 78 20 66 69 6c 65 20 66 6f 72 20 61 75 74 6f 6c 6f 61 64 69 6e 67 2e 20 | .tclIndex.file.for.autoloading.. |
3a600 | 20 54 68 69 73 20 69 6e 74 65 72 70 20 63 6f 6e 74 61 69 6e 73 0a 23 20 63 6f 6d 6d 61 6e 64 73 | .This.interp.contains.#.commands |
3a620 | 20 66 6f 72 20 74 68 69 6e 67 73 20 74 68 61 74 20 6e 65 65 64 20 69 6e 64 65 78 20 65 6e 74 72 | .for.things.that.need.index.entr |
3a640 | 69 65 73 2e 20 20 45 61 63 68 20 74 69 6d 65 20 61 20 63 6f 6d 6d 61 6e 64 0a 23 20 69 73 20 65 | ies...Each.time.a.command.#.is.e |
3a660 | 78 65 63 75 74 65 64 2c 20 69 74 20 77 72 69 74 65 73 20 61 6e 20 65 6e 74 72 79 20 6f 75 74 20 | xecuted,.it.writes.an.entry.out. |
3a680 | 74 6f 20 74 68 65 20 69 6e 64 65 78 20 66 69 6c 65 2e 0a 0a 6e 61 6d 65 73 70 61 63 65 20 65 76 | to.the.index.file...namespace.ev |
3a6a0 | 61 6c 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 20 7b 0a 20 20 20 20 76 61 72 | al.auto_mkindex_parser.{.....var |
3a6c0 | 69 61 62 6c 65 20 70 61 72 73 65 72 20 22 22 20 20 20 20 20 20 20 20 20 20 3b 23 20 70 61 72 73 | iable.parser.""..........;#.pars |
3a6e0 | 65 72 20 75 73 65 64 20 74 6f 20 62 75 69 6c 64 20 69 6e 64 65 78 0a 20 20 20 20 76 61 72 69 61 | er.used.to.build.index.....varia |
3a700 | 62 6c 65 20 69 6e 64 65 78 20 22 22 20 20 20 20 20 20 20 20 20 20 20 3b 23 20 6d 61 69 6e 74 61 | ble.index.""...........;#.mainta |
3a720 | 69 6e 73 20 69 6e 64 65 78 20 61 73 20 69 74 20 69 73 20 62 75 69 6c 74 0a 20 20 20 20 76 61 72 | ins.index.as.it.is.built.....var |
3a740 | 69 61 62 6c 65 20 73 63 72 69 70 74 46 69 6c 65 20 22 22 20 20 20 20 20 20 3b 23 20 6e 61 6d 65 | iable.scriptFile.""......;#.name |
3a760 | 20 6f 66 20 66 69 6c 65 20 62 65 69 6e 67 20 70 72 6f 63 65 73 73 65 64 0a 20 20 20 20 76 61 72 | .of.file.being.processed.....var |
3a780 | 69 61 62 6c 65 20 63 6f 6e 74 65 78 74 53 74 61 63 6b 20 22 22 20 20 20 20 3b 23 20 73 74 61 63 | iable.contextStack.""....;#.stac |
3a7a0 | 6b 20 6f 66 20 6e 61 6d 65 73 70 61 63 65 20 73 63 6f 70 65 73 0a 20 20 20 20 76 61 72 69 61 62 | k.of.namespace.scopes.....variab |
3a7c0 | 6c 65 20 69 6d 70 6f 72 74 73 20 22 22 20 20 20 20 20 20 20 20 20 3b 23 20 6b 65 65 70 73 20 74 | le.imports."".........;#.keeps.t |
3a7e0 | 72 61 63 6b 20 6f 66 20 61 6c 6c 20 69 6d 70 6f 72 74 65 64 20 63 6d 64 73 0a 20 20 20 20 76 61 | rack.of.all.imported.cmds.....va |
3a800 | 72 69 61 62 6c 65 20 69 6e 69 74 43 6f 6d 6d 61 6e 64 73 20 22 22 20 20 20 20 3b 23 20 6c 69 73 | riable.initCommands.""....;#.lis |
3a820 | 74 20 6f 66 20 63 6f 6d 6d 61 6e 64 73 20 74 68 61 74 20 63 72 65 61 74 65 20 61 6c 69 61 73 65 | t.of.commands.that.create.aliase |
3a840 | 73 0a 0a 20 20 20 20 70 72 6f 63 20 69 6e 69 74 20 7b 7d 20 7b 0a 09 76 61 72 69 61 62 6c 65 20 | s......proc.init.{}.{..variable. |
3a860 | 70 61 72 73 65 72 0a 09 76 61 72 69 61 62 6c 65 20 69 6e 69 74 43 6f 6d 6d 61 6e 64 73 0a 0a 09 | parser..variable.initCommands... |
3a880 | 69 66 20 7b 21 5b 69 6e 74 65 72 70 20 69 73 73 61 66 65 5d 7d 20 7b 0a 09 20 20 20 20 73 65 74 | if.{![interp.issafe]}.{......set |
3a8a0 | 20 70 61 72 73 65 72 20 5b 69 6e 74 65 72 70 20 63 72 65 61 74 65 20 2d 73 61 66 65 5d 0a 09 20 | .parser.[interp.create.-safe]... |
3a8c0 | 20 20 20 24 70 61 72 73 65 72 20 68 69 64 65 20 69 6e 66 6f 0a 09 20 20 20 20 24 70 61 72 73 65 | ...$parser.hide.info......$parse |
3a8e0 | 72 20 68 69 64 65 20 72 65 6e 61 6d 65 0a 09 20 20 20 20 24 70 61 72 73 65 72 20 68 69 64 65 20 | r.hide.rename......$parser.hide. |
3a900 | 70 72 6f 63 0a 09 20 20 20 20 24 70 61 72 73 65 72 20 68 69 64 65 20 6e 61 6d 65 73 70 61 63 65 | proc......$parser.hide.namespace |
3a920 | 0a 09 20 20 20 20 24 70 61 72 73 65 72 20 68 69 64 65 20 65 76 61 6c 0a 09 20 20 20 20 24 70 61 | ......$parser.hide.eval......$pa |
3a940 | 72 73 65 72 20 68 69 64 65 20 70 75 74 73 0a 09 20 20 20 20 24 70 61 72 73 65 72 20 69 6e 76 6f | rser.hide.puts......$parser.invo |
3a960 | 6b 65 68 69 64 64 65 6e 20 6e 61 6d 65 73 70 61 63 65 20 64 65 6c 65 74 65 20 3a 3a 0a 09 20 20 | kehidden.namespace.delete.::.... |
3a980 | 20 20 24 70 61 72 73 65 72 20 69 6e 76 6f 6b 65 68 69 64 64 65 6e 20 70 72 6f 63 20 75 6e 6b 6e | ..$parser.invokehidden.proc.unkn |
3a9a0 | 6f 77 6e 20 7b 61 72 67 73 7d 20 7b 7d 0a 0a 09 20 20 20 20 23 20 57 65 27 6c 6c 20 6e 65 65 64 | own.{args}.{}.......#.We'll.need |
3a9c0 | 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 20 22 6e 61 6d 65 73 70 61 63 65 22 20 63 6f 6d 6d 61 | .access.to.the."namespace".comma |
3a9e0 | 6e 64 20 77 69 74 68 69 6e 20 74 68 65 0a 09 20 20 20 20 23 20 69 6e 74 65 72 70 2e 20 20 50 75 | nd.within.the......#.interp...Pu |
3aa00 | 74 20 69 74 20 62 61 63 6b 2c 20 62 75 74 20 6d 6f 76 65 20 69 74 20 6f 75 74 20 6f 66 20 74 68 | t.it.back,.but.move.it.out.of.th |
3aa20 | 65 20 77 61 79 2e 0a 0a 09 20 20 20 20 24 70 61 72 73 65 72 20 65 78 70 6f 73 65 20 6e 61 6d 65 | e.way........$parser.expose.name |
3aa40 | 73 70 61 63 65 0a 09 20 20 20 20 24 70 61 72 73 65 72 20 69 6e 76 6f 6b 65 68 69 64 64 65 6e 20 | space......$parser.invokehidden. |
3aa60 | 72 65 6e 61 6d 65 20 6e 61 6d 65 73 70 61 63 65 20 5f 25 40 6e 61 6d 65 73 70 61 63 65 0a 09 20 | rename.namespace._%@namespace... |
3aa80 | 20 20 20 24 70 61 72 73 65 72 20 65 78 70 6f 73 65 20 65 76 61 6c 0a 09 20 20 20 20 24 70 61 72 | ...$parser.expose.eval......$par |
3aaa0 | 73 65 72 20 69 6e 76 6f 6b 65 68 69 64 64 65 6e 20 72 65 6e 61 6d 65 20 65 76 61 6c 20 5f 25 40 | ser.invokehidden.rename.eval._%@ |
3aac0 | 65 76 61 6c 0a 0a 09 20 20 20 20 23 20 49 6e 73 74 61 6c 6c 20 61 6c 6c 20 74 68 65 20 72 65 67 | eval.......#.Install.all.the.reg |
3aae0 | 69 73 74 65 72 65 64 20 70 73 75 65 64 6f 2d 63 6f 6d 6d 61 6e 64 20 69 6d 70 6c 65 6d 65 6e 74 | istered.psuedo-command.implement |
3ab00 | 61 74 69 6f 6e 73 0a 0a 09 20 20 20 20 66 6f 72 65 61 63 68 20 63 6d 64 20 24 69 6e 69 74 43 6f | ations.......foreach.cmd.$initCo |
3ab20 | 6d 6d 61 6e 64 73 20 7b 0a 09 09 65 76 61 6c 20 24 63 6d 64 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 | mmands.{...eval.$cmd......}..}.. |
3ab40 | 20 20 20 7d 0a 20 20 20 20 70 72 6f 63 20 63 6c 65 61 6e 75 70 20 7b 7d 20 7b 0a 09 76 61 72 69 | ...}.....proc.cleanup.{}.{..vari |
3ab60 | 61 62 6c 65 20 70 61 72 73 65 72 0a 09 69 6e 74 65 72 70 20 64 65 6c 65 74 65 20 24 70 61 72 73 | able.parser..interp.delete.$pars |
3ab80 | 65 72 0a 09 75 6e 73 65 74 20 70 61 72 73 65 72 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 61 75 74 6f | er..unset.parser.....}.}..#.auto |
3aba0 | 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 6d 6b 69 6e 64 65 78 20 2d 2d 0a 23 0a 23 20 | _mkindex_parser::mkindex.--.#.#. |
3abc0 | 55 73 65 64 20 62 79 20 74 68 65 20 22 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 22 20 63 6f 6d 6d 61 | Used.by.the."auto_mkindex".comma |
3abe0 | 6e 64 20 74 6f 20 63 72 65 61 74 65 20 61 20 22 74 63 6c 49 6e 64 65 78 22 20 66 69 6c 65 20 66 | nd.to.create.a."tclIndex".file.f |
3ac00 | 6f 72 0a 23 20 74 68 65 20 67 69 76 65 6e 20 54 63 6c 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 20 | or.#.the.given.Tcl.source.file.. |
3ac20 | 20 45 78 65 63 75 74 65 73 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 20 74 68 65 20 66 69 | .Executes.the.commands.in.the.fi |
3ac40 | 6c 65 2c 20 61 6e 64 0a 23 20 68 61 6e 64 6c 65 73 20 74 68 69 6e 67 73 20 6c 69 6b 65 20 74 68 | le,.and.#.handles.things.like.th |
3ac60 | 65 20 22 70 72 6f 63 22 20 63 6f 6d 6d 61 6e 64 20 62 79 20 61 64 64 69 6e 67 20 61 6e 20 65 6e | e."proc".command.by.adding.an.en |
3ac80 | 74 72 79 20 66 6f 72 20 74 68 65 0a 23 20 69 6e 64 65 78 20 66 69 6c 65 2e 20 20 52 65 74 75 72 | try.for.the.#.index.file...Retur |
3aca0 | 6e 73 20 61 20 73 74 72 69 6e 67 20 74 68 61 74 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 20 | ns.a.string.that.represents.the. |
3acc0 | 69 6e 64 65 78 20 66 69 6c 65 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 20 0a 23 09 66 69 | index.file..#.#.Arguments:..#.fi |
3ace0 | 6c 65 09 4e 61 6d 65 20 6f 66 20 54 63 6c 20 73 6f 75 72 63 65 20 66 69 6c 65 20 74 6f 20 62 65 | le.Name.of.Tcl.source.file.to.be |
3ad00 | 20 69 6e 64 65 78 65 64 2e 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 | .indexed...proc.auto_mkindex_par |
3ad20 | 73 65 72 3a 3a 6d 6b 69 6e 64 65 78 20 7b 66 69 6c 65 7d 20 7b 0a 20 20 20 20 76 61 72 69 61 62 | ser::mkindex.{file}.{.....variab |
3ad40 | 6c 65 20 70 61 72 73 65 72 0a 20 20 20 20 76 61 72 69 61 62 6c 65 20 69 6e 64 65 78 0a 20 20 20 | le.parser.....variable.index.... |
3ad60 | 20 76 61 72 69 61 62 6c 65 20 73 63 72 69 70 74 46 69 6c 65 0a 20 20 20 20 76 61 72 69 61 62 6c | .variable.scriptFile.....variabl |
3ad80 | 65 20 63 6f 6e 74 65 78 74 53 74 61 63 6b 0a 20 20 20 20 76 61 72 69 61 62 6c 65 20 69 6d 70 6f | e.contextStack.....variable.impo |
3ada0 | 72 74 73 0a 0a 20 20 20 20 73 65 74 20 73 63 72 69 70 74 46 69 6c 65 20 24 66 69 6c 65 0a 0a 20 | rts......set.scriptFile.$file... |
3adc0 | 20 20 20 73 65 74 20 66 69 64 20 5b 6f 70 65 6e 20 24 66 69 6c 65 5d 0a 20 20 20 20 73 65 74 20 | ...set.fid.[open.$file].....set. |
3ade0 | 63 6f 6e 74 65 6e 74 73 20 5b 72 65 61 64 20 24 66 69 64 5d 0a 20 20 20 20 63 6c 6f 73 65 20 24 | contents.[read.$fid].....close.$ |
3ae00 | 66 69 64 0a 0a 20 20 20 20 23 20 54 68 65 72 65 20 69 73 20 6f 6e 65 20 70 72 6f 62 6c 65 6d 20 | fid......#.There.is.one.problem. |
3ae20 | 77 69 74 68 20 73 6f 75 72 63 69 6e 67 20 66 69 6c 65 73 20 69 6e 74 6f 20 74 68 65 20 73 61 66 | with.sourcing.files.into.the.saf |
3ae40 | 65 0a 20 20 20 20 23 20 69 6e 74 65 72 70 72 65 74 65 72 3a 20 20 72 65 66 65 72 65 6e 63 65 73 | e.....#.interpreter:..references |
3ae60 | 20 6c 69 6b 65 20 22 24 78 22 20 77 69 6c 6c 20 66 61 69 6c 20 73 69 6e 63 65 20 63 6f 64 65 20 | .like."$x".will.fail.since.code. |
3ae80 | 69 73 20 6e 6f 74 0a 20 20 20 20 23 20 72 65 61 6c 6c 79 20 62 65 69 6e 67 20 65 78 65 63 75 74 | is.not.....#.really.being.execut |
3aea0 | 65 64 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73 20 64 6f 20 6e 6f 74 20 72 65 61 6c 6c 79 20 65 | ed.and.variables.do.not.really.e |
3aec0 | 78 69 73 74 2e 0a 20 20 20 20 23 20 54 6f 20 61 76 6f 69 64 20 74 68 69 73 2c 20 77 65 20 72 65 | xist......#.To.avoid.this,.we.re |
3aee0 | 70 6c 61 63 65 20 61 6c 6c 20 24 20 77 69 74 68 20 5c 30 20 28 6c 69 74 65 72 61 6c 6c 79 2c 20 | place.all.$.with.\0.(literally,. |
3af00 | 74 68 65 20 6e 75 6c 6c 20 63 68 61 72 29 0a 20 20 20 20 23 20 6c 61 74 65 72 2c 20 77 68 65 6e | the.null.char).....#.later,.when |
3af20 | 20 67 65 74 74 69 6e 67 20 70 72 6f 63 20 6e 61 6d 65 73 20 77 65 20 77 69 6c 6c 20 68 61 76 65 | .getting.proc.names.we.will.have |
3af40 | 20 74 6f 20 72 65 76 65 72 73 65 20 74 68 69 73 20 72 65 70 6c 61 63 65 6d 65 6e 74 2c 0a 20 20 | .to.reverse.this.replacement,... |
3af60 | 20 20 23 20 69 6e 20 63 61 73 65 20 74 68 65 72 65 20 77 65 72 65 20 61 6e 79 20 24 20 69 6e 20 | ..#.in.case.there.were.any.$.in. |
3af80 | 74 68 65 20 70 72 6f 63 20 6e 61 6d 65 2e 20 20 54 68 69 73 20 77 69 6c 6c 20 63 61 75 73 65 20 | the.proc.name...This.will.cause. |
3afa0 | 61 20 70 72 6f 62 6c 65 6d 0a 20 20 20 20 23 20 69 66 20 73 6f 6d 65 62 6f 64 79 20 61 63 74 75 | a.problem.....#.if.somebody.actu |
3afc0 | 61 6c 6c 79 20 74 72 69 65 73 20 74 6f 20 68 61 76 65 20 61 20 5c 30 20 69 6e 20 74 68 65 69 72 | ally.tries.to.have.a.\0.in.their |
3afe0 | 20 70 72 6f 63 20 6e 61 6d 65 2e 20 20 54 6f 6f 20 62 61 64 0a 20 20 20 20 23 20 66 6f 72 20 74 | .proc.name...Too.bad.....#.for.t |
3b000 | 68 65 6d 2e 0a 20 20 20 20 72 65 67 73 75 62 20 2d 61 6c 6c 20 7b 5c 24 7d 20 24 63 6f 6e 74 65 | hem......regsub.-all.{\$}.$conte |
3b020 | 6e 74 73 20 22 5c 30 22 20 63 6f 6e 74 65 6e 74 73 0a 20 20 20 20 0a 20 20 20 20 73 65 74 20 69 | nts."\0".contents..........set.i |
3b040 | 6e 64 65 78 20 22 22 0a 20 20 20 20 73 65 74 20 63 6f 6e 74 65 78 74 53 74 61 63 6b 20 22 22 0a | ndex."".....set.contextStack."". |
3b060 | 20 20 20 20 73 65 74 20 69 6d 70 6f 72 74 73 20 22 22 0a 0a 20 20 20 20 24 70 61 72 73 65 72 20 | ....set.imports.""......$parser. |
3b080 | 65 76 61 6c 20 24 63 6f 6e 74 65 6e 74 73 0a 0a 20 20 20 20 66 6f 72 65 61 63 68 20 6e 61 6d 65 | eval.$contents......foreach.name |
3b0a0 | 20 24 69 6d 70 6f 72 74 73 20 7b 0a 20 20 20 20 20 20 20 20 63 61 74 63 68 20 7b 24 70 61 72 73 | .$imports.{.........catch.{$pars |
3b0c0 | 65 72 20 65 76 61 6c 20 5b 6c 69 73 74 20 5f 25 40 6e 61 6d 65 73 70 61 63 65 20 66 6f 72 67 65 | er.eval.[list._%@namespace.forge |
3b0e0 | 74 20 24 6e 61 6d 65 5d 7d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 69 6e 64 65 | t.$name]}.....}.....return.$inde |
3b100 | 78 0a 7d 0a 0a 23 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 68 6f 6f 6b | x.}..#.auto_mkindex_parser::hook |
3b120 | 20 63 6f 6d 6d 61 6e 64 0a 23 0a 23 20 52 65 67 69 73 74 65 72 73 20 61 20 54 63 6c 20 63 6f 6d | .command.#.#.Registers.a.Tcl.com |
3b140 | 6d 61 6e 64 20 74 6f 20 65 76 61 6c 75 61 74 65 20 77 68 65 6e 20 69 6e 69 74 69 61 6c 69 7a 69 | mand.to.evaluate.when.initializi |
3b160 | 6e 67 20 74 68 65 0a 23 20 73 6c 61 76 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 75 73 65 64 20 | ng.the.#.slave.interpreter.used. |
3b180 | 62 79 20 74 68 65 20 6d 6b 69 6e 64 65 78 20 70 61 72 73 65 72 2e 0a 23 20 54 68 65 20 63 6f 6d | by.the.mkindex.parser..#.The.com |
3b1a0 | 6d 61 6e 64 20 69 73 20 65 76 61 6c 75 61 74 65 64 20 69 6e 20 74 68 65 20 6d 61 73 74 65 72 20 | mand.is.evaluated.in.the.master. |
3b1c0 | 69 6e 74 65 72 70 72 65 74 65 72 2c 20 61 6e 64 20 63 61 6e 0a 23 20 75 73 65 20 74 68 65 20 76 | interpreter,.and.can.#.use.the.v |
3b1e0 | 61 72 69 61 62 6c 65 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 70 61 72 | ariable.auto_mkindex_parser::par |
3b200 | 73 65 72 20 74 6f 20 67 65 74 20 74 6f 20 74 68 65 20 73 6c 61 76 65 0a 0a 70 72 6f 63 20 61 75 | ser.to.get.to.the.slave..proc.au |
3b220 | 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 68 6f 6f 6b 20 7b 63 6d 64 7d 20 7b 0a | to_mkindex_parser::hook.{cmd}.{. |
3b240 | 20 20 20 20 76 61 72 69 61 62 6c 65 20 69 6e 69 74 43 6f 6d 6d 61 6e 64 73 0a 0a 20 20 20 20 6c | ....variable.initCommands......l |
3b260 | 61 70 70 65 6e 64 20 69 6e 69 74 43 6f 6d 6d 61 6e 64 73 20 24 63 6d 64 0a 7d 0a 0a 23 20 61 75 | append.initCommands.$cmd.}..#.au |
3b280 | 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 73 6c 61 76 65 68 6f 6f 6b 20 63 6f 6d | to_mkindex_parser::slavehook.com |
3b2a0 | 6d 61 6e 64 0a 23 0a 23 20 52 65 67 69 73 74 65 72 73 20 61 20 54 63 6c 20 63 6f 6d 6d 61 6e 64 | mand.#.#.Registers.a.Tcl.command |
3b2c0 | 20 74 6f 20 65 76 61 6c 75 61 74 65 20 77 68 65 6e 20 69 6e 69 74 69 61 6c 69 7a 69 6e 67 20 74 | .to.evaluate.when.initializing.t |
3b2e0 | 68 65 0a 23 20 73 6c 61 76 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 75 73 65 64 20 62 79 20 74 | he.#.slave.interpreter.used.by.t |
3b300 | 68 65 20 6d 6b 69 6e 64 65 78 20 70 61 72 73 65 72 2e 0a 23 20 54 68 65 20 63 6f 6d 6d 61 6e 64 | he.mkindex.parser..#.The.command |
3b320 | 20 69 73 20 65 76 61 6c 75 61 74 65 64 20 69 6e 20 74 68 65 20 73 6c 61 76 65 20 69 6e 74 65 72 | .is.evaluated.in.the.slave.inter |
3b340 | 70 72 65 74 65 72 2e 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 | preter...proc.auto_mkindex_parse |
3b360 | 72 3a 3a 73 6c 61 76 65 68 6f 6f 6b 20 7b 63 6d 64 7d 20 7b 0a 20 20 20 20 76 61 72 69 61 62 6c | r::slavehook.{cmd}.{.....variabl |
3b380 | 65 20 69 6e 69 74 43 6f 6d 6d 61 6e 64 73 0a 0a 20 20 20 20 23 20 54 68 65 20 24 70 61 72 73 65 | e.initCommands......#.The.$parse |
3b3a0 | 72 20 76 61 72 69 61 62 6c 65 20 69 73 20 64 65 66 69 6e 65 64 20 74 6f 20 62 65 20 74 68 65 20 | r.variable.is.defined.to.be.the. |
3b3c0 | 6e 61 6d 65 20 6f 66 20 74 68 65 0a 20 20 20 20 23 20 73 6c 61 76 65 20 69 6e 74 65 72 70 72 65 | name.of.the.....#.slave.interpre |
3b3e0 | 74 65 72 20 77 68 65 6e 20 74 68 69 73 20 63 6f 6d 6d 61 6e 64 20 69 73 20 75 73 65 64 20 6c 61 | ter.when.this.command.is.used.la |
3b400 | 74 65 72 2e 0a 0a 20 20 20 20 6c 61 70 70 65 6e 64 20 69 6e 69 74 43 6f 6d 6d 61 6e 64 73 20 22 | ter.......lappend.initCommands." |
3b420 | 5c 24 70 61 72 73 65 72 20 65 76 61 6c 20 5b 6c 69 73 74 20 24 63 6d 64 5d 22 0a 7d 0a 0a 23 20 | \$parser.eval.[list.$cmd]".}..#. |
3b440 | 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 63 6f 6d 6d 61 6e 64 20 2d 2d 0a | auto_mkindex_parser::command.--. |
3b460 | 23 0a 23 20 52 65 67 69 73 74 65 72 73 20 61 20 6e 65 77 20 63 6f 6d 6d 61 6e 64 20 77 69 74 68 | #.#.Registers.a.new.command.with |
3b480 | 20 74 68 65 20 22 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 22 20 69 6e 74 65 72 | .the."auto_mkindex_parser".inter |
3b4a0 | 70 72 65 74 65 72 0a 23 20 74 68 61 74 20 70 61 72 73 65 73 20 54 63 6c 20 66 69 6c 65 73 2e 20 | preter.#.that.parses.Tcl.files.. |
3b4c0 | 20 54 68 65 73 65 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20 66 61 6b 65 20 76 65 72 73 69 6f 6e | .These.commands.are.fake.version |
3b4e0 | 73 20 6f 66 20 74 68 69 6e 67 73 0a 23 20 6c 69 6b 65 20 74 68 65 20 22 70 72 6f 63 22 20 63 6f | s.of.things.#.like.the."proc".co |
3b500 | 6d 6d 61 6e 64 2e 20 20 57 68 65 6e 20 79 6f 75 20 65 78 65 63 75 74 65 20 74 68 65 6d 2c 20 74 | mmand...When.you.execute.them,.t |
3b520 | 68 65 79 20 73 69 6d 70 6c 79 20 77 72 69 74 65 0a 23 20 6f 75 74 20 61 6e 20 65 6e 74 72 79 20 | hey.simply.write.#.out.an.entry. |
3b540 | 74 6f 20 61 20 22 74 63 6c 49 6e 64 65 78 22 20 66 69 6c 65 20 66 6f 72 20 61 75 74 6f 2d 6c 6f | to.a."tclIndex".file.for.auto-lo |
3b560 | 61 64 69 6e 67 2e 0a 23 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 61 6c 6c 6f 77 73 | ading..#.#.This.procedure.allows |
3b580 | 20 65 78 74 65 6e 73 69 6f 6e 73 20 74 6f 20 72 65 67 69 73 74 65 72 20 74 68 65 69 72 20 6f 77 | .extensions.to.register.their.ow |
3b5a0 | 6e 20 63 6f 6d 6d 61 6e 64 73 0a 23 20 77 69 74 68 20 74 68 65 20 61 75 74 6f 5f 6d 6b 69 6e 64 | n.commands.#.with.the.auto_mkind |
3b5c0 | 65 78 20 66 61 63 69 6c 69 74 79 2e 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 61 20 70 61 63 | ex.facility...For.example,.a.pac |
3b5e0 | 6b 61 67 65 20 6c 69 6b 65 0a 23 20 5b 69 6e 63 72 20 54 63 6c 5d 20 6d 69 67 68 74 20 72 65 67 | kage.like.#.[incr.Tcl].might.reg |
3b600 | 69 73 74 65 72 20 61 20 22 63 6c 61 73 73 22 20 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74 20 | ister.a."class".command.so.that. |
3b620 | 63 6c 61 73 73 20 64 65 66 69 6e 69 74 69 6f 6e 73 0a 23 20 63 6f 75 6c 64 20 62 65 20 61 64 64 | class.definitions.#.could.be.add |
3b640 | 65 64 20 74 6f 20 61 20 22 74 63 6c 49 6e 64 65 78 22 20 66 69 6c 65 20 66 6f 72 20 61 75 74 6f | ed.to.a."tclIndex".file.for.auto |
3b660 | 2d 6c 6f 61 64 69 6e 67 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 09 6e 61 6d 65 20 | -loading..#.#.Arguments:.#.name. |
3b680 | 09 4e 61 6d 65 20 6f 66 20 63 6f 6d 6d 61 6e 64 20 72 65 63 6f 67 6e 69 7a 65 64 20 69 6e 20 54 | .Name.of.command.recognized.in.T |
3b6a0 | 63 6c 20 66 69 6c 65 73 2e 0a 23 09 61 72 67 6c 69 73 74 09 41 72 67 75 6d 65 6e 74 20 6c 69 73 | cl.files..#.arglist.Argument.lis |
3b6c0 | 74 20 66 6f 72 20 63 6f 6d 6d 61 6e 64 2e 0a 23 09 62 6f 64 79 20 09 49 6d 70 6c 65 6d 65 6e 74 | t.for.command..#.body..Implement |
3b6e0 | 61 74 69 6f 6e 20 6f 66 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 68 61 6e 64 6c 65 20 69 6e 64 65 78 | ation.of.command.to.handle.index |
3b700 | 69 6e 67 2e 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a | ing...proc.auto_mkindex_parser:: |
3b720 | 63 6f 6d 6d 61 6e 64 20 7b 6e 61 6d 65 20 61 72 67 6c 69 73 74 20 62 6f 64 79 7d 20 7b 0a 20 20 | command.{name.arglist.body}.{... |
3b740 | 20 20 68 6f 6f 6b 20 5b 6c 69 73 74 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 | ..hook.[list.auto_mkindex_parser |
3b760 | 3a 3a 63 6f 6d 6d 61 6e 64 49 6e 69 74 20 24 6e 61 6d 65 20 24 61 72 67 6c 69 73 74 20 24 62 6f | ::commandInit.$name.$arglist.$bo |
3b780 | 64 79 5d 0a 7d 0a 0a 23 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 63 6f | dy].}..#.auto_mkindex_parser::co |
3b7a0 | 6d 6d 61 6e 64 49 6e 69 74 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 64 6f 65 73 20 74 68 65 20 61 | mmandInit.--.#.#.This.does.the.a |
3b7c0 | 63 74 75 61 6c 20 77 6f 72 6b 20 73 65 74 20 75 70 20 62 79 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 | ctual.work.set.up.by.auto_mkinde |
3b7e0 | 78 5f 70 61 72 73 65 72 3a 3a 63 6f 6d 6d 61 6e 64 0a 23 20 54 68 69 73 20 69 73 20 63 61 6c 6c | x_parser::command.#.This.is.call |
3b800 | 65 64 20 77 68 65 6e 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 75 73 65 64 20 62 79 20 | ed.when.the.interpreter.used.by. |
3b820 | 74 68 65 20 70 61 72 73 65 72 20 69 73 20 63 72 65 61 74 65 64 2e 0a 23 0a 23 20 41 72 67 75 6d | the.parser.is.created..#.#.Argum |
3b840 | 65 6e 74 73 3a 0a 23 09 6e 61 6d 65 20 09 4e 61 6d 65 20 6f 66 20 63 6f 6d 6d 61 6e 64 20 72 65 | ents:.#.name..Name.of.command.re |
3b860 | 63 6f 67 6e 69 7a 65 64 20 69 6e 20 54 63 6c 20 66 69 6c 65 73 2e 0a 23 09 61 72 67 6c 69 73 74 | cognized.in.Tcl.files..#.arglist |
3b880 | 09 41 72 67 75 6d 65 6e 74 20 6c 69 73 74 20 66 6f 72 20 63 6f 6d 6d 61 6e 64 2e 0a 23 09 62 6f | .Argument.list.for.command..#.bo |
3b8a0 | 64 79 20 09 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 63 6f 6d 6d 61 6e 64 20 74 6f | dy..Implementation.of.command.to |
3b8c0 | 20 68 61 6e 64 6c 65 20 69 6e 64 65 78 69 6e 67 2e 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 6d 6b 69 | .handle.indexing...proc.auto_mki |
3b8e0 | 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 63 6f 6d 6d 61 6e 64 49 6e 69 74 20 7b 6e 61 6d 65 20 61 | ndex_parser::commandInit.{name.a |
3b900 | 72 67 6c 69 73 74 20 62 6f 64 79 7d 20 7b 0a 20 20 20 20 76 61 72 69 61 62 6c 65 20 70 61 72 73 | rglist.body}.{.....variable.pars |
3b920 | 65 72 0a 0a 20 20 20 20 73 65 74 20 6e 73 20 5b 6e 61 6d 65 73 70 61 63 65 20 71 75 61 6c 69 66 | er......set.ns.[namespace.qualif |
3b940 | 69 65 72 73 20 24 6e 61 6d 65 5d 0a 20 20 20 20 73 65 74 20 74 61 69 6c 20 5b 6e 61 6d 65 73 70 | iers.$name].....set.tail.[namesp |
3b960 | 61 63 65 20 74 61 69 6c 20 24 6e 61 6d 65 5d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 | ace.tail.$name].....if.{[string. |
3b980 | 65 71 75 61 6c 20 24 6e 73 20 22 22 5d 7d 20 7b 0a 20 20 20 20 20 20 20 20 73 65 74 20 66 61 6b | equal.$ns.""]}.{.........set.fak |
3b9a0 | 65 4e 61 6d 65 20 22 5b 6e 61 6d 65 73 70 61 63 65 20 63 75 72 72 65 6e 74 5d 3a 3a 5f 25 40 66 | eName."[namespace.current]::_%@f |
3b9c0 | 61 6b 65 5f 24 74 61 69 6c 22 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 | ake_$tail".....}.else.{......... |
3b9e0 | 73 65 74 20 66 61 6b 65 4e 61 6d 65 20 22 5f 25 40 66 61 6b 65 5f 24 6e 61 6d 65 22 0a 20 20 20 | set.fakeName."_%@fake_$name".... |
3ba00 | 20 20 20 20 20 72 65 67 73 75 62 20 2d 61 6c 6c 20 7b 3a 3a 7d 20 24 66 61 6b 65 4e 61 6d 65 20 | .....regsub.-all.{::}.$fakeName. |
3ba20 | 22 5f 22 20 66 61 6b 65 4e 61 6d 65 0a 20 20 20 20 20 20 20 20 73 65 74 20 66 61 6b 65 4e 61 6d | "_".fakeName.........set.fakeNam |
3ba40 | 65 20 22 5b 6e 61 6d 65 73 70 61 63 65 20 63 75 72 72 65 6e 74 5d 3a 3a 24 66 61 6b 65 4e 61 6d | e."[namespace.current]::$fakeNam |
3ba60 | 65 22 0a 20 20 20 20 7d 0a 20 20 20 20 70 72 6f 63 20 24 66 61 6b 65 4e 61 6d 65 20 24 61 72 67 | e".....}.....proc.$fakeName.$arg |
3ba80 | 6c 69 73 74 20 24 62 6f 64 79 0a 0a 20 20 20 20 23 20 59 55 4b 21 20 20 54 63 6c 20 77 6f 6e 27 | list.$body......#.YUK!..Tcl.won' |
3baa0 | 74 20 6c 65 74 20 75 73 20 61 6c 69 61 73 20 66 75 6c 6c 79 20 71 75 61 6c 69 66 69 65 64 20 63 | t.let.us.alias.fully.qualified.c |
3bac0 | 6f 6d 6d 61 6e 64 20 6e 61 6d 65 73 2c 0a 20 20 20 20 23 20 73 6f 20 77 65 20 63 61 6e 27 74 20 | ommand.names,.....#.so.we.can't. |
3bae0 | 68 61 6e 64 6c 65 20 6e 61 6d 65 73 20 6c 69 6b 65 20 22 3a 3a 69 74 63 6c 3a 3a 63 6c 61 73 73 | handle.names.like."::itcl::class |
3bb00 | 22 2e 20 20 49 6e 73 74 65 61 64 2c 0a 20 20 20 20 23 20 77 65 20 68 61 76 65 20 74 6f 20 62 75 | "...Instead,.....#.we.have.to.bu |
3bb20 | 69 6c 64 20 70 72 6f 63 73 20 77 69 74 68 20 74 68 65 20 66 75 6c 6c 79 20 71 75 61 6c 69 66 69 | ild.procs.with.the.fully.qualifi |
3bb40 | 65 64 20 6e 61 6d 65 73 2c 20 61 6e 64 0a 20 20 20 20 23 20 68 61 76 65 20 74 68 65 20 70 72 6f | ed.names,.and.....#.have.the.pro |
3bb60 | 63 73 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 61 6c 69 61 73 65 73 2e 0a 0a 20 20 20 20 69 66 | cs.point.to.the.aliases.......if |
3bb80 | 20 7b 5b 72 65 67 65 78 70 20 7b 3a 3a 7d 20 24 6e 61 6d 65 5d 7d 20 7b 0a 20 20 20 20 20 20 20 | .{[regexp.{::}.$name]}.{........ |
3bba0 | 20 73 65 74 20 65 78 70 6f 72 74 43 6d 64 20 5b 6c 69 73 74 20 5f 25 40 6e 61 6d 65 73 70 61 63 | .set.exportCmd.[list._%@namespac |
3bbc0 | 65 20 65 78 70 6f 72 74 20 5b 6e 61 6d 65 73 70 61 63 65 20 74 61 69 6c 20 24 6e 61 6d 65 5d 5d | e.export.[namespace.tail.$name]] |
3bbe0 | 0a 20 20 20 20 20 20 20 20 24 70 61 72 73 65 72 20 65 76 61 6c 20 5b 6c 69 73 74 20 5f 25 40 6e | .........$parser.eval.[list._%@n |
3bc00 | 61 6d 65 73 70 61 63 65 20 65 76 61 6c 20 24 6e 73 20 24 65 78 70 6f 72 74 43 6d 64 5d 0a 20 0a | amespace.eval.$ns.$exportCmd]... |
3bc20 | 09 23 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 72 6f 63 20 64 65 66 69 6e 69 74 69 6f 6e | .#.The.following.proc.definition |
3bc40 | 20 64 6f 65 73 20 6e 6f 74 20 77 6f 72 6b 20 69 66 20 79 6f 75 0a 09 23 20 77 61 6e 74 20 74 6f | .does.not.work.if.you..#.want.to |
3bc60 | 20 74 6f 6c 65 72 61 74 65 20 73 70 61 63 65 20 6f 72 20 73 6f 6d 65 74 68 69 6e 67 20 65 6c 73 | .tolerate.space.or.something.els |
3bc80 | 65 20 64 69 61 62 6f 6c 69 63 61 6c 0a 09 23 20 69 6e 20 74 68 65 20 70 72 6f 63 65 64 75 72 65 | e.diabolical..#.in.the.procedure |
3bca0 | 20 6e 61 6d 65 2c 20 28 69 2e 65 2e 2c 20 73 70 61 63 65 20 69 6e 20 24 61 6c 69 61 73 29 0a 09 | .name,.(i.e.,.space.in.$alias).. |
3bcc0 | 23 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 6f 65 73 20 6e 6f 74 20 77 6f 72 6b 3a 0a 09 | #.The.following.does.not.work:.. |
3bce0 | 23 20 20 20 22 5f 25 40 65 76 61 6c 20 7b 24 61 6c 69 61 73 7d 20 5c 24 61 72 67 73 22 0a 09 23 | #..."_%@eval.{$alias}.\$args"..# |
3bd00 | 20 62 65 63 61 75 73 65 20 24 61 6c 69 61 73 20 67 65 74 73 20 63 6f 6e 63 61 74 27 65 64 20 74 | .because.$alias.gets.concat'ed.t |
3bd20 | 6f 20 24 61 72 67 73 2e 0a 09 23 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 6f 65 73 20 6e | o.$args...#.The.following.does.n |
3bd40 | 6f 74 20 77 6f 72 6b 20 62 65 63 61 75 73 65 20 24 63 6d 64 20 69 73 20 73 6f 6d 65 68 6f 77 20 | ot.work.because.$cmd.is.somehow. |
3bd60 | 75 6e 64 65 66 69 6e 65 64 0a 09 23 20 20 20 22 73 65 74 20 63 6d 64 20 7b 24 61 6c 69 61 73 7d | undefined..#..."set.cmd.{$alias} |
3bd80 | 20 5c 3b 20 5f 25 40 65 76 61 6c 20 7b 5c 24 63 6d 64 7d 20 5c 24 61 72 67 73 22 0a 09 23 20 41 | .\;._%@eval.{\$cmd}.\$args"..#.A |
3bda0 | 20 67 6f 6c 64 20 73 74 61 72 20 74 6f 20 73 6f 6d 65 6f 6e 65 20 74 68 61 74 20 63 61 6e 20 6d | .gold.star.to.someone.that.can.m |
3bdc0 | 61 6b 65 20 74 65 73 74 0a 09 23 20 61 75 74 6f 4d 6b 69 6e 64 65 78 2d 33 2e 33 20 77 6f 72 6b | ake.test..#.autoMkindex-3.3.work |
3bde0 | 20 70 72 6f 70 65 72 6c 79 0a 0a 20 20 20 20 20 20 20 20 73 65 74 20 61 6c 69 61 73 20 5b 6e 61 | .properly..........set.alias.[na |
3be00 | 6d 65 73 70 61 63 65 20 74 61 69 6c 20 24 66 61 6b 65 4e 61 6d 65 5d 0a 20 20 20 20 20 20 20 20 | mespace.tail.$fakeName]......... |
3be20 | 24 70 61 72 73 65 72 20 69 6e 76 6f 6b 65 68 69 64 64 65 6e 20 70 72 6f 63 20 24 6e 61 6d 65 20 | $parser.invokehidden.proc.$name. |
3be40 | 7b 61 72 67 73 7d 20 22 5f 25 40 65 76 61 6c 20 7b 24 61 6c 69 61 73 7d 20 5c 24 61 72 67 73 22 | {args}."_%@eval.{$alias}.\$args" |
3be60 | 0a 20 20 20 20 20 20 20 20 24 70 61 72 73 65 72 20 61 6c 69 61 73 20 24 61 6c 69 61 73 20 24 66 | .........$parser.alias.$alias.$f |
3be80 | 61 6b 65 4e 61 6d 65 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 24 70 61 | akeName.....}.else.{.........$pa |
3bea0 | 72 73 65 72 20 61 6c 69 61 73 20 24 6e 61 6d 65 20 24 66 61 6b 65 4e 61 6d 65 0a 20 20 20 20 7d | rser.alias.$name.$fakeName.....} |
3bec0 | 0a 20 20 20 20 72 65 74 75 72 6e 0a 7d 0a 0a 23 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 | .....return.}..#.auto_mkindex_pa |
3bee0 | 72 73 65 72 3a 3a 66 75 6c 6c 6e 61 6d 65 20 2d 2d 0a 23 20 55 73 65 64 20 62 79 20 63 6f 6d 6d | rser::fullname.--.#.Used.by.comm |
3bf00 | 61 6e 64 73 20 6c 69 6b 65 20 22 70 72 6f 63 22 20 77 69 74 68 69 6e 20 74 68 65 20 61 75 74 6f | ands.like."proc".within.the.auto |
3bf20 | 5f 6d 6b 69 6e 64 65 78 20 70 61 72 73 65 72 2e 0a 23 20 52 65 74 75 72 6e 73 20 74 68 65 20 71 | _mkindex.parser..#.Returns.the.q |
3bf40 | 75 61 6c 69 66 69 65 64 20 6e 61 6d 65 73 70 61 63 65 20 6e 61 6d 65 20 66 6f 72 20 74 68 65 20 | ualified.namespace.name.for.the. |
3bf60 | 22 6e 61 6d 65 22 20 61 72 67 75 6d 65 6e 74 2e 0a 23 20 49 66 20 74 68 65 20 22 6e 61 6d 65 22 | "name".argument..#.If.the."name" |
3bf80 | 20 64 6f 65 73 20 6e 6f 74 20 73 74 61 72 74 20 77 69 74 68 20 22 3a 3a 22 2c 20 65 6c 65 6d 65 | .does.not.start.with."::",.eleme |
3bfa0 | 6e 74 73 20 61 72 65 20 61 64 64 65 64 20 66 72 6f 6d 0a 23 20 74 68 65 20 63 75 72 72 65 6e 74 | nts.are.added.from.#.the.current |
3bfc0 | 20 6e 61 6d 65 73 70 61 63 65 20 73 74 61 63 6b 20 74 6f 20 70 72 6f 64 75 63 65 20 61 20 71 75 | .namespace.stack.to.produce.a.qu |
3bfe0 | 61 6c 69 66 69 65 64 20 6e 61 6d 65 2e 20 20 54 68 65 6e 2c 0a 23 20 74 68 65 20 6e 61 6d 65 20 | alified.name...Then,.#.the.name. |
3c000 | 69 73 20 65 78 61 6d 69 6e 65 64 20 74 6f 20 73 65 65 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f | is.examined.to.see.whether.or.no |
3c020 | 74 20 69 74 20 73 68 6f 75 6c 64 20 72 65 61 6c 6c 79 20 62 65 0a 23 20 71 75 61 6c 69 66 69 65 | t.it.should.really.be.#.qualifie |
3c040 | 64 2e 20 20 49 66 20 74 68 65 20 6e 61 6d 65 20 68 61 73 20 6d 6f 72 65 20 74 68 61 6e 20 74 68 | d...If.the.name.has.more.than.th |
3c060 | 65 20 6c 65 61 64 69 6e 67 20 22 3a 3a 22 2c 20 69 74 20 69 73 0a 23 20 72 65 74 75 72 6e 65 64 | e.leading."::",.it.is.#.returned |
3c080 | 20 61 73 20 61 20 66 75 6c 6c 79 20 71 75 61 6c 69 66 69 65 64 20 6e 61 6d 65 2e 20 20 4f 74 68 | .as.a.fully.qualified.name...Oth |
3c0a0 | 65 72 77 69 73 65 2c 20 69 74 20 69 73 20 72 65 74 75 72 6e 65 64 0a 23 20 61 73 20 61 20 73 69 | erwise,.it.is.returned.#.as.a.si |
3c0c0 | 6d 70 6c 65 20 6e 61 6d 65 2e 20 20 54 68 61 74 20 77 61 79 2c 20 74 68 65 20 54 63 6c 20 61 75 | mple.name...That.way,.the.Tcl.au |
3c0e0 | 74 6f 6c 6f 61 64 65 72 20 77 69 6c 6c 20 72 65 63 6f 67 6e 69 7a 65 0a 23 20 69 74 20 70 72 6f | toloader.will.recognize.#.it.pro |
3c100 | 70 65 72 6c 79 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 6e 61 6d 65 20 2d 09 09 | perly..#.#.Arguments:.#.name.-.. |
3c120 | 4e 61 6d 65 20 74 68 61 74 20 69 73 20 62 65 69 6e 67 20 61 64 64 65 64 20 74 6f 20 69 6e 64 65 | Name.that.is.being.added.to.inde |
3c140 | 78 2e 0a 0a 70 72 6f 63 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 66 75 | x...proc.auto_mkindex_parser::fu |
3c160 | 6c 6c 6e 61 6d 65 20 7b 6e 61 6d 65 7d 20 7b 0a 20 20 20 20 76 61 72 69 61 62 6c 65 20 63 6f 6e | llname.{name}.{.....variable.con |
3c180 | 74 65 78 74 53 74 61 63 6b 0a 0a 20 20 20 20 69 66 20 7b 21 5b 73 74 72 69 6e 67 20 6d 61 74 63 | textStack......if.{![string.matc |
3c1a0 | 68 20 3a 3a 2a 20 24 6e 61 6d 65 5d 7d 20 7b 0a 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 | h.::*.$name]}.{.........foreach. |
3c1c0 | 6e 73 20 24 63 6f 6e 74 65 78 74 53 74 61 63 6b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 | ns.$contextStack.{.............s |
3c1e0 | 65 74 20 6e 61 6d 65 20 22 24 7b 6e 73 7d 3a 3a 24 6e 61 6d 65 22 0a 20 20 20 20 20 20 20 20 20 | et.name."${ns}::$name".......... |
3c200 | 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 3a 3a 2a 20 24 6e 61 6d 65 5d 7d | ...if.{[string.match.::*.$name]} |
3c220 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 0a 20 20 20 20 20 20 20 | .{.................break........ |
3c240 | 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 69 66 20 7b | .....}.........}.....}......if.{ |
3c260 | 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 6e 61 6d 65 73 70 61 63 65 20 71 75 61 6c 69 66 69 | [string.equal.[namespace.qualifi |
3c280 | 65 72 73 20 24 6e 61 6d 65 5d 20 22 22 5d 7d 20 7b 0a 20 20 20 20 20 20 20 20 73 65 74 20 6e 61 | ers.$name].""]}.{.........set.na |
3c2a0 | 6d 65 20 5b 6e 61 6d 65 73 70 61 63 65 20 74 61 69 6c 20 24 6e 61 6d 65 5d 0a 20 20 20 20 7d 20 | me.[namespace.tail.$name].....}. |
3c2c0 | 65 6c 73 65 69 66 20 7b 21 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 3a 3a 2a 20 24 6e 61 6d 65 | elseif.{![string.match.::*.$name |
3c2e0 | 5d 7d 20 7b 0a 20 20 20 20 20 20 20 20 73 65 74 20 6e 61 6d 65 20 22 3a 3a 24 6e 61 6d 65 22 0a | ]}.{.........set.name."::$name". |
3c300 | 20 20 20 20 7d 0a 20 20 20 20 0a 20 20 20 20 23 20 45 61 72 6c 69 65 72 2c 20 6d 6b 69 6e 64 65 | ....}..........#.Earlier,.mkinde |
3c320 | 78 20 72 65 70 6c 61 63 65 64 20 61 6c 6c 20 24 27 73 20 77 69 74 68 20 5c 30 2e 20 20 4e 6f 77 | x.replaced.all.$'s.with.\0...Now |
3c340 | 2c 20 77 65 20 68 61 76 65 20 74 6f 20 72 65 76 65 72 73 65 0a 20 20 20 20 23 20 74 68 61 74 20 | ,.we.have.to.reverse.....#.that. |
3c360 | 72 65 70 6c 61 63 65 6d 65 6e 74 2e 0a 20 20 20 20 72 65 67 73 75 62 20 2d 61 6c 6c 20 22 5c 30 | replacement......regsub.-all."\0 |
3c380 | 22 20 24 6e 61 6d 65 20 22 5c 24 22 20 6e 61 6d 65 0a 20 20 20 20 72 65 74 75 72 6e 20 24 6e 61 | ".$name."\$".name.....return.$na |
3c3a0 | 6d 65 0a 7d 0a 0a 23 20 52 65 67 69 73 74 65 72 20 61 6c 6c 20 6f 66 20 74 68 65 20 70 72 6f 63 | me.}..#.Register.all.of.the.proc |
3c3c0 | 65 64 75 72 65 73 20 66 6f 72 20 74 68 65 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 20 70 61 72 73 | edures.for.the.auto_mkindex.pars |
3c3e0 | 65 72 20 74 68 61 74 0a 23 20 77 69 6c 6c 20 62 75 69 6c 64 20 74 68 65 20 22 74 63 6c 49 6e 64 | er.that.#.will.build.the."tclInd |
3c400 | 65 78 22 20 66 69 6c 65 2e 0a 0a 23 20 41 55 54 4f 20 4d 4b 49 4e 44 45 58 3a 20 20 70 72 6f 63 | ex".file...#.AUTO.MKINDEX:..proc |
3c420 | 20 6e 61 6d 65 20 61 72 67 6c 69 73 74 20 62 6f 64 79 0a 23 20 41 64 64 73 20 61 6e 20 65 6e 74 | .name.arglist.body.#.Adds.an.ent |
3c440 | 72 79 20 74 6f 20 74 68 65 20 61 75 74 6f 20 69 6e 64 65 78 20 6c 69 73 74 20 66 6f 72 20 74 68 | ry.to.the.auto.index.list.for.th |
3c460 | 65 20 67 69 76 65 6e 20 70 72 6f 63 65 64 75 72 65 20 6e 61 6d 65 2e 0a 0a 61 75 74 6f 5f 6d 6b | e.given.procedure.name...auto_mk |
3c480 | 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 20 7b 6e 61 6d 65 | index_parser::command.proc.{name |
3c4a0 | 20 61 72 67 73 7d 20 7b 0a 20 20 20 20 76 61 72 69 61 62 6c 65 20 69 6e 64 65 78 0a 20 20 20 20 | .args}.{.....variable.index..... |
3c4c0 | 76 61 72 69 61 62 6c 65 20 73 63 72 69 70 74 46 69 6c 65 0a 20 20 20 20 23 20 44 6f 20 73 6f 6d | variable.scriptFile.....#.Do.som |
3c4e0 | 65 20 66 61 6e 63 79 20 72 65 66 6f 72 6d 61 74 74 69 6e 67 20 6f 6e 20 74 68 65 20 22 73 6f 75 | e.fancy.reformatting.on.the."sou |
3c500 | 72 63 65 22 20 63 61 6c 6c 20 74 6f 20 68 61 6e 64 6c 65 20 70 6c 61 74 66 6f 72 6d 0a 20 20 20 | rce".call.to.handle.platform.... |
3c520 | 20 23 20 64 69 66 66 65 72 65 6e 63 65 73 20 77 69 74 68 20 72 65 73 70 65 63 74 20 74 6f 20 70 | .#.differences.with.respect.to.p |
3c540 | 61 74 68 6e 61 6d 65 73 2e 20 20 55 73 65 20 66 6f 72 6d 61 74 20 6a 75 73 74 20 73 6f 20 74 68 | athnames...Use.format.just.so.th |
3c560 | 61 74 20 74 68 65 0a 20 20 20 20 23 20 63 6f 6d 6d 61 6e 64 20 69 73 20 61 20 6c 69 74 74 6c 65 | at.the.....#.command.is.a.little |
3c580 | 20 65 61 73 69 65 72 20 74 6f 20 72 65 61 64 20 28 6f 74 68 65 72 77 69 73 65 20 69 74 27 64 20 | .easier.to.read.(otherwise.it'd. |
3c5a0 | 62 65 20 66 75 6c 6c 20 6f 66 20 0a 20 20 20 20 23 20 62 61 63 6b 73 6c 61 73 68 65 64 20 64 6f | be.full.of......#.backslashed.do |
3c5c0 | 6c 6c 61 72 20 73 69 67 6e 73 2c 20 65 74 63 2e 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 | llar.signs,.etc......append.inde |
3c5e0 | 78 20 5b 6c 69 73 74 20 73 65 74 20 61 75 74 6f 5f 69 6e 64 65 78 28 5b 66 75 6c 6c 6e 61 6d 65 | x.[list.set.auto_index([fullname |
3c600 | 20 24 6e 61 6d 65 5d 29 5d 20 5c 0a 09 20 20 20 20 5b 66 6f 72 6d 61 74 20 7b 20 5b 6c 69 73 74 | .$name])].\......[format.{.[list |
3c620 | 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 25 73 5d 5d 7d 20 5c 0a | .source.[file.join.$dir.%s]]}.\. |
3c640 | 09 20 20 20 20 5b 66 69 6c 65 20 73 70 6c 69 74 20 24 73 63 72 69 70 74 46 69 6c 65 5d 5d 20 22 | .....[file.split.$scriptFile]]." |
3c660 | 5c 6e 22 0a 7d 0a 0a 23 20 43 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 61 64 64 20 73 75 70 70 6f | \n".}..#.Conditionally.add.suppo |
3c680 | 72 74 20 66 6f 72 20 54 63 6c 20 62 79 74 65 20 63 6f 64 65 20 66 69 6c 65 73 2e 20 20 54 68 65 | rt.for.Tcl.byte.code.files...The |
3c6a0 | 72 65 20 61 72 65 20 73 6f 6d 65 0a 23 20 74 72 69 63 6b 79 20 64 65 74 61 69 6c 73 20 68 65 72 | re.are.some.#.tricky.details.her |
3c6c0 | 65 2e 20 20 46 69 72 73 74 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 67 65 74 20 74 68 65 20 74 62 | e...First,.we.need.to.get.the.tb |
3c6e0 | 63 6c 6f 61 64 20 6c 69 62 72 61 72 79 0a 23 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 69 6e 20 74 | cload.library.#.initialized.in.t |
3c700 | 68 65 20 63 75 72 72 65 6e 74 20 69 6e 74 65 72 70 72 65 74 65 72 2e 20 20 57 65 20 63 61 6e 6e | he.current.interpreter...We.cann |
3c720 | 6f 74 20 6c 6f 61 64 20 74 62 63 6c 6f 61 64 20 69 6e 74 6f 20 74 68 65 0a 23 20 73 6c 61 76 65 | ot.load.tbcload.into.the.#.slave |
3c740 | 20 75 6e 74 69 6c 20 77 65 20 68 61 76 65 20 64 6f 6e 65 20 73 6f 20 62 65 63 61 75 73 65 20 69 | .until.we.have.done.so.because.i |
3c760 | 74 20 6e 65 65 64 73 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 20 74 63 6c 5f 70 61 74 63 68 4c | t.needs.access.to.the.tcl_patchL |
3c780 | 65 76 65 6c 0a 23 20 76 61 72 69 61 62 6c 65 2e 20 20 53 65 63 6f 6e 64 2c 20 62 65 63 61 75 73 | evel.#.variable...Second,.becaus |
3c7a0 | 65 20 74 68 65 20 70 61 63 6b 61 67 65 20 69 6e 64 65 78 20 66 69 6c 65 20 6d 61 79 20 64 65 66 | e.the.package.index.file.may.def |
3c7c0 | 65 72 20 6c 6f 61 64 69 6e 67 20 74 68 65 0a 23 20 6c 69 62 72 61 72 79 20 75 6e 74 69 6c 20 77 | er.loading.the.#.library.until.w |
3c7e0 | 65 20 69 6e 76 6f 6b 65 20 61 20 63 6f 6d 6d 61 6e 64 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 65 | e.invoke.a.command,.we.need.to.e |
3c800 | 78 70 6c 69 63 69 74 6c 79 20 69 6e 76 6f 6b 65 20 61 75 74 6f 5f 6c 6f 61 64 0a 23 20 74 6f 20 | xplicitly.invoke.auto_load.#.to. |
3c820 | 66 6f 72 63 65 20 69 74 20 74 6f 20 62 65 20 6c 6f 61 64 65 64 2e 20 20 54 68 69 73 20 73 68 6f | force.it.to.be.loaded...This.sho |
3c840 | 75 6c 64 20 62 65 20 61 20 6e 6f 6f 70 20 69 66 20 74 68 65 20 70 61 63 6b 61 67 65 20 68 61 73 | uld.be.a.noop.if.the.package.has |
3c860 | 0a 23 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 6c 6f 61 64 65 64 0a 0a 61 75 74 6f 5f 6d 6b 69 | .#.already.been.loaded..auto_mki |
3c880 | 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 68 6f 6f 6b 20 7b 0a 20 20 20 20 69 66 20 7b 21 5b 63 61 | ndex_parser::hook.{.....if.{![ca |
3c8a0 | 74 63 68 20 7b 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 20 74 62 63 6c 6f 61 64 7d 5d 7d 20 | tch.{package.require.tbcload}]}. |
3c8c0 | 7b 0a 09 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 20 74 | {..if.{[llength.[info.commands.t |
3c8e0 | 62 63 6c 6f 61 64 3a 3a 62 63 70 72 6f 63 5d 5d 20 3d 3d 20 30 7d 20 7b 0a 09 20 20 20 20 61 75 | bcload::bcproc]].==.0}.{......au |
3c900 | 74 6f 5f 6c 6f 61 64 20 74 62 63 6c 6f 61 64 3a 3a 62 63 70 72 6f 63 0a 09 7d 0a 09 6c 6f 61 64 | to_load.tbcload::bcproc..}..load |
3c920 | 20 7b 7d 20 74 62 63 6c 6f 61 64 20 24 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 | .{}.tbcload.$auto_mkindex_parser |
3c940 | 3a 3a 70 61 72 73 65 72 0a 0a 09 23 20 41 55 54 4f 20 4d 4b 49 4e 44 45 58 3a 20 20 74 62 63 6c | ::parser...#.AUTO.MKINDEX:..tbcl |
3c960 | 6f 61 64 3a 3a 62 63 70 72 6f 63 20 6e 61 6d 65 20 61 72 67 6c 69 73 74 20 62 6f 64 79 0a 09 23 | oad::bcproc.name.arglist.body..# |
3c980 | 20 41 64 64 73 20 61 6e 20 65 6e 74 72 79 20 74 6f 20 74 68 65 20 61 75 74 6f 20 69 6e 64 65 78 | .Adds.an.entry.to.the.auto.index |
3c9a0 | 20 6c 69 73 74 20 66 6f 72 20 74 68 65 20 67 69 76 65 6e 20 70 72 65 2d 63 6f 6d 70 69 6c 65 64 | .list.for.the.given.pre-compiled |
3c9c0 | 0a 09 23 20 70 72 6f 63 65 64 75 72 65 20 6e 61 6d 65 2e 20 20 0a 0a 09 61 75 74 6f 5f 6d 6b 69 | ..#.procedure.name......auto_mki |
3c9e0 | 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 63 6f 6d 6d 61 6e 64 49 6e 69 74 20 74 62 63 6c 6f 61 64 | ndex_parser::commandInit.tbcload |
3ca00 | 3a 3a 62 63 70 72 6f 63 20 7b 6e 61 6d 65 20 61 72 67 73 7d 20 7b 0a 09 20 20 20 20 76 61 72 69 | ::bcproc.{name.args}.{......vari |
3ca20 | 61 62 6c 65 20 69 6e 64 65 78 0a 09 20 20 20 20 76 61 72 69 61 62 6c 65 20 73 63 72 69 70 74 46 | able.index......variable.scriptF |
3ca40 | 69 6c 65 0a 09 20 20 20 20 23 20 44 6f 20 73 6f 6d 65 20 6e 69 63 65 20 72 65 66 6f 72 6d 61 74 | ile......#.Do.some.nice.reformat |
3ca60 | 74 69 6e 67 20 6f 66 20 74 68 65 20 22 73 6f 75 72 63 65 22 20 63 61 6c 6c 2c 20 74 6f 20 67 65 | ting.of.the."source".call,.to.ge |
3ca80 | 74 20 61 72 6f 75 6e 64 0a 09 20 20 20 20 23 20 70 61 74 68 20 64 69 66 66 65 72 65 6e 63 65 73 | t.around......#.path.differences |
3caa0 | 20 6f 6e 20 64 69 66 66 65 72 65 6e 74 20 70 6c 61 74 66 6f 72 6d 73 2e 20 20 57 65 20 75 73 65 | .on.different.platforms...We.use |
3cac0 | 20 74 68 65 20 66 6f 72 6d 61 74 0a 09 20 20 20 20 23 20 63 6f 6d 6d 61 6e 64 20 6a 75 73 74 20 | .the.format......#.command.just. |
3cae0 | 73 6f 20 74 68 61 74 20 74 68 65 20 63 6f 64 65 20 69 73 20 61 20 6c 69 74 74 6c 65 20 65 61 73 | so.that.the.code.is.a.little.eas |
3cb00 | 69 65 72 20 74 6f 20 72 65 61 64 2e 0a 09 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 5b | ier.to.read.......append.index.[ |
3cb20 | 6c 69 73 74 20 73 65 74 20 61 75 74 6f 5f 69 6e 64 65 78 28 5b 66 75 6c 6c 6e 61 6d 65 20 24 6e | list.set.auto_index([fullname.$n |
3cb40 | 61 6d 65 5d 29 5d 20 5c 0a 09 09 20 20 20 20 5b 66 6f 72 6d 61 74 20 7b 20 5b 6c 69 73 74 20 73 | ame])].\.......[format.{.[list.s |
3cb60 | 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 25 73 5d 5d 7d 20 5c 0a 09 09 | ource.[file.join.$dir.%s]]}.\... |
3cb80 | 20 20 20 20 5b 66 69 6c 65 20 73 70 6c 69 74 20 24 73 63 72 69 70 74 46 69 6c 65 5d 5d 20 22 5c | ....[file.split.$scriptFile]]."\ |
3cba0 | 6e 22 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 41 55 54 4f 20 4d 4b 49 4e 44 45 58 3a 20 20 | n"..}.....}.}..#.AUTO.MKINDEX:.. |
3cbc0 | 6e 61 6d 65 73 70 61 63 65 20 65 76 61 6c 20 6e 61 6d 65 20 63 6f 6d 6d 61 6e 64 20 3f 61 72 67 | namespace.eval.name.command.?arg |
3cbe0 | 20 61 72 67 2e 2e 2e 3f 0a 23 20 41 64 64 73 20 74 68 65 20 6e 61 6d 65 73 70 61 63 65 20 6e 61 | .arg...?.#.Adds.the.namespace.na |
3cc00 | 6d 65 20 6f 6e 74 6f 20 74 68 65 20 63 6f 6e 74 65 78 74 20 73 74 61 63 6b 20 61 6e 64 20 65 76 | me.onto.the.context.stack.and.ev |
3cc20 | 61 6c 75 61 74 65 73 20 74 68 65 0a 23 20 61 73 73 6f 63 69 61 74 65 64 20 62 6f 64 79 20 6f 66 | aluates.the.#.associated.body.of |
3cc40 | 20 63 6f 6d 6d 61 6e 64 73 2e 0a 23 0a 23 20 41 55 54 4f 20 4d 4b 49 4e 44 45 58 3a 20 20 6e 61 | .commands..#.#.AUTO.MKINDEX:..na |
3cc60 | 6d 65 73 70 61 63 65 20 69 6d 70 6f 72 74 20 3f 2d 66 6f 72 63 65 3f 20 70 61 74 74 65 72 6e 20 | mespace.import.?-force?.pattern. |
3cc80 | 3f 70 61 74 74 65 72 6e 2e 2e 2e 3f 0a 23 20 50 65 72 66 6f 72 6d 73 20 74 68 65 20 22 69 6d 70 | ?pattern...?.#.Performs.the."imp |
3cca0 | 6f 72 74 22 20 61 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 70 61 72 73 65 72 20 69 6e 74 65 72 70 | ort".action.in.the.parser.interp |
3ccc0 | 72 65 74 65 72 2e 20 20 54 68 69 73 20 69 73 0a 23 20 69 6d 70 6f 72 74 61 6e 74 20 66 6f 72 20 | reter...This.is.#.important.for. |
3cce0 | 61 6e 79 20 63 6f 6d 6d 61 6e 64 73 20 63 6f 6e 74 61 69 6e 65 64 20 69 6e 20 61 20 6e 61 6d 65 | any.commands.contained.in.a.name |
3cd00 | 73 70 61 63 65 20 74 68 61 74 20 61 66 66 65 63 74 0a 23 20 74 68 65 20 69 6e 64 65 78 2e 20 20 | space.that.affect.#.the.index... |
3cd20 | 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 61 20 73 63 72 69 70 74 20 6d 61 79 20 73 61 79 20 22 69 | For.example,.a.script.may.say."i |
3cd40 | 74 63 6c 3a 3a 63 6c 61 73 73 20 2e 2e 2e 22 2c 0a 23 20 6f 72 20 69 74 20 6d 61 79 20 69 6d 70 | tcl::class....",.#.or.it.may.imp |
3cd60 | 6f 72 74 20 22 69 74 63 6c 3a 3a 2a 22 20 61 6e 64 20 74 68 65 6e 20 73 61 79 20 22 63 6c 61 73 | ort."itcl::*".and.then.say."clas |
3cd80 | 73 20 2e 2e 2e 22 2e 20 20 54 68 69 73 0a 23 20 70 72 6f 63 65 64 75 72 65 20 64 6f 65 73 20 74 | s...."...This.#.procedure.does.t |
3cda0 | 68 65 20 69 6d 70 6f 72 74 20 6f 70 65 72 61 74 69 6f 6e 2c 20 62 75 74 20 6b 65 65 70 73 20 74 | he.import.operation,.but.keeps.t |
3cdc0 | 72 61 63 6b 20 6f 66 20 69 6d 70 6f 72 74 65 64 0a 23 20 70 61 74 74 65 72 6e 73 20 73 6f 20 77 | rack.of.imported.#.patterns.so.w |
3cde0 | 65 20 63 61 6e 20 72 65 6d 6f 76 65 20 74 68 65 20 69 6d 70 6f 72 74 73 20 6c 61 74 65 72 2e 0a | e.can.remove.the.imports.later.. |
3ce00 | 0a 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 70 61 72 73 65 72 3a 3a 63 6f 6d 6d 61 6e 64 20 6e 61 | .auto_mkindex_parser::command.na |
3ce20 | 6d 65 73 70 61 63 65 20 7b 6f 70 20 61 72 67 73 7d 20 7b 0a 20 20 20 20 73 77 69 74 63 68 20 2d | mespace.{op.args}.{.....switch.- |
3ce40 | 2d 20 24 6f 70 20 7b 0a 20 20 20 20 20 20 20 20 65 76 61 6c 20 7b 0a 20 20 20 20 20 20 20 20 20 | -.$op.{.........eval.{.......... |
3ce60 | 20 20 20 76 61 72 69 61 62 6c 65 20 70 61 72 73 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 | ...variable.parser.............v |
3ce80 | 61 72 69 61 62 6c 65 20 63 6f 6e 74 65 78 74 53 74 61 63 6b 0a 0a 20 20 20 20 20 20 20 20 20 20 | ariable.contextStack............ |
3cea0 | 20 20 73 65 74 20 6e 61 6d 65 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 30 5d 0a 20 20 20 20 | ..set.name.[lindex.$args.0]..... |
3cec0 | 20 20 20 20 20 20 20 20 73 65 74 20 61 72 67 73 20 5b 6c 72 61 6e 67 65 20 24 61 72 67 73 20 31 | ........set.args.[lrange.$args.1 |
3cee0 | 20 65 6e 64 5d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 63 6f 6e 74 65 78 74 53 74 | .end]..............set.contextSt |
3cf00 | 61 63 6b 20 5b 6c 69 6e 73 65 72 74 20 24 63 6f 6e 74 65 78 74 53 74 61 63 6b 20 30 20 24 6e 61 | ack.[linsert.$contextStack.0.$na |
3cf20 | 6d 65 5d 0a 09 20 20 20 20 24 70 61 72 73 65 72 20 65 76 61 6c 20 5b 6c 69 73 74 20 5f 25 40 6e | me]......$parser.eval.[list._%@n |
3cf40 | 61 6d 65 73 70 61 63 65 20 65 76 61 6c 20 24 6e 61 6d 65 5d 20 24 61 72 67 73 0a 20 20 20 20 20 | amespace.eval.$name].$args...... |
3cf60 | 20 20 20 20 20 20 20 73 65 74 20 63 6f 6e 74 65 78 74 53 74 61 63 6b 20 5b 6c 72 61 6e 67 65 20 | .......set.contextStack.[lrange. |
3cf80 | 24 63 6f 6e 74 65 78 74 53 74 61 63 6b 20 31 20 65 6e 64 5d 0a 20 20 20 20 20 20 20 20 7d 0a 20 | $contextStack.1.end].........}.. |
3cfa0 | 20 20 20 20 20 20 20 69 6d 70 6f 72 74 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 69 | .......import.{.............vari |
3cfc0 | 61 62 6c 65 20 70 61 72 73 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 69 61 62 6c 65 | able.parser.............variable |
3cfe0 | 20 69 6d 70 6f 72 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 70 61 74 | .imports.............foreach.pat |
3d000 | 74 65 72 6e 20 24 61 72 67 73 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 | tern.$args.{.................if. |
3d020 | 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 70 61 74 74 65 72 6e 20 22 2d 66 6f 72 63 | {[string.compare.$pattern."-forc |
3d040 | 65 22 5d 7d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 61 70 70 65 | e"]}.{.....................lappe |
3d060 | 6e 64 20 69 6d 70 6f 72 74 73 20 24 70 61 74 74 65 72 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | nd.imports.$pattern............. |
3d080 | 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ....}.............}............. |
3d0a0 | 63 61 74 63 68 20 7b 24 70 61 72 73 65 72 20 65 76 61 6c 20 22 5f 25 40 6e 61 6d 65 73 70 61 63 | catch.{$parser.eval."_%@namespac |
3d0c0 | 65 20 69 6d 70 6f 72 74 20 24 61 72 67 73 22 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d | e.import.$args"}.........}.....} |
3d0e0 | 0a 7d 0a 0a 72 65 74 75 72 6e 0a 00 00 48 3c 23 20 70 61 63 6b 61 67 65 2e 74 63 6c 20 2d 2d 0a | .}..return...H<#.package.tcl.--. |
3d100 | 23 0a 23 20 75 74 69 6c 69 74 79 20 70 72 6f 63 73 20 66 6f 72 6d 65 72 6c 79 20 69 6e 20 69 6e | #.#.utility.procs.formerly.in.in |
3d120 | 69 74 2e 74 63 6c 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 6c 6f 61 64 65 64 20 6f 6e 20 64 65 | it.tcl.which.can.be.loaded.on.de |
3d140 | 6d 61 6e 64 0a 23 20 66 6f 72 20 70 61 63 6b 61 67 65 20 6d 61 6e 61 67 65 6d 65 6e 74 2e 0a 23 | mand.#.for.package.management..# |
3d160 | 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 70 61 63 6b 61 67 65 2e 74 63 6c 2c 76 20 | .#.RCS:.@(#).$Id:.package.tcl,v. |
3d180 | 31 2e 31 31 20 32 30 30 30 2f 30 32 2f 30 37 20 32 32 3a 33 33 3a 31 37 20 65 72 69 63 6d 20 45 | 1.11.2000/02/07.22:33:17.ericm.E |
3d1a0 | 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 31 2d 31 39 39 33 | xp.$.#.#.Copyright.(c).1991-1993 |
3d1c0 | 20 54 68 65 20 52 65 67 65 6e 74 73 20 6f 66 20 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f | .The.Regents.of.the.University.o |
3d1e0 | 66 20 43 61 6c 69 66 6f 72 6e 69 61 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 | f.California..#.Copyright.(c).19 |
3d200 | 39 34 2d 31 39 39 38 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 | 94-1998.Sun.Microsystems,.Inc..# |
3d220 | 0a 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 | .#.See.the.file."license.terms". |
3d240 | 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 | for.information.on.usage.and.red |
3d260 | 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 | istribution.#.of.this.file,.and. |
3d280 | 66 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 | for.a.DISCLAIMER.OF.ALL.WARRANTI |
3d2a0 | 45 53 2e 0a 23 0a 0a 23 20 43 72 65 61 74 65 20 74 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 | ES..#..#.Create.the.package.name |
3d2c0 | 73 70 61 63 65 0a 6e 61 6d 65 73 70 61 63 65 20 65 76 61 6c 20 3a 3a 70 6b 67 20 7b 0a 7d 0a 0a | space.namespace.eval.::pkg.{.}.. |
3d2e0 | 23 20 70 6b 67 5f 63 6f 6d 70 61 72 65 45 78 74 65 6e 73 69 6f 6e 20 2d 2d 0a 23 0a 23 20 20 55 | #.pkg_compareExtension.--.#.#..U |
3d300 | 73 65 64 20 69 6e 74 65 72 6e 61 6c 6c 79 20 62 79 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74 6f | sed.internally.by.pkg_mkIndex.to |
3d320 | 20 63 6f 6d 70 61 72 65 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 6f 66 20 61 20 66 69 6c 65 | .compare.the.extension.of.a.file |
3d340 | 20 74 6f 0a 23 20 20 61 20 67 69 76 65 6e 20 65 78 74 65 6e 73 69 6f 6e 2e 20 4f 6e 20 57 69 6e | .to.#..a.given.extension..On.Win |
3d360 | 64 6f 77 73 2c 20 69 74 20 75 73 65 73 20 61 20 63 61 73 65 2d 69 6e 73 65 6e 73 69 74 69 76 65 | dows,.it.uses.a.case-insensitive |
3d380 | 20 63 6f 6d 70 61 72 69 73 6f 6e 0a 23 20 20 62 65 63 61 75 73 65 20 74 68 65 20 66 69 6c 65 20 | .comparison.#..because.the.file. |
3d3a0 | 73 79 73 74 65 6d 20 63 61 6e 20 62 65 20 66 69 6c 65 20 69 6e 73 65 6e 73 69 74 69 76 65 2e 0a | system.can.be.file.insensitive.. |
3d3c0 | 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 20 66 69 6c 65 4e 61 6d 65 09 6e 61 6d 65 20 | #.#.Arguments:.#..fileName.name. |
3d3e0 | 6f 66 20 61 20 66 69 6c 65 20 77 68 6f 73 65 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 63 6f 6d | of.a.file.whose.extension.is.com |
3d400 | 70 61 72 65 64 0a 23 20 20 65 78 74 09 09 28 6f 70 74 69 6f 6e 61 6c 29 20 54 68 65 20 65 78 74 | pared.#..ext..(optional).The.ext |
3d420 | 65 6e 73 69 6f 6e 20 74 6f 20 63 6f 6d 70 61 72 65 20 61 67 61 69 6e 73 74 3b 20 79 6f 75 20 6d | ension.to.compare.against;.you.m |
3d440 | 75 73 74 0a 23 09 09 70 72 6f 76 69 64 65 20 74 68 65 20 73 74 61 72 74 69 6e 67 20 64 6f 74 2e | ust.#..provide.the.starting.dot. |
3d460 | 0a 23 09 09 44 65 66 61 75 6c 74 73 20 74 6f 20 5b 69 6e 66 6f 20 73 68 61 72 65 64 6c 69 62 65 | .#..Defaults.to.[info.sharedlibe |
3d480 | 78 74 65 6e 73 69 6f 6e 5d 0a 23 0a 23 20 52 65 73 75 6c 74 73 3a 0a 23 20 20 52 65 74 75 72 6e | xtension].#.#.Results:.#..Return |
3d4a0 | 73 20 31 20 69 66 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 6d 61 74 63 68 65 73 2c 20 30 20 | s.1.if.the.extension.matches,.0. |
3d4c0 | 6f 74 68 65 72 77 69 73 65 0a 0a 70 72 6f 63 20 70 6b 67 5f 63 6f 6d 70 61 72 65 45 78 74 65 6e | otherwise..proc.pkg_compareExten |
3d4e0 | 73 69 6f 6e 20 7b 20 66 69 6c 65 4e 61 6d 65 20 7b 65 78 74 20 7b 7d 7d 20 7d 20 7b 0a 20 20 20 | sion.{.fileName.{ext.{}}.}.{.... |
3d500 | 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 0a 20 20 20 20 69 66 20 7b 5b 73 74 | .global.tcl_platform.....if.{[st |
3d520 | 72 69 6e 67 20 6c 65 6e 67 74 68 20 24 65 78 74 5d 20 3d 3d 20 30 7d 20 7b 0a 09 73 65 74 20 65 | ring.length.$ext].==.0}.{..set.e |
3d540 | 78 74 20 5b 69 6e 66 6f 20 73 68 61 72 65 64 6c 69 62 65 78 74 65 6e 73 69 6f 6e 5d 0a 20 20 20 | xt.[info.sharedlibextension].... |
3d560 | 20 7d 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 6c | .}.....if.{[string.equal.$tcl_pl |
3d580 | 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 77 69 6e 64 6f 77 73 22 5d 7d 20 7b 0a 09 | atform(platform)."windows"]}.{.. |
3d5a0 | 72 65 74 75 72 6e 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 2d 6e 6f 63 61 73 65 20 5b 66 69 | return.[string.equal.-nocase.[fi |
3d5c0 | 6c 65 20 65 78 74 65 6e 73 69 6f 6e 20 24 66 69 6c 65 4e 61 6d 65 5d 20 24 65 78 74 5d 0a 20 20 | le.extension.$fileName].$ext]... |
3d5e0 | 20 20 7d 20 65 6c 73 65 20 7b 0a 09 72 65 74 75 72 6e 20 5b 73 74 72 69 6e 67 20 65 71 75 61 6c | ..}.else.{..return.[string.equal |
3d600 | 20 5b 66 69 6c 65 20 65 78 74 65 6e 73 69 6f 6e 20 24 66 69 6c 65 4e 61 6d 65 5d 20 24 65 78 74 | .[file.extension.$fileName].$ext |
3d620 | 5d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 2d 2d 0a 23 20 54 68 | ].....}.}..#.pkg_mkIndex.--.#.Th |
3d640 | 69 73 20 70 72 6f 63 65 64 75 72 65 20 63 72 65 61 74 65 73 20 61 20 70 61 63 6b 61 67 65 20 69 | is.procedure.creates.a.package.i |
3d660 | 6e 64 65 78 20 69 6e 20 61 20 67 69 76 65 6e 20 64 69 72 65 63 74 6f 72 79 2e 20 20 54 68 65 0a | ndex.in.a.given.directory...The. |
3d680 | 23 20 70 61 63 6b 61 67 65 20 69 6e 64 65 78 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 61 20 22 70 | #.package.index.consists.of.a."p |
3d6a0 | 6b 67 49 6e 64 65 78 2e 74 63 6c 22 20 66 69 6c 65 20 77 68 6f 73 65 20 63 6f 6e 74 65 6e 74 73 | kgIndex.tcl".file.whose.contents |
3d6c0 | 20 61 72 65 0a 23 20 61 20 54 63 6c 20 73 63 72 69 70 74 20 74 68 61 74 20 73 65 74 73 20 75 70 | .are.#.a.Tcl.script.that.sets.up |
3d6e0 | 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 77 69 74 68 20 22 70 61 63 6b 61 | .package.information.with."packa |
3d700 | 67 65 20 72 65 71 75 69 72 65 22 0a 23 20 63 6f 6d 6d 61 6e 64 73 2e 20 20 54 68 65 20 63 6f 6d | ge.require".#.commands...The.com |
3d720 | 6d 61 6e 64 73 20 64 65 73 63 72 69 62 65 20 61 6c 6c 20 6f 66 20 74 68 65 20 70 61 63 6b 61 67 | mands.describe.all.of.the.packag |
3d740 | 65 73 20 64 65 66 69 6e 65 64 20 62 79 20 74 68 65 0a 23 20 66 69 6c 65 73 20 67 69 76 65 6e 20 | es.defined.by.the.#.files.given. |
3d760 | 61 73 20 61 72 67 75 6d 65 6e 74 73 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 2d | as.arguments..#.#.Arguments:.#.- |
3d780 | 64 69 72 65 63 74 09 09 28 6f 70 74 69 6f 6e 61 6c 29 20 49 66 20 74 68 69 73 20 66 6c 61 67 20 | direct..(optional).If.this.flag. |
3d7a0 | 69 73 20 70 72 65 73 65 6e 74 2c 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 0a 23 09 09 09 63 6f | is.present,.the.generated.#...co |
3d7c0 | 64 65 20 69 6e 20 70 6b 67 4d 6b 49 6e 64 65 78 2e 74 63 6c 20 77 69 6c 6c 20 63 61 75 73 65 20 | de.in.pkgMkIndex.tcl.will.cause. |
3d7e0 | 74 68 65 20 70 61 63 6b 61 67 65 20 74 6f 20 62 65 0a 23 09 09 09 6c 6f 61 64 65 64 20 77 68 65 | the.package.to.be.#...loaded.whe |
3d800 | 6e 20 22 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 22 20 69 73 20 65 78 65 63 75 74 65 64 2c | n."package.require".is.executed, |
3d820 | 20 72 61 74 68 65 72 0a 23 09 09 09 74 68 61 6e 20 6c 61 7a 69 6c 79 20 77 68 65 6e 20 74 68 65 | .rather.#...than.lazily.when.the |
3d840 | 20 66 69 72 73 74 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 61 6e 20 65 78 70 6f 72 74 65 64 0a | .first.reference.to.an.exported. |
3d860 | 23 09 09 09 70 72 6f 63 65 64 75 72 65 20 69 6e 20 74 68 65 20 70 61 63 6b 61 67 65 20 69 73 20 | #...procedure.in.the.package.is. |
3d880 | 6d 61 64 65 2e 0a 23 20 2d 76 65 72 62 6f 73 65 09 09 28 6f 70 74 69 6f 6e 61 6c 29 20 56 65 72 | made..#.-verbose..(optional).Ver |
3d8a0 | 62 6f 73 65 20 6f 75 74 70 75 74 3b 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 65 61 63 68 20 66 69 | bose.output;.the.name.of.each.fi |
3d8c0 | 6c 65 20 74 68 61 74 0a 23 09 09 09 77 61 73 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 72 6f 63 | le.that.#...was.successfully.roc |
3d8e0 | 65 73 73 65 64 20 69 73 20 70 72 69 6e 74 65 64 20 6f 75 74 2e 20 41 64 64 69 74 69 6f 6e 61 6c | essed.is.printed.out..Additional |
3d900 | 6c 79 2c 0a 23 09 09 09 69 66 20 70 72 6f 63 65 73 73 69 6e 67 20 6f 66 20 61 20 66 69 6c 65 20 | ly,.#...if.processing.of.a.file. |
3d920 | 66 61 69 6c 65 64 20 61 20 6d 65 73 73 61 67 65 20 69 73 20 70 72 69 6e 74 65 64 2e 0a 23 20 2d | failed.a.message.is.printed..#.- |
3d940 | 6c 6f 61 64 20 70 61 74 09 09 28 6f 70 74 69 6f 6e 61 6c 29 20 50 72 65 6c 6f 61 64 20 61 6e 79 | load.pat..(optional).Preload.any |
3d960 | 20 70 61 63 6b 61 67 65 73 20 77 68 6f 73 65 20 6e 61 6d 65 73 20 6d 61 74 63 68 0a 23 09 09 09 | .packages.whose.names.match.#... |
3d980 | 74 68 65 20 70 61 74 74 65 72 6e 2e 20 20 55 73 65 64 20 74 6f 20 68 61 6e 64 6c 65 20 44 4c 4c | the.pattern...Used.to.handle.DLL |
3d9a0 | 73 20 74 68 61 74 20 64 65 70 65 6e 64 20 6f 6e 0a 23 09 09 09 6f 74 68 65 72 20 70 61 63 6b 61 | s.that.depend.on.#...other.packa |
3d9c0 | 67 65 73 20 64 75 72 69 6e 67 20 74 68 65 69 72 20 49 6e 69 74 20 70 72 6f 63 65 64 75 72 65 2e | ges.during.their.Init.procedure. |
3d9e0 | 0a 23 20 64 69 72 20 2d 09 09 09 4e 61 6d 65 20 6f 66 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 | .#.dir.-...Name.of.the.directory |
3da00 | 20 69 6e 20 77 68 69 63 68 20 74 6f 20 63 72 65 61 74 65 20 74 68 65 20 69 6e 64 65 78 2e 0a 23 | .in.which.to.create.the.index..# |
3da20 | 20 61 72 67 73 20 2d 09 09 41 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 61 64 64 69 74 69 6f 6e 61 | .args.-..Any.number.of.additiona |
3da40 | 6c 20 61 72 67 75 6d 65 6e 74 73 2c 20 65 61 63 68 20 67 69 76 69 6e 67 0a 23 09 09 09 61 20 67 | l.arguments,.each.giving.#...a.g |
3da60 | 6c 6f 62 20 70 61 74 74 65 72 6e 20 74 68 61 74 20 6d 61 74 63 68 65 73 20 74 68 65 20 6e 61 6d | lob.pattern.that.matches.the.nam |
3da80 | 65 73 20 6f 66 20 6f 6e 65 20 6f 72 0a 23 09 09 09 6d 6f 72 65 20 73 68 61 72 65 64 20 6c 69 62 | es.of.one.or.#...more.shared.lib |
3daa0 | 72 61 72 69 65 73 20 6f 72 20 54 63 6c 20 73 63 72 69 70 74 20 66 69 6c 65 73 20 69 6e 0a 23 09 | raries.or.Tcl.script.files.in.#. |
3dac0 | 09 09 64 69 72 2e 0a 0a 70 72 6f 63 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 7b 61 72 67 73 7d 20 | ..dir...proc.pkg_mkIndex.{args}. |
3dae0 | 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 43 6f 64 65 20 65 72 72 6f 72 49 6e 66 6f | {.....global.errorCode.errorInfo |
3db00 | 0a 20 20 20 20 73 65 74 20 75 73 61 67 65 20 7b 22 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 3f 2d 64 | .....set.usage.{"pkg_mkIndex.?-d |
3db20 | 69 72 65 63 74 3f 20 3f 2d 76 65 72 62 6f 73 65 3f 20 3f 2d 6c 6f 61 64 20 70 61 74 74 65 72 6e | irect?.?-verbose?.?-load.pattern |
3db40 | 3f 20 3f 2d 2d 3f 20 64 69 72 20 3f 70 61 74 74 65 72 6e 20 2e 2e 2e 3f 22 7d 3b 0a 0a 20 20 20 | ?.?--?.dir.?pattern....?"};..... |
3db60 | 20 73 65 74 20 61 72 67 43 6f 75 6e 74 20 5b 6c 6c 65 6e 67 74 68 20 24 61 72 67 73 5d 0a 20 20 | .set.argCount.[llength.$args]... |
3db80 | 20 20 69 66 20 7b 24 61 72 67 43 6f 75 6e 74 20 3c 20 31 7d 20 7b 0a 09 72 65 74 75 72 6e 20 2d | ..if.{$argCount.<.1}.{..return.- |
3dba0 | 63 6f 64 65 20 65 72 72 6f 72 20 22 77 72 6f 6e 67 20 23 20 61 72 67 73 3a 20 73 68 6f 75 6c 64 | code.error."wrong.#.args:.should |
3dbc0 | 20 62 65 5c 6e 24 75 73 61 67 65 22 0a 20 20 20 20 7d 0a 0a 20 20 20 20 73 65 74 20 6d 6f 72 65 | .be\n$usage".....}......set.more |
3dbe0 | 20 22 22 0a 20 20 20 20 73 65 74 20 64 69 72 65 63 74 20 31 0a 20 20 20 20 73 65 74 20 64 6f 56 | ."".....set.direct.1.....set.doV |
3dc00 | 65 72 62 6f 73 65 20 30 0a 20 20 20 20 73 65 74 20 6c 6f 61 64 50 61 74 20 22 22 0a 20 20 20 20 | erbose.0.....set.loadPat.""..... |
3dc20 | 66 6f 72 20 7b 73 65 74 20 69 64 78 20 30 7d 20 7b 24 69 64 78 20 3c 20 24 61 72 67 43 6f 75 6e | for.{set.idx.0}.{$idx.<.$argCoun |
3dc40 | 74 7d 20 7b 69 6e 63 72 20 69 64 78 7d 20 7b 0a 09 73 65 74 20 66 6c 61 67 20 5b 6c 69 6e 64 65 | t}.{incr.idx}.{..set.flag.[linde |
3dc60 | 78 20 24 61 72 67 73 20 24 69 64 78 5d 0a 09 73 77 69 74 63 68 20 2d 67 6c 6f 62 20 2d 2d 20 24 | x.$args.$idx]..switch.-glob.--.$ |
3dc80 | 66 6c 61 67 20 7b 0a 09 20 20 20 20 2d 2d 20 7b 0a 09 09 23 20 64 6f 6e 65 20 77 69 74 68 20 74 | flag.{......--.{...#.done.with.t |
3dca0 | 68 65 20 66 6c 61 67 73 0a 09 09 69 6e 63 72 20 69 64 78 0a 09 09 62 72 65 61 6b 0a 09 20 20 20 | he.flags...incr.idx...break..... |
3dcc0 | 20 7d 0a 09 20 20 20 20 2d 76 65 72 62 6f 73 65 20 7b 0a 09 09 73 65 74 20 64 6f 56 65 72 62 6f | .}......-verbose.{...set.doVerbo |
3dce0 | 73 65 20 31 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 2d 6c 61 7a 79 20 7b 0a 09 09 73 65 74 20 64 | se.1......}......-lazy.{...set.d |
3dd00 | 69 72 65 63 74 20 30 0a 09 09 61 70 70 65 6e 64 20 6d 6f 72 65 20 22 20 2d 6c 61 7a 79 22 0a 09 | irect.0...append.more.".-lazy".. |
3dd20 | 20 20 20 20 7d 0a 09 20 20 20 20 2d 64 69 72 65 63 74 20 7b 0a 09 09 61 70 70 65 6e 64 20 6d 6f | ....}......-direct.{...append.mo |
3dd40 | 72 65 20 22 20 2d 64 69 72 65 63 74 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 2d 6c 6f 61 64 20 | re.".-direct"......}......-load. |
3dd60 | 7b 0a 09 09 69 6e 63 72 20 69 64 78 0a 09 09 73 65 74 20 6c 6f 61 64 50 61 74 20 5b 6c 69 6e 64 | {...incr.idx...set.loadPat.[lind |
3dd80 | 65 78 20 24 61 72 67 73 20 24 69 64 78 5d 0a 09 09 61 70 70 65 6e 64 20 6d 6f 72 65 20 22 20 2d | ex.$args.$idx]...append.more.".- |
3dda0 | 6c 6f 61 64 20 24 6c 6f 61 64 50 61 74 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 2d 2a 20 7b 0a | load.$loadPat"......}......-*.{. |
3ddc0 | 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 75 6e 6b 6e 6f 77 6e 20 66 6c | ..return.-code.error."unknown.fl |
3dde0 | 61 67 20 24 66 6c 61 67 3a 20 73 68 6f 75 6c 64 20 62 65 5c 6e 24 75 73 61 67 65 22 0a 09 20 20 | ag.$flag:.should.be\n$usage".... |
3de00 | 20 20 7d 0a 09 20 20 20 20 64 65 66 61 75 6c 74 20 7b 0a 09 09 23 20 64 6f 6e 65 20 77 69 74 68 | ..}......default.{...#.done.with |
3de20 | 20 74 68 65 20 66 6c 61 67 73 0a 09 09 62 72 65 61 6b 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 | .the.flags...break......}..}.... |
3de40 | 20 7d 0a 0a 20 20 20 20 73 65 74 20 64 69 72 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 24 69 | .}......set.dir.[lindex.$args.$i |
3de60 | 64 78 5d 0a 20 20 20 20 73 65 74 20 70 61 74 74 65 72 6e 4c 69 73 74 20 5b 6c 72 61 6e 67 65 20 | dx].....set.patternList.[lrange. |
3de80 | 24 61 72 67 73 20 5b 65 78 70 72 20 7b 24 69 64 78 20 2b 20 31 7d 5d 20 65 6e 64 5d 0a 20 20 20 | $args.[expr.{$idx.+.1}].end].... |
3dea0 | 20 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 70 61 74 74 65 72 6e 4c 69 73 74 5d 20 3d 3d 20 30 | .if.{[llength.$patternList].==.0 |
3dec0 | 7d 20 7b 0a 09 73 65 74 20 70 61 74 74 65 72 6e 4c 69 73 74 20 5b 6c 69 73 74 20 22 2a 2e 74 63 | }.{..set.patternList.[list."*.tc |
3dee0 | 6c 22 20 22 2a 5b 69 6e 66 6f 20 73 68 61 72 65 64 6c 69 62 65 78 74 65 6e 73 69 6f 6e 5d 22 5d | l"."*[info.sharedlibextension]"] |
3df00 | 0a 20 20 20 20 7d 0a 0a 20 20 20 20 73 65 74 20 6f 6c 64 44 69 72 20 5b 70 77 64 5d 0a 20 20 20 | .....}......set.oldDir.[pwd].... |
3df20 | 20 63 64 20 24 64 69 72 0a 0a 20 20 20 20 69 66 20 7b 5b 63 61 74 63 68 20 7b 65 76 61 6c 20 67 | .cd.$dir......if.{[catch.{eval.g |
3df40 | 6c 6f 62 20 24 70 61 74 74 65 72 6e 4c 69 73 74 7d 20 66 69 6c 65 4c 69 73 74 5d 7d 20 7b 0a 09 | lob.$patternList}.fileList]}.{.. |
3df60 | 67 6c 6f 62 61 6c 20 65 72 72 6f 72 43 6f 64 65 20 65 72 72 6f 72 49 6e 66 6f 0a 09 63 64 20 24 | global.errorCode.errorInfo..cd.$ |
3df80 | 6f 6c 64 44 69 72 0a 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 2d 65 72 72 6f | oldDir..return.-code.error.-erro |
3dfa0 | 72 63 6f 64 65 20 24 65 72 72 6f 72 43 6f 64 65 20 2d 65 72 72 6f 72 69 6e 66 6f 20 24 65 72 72 | rcode.$errorCode.-errorinfo.$err |
3dfc0 | 6f 72 49 6e 66 6f 20 24 66 69 6c 65 4c 69 73 74 0a 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 65 61 | orInfo.$fileList.....}.....forea |
3dfe0 | 63 68 20 66 69 6c 65 20 24 66 69 6c 65 4c 69 73 74 20 7b 0a 09 23 20 46 6f 72 20 65 61 63 68 20 | ch.file.$fileList.{..#.For.each. |
3e000 | 66 69 6c 65 2c 20 66 69 67 75 72 65 20 6f 75 74 20 77 68 61 74 20 63 6f 6d 6d 61 6e 64 73 20 61 | file,.figure.out.what.commands.a |
3e020 | 6e 64 20 70 61 63 6b 61 67 65 73 20 69 74 20 70 72 6f 76 69 64 65 73 2e 0a 09 23 20 54 6f 20 64 | nd.packages.it.provides...#.To.d |
3e040 | 6f 20 74 68 69 73 2c 20 63 72 65 61 74 65 20 61 20 63 68 69 6c 64 20 69 6e 74 65 72 70 72 65 74 | o.this,.create.a.child.interpret |
3e060 | 65 72 2c 20 6c 6f 61 64 20 74 68 65 20 66 69 6c 65 20 69 6e 74 6f 20 74 68 65 0a 09 23 20 69 6e | er,.load.the.file.into.the..#.in |
3e080 | 74 65 72 70 72 65 74 65 72 2c 20 61 6e 64 20 67 65 74 20 61 20 6c 69 73 74 20 6f 66 20 74 68 65 | terpreter,.and.get.a.list.of.the |
3e0a0 | 20 6e 65 77 20 63 6f 6d 6d 61 6e 64 73 20 61 6e 64 20 70 61 63 6b 61 67 65 73 0a 09 23 20 74 68 | .new.commands.and.packages..#.th |
3e0c0 | 61 74 20 61 72 65 20 64 65 66 69 6e 65 64 2e 0a 0a 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 | at.are.defined....if.{[string.eq |
3e0e0 | 75 61 6c 20 24 66 69 6c 65 20 22 70 6b 67 49 6e 64 65 78 2e 74 63 6c 22 5d 7d 20 7b 0a 09 20 20 | ual.$file."pkgIndex.tcl"]}.{.... |
3e100 | 20 20 63 6f 6e 74 69 6e 75 65 0a 09 7d 0a 0a 09 23 20 43 68 61 6e 67 65 64 20 62 61 63 6b 20 74 | ..continue..}...#.Changed.back.t |
3e120 | 6f 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 64 69 72 65 63 74 6f 72 79 20 62 65 66 6f 72 65 20 | o.the.original.directory.before. |
3e140 | 69 6e 69 74 69 61 6c 69 7a 69 6e 67 20 74 68 65 0a 09 23 20 73 6c 61 76 65 20 69 6e 20 63 61 73 | initializing.the..#.slave.in.cas |
3e160 | 65 20 54 43 4c 5f 4c 49 42 52 41 52 59 20 69 73 20 61 20 72 65 6c 61 74 69 76 65 20 70 61 74 68 | e.TCL_LIBRARY.is.a.relative.path |
3e180 | 20 28 65 2e 67 2e 20 69 6e 20 74 68 65 20 74 65 73 74 0a 09 23 20 73 75 69 74 65 29 2e 20 0a 0a | .(e.g..in.the.test..#.suite).... |
3e1a0 | 09 63 64 20 24 6f 6c 64 44 69 72 0a 09 73 65 74 20 63 20 5b 69 6e 74 65 72 70 20 63 72 65 61 74 | .cd.$oldDir..set.c.[interp.creat |
3e1c0 | 65 5d 0a 0a 09 23 20 4c 6f 61 64 20 69 6e 74 6f 20 74 68 65 20 63 68 69 6c 64 20 61 6e 79 20 70 | e]...#.Load.into.the.child.any.p |
3e1e0 | 61 63 6b 61 67 65 73 20 63 75 72 72 65 6e 74 6c 79 20 6c 6f 61 64 65 64 20 69 6e 20 74 68 65 20 | ackages.currently.loaded.in.the. |
3e200 | 70 61 72 65 6e 74 0a 09 23 20 69 6e 74 65 72 70 72 65 74 65 72 20 74 68 61 74 20 6d 61 74 63 68 | parent..#.interpreter.that.match |
3e220 | 20 74 68 65 20 2d 6c 6f 61 64 20 70 61 74 74 65 72 6e 2e 0a 0a 09 66 6f 72 65 61 63 68 20 70 6b | .the.-load.pattern....foreach.pk |
3e240 | 67 20 5b 69 6e 66 6f 20 6c 6f 61 64 65 64 5d 20 7b 0a 09 20 20 20 20 69 66 20 7b 21 20 5b 73 74 | g.[info.loaded].{......if.{!.[st |
3e260 | 72 69 6e 67 20 6d 61 74 63 68 20 24 6c 6f 61 64 50 61 74 20 5b 6c 69 6e 64 65 78 20 24 70 6b 67 | ring.match.$loadPat.[lindex.$pkg |
3e280 | 20 31 5d 5d 7d 20 7b 0a 09 09 63 6f 6e 74 69 6e 75 65 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 | .1]]}.{...continue......}......i |
3e2a0 | 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 5b 6c 69 6e 64 65 78 20 24 70 6b 67 20 31 5d | f.{[string.equal.[lindex.$pkg.1] |
3e2c0 | 20 22 54 6b 22 5d 7d 20 7b 0a 09 09 24 63 20 65 76 61 6c 20 7b 73 65 74 20 61 72 67 76 20 7b 2d | ."Tk"]}.{...$c.eval.{set.argv.{- |
3e2e0 | 67 65 6f 6d 65 74 72 79 20 2b 30 2b 30 7d 7d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b | geometry.+0+0}}......}......if.{ |
3e300 | 5b 63 61 74 63 68 20 7b 0a 09 09 6c 6f 61 64 20 5b 6c 69 6e 64 65 78 20 24 70 6b 67 20 30 5d 20 | [catch.{...load.[lindex.$pkg.0]. |
3e320 | 5b 6c 69 6e 64 65 78 20 24 70 6b 67 20 31 5d 20 24 63 0a 09 20 20 20 20 7d 20 65 72 72 5d 7d 20 | [lindex.$pkg.1].$c......}.err]}. |
3e340 | 7b 0a 09 09 69 66 20 7b 24 64 6f 56 65 72 62 6f 73 65 7d 20 7b 0a 09 09 20 20 20 20 74 63 6c 4c | {...if.{$doVerbose}.{.......tclL |
3e360 | 6f 67 20 22 77 61 72 6e 69 6e 67 3a 20 6c 6f 61 64 20 5b 6c 69 6e 64 65 78 20 24 70 6b 67 20 30 | og."warning:.load.[lindex.$pkg.0 |
3e380 | 5d 20 5b 6c 69 6e 64 65 78 20 24 70 6b 67 20 31 5d 5c 6e 66 61 69 6c 65 64 20 77 69 74 68 3a 20 | ].[lindex.$pkg.1]\nfailed.with:. |
3e3a0 | 24 65 72 72 22 0a 09 09 7d 0a 09 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 64 6f 56 65 72 62 | $err"...}......}.elseif.{$doVerb |
3e3c0 | 6f 73 65 7d 20 7b 0a 09 09 74 63 6c 4c 6f 67 20 22 6c 6f 61 64 65 64 20 5b 6c 69 6e 64 65 78 20 | ose}.{...tclLog."loaded.[lindex. |
3e3e0 | 24 70 6b 67 20 30 5d 20 5b 6c 69 6e 64 65 78 20 24 70 6b 67 20 31 5d 22 0a 09 20 20 20 20 7d 0a | $pkg.0].[lindex.$pkg.1]"......}. |
3e400 | 09 7d 0a 09 63 64 20 24 64 69 72 0a 0a 09 24 63 20 65 76 61 6c 20 7b 0a 09 20 20 20 20 23 20 53 | .}..cd.$dir...$c.eval.{......#.S |
3e420 | 74 75 62 20 6f 75 74 20 74 68 65 20 70 61 63 6b 61 67 65 20 63 6f 6d 6d 61 6e 64 20 73 6f 20 70 | tub.out.the.package.command.so.p |
3e440 | 61 63 6b 61 67 65 73 20 63 61 6e 0a 09 20 20 20 20 23 20 72 65 71 75 69 72 65 20 6f 74 68 65 72 | ackages.can......#.require.other |
3e460 | 20 70 61 63 6b 61 67 65 73 2e 0a 0a 09 20 20 20 20 72 65 6e 61 6d 65 20 70 61 63 6b 61 67 65 20 | .packages........rename.package. |
3e480 | 5f 5f 70 61 63 6b 61 67 65 5f 6f 72 69 67 0a 09 20 20 20 20 70 72 6f 63 20 70 61 63 6b 61 67 65 | __package_orig......proc.package |
3e4a0 | 20 7b 77 68 61 74 20 61 72 67 73 7d 20 7b 0a 09 09 73 77 69 74 63 68 20 2d 2d 20 24 77 68 61 74 | .{what.args}.{...switch.--.$what |
3e4c0 | 20 7b 0a 09 09 20 20 20 20 72 65 71 75 69 72 65 20 7b 20 72 65 74 75 72 6e 20 3b 20 23 20 69 67 | .{.......require.{.return.;.#.ig |
3e4e0 | 6e 6f 72 65 20 74 72 61 6e 73 69 74 69 76 65 20 72 65 71 75 69 72 65 73 20 7d 0a 09 09 20 20 20 | nore.transitive.requires.}...... |
3e500 | 20 64 65 66 61 75 6c 74 20 7b 20 65 76 61 6c 20 5f 5f 70 61 63 6b 61 67 65 5f 6f 72 69 67 20 7b | .default.{.eval.__package_orig.{ |
3e520 | 24 77 68 61 74 7d 20 24 61 72 67 73 20 7d 0a 09 09 7d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 70 | $what}.$args.}...}......}......p |
3e540 | 72 6f 63 20 74 63 6c 50 6b 67 55 6e 6b 6e 6f 77 6e 20 61 72 67 73 20 7b 7d 0a 09 20 20 20 20 70 | roc.tclPkgUnknown.args.{}......p |
3e560 | 61 63 6b 61 67 65 20 75 6e 6b 6e 6f 77 6e 20 74 63 6c 50 6b 67 55 6e 6b 6e 6f 77 6e 0a 0a 09 20 | ackage.unknown.tclPkgUnknown.... |
3e580 | 20 20 20 23 20 53 74 75 62 20 6f 75 74 20 74 68 65 20 75 6e 6b 6e 6f 77 6e 20 63 6f 6d 6d 61 6e | ...#.Stub.out.the.unknown.comman |
3e5a0 | 64 20 73 6f 20 70 61 63 6b 61 67 65 20 63 61 6e 20 63 61 6c 6c 0a 09 20 20 20 20 23 20 69 6e 74 | d.so.package.can.call......#.int |
3e5c0 | 6f 20 65 61 63 68 20 6f 74 68 65 72 20 64 75 72 69 6e 67 20 74 68 65 69 72 20 69 6e 69 74 69 61 | o.each.other.during.their.initia |
3e5e0 | 6c 69 6c 7a 61 74 69 6f 6e 2e 0a 0a 09 20 20 20 20 70 72 6f 63 20 75 6e 6b 6e 6f 77 6e 20 7b 61 | lilzation........proc.unknown.{a |
3e600 | 72 67 73 7d 20 7b 7d 0a 0a 09 20 20 20 20 23 20 53 74 75 62 20 6f 75 74 20 74 68 65 20 61 75 74 | rgs}.{}.......#.Stub.out.the.aut |
3e620 | 6f 5f 69 6d 70 6f 72 74 20 6d 65 63 68 61 6e 69 73 6d 0a 0a 09 20 20 20 20 70 72 6f 63 20 61 75 | o_import.mechanism.......proc.au |
3e640 | 74 6f 5f 69 6d 70 6f 72 74 20 7b 61 72 67 73 7d 20 7b 7d 0a 0a 09 20 20 20 20 23 20 72 65 73 65 | to_import.{args}.{}.......#.rese |
3e660 | 72 76 65 20 74 68 65 20 3a 3a 74 63 6c 20 6e 61 6d 65 73 70 61 63 65 20 66 6f 72 20 73 75 70 70 | rve.the.::tcl.namespace.for.supp |
3e680 | 6f 72 74 20 70 72 6f 63 73 0a 09 20 20 20 20 23 20 61 6e 64 20 74 65 6d 70 6f 72 61 72 79 20 76 | ort.procs......#.and.temporary.v |
3e6a0 | 61 72 69 61 62 6c 65 73 2e 20 20 54 68 69 73 20 6d 69 67 68 74 20 6d 61 6b 65 20 69 74 20 61 77 | ariables...This.might.make.it.aw |
3e6c0 | 6b 77 61 72 64 0a 09 20 20 20 20 23 20 74 6f 20 67 65 6e 65 72 61 74 65 20 61 20 70 6b 67 49 6e | kward......#.to.generate.a.pkgIn |
3e6e0 | 64 65 78 2e 74 63 6c 20 66 69 6c 65 20 66 6f 72 20 74 68 65 20 3a 3a 74 63 6c 20 6e 61 6d 65 73 | dex.tcl.file.for.the.::tcl.names |
3e700 | 70 61 63 65 2e 0a 0a 09 20 20 20 20 6e 61 6d 65 73 70 61 63 65 20 65 76 61 6c 20 3a 3a 74 63 6c | pace........namespace.eval.::tcl |
3e720 | 20 7b 0a 09 09 76 61 72 69 61 62 6c 65 20 66 69 6c 65 09 09 3b 23 20 43 75 72 72 65 6e 74 20 66 | .{...variable.file..;#.Current.f |
3e740 | 69 6c 65 20 62 65 69 6e 67 20 70 72 6f 63 65 73 73 65 64 0a 09 09 76 61 72 69 61 62 6c 65 20 64 | ile.being.processed...variable.d |
3e760 | 69 72 65 63 74 09 09 3b 23 20 2d 64 69 72 65 63 74 20 66 6c 61 67 20 76 61 6c 75 65 0a 09 09 76 | irect..;#.-direct.flag.value...v |
3e780 | 61 72 69 61 62 6c 65 20 78 09 09 3b 23 20 4c 6f 6f 70 20 76 61 72 69 61 62 6c 65 0a 09 09 76 61 | ariable.x..;#.Loop.variable...va |
3e7a0 | 72 69 61 62 6c 65 20 64 65 62 75 67 09 09 3b 23 20 46 6f 72 20 64 65 62 75 67 67 69 6e 67 0a 09 | riable.debug..;#.For.debugging.. |
3e7c0 | 09 76 61 72 69 61 62 6c 65 20 74 79 70 65 09 09 3b 23 20 22 6c 6f 61 64 22 20 6f 72 20 22 73 6f | .variable.type..;#."load".or."so |
3e7e0 | 75 72 63 65 22 2c 20 66 6f 72 20 2d 64 69 72 65 63 74 0a 09 09 76 61 72 69 61 62 6c 65 20 6e 61 | urce",.for.-direct...variable.na |
3e800 | 6d 65 73 70 61 63 65 73 09 3b 23 20 45 78 69 73 74 69 6e 67 20 6e 61 6d 65 73 70 61 63 65 73 20 | mespaces.;#.Existing.namespaces. |
3e820 | 28 65 2e 67 2e 2c 20 3a 3a 74 63 6c 29 0a 09 09 76 61 72 69 61 62 6c 65 20 70 61 63 6b 61 67 65 | (e.g.,.::tcl)...variable.package |
3e840 | 73 09 3b 23 20 45 78 69 73 74 69 6e 67 20 70 61 63 6b 61 67 65 73 20 28 65 2e 67 2e 2c 20 54 63 | s.;#.Existing.packages.(e.g.,.Tc |
3e860 | 6c 29 0a 09 09 76 61 72 69 61 62 6c 65 20 6f 72 69 67 43 6d 64 73 09 3b 23 20 45 78 69 73 74 69 | l)...variable.origCmds.;#.Existi |
3e880 | 6e 67 20 63 6f 6d 6d 61 6e 64 73 0a 09 09 76 61 72 69 61 62 6c 65 20 6e 65 77 43 6d 64 73 09 3b | ng.commands...variable.newCmds.; |
3e8a0 | 23 20 4e 65 77 6c 79 20 63 72 65 61 74 65 64 20 63 6f 6d 6d 61 6e 64 73 0a 09 09 76 61 72 69 61 | #.Newly.created.commands...varia |
3e8c0 | 62 6c 65 20 6e 65 77 50 6b 67 73 20 7b 7d 09 3b 23 20 4e 65 77 6c 79 20 63 72 65 61 74 65 64 20 | ble.newPkgs.{}.;#.Newly.created. |
3e8e0 | 70 61 63 6b 61 67 65 73 0a 09 20 20 20 20 7d 0a 09 7d 0a 0a 09 24 63 20 65 76 61 6c 20 5b 6c 69 | packages......}..}...$c.eval.[li |
3e900 | 73 74 20 73 65 74 20 3a 3a 74 63 6c 3a 3a 66 69 6c 65 20 24 66 69 6c 65 5d 0a 09 24 63 20 65 76 | st.set.::tcl::file.$file]..$c.ev |
3e920 | 61 6c 20 5b 6c 69 73 74 20 73 65 74 20 3a 3a 74 63 6c 3a 3a 64 69 72 65 63 74 20 24 64 69 72 65 | al.[list.set.::tcl::direct.$dire |
3e940 | 63 74 5d 0a 0a 09 23 20 44 6f 77 6e 6c 6f 61 64 20 6e 65 65 64 65 64 20 70 72 6f 63 65 64 75 72 | ct]...#.Download.needed.procedur |
3e960 | 65 73 20 69 6e 74 6f 20 74 68 65 20 73 6c 61 76 65 20 62 65 63 61 75 73 65 20 77 65 27 76 65 0a | es.into.the.slave.because.we've. |
3e980 | 09 23 20 6a 75 73 74 20 64 65 6c 65 74 65 64 20 74 68 65 20 75 6e 6b 6e 6f 77 6e 20 70 72 6f 63 | .#.just.deleted.the.unknown.proc |
3e9a0 | 65 64 75 72 65 2e 20 20 54 68 69 73 20 64 6f 65 73 6e 27 74 20 68 61 6e 64 6c 65 0a 09 23 20 70 | edure...This.doesn't.handle..#.p |
3e9c0 | 72 6f 63 65 64 75 72 65 73 20 77 69 74 68 20 64 65 66 61 75 6c 74 20 61 72 67 75 6d 65 6e 74 73 | rocedures.with.default.arguments |
3e9e0 | 2e 0a 0a 09 66 6f 72 65 61 63 68 20 70 20 7b 70 6b 67 5f 63 6f 6d 70 61 72 65 45 78 74 65 6e 73 | ....foreach.p.{pkg_compareExtens |
3ea00 | 69 6f 6e 7d 20 7b 0a 09 20 20 20 20 24 63 20 65 76 61 6c 20 5b 6c 69 73 74 20 70 72 6f 63 20 24 | ion}.{......$c.eval.[list.proc.$ |
3ea20 | 70 20 5b 69 6e 66 6f 20 61 72 67 73 20 24 70 5d 20 5b 69 6e 66 6f 20 62 6f 64 79 20 24 70 5d 5d | p.[info.args.$p].[info.body.$p]] |
3ea40 | 0a 09 7d 0a 0a 09 69 66 20 7b 5b 63 61 74 63 68 20 7b 0a 09 20 20 20 20 24 63 20 65 76 61 6c 20 | ..}...if.{[catch.{......$c.eval. |
3ea60 | 7b 0a 09 09 73 65 74 20 3a 3a 74 63 6c 3a 3a 64 65 62 75 67 20 22 6c 6f 61 64 69 6e 67 20 6f 72 | {...set.::tcl::debug."loading.or |
3ea80 | 20 73 6f 75 72 63 69 6e 67 22 0a 0a 09 09 23 20 77 65 20 6e 65 65 64 20 74 6f 20 74 72 61 63 6b | .sourcing"....#.we.need.to.track |
3eaa0 | 20 63 6f 6d 6d 61 6e 64 20 64 65 66 69 6e 65 64 20 62 79 20 65 61 63 68 20 70 61 63 6b 61 67 65 | .command.defined.by.each.package |
3eac0 | 20 65 76 65 6e 20 69 6e 0a 09 09 23 20 74 68 65 20 2d 64 69 72 65 63 74 20 63 61 73 65 2c 20 62 | .even.in...#.the.-direct.case,.b |
3eae0 | 65 63 61 75 73 65 20 74 68 65 79 20 61 72 65 20 6e 65 65 64 65 64 20 69 6e 74 65 72 6e 61 6c 6c | ecause.they.are.needed.internall |
3eb00 | 79 20 62 79 0a 09 09 23 20 74 68 65 20 22 70 61 72 74 69 61 6c 20 70 6b 67 49 6e 64 65 78 2e 74 | y.by...#.the."partial.pkgIndex.t |
3eb20 | 63 6c 22 20 73 74 65 70 20 61 62 6f 76 65 2e 0a 0a 09 09 70 72 6f 63 20 3a 3a 74 63 6c 3a 3a 47 | cl".step.above.....proc.::tcl::G |
3eb40 | 65 74 41 6c 6c 4e 61 6d 65 73 70 61 63 65 73 20 7b 7b 72 6f 6f 74 20 3a 3a 7d 7d 20 7b 0a 09 09 | etAllNamespaces.{{root.::}}.{... |
3eb60 | 20 20 20 20 73 65 74 20 6c 69 73 74 20 24 72 6f 6f 74 0a 09 09 20 20 20 20 66 6f 72 65 61 63 68 | ....set.list.$root.......foreach |
3eb80 | 20 6e 73 20 5b 6e 61 6d 65 73 70 61 63 65 20 63 68 69 6c 64 72 65 6e 20 24 72 6f 6f 74 5d 20 7b | .ns.[namespace.children.$root].{ |
3eba0 | 0a 09 09 09 65 76 61 6c 20 6c 61 70 70 65 6e 64 20 6c 69 73 74 20 5b 3a 3a 74 63 6c 3a 3a 47 65 | ....eval.lappend.list.[::tcl::Ge |
3ebc0 | 74 41 6c 6c 4e 61 6d 65 73 70 61 63 65 73 20 24 6e 73 5d 0a 09 09 20 20 20 20 7d 0a 09 09 20 20 | tAllNamespaces.$ns].......}..... |
3ebe0 | 20 20 72 65 74 75 72 6e 20 24 6c 69 73 74 0a 09 09 7d 0a 0a 09 09 23 20 69 6e 69 74 20 74 68 65 | ..return.$list...}....#.init.the |
3ec00 | 20 6c 69 73 74 20 6f 66 20 65 78 69 73 74 69 6e 67 20 6e 61 6d 65 73 70 61 63 65 73 2c 20 70 61 | .list.of.existing.namespaces,.pa |
3ec20 | 63 6b 61 67 65 73 2c 20 63 6f 6d 6d 61 6e 64 73 0a 0a 09 09 66 6f 72 65 61 63 68 20 3a 3a 74 63 | ckages,.commands....foreach.::tc |
3ec40 | 6c 3a 3a 78 20 5b 3a 3a 74 63 6c 3a 3a 47 65 74 41 6c 6c 4e 61 6d 65 73 70 61 63 65 73 5d 20 7b | l::x.[::tcl::GetAllNamespaces].{ |
3ec60 | 0a 09 09 20 20 20 20 73 65 74 20 3a 3a 74 63 6c 3a 3a 6e 61 6d 65 73 70 61 63 65 73 28 24 3a 3a | .......set.::tcl::namespaces($:: |
3ec80 | 74 63 6c 3a 3a 78 29 20 31 0a 09 09 7d 0a 09 09 66 6f 72 65 61 63 68 20 3a 3a 74 63 6c 3a 3a 78 | tcl::x).1...}...foreach.::tcl::x |
3eca0 | 20 5b 70 61 63 6b 61 67 65 20 6e 61 6d 65 73 5d 20 7b 0a 09 09 20 20 20 20 73 65 74 20 3a 3a 74 | .[package.names].{.......set.::t |
3ecc0 | 63 6c 3a 3a 70 61 63 6b 61 67 65 73 28 24 3a 3a 74 63 6c 3a 3a 78 29 20 31 0a 09 09 7d 0a 09 09 | cl::packages($::tcl::x).1...}... |
3ece0 | 73 65 74 20 3a 3a 74 63 6c 3a 3a 6f 72 69 67 43 6d 64 73 20 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e | set.::tcl::origCmds.[info.comman |
3ed00 | 64 73 5d 0a 0a 09 09 23 20 54 72 79 20 74 6f 20 6c 6f 61 64 20 74 68 65 20 66 69 6c 65 20 69 66 | ds]....#.Try.to.load.the.file.if |
3ed20 | 20 69 74 20 68 61 73 20 74 68 65 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 79 0a 09 09 23 20 65 | .it.has.the.shared.library...#.e |
3ed40 | 78 74 65 6e 73 69 6f 6e 2c 20 6f 74 68 65 72 77 69 73 65 20 73 6f 75 72 63 65 20 69 74 2e 20 20 | xtension,.otherwise.source.it... |
3ed60 | 49 74 27 73 20 69 6d 70 6f 72 74 61 6e 74 20 6e 6f 74 20 74 6f 0a 09 09 23 20 74 72 79 20 74 6f | It's.important.not.to...#.try.to |
3ed80 | 20 6c 6f 61 64 20 66 69 6c 65 73 20 74 68 61 74 20 61 72 65 6e 27 74 20 73 68 61 72 65 64 20 6c | .load.files.that.aren't.shared.l |
3eda0 | 69 62 72 61 72 69 65 73 2c 20 62 65 63 61 75 73 65 0a 09 09 23 20 6f 6e 20 73 6f 6d 65 20 73 79 | ibraries,.because...#.on.some.sy |
3edc0 | 73 74 65 6d 73 20 28 6c 69 6b 65 20 53 75 6e 4f 53 29 20 74 68 65 20 6c 6f 61 64 65 72 20 77 69 | stems.(like.SunOS).the.loader.wi |
3ede0 | 6c 6c 20 61 62 6f 72 74 20 74 68 65 0a 09 09 23 20 77 68 6f 6c 65 20 61 70 70 6c 69 63 61 74 69 | ll.abort.the...#.whole.applicati |
3ee00 | 6f 6e 20 77 68 65 6e 20 69 74 20 67 65 74 73 20 61 6e 20 65 72 72 6f 72 2e 0a 0a 09 09 69 66 20 | on.when.it.gets.an.error.....if. |
3ee20 | 7b 5b 70 6b 67 5f 63 6f 6d 70 61 72 65 45 78 74 65 6e 73 69 6f 6e 20 24 3a 3a 74 63 6c 3a 3a 66 | {[pkg_compareExtension.$::tcl::f |
3ee40 | 69 6c 65 20 5b 69 6e 66 6f 20 73 68 61 72 65 64 6c 69 62 65 78 74 65 6e 73 69 6f 6e 5d 5d 7d 20 | ile.[info.sharedlibextension]]}. |
3ee60 | 7b 0a 09 09 20 20 20 20 23 20 54 68 65 20 22 66 69 6c 65 20 6a 6f 69 6e 20 2e 22 20 63 6f 6d 6d | {.......#.The."file.join..".comm |
3ee80 | 61 6e 64 20 62 65 6c 6f 77 20 69 73 20 6e 65 63 65 73 73 61 72 79 2e 0a 09 09 20 20 20 20 23 20 | and.below.is.necessary........#. |
3eea0 | 57 69 74 68 6f 75 74 20 69 74 2c 20 69 66 20 74 68 65 20 66 69 6c 65 20 6e 61 6d 65 20 68 61 73 | Without.it,.if.the.file.name.has |
3eec0 | 20 6e 6f 20 5c 27 73 20 61 6e 64 20 77 65 27 72 65 0a 09 09 20 20 20 20 23 20 6f 6e 20 55 4e 49 | .no.\'s.and.we're.......#.on.UNI |
3eee0 | 58 2c 20 74 68 65 20 6c 6f 61 64 20 63 6f 6d 6d 61 6e 64 20 77 69 6c 6c 20 69 6e 76 6f 6b 65 20 | X,.the.load.command.will.invoke. |
3ef00 | 74 68 65 0a 09 09 20 20 20 20 23 20 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54 48 20 73 65 61 72 | the.......#.LD_LIBRARY_PATH.sear |
3ef20 | 63 68 20 6d 65 63 68 61 6e 69 73 6d 2c 20 77 68 69 63 68 20 63 6f 75 6c 64 20 63 61 75 73 65 0a | ch.mechanism,.which.could.cause. |
3ef40 | 09 09 20 20 20 20 23 20 74 68 65 20 77 72 6f 6e 67 20 66 69 6c 65 20 74 6f 20 62 65 20 75 73 65 | ......#.the.wrong.file.to.be.use |
3ef60 | 64 2e 0a 0a 09 09 20 20 20 20 73 65 74 20 3a 3a 74 63 6c 3a 3a 64 65 62 75 67 20 6c 6f 61 64 69 | d.........set.::tcl::debug.loadi |
3ef80 | 6e 67 0a 09 09 20 20 20 20 6c 6f 61 64 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 2e 20 24 3a 3a 74 63 | ng.......load.[file.join...$::tc |
3efa0 | 6c 3a 3a 66 69 6c 65 5d 0a 09 09 20 20 20 20 73 65 74 20 3a 3a 74 63 6c 3a 3a 74 79 70 65 20 6c | l::file].......set.::tcl::type.l |
3efc0 | 6f 61 64 0a 09 09 7d 20 65 6c 73 65 20 7b 0a 09 09 20 20 20 20 73 65 74 20 3a 3a 74 63 6c 3a 3a | oad...}.else.{.......set.::tcl:: |
3efe0 | 64 65 62 75 67 20 73 6f 75 72 63 69 6e 67 0a 09 09 20 20 20 20 73 6f 75 72 63 65 20 24 3a 3a 74 | debug.sourcing.......source.$::t |
3f000 | 63 6c 3a 3a 66 69 6c 65 0a 09 09 20 20 20 20 73 65 74 20 3a 3a 74 63 6c 3a 3a 74 79 70 65 20 73 | cl::file.......set.::tcl::type.s |
3f020 | 6f 75 72 63 65 0a 09 09 7d 0a 0a 09 09 23 20 41 73 20 61 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 | ource...}....#.As.a.performance. |
3f040 | 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 2c 20 69 66 20 77 65 20 61 72 65 20 63 72 65 61 74 69 6e 67 | optimization,.if.we.are.creating |
3f060 | 20 0a 09 09 23 20 64 69 72 65 63 74 20 6c 6f 61 64 20 70 61 63 6b 61 67 65 73 2c 20 64 6f 6e 27 | ....#.direct.load.packages,.don' |
3f080 | 74 20 62 6f 74 68 65 72 20 66 69 67 75 72 69 6e 67 20 6f 75 74 20 74 68 65 20 0a 09 09 23 20 73 | t.bother.figuring.out.the....#.s |
3f0a0 | 65 74 20 6f 66 20 63 6f 6d 6d 61 6e 64 73 20 63 72 65 61 74 65 64 20 62 79 20 74 68 65 20 6e 65 | et.of.commands.created.by.the.ne |
3f0c0 | 77 20 70 61 63 6b 61 67 65 73 2e 20 20 57 65 20 0a 09 09 23 20 6f 6e 6c 79 20 6e 65 65 64 20 74 | w.packages...We....#.only.need.t |
3f0e0 | 68 61 74 20 6c 69 73 74 20 66 6f 72 20 73 65 74 74 69 6e 67 20 75 70 20 74 68 65 20 61 75 74 6f | hat.list.for.setting.up.the.auto |
3f100 | 6c 6f 61 64 69 6e 67 20 0a 09 09 23 20 75 73 65 64 20 69 6e 20 74 68 65 20 6e 6f 6e 2d 64 69 72 | loading....#.used.in.the.non-dir |
3f120 | 65 63 74 20 63 61 73 65 2e 0a 09 09 69 66 20 7b 20 21 24 3a 3a 74 63 6c 3a 3a 64 69 72 65 63 74 | ect.case....if.{.!$::tcl::direct |
3f140 | 20 7d 20 7b 0a 09 09 20 20 20 20 23 20 53 65 65 20 77 68 61 74 20 6e 65 77 20 6e 61 6d 65 73 70 | .}.{.......#.See.what.new.namesp |
3f160 | 61 63 65 73 20 61 70 70 65 61 72 65 64 2c 20 61 6e 64 20 69 6d 70 6f 72 74 20 63 6f 6d 6d 61 6e | aces.appeared,.and.import.comman |
3f180 | 64 73 0a 09 09 20 20 20 20 23 20 66 72 6f 6d 20 74 68 65 6d 2e 20 20 4f 6e 6c 79 20 65 78 70 6f | ds.......#.from.them...Only.expo |
3f1a0 | 72 74 65 64 20 63 6f 6d 6d 61 6e 64 73 20 67 6f 20 69 6e 74 6f 20 74 68 65 20 69 6e 64 65 78 2e | rted.commands.go.into.the.index. |
3f1c0 | 0a 09 09 20 20 20 20 0a 09 09 20 20 20 20 66 6f 72 65 61 63 68 20 3a 3a 74 63 6c 3a 3a 78 20 5b | ..............foreach.::tcl::x.[ |
3f1e0 | 3a 3a 74 63 6c 3a 3a 47 65 74 41 6c 6c 4e 61 6d 65 73 70 61 63 65 73 5d 20 7b 0a 09 09 09 69 66 | ::tcl::GetAllNamespaces].{....if |
3f200 | 20 7b 21 20 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 3a 3a 74 63 6c 3a 3a 6e 61 6d 65 73 70 61 63 | .{!.[info.exists.::tcl::namespac |
3f220 | 65 73 28 24 3a 3a 74 63 6c 3a 3a 78 29 5d 7d 20 7b 0a 09 09 09 20 20 20 20 6e 61 6d 65 73 70 61 | es($::tcl::x)]}.{........namespa |
3f240 | 63 65 20 69 6d 70 6f 72 74 20 2d 66 6f 72 63 65 20 24 7b 3a 3a 74 63 6c 3a 3a 78 7d 3a 3a 2a 0a | ce.import.-force.${::tcl::x}::*. |
3f260 | 09 09 09 7d 0a 0a 09 09 09 23 20 46 69 67 75 72 65 20 6f 75 74 20 77 68 61 74 20 63 6f 6d 6d 61 | ...}.....#.Figure.out.what.comma |
3f280 | 6e 64 73 20 61 70 70 65 61 72 65 64 0a 09 09 09 0a 09 09 09 66 6f 72 65 61 63 68 20 3a 3a 74 63 | nds.appeared........foreach.::tc |
3f2a0 | 6c 3a 3a 78 20 5b 69 6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 5d 20 7b 0a 09 09 09 20 20 20 20 73 65 | l::x.[info.commands].{........se |
3f2c0 | 74 20 3a 3a 74 63 6c 3a 3a 6e 65 77 43 6d 64 73 28 24 3a 3a 74 63 6c 3a 3a 78 29 20 31 0a 09 09 | t.::tcl::newCmds($::tcl::x).1... |
3f2e0 | 09 7d 0a 09 09 09 66 6f 72 65 61 63 68 20 3a 3a 74 63 6c 3a 3a 78 20 24 3a 3a 74 63 6c 3a 3a 6f | .}....foreach.::tcl::x.$::tcl::o |
3f300 | 72 69 67 43 6d 64 73 20 7b 0a 09 09 09 20 20 20 20 63 61 74 63 68 20 7b 75 6e 73 65 74 20 3a 3a | rigCmds.{........catch.{unset.:: |
3f320 | 74 63 6c 3a 3a 6e 65 77 43 6d 64 73 28 24 3a 3a 74 63 6c 3a 3a 78 29 7d 0a 09 09 09 7d 0a 09 09 | tcl::newCmds($::tcl::x)}....}... |
3f340 | 09 66 6f 72 65 61 63 68 20 3a 3a 74 63 6c 3a 3a 78 20 5b 61 72 72 61 79 20 6e 61 6d 65 73 20 3a | .foreach.::tcl::x.[array.names.: |
3f360 | 3a 74 63 6c 3a 3a 6e 65 77 43 6d 64 73 5d 20 7b 0a 09 09 09 20 20 20 20 23 20 64 65 74 65 72 6d | :tcl::newCmds].{........#.determ |
3f380 | 69 6e 65 20 77 68 69 63 68 20 6e 61 6d 65 73 70 61 63 65 20 61 20 63 6f 6d 6d 61 6e 64 20 63 6f | ine.which.namespace.a.command.co |
3f3a0 | 6d 65 73 20 66 72 6f 6d 0a 09 09 09 20 20 20 20 0a 09 09 09 20 20 20 20 73 65 74 20 3a 3a 74 63 | mes.from................set.::tc |
3f3c0 | 6c 3a 3a 61 62 73 20 5b 6e 61 6d 65 73 70 61 63 65 20 6f 72 69 67 69 6e 20 24 3a 3a 74 63 6c 3a | l::abs.[namespace.origin.$::tcl: |
3f3e0 | 3a 78 5d 0a 09 09 09 20 20 20 20 0a 09 09 09 20 20 20 20 23 20 73 70 65 63 69 61 6c 20 63 61 73 | :x]................#.special.cas |
3f400 | 65 20 73 6f 20 74 68 61 74 20 67 6c 6f 62 61 6c 20 6e 61 6d 65 73 20 68 61 76 65 20 6e 6f 20 6c | e.so.that.global.names.have.no.l |
3f420 | 65 61 64 69 6e 67 0a 09 09 09 20 20 20 20 23 20 3a 3a 2c 20 74 68 69 73 20 69 73 20 72 65 71 75 | eading........#.::,.this.is.requ |
3f440 | 69 72 65 64 20 62 79 20 74 68 65 20 75 6e 6b 6e 6f 77 6e 20 63 6f 6d 6d 61 6e 64 0a 09 09 09 20 | ired.by.the.unknown.command..... |
3f460 | 20 20 20 0a 09 09 09 20 20 20 20 73 65 74 20 3a 3a 74 63 6c 3a 3a 61 62 73 20 5c 0a 09 09 09 09 | ...........set.::tcl::abs.\..... |
3f480 | 20 20 20 20 5b 6c 69 6e 64 65 78 20 5b 61 75 74 6f 5f 71 75 61 6c 69 66 79 20 24 3a 3a 74 63 6c | ....[lindex.[auto_qualify.$::tcl |
3f4a0 | 3a 3a 61 62 73 20 3a 3a 5d 20 30 5d 0a 09 09 09 20 20 20 20 0a 09 09 09 20 20 20 20 69 66 20 7b | ::abs.::].0]................if.{ |
3f4c0 | 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 24 3a 3a 74 63 6c 3a 3a 78 20 24 3a 3a 74 63 6c | [string.compare.$::tcl::x.$::tcl |
3f4e0 | 3a 3a 61 62 73 5d 7d 20 7b 0a 09 09 09 09 23 20 4e 61 6d 65 20 63 68 61 6e 67 65 64 20 64 75 72 | ::abs]}.{.....#.Name.changed.dur |
3f500 | 69 6e 67 20 71 75 61 6c 69 66 69 63 61 74 69 6f 6e 0a 09 09 09 09 0a 09 09 09 09 73 65 74 20 3a | ing.qualification..........set.: |
3f520 | 3a 74 63 6c 3a 3a 6e 65 77 43 6d 64 73 28 24 3a 3a 74 63 6c 3a 3a 61 62 73 29 20 31 0a 09 09 09 | :tcl::newCmds($::tcl::abs).1.... |
3f540 | 09 75 6e 73 65 74 20 3a 3a 74 63 6c 3a 3a 6e 65 77 43 6d 64 73 28 24 3a 3a 74 63 6c 3a 3a 78 29 | .unset.::tcl::newCmds($::tcl::x) |
3f560 | 0a 09 09 09 20 20 20 20 7d 0a 09 09 09 7d 0a 09 09 20 20 20 20 7d 0a 09 09 7d 0a 0a 09 09 23 20 | ........}....}.......}...}....#. |
3f580 | 4c 6f 6f 6b 20 74 68 72 6f 75 67 68 20 74 68 65 20 70 61 63 6b 61 67 65 73 20 74 68 61 74 20 61 | Look.through.the.packages.that.a |
3f5a0 | 70 70 65 61 72 65 64 2c 20 61 6e 64 20 69 66 20 74 68 65 72 65 20 69 73 0a 09 09 23 20 61 20 76 | ppeared,.and.if.there.is...#.a.v |
3f5c0 | 65 72 73 69 6f 6e 20 70 72 6f 76 69 64 65 64 2c 20 74 68 65 6e 20 72 65 63 6f 72 64 20 69 74 0a | ersion.provided,.then.record.it. |
3f5e0 | 0a 09 09 66 6f 72 65 61 63 68 20 3a 3a 74 63 6c 3a 3a 78 20 5b 70 61 63 6b 61 67 65 20 6e 61 6d | ...foreach.::tcl::x.[package.nam |
3f600 | 65 73 5d 20 7b 0a 09 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 20 | es].{.......if.{[string.compare. |
3f620 | 5b 70 61 63 6b 61 67 65 20 70 72 6f 76 69 64 65 20 24 3a 3a 74 63 6c 3a 3a 78 5d 20 22 22 5d 20 | [package.provide.$::tcl::x].""]. |
3f640 | 5c 0a 09 09 09 20 20 20 20 26 26 20 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 3a 3a 74 63 6c 3a | \........&&.![info.exists.::tcl: |
3f660 | 3a 70 61 63 6b 61 67 65 73 28 24 3a 3a 74 63 6c 3a 3a 78 29 5d 7d 20 7b 0a 09 09 09 6c 61 70 70 | :packages($::tcl::x)]}.{....lapp |
3f680 | 65 6e 64 20 3a 3a 74 63 6c 3a 3a 6e 65 77 50 6b 67 73 20 5c 0a 09 09 09 20 20 20 20 5b 6c 69 73 | end.::tcl::newPkgs.\........[lis |
3f6a0 | 74 20 24 3a 3a 74 63 6c 3a 3a 78 20 5b 70 61 63 6b 61 67 65 20 70 72 6f 76 69 64 65 20 24 3a 3a | t.$::tcl::x.[package.provide.$:: |
3f6c0 | 74 63 6c 3a 3a 78 5d 5d 0a 09 09 20 20 20 20 7d 0a 09 09 7d 0a 09 20 20 20 20 7d 0a 09 7d 20 6d | tcl::x]].......}...}......}..}.m |
3f6e0 | 73 67 5d 20 3d 3d 20 31 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 77 68 61 74 20 5b 24 63 20 65 76 | sg].==.1}.{......set.what.[$c.ev |
3f700 | 61 6c 20 73 65 74 20 3a 3a 74 63 6c 3a 3a 64 65 62 75 67 5d 0a 09 20 20 20 20 69 66 20 7b 24 64 | al.set.::tcl::debug]......if.{$d |
3f720 | 6f 56 65 72 62 6f 73 65 7d 20 7b 0a 09 09 74 63 6c 4c 6f 67 20 22 77 61 72 6e 69 6e 67 3a 20 65 | oVerbose}.{...tclLog."warning:.e |
3f740 | 72 72 6f 72 20 77 68 69 6c 65 20 24 77 68 61 74 20 24 66 69 6c 65 3a 20 24 6d 73 67 22 0a 09 20 | rror.while.$what.$file:.$msg"... |
3f760 | 20 20 20 7d 0a 09 7d 20 65 6c 73 65 20 7b 0a 09 20 20 20 20 73 65 74 20 74 79 70 65 20 5b 24 63 | ...}..}.else.{......set.type.[$c |
3f780 | 20 65 76 61 6c 20 73 65 74 20 3a 3a 74 63 6c 3a 3a 74 79 70 65 5d 0a 09 20 20 20 20 73 65 74 20 | .eval.set.::tcl::type]......set. |
3f7a0 | 63 6d 64 73 20 5b 6c 73 6f 72 74 20 5b 24 63 20 65 76 61 6c 20 61 72 72 61 79 20 6e 61 6d 65 73 | cmds.[lsort.[$c.eval.array.names |
3f7c0 | 20 3a 3a 74 63 6c 3a 3a 6e 65 77 43 6d 64 73 5d 5d 0a 09 20 20 20 20 73 65 74 20 70 6b 67 73 20 | .::tcl::newCmds]]......set.pkgs. |
3f7e0 | 5b 24 63 20 65 76 61 6c 20 73 65 74 20 3a 3a 74 63 6c 3a 3a 6e 65 77 50 6b 67 73 5d 0a 09 20 20 | [$c.eval.set.::tcl::newPkgs].... |
3f800 | 20 20 69 66 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 70 6b 67 73 5d 20 3e 20 31 7d 20 7b 0a 09 09 74 | ..if.{[llength.$pkgs].>.1}.{...t |
3f820 | 63 6c 4c 6f 67 20 22 77 61 72 6e 69 6e 67 3a 20 5c 22 24 66 69 6c 65 5c 22 20 70 72 6f 76 69 64 | clLog."warning:.\"$file\".provid |
3f840 | 65 73 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 65 20 70 61 63 6b 61 67 65 20 28 24 70 6b 67 73 29 | es.more.than.one.package.($pkgs) |
3f860 | 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 66 6f 72 65 61 63 68 20 70 6b 67 20 24 70 6b 67 73 20 | "......}......foreach.pkg.$pkgs. |
3f880 | 7b 0a 09 09 23 20 63 6d 64 73 20 69 73 20 65 6d 70 74 79 2f 6e 6f 74 20 75 73 65 64 20 69 6e 20 | {...#.cmds.is.empty/not.used.in. |
3f8a0 | 74 68 65 20 64 69 72 65 63 74 20 63 61 73 65 0a 09 09 6c 61 70 70 65 6e 64 20 66 69 6c 65 73 28 | the.direct.case...lappend.files( |
3f8c0 | 24 70 6b 67 29 20 5b 6c 69 73 74 20 24 66 69 6c 65 20 24 74 79 70 65 20 24 63 6d 64 73 5d 0a 09 | $pkg).[list.$file.$type.$cmds].. |
3f8e0 | 20 20 20 20 7d 0a 0a 09 20 20 20 20 69 66 20 7b 24 64 6f 56 65 72 62 6f 73 65 7d 20 7b 0a 09 09 | ....}.......if.{$doVerbose}.{... |
3f900 | 74 63 6c 4c 6f 67 20 22 70 72 6f 63 65 73 73 65 64 20 24 66 69 6c 65 22 0a 09 20 20 20 20 7d 0a | tclLog."processed.$file"......}. |
3f920 | 09 20 20 20 20 69 6e 74 65 72 70 20 64 65 6c 65 74 65 20 24 63 0a 09 7d 0a 20 20 20 20 7d 0a 0a | .....interp.delete.$c..}.....}.. |
3f940 | 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 54 63 6c 20 70 61 63 6b 61 67 65 20 | ....append.index."#.Tcl.package. |
3f960 | 69 6e 64 65 78 20 66 69 6c 65 2c 20 76 65 72 73 69 6f 6e 20 31 2e 31 5c 6e 22 0a 20 20 20 20 61 | index.file,.version.1.1\n".....a |
3f980 | 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 67 65 6e 65 | ppend.index."#.This.file.is.gene |
3f9a0 | 72 61 74 65 64 20 62 79 20 74 68 65 20 5c 22 70 6b 67 5f 6d 6b 49 6e 64 65 78 24 6d 6f 72 65 5c | rated.by.the.\"pkg_mkIndex$more\ |
3f9c0 | 22 20 63 6f 6d 6d 61 6e 64 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 | ".command\n".....append.index."# |
3f9e0 | 20 61 6e 64 20 73 6f 75 72 63 65 64 20 65 69 74 68 65 72 20 77 68 65 6e 20 61 6e 20 61 70 70 6c | .and.sourced.either.when.an.appl |
3fa00 | 69 63 61 74 69 6f 6e 20 73 74 61 72 74 73 20 75 70 20 6f 72 5c 6e 22 0a 20 20 20 20 61 70 70 65 | ication.starts.up.or\n".....appe |
3fa20 | 6e 64 20 69 6e 64 65 78 20 22 23 20 62 79 20 61 20 5c 22 70 61 63 6b 61 67 65 20 75 6e 6b 6e 6f | nd.index."#.by.a.\"package.unkno |
3fa40 | 77 6e 5c 22 20 73 63 72 69 70 74 2e 20 20 49 74 20 69 6e 76 6f 6b 65 73 20 74 68 65 5c 6e 22 0a | wn\".script...It.invokes.the\n". |
3fa60 | 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 5c 22 70 61 63 6b 61 67 65 20 69 66 | ....append.index."#.\"package.if |
3fa80 | 6e 65 65 64 65 64 5c 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 73 65 74 20 75 70 20 70 61 63 6b 61 | needed\".command.to.set.up.packa |
3faa0 | 67 65 2d 72 65 6c 61 74 65 64 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 | ge-related\n".....append.index." |
3fac0 | 23 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 73 6f 20 74 68 61 74 20 70 61 63 6b 61 67 65 73 20 77 | #.information.so.that.packages.w |
3fae0 | 69 6c 6c 20 62 65 20 6c 6f 61 64 65 64 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 5c 6e 22 0a 20 | ill.be.loaded.automatically\n".. |
3fb00 | 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 69 6e 20 72 65 73 70 6f 6e 73 65 20 74 | ...append.index."#.in.response.t |
3fb20 | 6f 20 5c 22 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 5c 22 20 63 6f 6d 6d 61 6e 64 73 2e 20 | o.\"package.require\".commands.. |
3fb40 | 20 57 68 65 6e 20 74 68 69 73 5c 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 | .When.this\n".....append.index." |
3fb60 | 23 20 73 63 72 69 70 74 20 69 73 20 73 6f 75 72 63 65 64 2c 20 74 68 65 20 76 61 72 69 61 62 6c | #.script.is.sourced,.the.variabl |
3fb80 | 65 20 5c 24 64 69 72 20 6d 75 73 74 20 63 6f 6e 74 61 69 6e 20 74 68 65 5c 6e 22 0a 20 20 20 20 | e.\$dir.must.contain.the\n"..... |
3fba0 | 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 23 20 66 75 6c 6c 20 70 61 74 68 20 6e 61 6d 65 20 6f | append.index."#.full.path.name.o |
3fbc0 | 66 20 74 68 69 73 20 66 69 6c 65 27 73 20 64 69 72 65 63 74 6f 72 79 2e 5c 6e 22 0a 0a 20 20 20 | f.this.file's.directory.\n"..... |
3fbe0 | 20 66 6f 72 65 61 63 68 20 70 6b 67 20 5b 6c 73 6f 72 74 20 5b 61 72 72 61 79 20 6e 61 6d 65 73 | .foreach.pkg.[lsort.[array.names |
3fc00 | 20 66 69 6c 65 73 5d 5d 20 7b 0a 09 73 65 74 20 63 6d 64 20 7b 7d 0a 09 66 6f 72 65 61 63 68 20 | .files]].{..set.cmd.{}..foreach. |
3fc20 | 7b 6e 61 6d 65 20 76 65 72 73 69 6f 6e 7d 20 24 70 6b 67 20 7b 0a 09 20 20 20 20 62 72 65 61 6b | {name.version}.$pkg.{......break |
3fc40 | 0a 09 7d 0a 09 6c 61 70 70 65 6e 64 20 63 6d 64 20 3a 3a 70 6b 67 3a 3a 63 72 65 61 74 65 20 2d | ..}..lappend.cmd.::pkg::create.- |
3fc60 | 6e 61 6d 65 20 24 6e 61 6d 65 20 2d 76 65 72 73 69 6f 6e 20 24 76 65 72 73 69 6f 6e 0a 09 66 6f | name.$name.-version.$version..fo |
3fc80 | 72 65 61 63 68 20 73 70 65 63 20 24 66 69 6c 65 73 28 24 70 6b 67 29 20 7b 0a 09 20 20 20 20 66 | reach.spec.$files($pkg).{......f |
3fca0 | 6f 72 65 61 63 68 20 7b 66 69 6c 65 20 74 79 70 65 20 70 72 6f 63 73 7d 20 24 73 70 65 63 20 7b | oreach.{file.type.procs}.$spec.{ |
3fcc0 | 0a 09 09 69 66 20 7b 20 24 64 69 72 65 63 74 20 7d 20 7b 0a 09 09 20 20 20 20 73 65 74 20 70 72 | ...if.{.$direct.}.{.......set.pr |
3fce0 | 6f 63 73 20 7b 7d 0a 09 09 7d 0a 09 09 6c 61 70 70 65 6e 64 20 63 6d 64 20 22 2d 24 74 79 70 65 | ocs.{}...}...lappend.cmd."-$type |
3fd00 | 22 20 5b 6c 69 73 74 20 24 66 69 6c 65 20 24 70 72 6f 63 73 5d 0a 09 20 20 20 20 7d 0a 09 7d 0a | ".[list.$file.$procs]......}..}. |
3fd20 | 09 61 70 70 65 6e 64 20 69 6e 64 65 78 20 22 5c 6e 5b 65 76 61 6c 20 24 63 6d 64 5d 22 0a 20 20 | .append.index."\n[eval.$cmd]"... |
3fd40 | 20 20 7d 0a 0a 20 20 20 20 73 65 74 20 66 20 5b 6f 70 65 6e 20 70 6b 67 49 6e 64 65 78 2e 74 63 | ..}......set.f.[open.pkgIndex.tc |
3fd60 | 6c 20 77 5d 0a 20 20 20 20 70 75 74 73 20 24 66 20 24 69 6e 64 65 78 0a 20 20 20 20 63 6c 6f 73 | l.w].....puts.$f.$index.....clos |
3fd80 | 65 20 24 66 0a 20 20 20 20 63 64 20 24 6f 6c 64 44 69 72 0a 7d 0a 0a 23 20 74 63 6c 50 6b 67 53 | e.$f.....cd.$oldDir.}..#.tclPkgS |
3fda0 | 65 74 75 70 20 2d 2d 0a 23 20 54 68 69 73 20 69 73 20 61 20 75 74 69 6c 69 74 79 20 70 72 6f 63 | etup.--.#.This.is.a.utility.proc |
3fdc0 | 65 64 75 72 65 20 75 73 65 20 62 79 20 70 6b 67 49 6e 64 65 78 2e 74 63 6c 20 66 69 6c 65 73 2e | edure.use.by.pkgIndex.tcl.files. |
3fde0 | 20 20 49 74 20 69 73 20 69 6e 76 6f 6b 65 64 0a 23 20 61 73 20 70 61 72 74 20 6f 66 20 61 20 22 | ..It.is.invoked.#.as.part.of.a." |
3fe00 | 70 61 63 6b 61 67 65 20 69 66 6e 65 65 64 65 64 22 20 73 63 72 69 70 74 2e 20 20 49 74 20 63 61 | package.ifneeded".script...It.ca |
3fe20 | 6c 6c 73 20 22 70 61 63 6b 61 67 65 20 70 72 6f 76 69 64 65 22 0a 23 20 74 6f 20 69 6e 64 69 63 | lls."package.provide".#.to.indic |
3fe40 | 61 74 65 20 74 68 61 74 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 61 76 61 69 6c 61 62 6c 65 2c | ate.that.a.package.is.available, |
3fe60 | 20 74 68 65 6e 20 73 65 74 73 20 65 6e 74 72 69 65 73 20 69 6e 20 74 68 65 0a 23 20 61 75 74 6f | .then.sets.entries.in.the.#.auto |
3fe80 | 5f 69 6e 64 65 78 20 61 72 72 61 79 20 73 6f 20 74 68 61 74 20 74 68 65 20 70 61 63 6b 61 67 65 | _index.array.so.that.the.package |
3fea0 | 27 73 20 66 69 6c 65 73 20 77 69 6c 6c 20 62 65 20 61 75 74 6f 2d 6c 6f 61 64 65 64 20 77 68 65 | 's.files.will.be.auto-loaded.whe |
3fec0 | 6e 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20 75 73 65 64 2e 0a 23 0a 23 20 41 | n.#.the.commands.are.used..#.#.A |
3fee0 | 72 67 75 6d 65 6e 74 73 3a 0a 23 20 64 69 72 20 2d 09 09 09 44 69 72 65 63 74 6f 72 79 20 63 6f | rguments:.#.dir.-...Directory.co |
3ff00 | 6e 74 61 69 6e 69 6e 67 20 61 6c 6c 20 74 68 65 20 66 69 6c 65 73 20 66 6f 72 20 74 68 69 73 20 | ntaining.all.the.files.for.this. |
3ff20 | 70 61 63 6b 61 67 65 2e 0a 23 20 70 6b 67 20 2d 09 09 09 4e 61 6d 65 20 6f 66 20 74 68 65 20 70 | package..#.pkg.-...Name.of.the.p |
3ff40 | 61 63 6b 61 67 65 20 28 6e 6f 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 29 2e 0a 23 20 76 65 | ackage.(no.version.number)..#.ve |
3ff60 | 72 73 69 6f 6e 20 2d 09 09 56 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 66 6f 72 20 74 68 65 20 | rsion.-..Version.number.for.the. |
3ff80 | 70 61 63 6b 61 67 65 2c 20 73 75 63 68 20 61 73 20 32 2e 31 2e 33 2e 0a 23 20 66 69 6c 65 73 20 | package,.such.as.2.1.3..#.files. |
3ffa0 | 2d 09 09 4c 69 73 74 20 6f 66 20 66 69 6c 65 73 20 74 68 61 74 20 63 6f 6e 73 74 69 74 75 74 65 | -..List.of.files.that.constitute |
3ffc0 | 20 74 68 65 20 70 61 63 6b 61 67 65 2e 20 20 45 61 63 68 0a 23 09 09 09 65 6c 65 6d 65 6e 74 20 | .the.package...Each.#...element. |
3ffe0 | 69 73 20 61 20 73 75 62 2d 6c 69 73 74 20 77 69 74 68 20 74 68 72 65 65 20 65 6c 65 6d 65 6e 74 | is.a.sub-list.with.three.element |
40000 | 73 2e 20 20 54 68 65 20 66 69 72 73 74 0a 23 09 09 09 69 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 | s...The.first.#...is.the.name.of |
40020 | 20 61 20 66 69 6c 65 20 72 65 6c 61 74 69 76 65 20 74 6f 20 24 64 69 72 2c 20 74 68 65 20 73 65 | .a.file.relative.to.$dir,.the.se |
40040 | 63 6f 6e 64 20 69 73 0a 23 09 09 09 22 6c 6f 61 64 22 20 6f 72 20 22 73 6f 75 72 63 65 22 2c 20 | cond.is.#..."load".or."source",. |
40060 | 69 6e 64 69 63 61 74 69 6e 67 20 77 68 65 74 68 65 72 20 74 68 65 20 66 69 6c 65 20 69 73 20 61 | indicating.whether.the.file.is.a |
40080 | 0a 23 09 09 09 6c 6f 61 64 61 62 6c 65 20 62 69 6e 61 72 79 20 6f 72 20 61 20 73 63 72 69 70 74 | .#...loadable.binary.or.a.script |
400a0 | 20 74 6f 20 73 6f 75 72 63 65 2c 20 61 6e 64 20 74 68 65 20 74 68 69 72 64 0a 23 09 09 09 69 73 | .to.source,.and.the.third.#...is |
400c0 | 20 61 20 6c 69 73 74 20 6f 66 20 63 6f 6d 6d 61 6e 64 73 20 64 65 66 69 6e 65 64 20 62 79 20 74 | .a.list.of.commands.defined.by.t |
400e0 | 68 69 73 20 66 69 6c 65 2e 0a 0a 70 72 6f 63 20 74 63 6c 50 6b 67 53 65 74 75 70 20 7b 64 69 72 | his.file...proc.tclPkgSetup.{dir |
40100 | 20 70 6b 67 20 76 65 72 73 69 6f 6e 20 66 69 6c 65 73 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c | .pkg.version.files}.{.....global |
40120 | 20 61 75 74 6f 5f 69 6e 64 65 78 0a 0a 20 20 20 20 70 61 63 6b 61 67 65 20 70 72 6f 76 69 64 65 | .auto_index......package.provide |
40140 | 20 24 70 6b 67 20 24 76 65 72 73 69 6f 6e 0a 20 20 20 20 66 6f 72 65 61 63 68 20 66 69 6c 65 49 | .$pkg.$version.....foreach.fileI |
40160 | 6e 66 6f 20 24 66 69 6c 65 73 20 7b 0a 09 73 65 74 20 66 20 5b 6c 69 6e 64 65 78 20 24 66 69 6c | nfo.$files.{..set.f.[lindex.$fil |
40180 | 65 49 6e 66 6f 20 30 5d 0a 09 73 65 74 20 74 79 70 65 20 5b 6c 69 6e 64 65 78 20 24 66 69 6c 65 | eInfo.0]..set.type.[lindex.$file |
401a0 | 49 6e 66 6f 20 31 5d 0a 09 66 6f 72 65 61 63 68 20 63 6d 64 20 5b 6c 69 6e 64 65 78 20 24 66 69 | Info.1]..foreach.cmd.[lindex.$fi |
401c0 | 6c 65 49 6e 66 6f 20 32 5d 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 | leInfo.2].{......if.{[string.equ |
401e0 | 61 6c 20 24 74 79 70 65 20 22 6c 6f 61 64 22 5d 7d 20 7b 0a 09 09 73 65 74 20 61 75 74 6f 5f 69 | al.$type."load"]}.{...set.auto_i |
40200 | 6e 64 65 78 28 24 63 6d 64 29 20 5b 6c 69 73 74 20 6c 6f 61 64 20 5b 66 69 6c 65 20 6a 6f 69 6e | ndex($cmd).[list.load.[file.join |
40220 | 20 24 64 69 72 20 24 66 5d 20 24 70 6b 67 5d 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 | .$dir.$f].$pkg]......}.else.{... |
40240 | 73 65 74 20 61 75 74 6f 5f 69 6e 64 65 78 28 24 63 6d 64 29 20 5b 6c 69 73 74 20 73 6f 75 72 63 | set.auto_index($cmd).[list.sourc |
40260 | 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 24 66 5d 5d 0a 09 20 20 20 20 7d 20 0a 09 | e.[file.join.$dir.$f]]......}... |
40280 | 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 63 6c 4d 61 63 50 6b 67 53 65 61 72 63 68 20 2d 2d 0a | }.....}.}..#.tclMacPkgSearch.--. |
402a0 | 23 20 54 68 65 20 70 72 6f 63 65 64 75 72 65 20 69 73 20 75 73 65 64 20 6f 6e 20 74 68 65 20 4d | #.The.procedure.is.used.on.the.M |
402c0 | 61 63 69 6e 74 6f 73 68 20 74 6f 20 73 65 61 72 63 68 20 61 20 67 69 76 65 6e 20 64 69 72 65 63 | acintosh.to.search.a.given.direc |
402e0 | 74 6f 72 79 20 66 6f 72 20 66 69 6c 65 73 0a 23 20 77 69 74 68 20 61 20 54 45 58 54 20 72 65 73 | tory.for.files.#.with.a.TEXT.res |
40300 | 6f 75 72 63 65 20 6e 61 6d 65 64 20 22 70 6b 67 49 6e 64 65 78 22 2e 20 20 49 66 20 69 74 20 65 | ource.named."pkgIndex"...If.it.e |
40320 | 78 69 73 74 73 20 69 74 20 69 73 20 73 6f 75 72 63 65 64 20 69 6e 20 74 6f 20 74 68 65 0a 23 20 | xists.it.is.sourced.in.to.the.#. |
40340 | 69 6e 74 65 72 70 72 65 74 65 72 20 74 6f 20 73 65 74 75 70 20 74 68 65 20 70 61 63 6b 61 67 65 | interpreter.to.setup.the.package |
40360 | 20 64 61 74 61 62 61 73 65 2e 0a 0a 70 72 6f 63 20 74 63 6c 4d 61 63 50 6b 67 53 65 61 72 63 68 | .database...proc.tclMacPkgSearch |
40380 | 20 7b 64 69 72 7d 20 7b 0a 20 20 20 20 66 6f 72 65 61 63 68 20 78 20 5b 67 6c 6f 62 20 2d 6e 6f | .{dir}.{.....foreach.x.[glob.-no |
403a0 | 63 6f 6d 70 6c 61 69 6e 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 2a 2e 73 68 6c 62 5d | complain.[file.join.$dir.*.shlb] |
403c0 | 5d 20 7b 0a 09 69 66 20 7b 5b 66 69 6c 65 20 69 73 66 69 6c 65 20 24 78 5d 7d 20 7b 0a 09 20 20 | ].{..if.{[file.isfile.$x]}.{.... |
403e0 | 20 20 73 65 74 20 72 65 73 20 5b 72 65 73 6f 75 72 63 65 20 6f 70 65 6e 20 24 78 5d 0a 09 20 20 | ..set.res.[resource.open.$x].... |
40400 | 20 20 66 6f 72 65 61 63 68 20 79 20 5b 72 65 73 6f 75 72 63 65 20 6c 69 73 74 20 54 45 58 54 20 | ..foreach.y.[resource.list.TEXT. |
40420 | 24 72 65 73 5d 20 7b 0a 09 09 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 79 20 22 | $res].{...if.{[string.equal.$y." |
40440 | 70 6b 67 49 6e 64 65 78 22 5d 7d 20 7b 73 6f 75 72 63 65 20 2d 72 73 72 63 20 70 6b 67 49 6e 64 | pkgIndex"]}.{source.-rsrc.pkgInd |
40460 | 65 78 7d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 63 61 74 63 68 20 7b 72 65 73 6f 75 72 63 65 20 | ex}......}......catch.{resource. |
40480 | 63 6c 6f 73 65 20 24 72 65 73 7d 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 63 6c 50 6b 67 | close.$res}..}.....}.}..#.tclPkg |
404a0 | 55 6e 6b 6e 6f 77 6e 20 2d 2d 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 70 72 6f 76 | Unknown.--.#.This.procedure.prov |
404c0 | 69 64 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 66 6f 72 20 74 68 65 20 22 70 61 63 6b 61 67 | ides.the.default.for.the."packag |
404e0 | 65 20 75 6e 6b 6e 6f 77 6e 22 20 66 75 6e 63 74 69 6f 6e 2e 0a 23 20 49 74 20 69 73 20 69 6e 76 | e.unknown".function..#.It.is.inv |
40500 | 6f 6b 65 64 20 77 68 65 6e 20 61 20 70 61 63 6b 61 67 65 20 74 68 61 74 27 73 20 6e 65 65 64 65 | oked.when.a.package.that's.neede |
40520 | 64 20 63 61 6e 27 74 20 62 65 20 66 6f 75 6e 64 2e 20 20 49 74 20 73 63 61 6e 73 0a 23 20 74 68 | d.can't.be.found...It.scans.#.th |
40540 | 65 20 61 75 74 6f 5f 70 61 74 68 20 64 69 72 65 63 74 6f 72 69 65 73 20 61 6e 64 20 74 68 65 69 | e.auto_path.directories.and.thei |
40560 | 72 20 69 6d 6d 65 64 69 61 74 65 20 63 68 69 6c 64 72 65 6e 20 6c 6f 6f 6b 69 6e 67 20 66 6f 72 | r.immediate.children.looking.for |
40580 | 0a 23 20 70 6b 67 49 6e 64 65 78 2e 74 63 6c 20 66 69 6c 65 73 20 61 6e 64 20 73 6f 75 72 63 65 | .#.pkgIndex.tcl.files.and.source |
405a0 | 73 20 61 6e 79 20 73 75 63 68 20 66 69 6c 65 73 20 74 68 61 74 20 61 72 65 20 66 6f 75 6e 64 20 | s.any.such.files.that.are.found. |
405c0 | 74 6f 20 73 65 74 75 70 0a 23 20 74 68 65 20 70 61 63 6b 61 67 65 20 64 61 74 61 62 61 73 65 2e | to.setup.#.the.package.database. |
405e0 | 20 20 28 4f 6e 20 74 68 65 20 4d 61 63 69 6e 74 6f 73 68 20 77 65 20 61 6c 73 6f 20 73 65 61 72 | ..(On.the.Macintosh.we.also.sear |
40600 | 63 68 20 66 6f 72 20 70 6b 67 49 6e 64 65 78 0a 23 20 54 45 58 54 20 72 65 73 6f 75 72 63 65 73 | ch.for.pkgIndex.#.TEXT.resources |
40620 | 20 69 6e 20 61 6c 6c 20 66 69 6c 65 73 2e 29 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 | .in.all.files.).#.#.Arguments:.# |
40640 | 20 6e 61 6d 65 20 2d 09 09 4e 61 6d 65 20 6f 66 20 64 65 73 69 72 65 64 20 70 61 63 6b 61 67 65 | .name.-..Name.of.desired.package |
40660 | 2e 20 20 4e 6f 74 20 75 73 65 64 2e 0a 23 20 76 65 72 73 69 6f 6e 20 2d 09 09 56 65 72 73 69 6f | ...Not.used..#.version.-..Versio |
40680 | 6e 20 6f 66 20 64 65 73 69 72 65 64 20 70 61 63 6b 61 67 65 2e 20 20 4e 6f 74 20 75 73 65 64 2e | n.of.desired.package...Not.used. |
406a0 | 0a 23 20 65 78 61 63 74 20 2d 09 09 45 69 74 68 65 72 20 22 2d 65 78 61 63 74 22 20 6f 72 20 6f | .#.exact.-..Either."-exact".or.o |
406c0 | 6d 69 74 74 65 64 2e 20 20 4e 6f 74 20 75 73 65 64 2e 0a 0a 70 72 6f 63 20 74 63 6c 50 6b 67 55 | mitted...Not.used...proc.tclPkgU |
406e0 | 6e 6b 6e 6f 77 6e 20 7b 6e 61 6d 65 20 76 65 72 73 69 6f 6e 20 7b 65 78 61 63 74 20 7b 7d 7d 7d | nknown.{name.version.{exact.{}}} |
40700 | 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 61 75 74 6f 5f 70 61 74 68 20 74 63 6c 5f 70 6c 61 74 | .{.....global.auto_path.tcl_plat |
40720 | 66 6f 72 6d 20 65 6e 76 0a 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 | form.env......if.{![info.exists. |
40740 | 61 75 74 6f 5f 70 61 74 68 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 0a 20 20 20 20 7d 0a 20 20 20 20 | auto_path]}.{..return.....}..... |
40760 | 66 6f 72 20 7b 73 65 74 20 69 20 5b 65 78 70 72 20 7b 5b 6c 6c 65 6e 67 74 68 20 24 61 75 74 6f | for.{set.i.[expr.{[llength.$auto |
40780 | 5f 70 61 74 68 5d 20 2d 20 31 7d 5d 7d 20 7b 24 69 20 3e 3d 20 30 7d 20 7b 69 6e 63 72 20 69 20 | _path].-.1}]}.{$i.>=.0}.{incr.i. |
407a0 | 2d 31 7d 20 7b 0a 09 23 20 77 65 20 63 61 6e 27 74 20 75 73 65 20 67 6c 6f 62 20 69 6e 20 73 61 | -1}.{..#.we.can't.use.glob.in.sa |
407c0 | 66 65 20 69 6e 74 65 72 70 73 2c 20 73 6f 20 65 6e 63 6c 6f 73 65 20 74 68 65 20 66 6f 6c 6c 6f | fe.interps,.so.enclose.the.follo |
407e0 | 77 69 6e 67 0a 09 23 20 69 6e 20 61 20 63 61 74 63 68 20 73 74 61 74 65 6d 65 6e 74 0a 09 63 61 | wing..#.in.a.catch.statement..ca |
40800 | 74 63 68 20 7b 0a 09 20 20 20 20 66 6f 72 65 61 63 68 20 66 69 6c 65 20 5b 67 6c 6f 62 20 2d 6e | tch.{......foreach.file.[glob.-n |
40820 | 6f 63 6f 6d 70 6c 61 69 6e 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b 6c 69 6e 64 65 78 20 24 61 75 | ocomplain.[file.join.[lindex.$au |
40840 | 74 6f 5f 70 61 74 68 20 24 69 5d 20 5c 0a 09 09 20 20 20 20 2a 20 70 6b 67 49 6e 64 65 78 2e 74 | to_path.$i].\.......*.pkgIndex.t |
40860 | 63 6c 5d 5d 20 7b 0a 09 09 73 65 74 20 64 69 72 20 5b 66 69 6c 65 20 64 69 72 6e 61 6d 65 20 24 | cl]].{...set.dir.[file.dirname.$ |
40880 | 66 69 6c 65 5d 0a 09 09 69 66 20 7b 5b 66 69 6c 65 20 72 65 61 64 61 62 6c 65 20 24 66 69 6c 65 | file]...if.{[file.readable.$file |
408a0 | 5d 7d 20 7b 0a 09 09 20 20 20 20 69 66 20 7b 5b 63 61 74 63 68 20 7b 73 6f 75 72 63 65 20 24 66 | ]}.{.......if.{[catch.{source.$f |
408c0 | 69 6c 65 7d 20 6d 73 67 5d 7d 20 7b 0a 09 09 09 74 63 6c 4c 6f 67 20 22 65 72 72 6f 72 20 72 65 | ile}.msg]}.{....tclLog."error.re |
408e0 | 61 64 69 6e 67 20 70 61 63 6b 61 67 65 20 69 6e 64 65 78 20 66 69 6c 65 20 24 66 69 6c 65 3a 20 | ading.package.index.file.$file:. |
40900 | 24 6d 73 67 22 0a 09 09 20 20 20 20 7d 0a 09 09 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 73 65 74 | $msg".......}...}......}..}..set |
40920 | 20 64 69 72 20 5b 6c 69 6e 64 65 78 20 24 61 75 74 6f 5f 70 61 74 68 20 24 69 5d 0a 09 73 65 74 | .dir.[lindex.$auto_path.$i]..set |
40940 | 20 66 69 6c 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 70 6b 67 49 6e 64 65 78 2e 74 | .file.[file.join.$dir.pkgIndex.t |
40960 | 63 6c 5d 0a 09 23 20 73 61 66 65 20 69 6e 74 65 72 70 73 20 75 73 75 61 6c 6c 79 20 64 6f 6e 27 | cl]..#.safe.interps.usually.don' |
40980 | 74 20 68 61 76 65 20 22 66 69 6c 65 20 72 65 61 64 61 62 6c 65 22 2c 20 6e 6f 72 20 73 74 64 65 | t.have."file.readable",.nor.stde |
409a0 | 72 72 20 63 68 61 6e 6e 65 6c 0a 09 69 66 20 7b 5b 69 6e 74 65 72 70 20 69 73 73 61 66 65 5d 20 | rr.channel..if.{[interp.issafe]. |
409c0 | 7c 7c 20 5b 66 69 6c 65 20 72 65 61 64 61 62 6c 65 20 24 66 69 6c 65 5d 7d 20 7b 0a 09 20 20 20 | ||.[file.readable.$file]}.{..... |
409e0 | 20 69 66 20 7b 5b 63 61 74 63 68 20 7b 73 6f 75 72 63 65 20 24 66 69 6c 65 7d 20 6d 73 67 5d 20 | .if.{[catch.{source.$file}.msg]. |
40a00 | 26 26 20 21 5b 69 6e 74 65 72 70 20 69 73 73 61 66 65 5d 7d 20 20 7b 0a 09 09 74 63 6c 4c 6f 67 | &&.![interp.issafe]}..{...tclLog |
40a20 | 20 22 65 72 72 6f 72 20 72 65 61 64 69 6e 67 20 70 61 63 6b 61 67 65 20 69 6e 64 65 78 20 66 69 | ."error.reading.package.index.fi |
40a40 | 6c 65 20 24 66 69 6c 65 3a 20 24 6d 73 67 22 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 23 20 4f 6e 20 | le.$file:.$msg"......}..}..#.On. |
40a60 | 74 68 65 20 4d 61 63 69 6e 74 6f 73 68 20 77 65 20 61 6c 73 6f 20 6c 6f 6f 6b 20 69 6e 20 74 68 | the.Macintosh.we.also.look.in.th |
40a80 | 65 20 72 65 73 6f 75 72 63 65 20 66 6f 72 6b 20 0a 09 23 20 6f 66 20 73 68 61 72 65 64 20 6c 69 | e.resource.fork...#.of.shared.li |
40aa0 | 62 72 61 72 69 65 73 0a 09 23 20 57 65 20 63 61 6e 27 74 20 75 73 65 20 74 63 6c 4d 61 63 50 6b | braries..#.We.can't.use.tclMacPk |
40ac0 | 67 53 65 61 72 63 68 20 69 6e 20 73 61 66 65 20 69 6e 74 65 72 70 73 20 62 65 63 61 75 73 65 20 | gSearch.in.safe.interps.because. |
40ae0 | 69 74 20 75 73 65 73 20 67 6c 6f 62 0a 09 69 66 20 7b 28 21 5b 69 6e 74 65 72 70 20 69 73 73 61 | it.uses.glob..if.{(![interp.issa |
40b00 | 66 65 5d 29 20 26 26 20 5c 0a 09 09 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f 70 | fe]).&&.\...[string.equal.$tcl_p |
40b20 | 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 6d 61 63 69 6e 74 6f 73 68 22 5d 7d 20 | latform(platform)."macintosh"]}. |
40b40 | 7b 0a 09 20 20 20 20 73 65 74 20 64 69 72 20 5b 6c 69 6e 64 65 78 20 24 61 75 74 6f 5f 70 61 74 | {......set.dir.[lindex.$auto_pat |
40b60 | 68 20 24 69 5d 0a 09 20 20 20 20 74 63 6c 4d 61 63 50 6b 67 53 65 61 72 63 68 20 24 64 69 72 0a | h.$i]......tclMacPkgSearch.$dir. |
40b80 | 09 20 20 20 20 66 6f 72 65 61 63 68 20 78 20 5b 67 6c 6f 62 20 2d 6e 6f 63 6f 6d 70 6c 61 69 6e | .....foreach.x.[glob.-nocomplain |
40ba0 | 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 2a 5d 5d 20 7b 0a 09 09 69 66 20 7b 5b 66 69 | .[file.join.$dir.*]].{...if.{[fi |
40bc0 | 6c 65 20 69 73 64 69 72 65 63 74 6f 72 79 20 24 78 5d 7d 20 7b 0a 09 09 20 20 20 20 73 65 74 20 | le.isdirectory.$x]}.{.......set. |
40be0 | 64 69 72 20 24 78 0a 09 09 20 20 20 20 74 63 6c 4d 61 63 50 6b 67 53 65 61 72 63 68 20 24 64 69 | dir.$x.......tclMacPkgSearch.$di |
40c00 | 72 0a 09 09 7d 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 3a 3a 70 6b 67 | r...}......}..}.....}.}..#.::pkg |
40c20 | 3a 3a 63 72 65 61 74 65 20 2d 2d 0a 23 0a 23 09 47 69 76 65 6e 20 61 20 70 61 63 6b 61 67 65 20 | ::create.--.#.#.Given.a.package. |
40c40 | 73 70 65 63 69 66 69 63 61 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 20 61 20 22 70 61 63 6b 61 67 | specification.generate.a."packag |
40c60 | 65 20 69 66 6e 65 65 64 65 64 22 20 73 74 61 74 65 6d 65 6e 74 0a 23 09 66 6f 72 20 74 68 65 20 | e.ifneeded".statement.#.for.the. |
40c80 | 70 61 63 6b 61 67 65 2c 20 73 75 69 74 61 62 6c 65 20 66 6f 72 20 69 6e 63 6c 75 73 69 6f 6e 20 | package,.suitable.for.inclusion. |
40ca0 | 69 6e 20 61 20 70 6b 67 49 6e 64 65 78 2e 74 63 6c 20 66 69 6c 65 2e 0a 23 0a 23 20 41 72 67 75 | in.a.pkgIndex.tcl.file..#.#.Argu |
40cc0 | 6d 65 6e 74 73 3a 0a 23 09 61 72 67 73 09 09 61 72 67 75 6d 65 6e 74 73 20 75 73 65 64 20 62 79 | ments:.#.args..arguments.used.by |
40ce0 | 20 74 68 65 20 63 72 65 61 74 65 20 66 75 6e 63 74 69 6f 6e 3a 0a 23 09 09 09 2d 6e 61 6d 65 09 | .the.create.function:.#...-name. |
40d00 | 09 70 61 63 6b 61 67 65 4e 61 6d 65 0a 23 09 09 09 2d 76 65 72 73 69 6f 6e 09 70 61 63 6b 61 67 | .packageName.#...-version.packag |
40d20 | 65 56 65 72 73 69 6f 6e 0a 23 09 09 09 2d 6c 6f 61 64 09 09 7b 66 69 6c 65 6e 61 6d 65 20 3f 7b | eVersion.#...-load..{filename.?{ |
40d40 | 70 72 6f 63 73 7d 3f 7d 0a 23 09 09 09 2e 2e 2e 0a 23 09 09 09 2d 73 6f 75 72 63 65 09 09 7b 66 | procs}?}.#.......#...-source..{f |
40d60 | 69 6c 65 6e 61 6d 65 20 3f 7b 70 72 6f 63 73 7d 3f 7d 0a 23 09 09 09 2e 2e 2e 0a 23 0a 23 09 09 | ilename.?{procs}?}.#.......#.#.. |
40d80 | 09 41 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 2d 6c 6f 61 64 20 61 6e 64 20 2d 73 6f 75 72 63 65 | .Any.number.of.-load.and.-source |
40da0 | 20 70 61 72 61 6d 65 74 65 72 73 20 6d 61 79 20 62 65 0a 23 09 09 09 73 70 65 63 69 66 69 65 64 | .parameters.may.be.#...specified |
40dc0 | 2c 20 73 6f 20 6c 6f 6e 67 20 61 73 20 74 68 65 72 65 20 69 73 20 61 74 20 6c 65 61 73 74 20 6f | ,.so.long.as.there.is.at.least.o |
40de0 | 6e 65 20 2d 6c 6f 61 64 20 6f 72 0a 23 09 09 09 2d 73 6f 75 72 63 65 20 70 61 72 61 6d 65 74 65 | ne.-load.or.#...-source.paramete |
40e00 | 72 2e 20 20 49 66 20 74 68 65 20 70 72 6f 63 73 20 63 6f 6d 70 6f 6e 65 6e 74 20 6f 66 20 61 20 | r...If.the.procs.component.of.a. |
40e20 | 0a 23 09 09 09 6d 6f 64 75 6c 65 20 73 70 65 63 69 66 69 65 72 20 69 73 20 6c 65 66 74 20 6f 66 | .#...module.specifier.is.left.of |
40e40 | 66 2c 20 74 68 61 74 20 6d 6f 64 75 6c 65 20 77 69 6c 6c 20 62 65 0a 23 09 09 09 73 65 74 20 75 | f,.that.module.will.be.#...set.u |
40e60 | 70 20 66 6f 72 20 64 69 72 65 63 74 20 6c 6f 61 64 69 6e 67 3b 20 6f 74 68 65 72 77 69 73 65 2c | p.for.direct.loading;.otherwise, |
40e80 | 20 69 74 20 77 69 6c 6c 20 62 65 0a 23 09 09 09 73 65 74 20 75 70 20 66 6f 72 20 6c 61 7a 79 20 | .it.will.be.#...set.up.for.lazy. |
40ea0 | 6c 6f 61 64 69 6e 67 2e 20 20 49 66 20 62 6f 74 68 20 2d 73 6f 75 72 63 65 20 61 6e 64 20 2d 6c | loading...If.both.-source.and.-l |
40ec0 | 6f 61 64 0a 23 09 09 09 61 72 65 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 20 2d 6c 6f 61 64 | oad.#...are.specified,.the.-load |
40ee0 | 27 65 64 20 66 69 6c 65 73 20 77 69 6c 6c 20 62 65 20 6c 6f 61 64 65 64 20 0a 23 09 09 09 66 69 | 'ed.files.will.be.loaded..#...fi |
40f00 | 72 73 74 2c 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 74 68 65 20 2d 73 6f 75 72 63 65 27 64 20 66 | rst,.followed.by.the.-source'd.f |
40f20 | 69 6c 65 73 2e 0a 23 0a 23 20 52 65 73 75 6c 74 73 3a 0a 23 09 41 6e 20 61 70 70 72 6f 70 72 69 | iles..#.#.Results:.#.An.appropri |
40f40 | 61 74 65 20 22 70 61 63 6b 61 67 65 20 69 66 6e 65 65 64 65 64 22 20 73 74 61 74 65 6d 65 6e 74 | ate."package.ifneeded".statement |
40f60 | 20 66 6f 72 20 74 68 65 20 70 61 63 6b 61 67 65 2e 0a 0a 70 72 6f 63 20 3a 3a 70 6b 67 3a 3a 63 | .for.the.package...proc.::pkg::c |
40f80 | 72 65 61 74 65 20 7b 61 72 67 73 7d 20 7b 0a 20 20 20 20 61 70 70 65 6e 64 20 65 72 72 28 75 73 | reate.{args}.{.....append.err(us |
40fa0 | 61 67 65 29 20 22 5b 6c 69 6e 64 65 78 20 5b 69 6e 66 6f 20 6c 65 76 65 6c 20 30 5d 20 30 5d 20 | age)."[lindex.[info.level.0].0]. |
40fc0 | 22 0a 20 20 20 20 61 70 70 65 6e 64 20 65 72 72 28 75 73 61 67 65 29 20 22 2d 6e 61 6d 65 20 70 | ".....append.err(usage)."-name.p |
40fe0 | 61 63 6b 61 67 65 4e 61 6d 65 20 2d 76 65 72 73 69 6f 6e 20 70 61 63 6b 61 67 65 56 65 72 73 69 | ackageName.-version.packageVersi |
41000 | 6f 6e 22 0a 20 20 20 20 61 70 70 65 6e 64 20 65 72 72 28 75 73 61 67 65 29 20 22 3f 2d 6c 6f 61 | on".....append.err(usage)."?-loa |
41020 | 64 20 7b 66 69 6c 65 6e 61 6d 65 20 3f 7b 70 72 6f 63 73 7d 3f 7d 3f 20 2e 2e 2e 20 22 0a 20 20 | d.{filename.?{procs}?}?....."... |
41040 | 20 20 61 70 70 65 6e 64 20 65 72 72 28 75 73 61 67 65 29 20 22 3f 2d 73 6f 75 72 63 65 20 7b 66 | ..append.err(usage)."?-source.{f |
41060 | 69 6c 65 6e 61 6d 65 20 3f 7b 70 72 6f 63 73 7d 3f 7d 3f 20 2e 2e 2e 22 0a 0a 20 20 20 20 73 65 | ilename.?{procs}?}?...."......se |
41080 | 74 20 65 72 72 28 77 72 6f 6e 67 4e 75 6d 41 72 67 73 29 20 22 77 72 6f 6e 67 20 23 20 61 72 67 | t.err(wrongNumArgs)."wrong.#.arg |
410a0 | 73 3a 20 73 68 6f 75 6c 64 20 62 65 20 5c 22 24 65 72 72 28 75 73 61 67 65 29 5c 22 22 0a 20 20 | s:.should.be.\"$err(usage)\""... |
410c0 | 20 20 73 65 74 20 65 72 72 28 76 61 6c 75 65 4d 69 73 73 69 6e 67 29 20 22 76 61 6c 75 65 20 66 | ..set.err(valueMissing)."value.f |
410e0 | 6f 72 20 5c 22 25 73 5c 22 20 6d 69 73 73 69 6e 67 3a 20 73 68 6f 75 6c 64 20 62 65 20 5c 22 24 | or.\"%s\".missing:.should.be.\"$ |
41100 | 65 72 72 28 75 73 61 67 65 29 5c 22 22 0a 20 20 20 20 73 65 74 20 65 72 72 28 75 6e 6b 6e 6f 77 | err(usage)\"".....set.err(unknow |
41120 | 6e 4f 70 74 29 20 20 20 22 75 6e 6b 6e 6f 77 6e 20 6f 70 74 69 6f 6e 20 5c 22 25 73 5c 22 3a 20 | nOpt)..."unknown.option.\"%s\":. |
41140 | 73 68 6f 75 6c 64 20 62 65 20 5c 22 24 65 72 72 28 75 73 61 67 65 29 5c 22 22 0a 20 20 20 20 73 | should.be.\"$err(usage)\"".....s |
41160 | 65 74 20 65 72 72 28 6e 6f 4c 6f 61 64 4f 72 53 6f 75 72 63 65 29 20 22 61 74 20 6c 65 61 73 74 | et.err(noLoadOrSource)."at.least |
41180 | 20 6f 6e 65 20 6f 66 20 2d 6c 6f 61 64 20 61 6e 64 20 2d 73 6f 75 72 63 65 20 6d 75 73 74 20 62 | .one.of.-load.and.-source.must.b |
411a0 | 65 20 67 69 76 65 6e 22 0a 0a 20 20 20 20 23 20 70 72 6f 63 65 73 73 20 61 72 67 75 6d 65 6e 74 | e.given"......#.process.argument |
411c0 | 73 0a 20 20 20 20 73 65 74 20 6c 65 6e 20 5b 6c 6c 65 6e 67 74 68 20 24 61 72 67 73 5d 0a 20 20 | s.....set.len.[llength.$args]... |
411e0 | 20 20 69 66 20 7b 20 24 6c 65 6e 20 3c 20 36 20 7d 20 7b 0a 09 65 72 72 6f 72 20 24 65 72 72 28 | ..if.{.$len.<.6.}.{..error.$err( |
41200 | 77 72 6f 6e 67 4e 75 6d 41 72 67 73 29 0a 20 20 20 20 7d 0a 20 20 20 20 0a 20 20 20 20 23 20 49 | wrongNumArgs).....}..........#.I |
41220 | 6e 69 74 69 61 6c 69 7a 65 20 70 61 72 61 6d 65 74 65 72 73 0a 20 20 20 20 73 65 74 20 6f 70 74 | nitialize.parameters.....set.opt |
41240 | 73 28 2d 6e 61 6d 65 29 09 09 7b 7d 0a 20 20 20 20 73 65 74 20 6f 70 74 73 28 2d 76 65 72 73 69 | s(-name)..{}.....set.opts(-versi |
41260 | 6f 6e 29 09 09 7b 7d 0a 20 20 20 20 73 65 74 20 6f 70 74 73 28 2d 73 6f 75 72 63 65 29 09 09 7b | on)..{}.....set.opts(-source)..{ |
41280 | 7d 0a 20 20 20 20 73 65 74 20 6f 70 74 73 28 2d 6c 6f 61 64 29 09 09 7b 7d 0a 0a 20 20 20 20 23 | }.....set.opts(-load)..{}......# |
412a0 | 20 70 72 6f 63 65 73 73 20 70 61 72 61 6d 65 74 65 72 73 0a 20 20 20 20 66 6f 72 20 7b 73 65 74 | .process.parameters.....for.{set |
412c0 | 20 69 20 30 7d 20 7b 24 69 20 3c 20 24 6c 65 6e 7d 20 7b 69 6e 63 72 20 69 7d 20 7b 0a 09 73 65 | .i.0}.{$i.<.$len}.{incr.i}.{..se |
412e0 | 74 20 66 6c 61 67 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 24 69 5d 0a 09 69 6e 63 72 20 69 | t.flag.[lindex.$args.$i]..incr.i |
41300 | 0a 09 73 77 69 74 63 68 20 2d 67 6c 6f 62 20 2d 2d 20 24 66 6c 61 67 20 7b 0a 09 20 20 20 20 22 | ..switch.-glob.--.$flag.{......" |
41320 | 2d 6e 61 6d 65 22 09 09 2d 0a 09 20 20 20 20 22 2d 76 65 72 73 69 6f 6e 22 09 09 7b 0a 09 09 69 | -name"..-......"-version"..{...i |
41340 | 66 20 7b 20 24 69 20 3e 3d 20 24 6c 65 6e 20 7d 20 7b 0a 09 09 20 20 20 20 65 72 72 6f 72 20 5b | f.{.$i.>=.$len.}.{.......error.[ |
41360 | 66 6f 72 6d 61 74 20 24 65 72 72 28 76 61 6c 75 65 4d 69 73 73 69 6e 67 29 20 24 66 6c 61 67 5d | format.$err(valueMissing).$flag] |
41380 | 0a 09 09 7d 0a 09 09 73 65 74 20 6f 70 74 73 28 24 66 6c 61 67 29 20 5b 6c 69 6e 64 65 78 20 24 | ...}...set.opts($flag).[lindex.$ |
413a0 | 61 72 67 73 20 24 69 5d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 22 2d 73 6f 75 72 63 65 22 09 09 | args.$i]......}......"-source".. |
413c0 | 2d 0a 09 20 20 20 20 22 2d 6c 6f 61 64 22 09 09 7b 0a 09 09 69 66 20 7b 20 24 69 20 3e 3d 20 24 | -......"-load"..{...if.{.$i.>=.$ |
413e0 | 6c 65 6e 20 7d 20 7b 0a 09 09 20 20 20 20 65 72 72 6f 72 20 5b 66 6f 72 6d 61 74 20 24 65 72 72 | len.}.{.......error.[format.$err |
41400 | 28 76 61 6c 75 65 4d 69 73 73 69 6e 67 29 20 24 66 6c 61 67 5d 0a 09 09 7d 0a 09 09 6c 61 70 70 | (valueMissing).$flag]...}...lapp |
41420 | 65 6e 64 20 6f 70 74 73 28 24 66 6c 61 67 29 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 24 69 | end.opts($flag).[lindex.$args.$i |
41440 | 5d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 64 65 66 61 75 6c 74 20 7b 0a 09 09 65 72 72 6f 72 20 | ]......}......default.{...error. |
41460 | 5b 66 6f 72 6d 61 74 20 24 65 72 72 28 75 6e 6b 6e 6f 77 6e 4f 70 74 29 20 5b 6c 69 6e 64 65 78 | [format.$err(unknownOpt).[lindex |
41480 | 20 24 61 72 67 73 20 24 69 5d 5d 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 | .$args.$i]]......}..}.....}..... |
414a0 | 20 23 20 56 61 6c 69 64 61 74 65 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 73 0a 20 20 20 20 69 | .#.Validate.the.parameters.....i |
414c0 | 66 20 7b 20 5b 6c 6c 65 6e 67 74 68 20 24 6f 70 74 73 28 2d 6e 61 6d 65 29 5d 20 3d 3d 20 30 20 | f.{.[llength.$opts(-name)].==.0. |
414e0 | 7d 20 7b 0a 09 65 72 72 6f 72 20 5b 66 6f 72 6d 61 74 20 24 65 72 72 28 76 61 6c 75 65 4d 69 73 | }.{..error.[format.$err(valueMis |
41500 | 73 69 6e 67 29 20 22 2d 6e 61 6d 65 22 5d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 20 5b 6c | sing)."-name"].....}.....if.{.[l |
41520 | 6c 65 6e 67 74 68 20 24 6f 70 74 73 28 2d 76 65 72 73 69 6f 6e 29 5d 20 3d 3d 20 30 20 7d 20 7b | length.$opts(-version)].==.0.}.{ |
41540 | 0a 09 65 72 72 6f 72 20 5b 66 6f 72 6d 61 74 20 24 65 72 72 28 76 61 6c 75 65 4d 69 73 73 69 6e | ..error.[format.$err(valueMissin |
41560 | 67 29 20 22 2d 76 65 72 73 69 6f 6e 22 5d 0a 20 20 20 20 7d 0a 20 20 20 20 0a 20 20 20 20 69 66 | g)."-version"].....}..........if |
41580 | 20 7b 20 5b 6c 6c 65 6e 67 74 68 20 24 6f 70 74 73 28 2d 73 6f 75 72 63 65 29 5d 20 3d 3d 20 30 | .{.[llength.$opts(-source)].==.0 |
415a0 | 20 26 26 20 5b 6c 6c 65 6e 67 74 68 20 24 6f 70 74 73 28 2d 6c 6f 61 64 29 5d 20 3d 3d 20 30 20 | .&&.[llength.$opts(-load)].==.0. |
415c0 | 7d 20 7b 0a 09 65 72 72 6f 72 20 24 65 72 72 28 6e 6f 4c 6f 61 64 4f 72 53 6f 75 72 63 65 29 0a | }.{..error.$err(noLoadOrSource). |
415e0 | 20 20 20 20 7d 0a 0a 20 20 20 20 23 20 4f 4b 2c 20 6e 6f 77 20 65 76 65 72 79 74 68 69 6e 67 20 | ....}......#.OK,.now.everything. |
41600 | 69 73 20 67 6f 6f 64 2e 20 20 47 65 6e 65 72 61 74 65 20 74 68 65 20 70 61 63 6b 61 67 65 20 69 | is.good...Generate.the.package.i |
41620 | 66 6e 65 65 64 65 64 20 73 74 61 74 6d 65 6e 74 2e 0a 20 20 20 20 73 65 74 20 63 6d 64 6c 69 6e | fneeded.statment......set.cmdlin |
41640 | 65 20 22 70 61 63 6b 61 67 65 20 69 66 6e 65 65 64 65 64 20 24 6f 70 74 73 28 2d 6e 61 6d 65 29 | e."package.ifneeded.$opts(-name) |
41660 | 20 24 6f 70 74 73 28 2d 76 65 72 73 69 6f 6e 29 20 22 0a 20 20 20 20 0a 20 20 20 20 73 65 74 20 | .$opts(-version)."..........set. |
41680 | 63 6d 64 4c 69 73 74 20 7b 7d 0a 20 20 20 20 73 65 74 20 6c 61 7a 79 46 69 6c 65 4c 69 73 74 20 | cmdList.{}.....set.lazyFileList. |
416a0 | 7b 7d 0a 0a 20 20 20 20 23 20 48 61 6e 64 6c 65 20 2d 6c 6f 61 64 20 61 6e 64 20 2d 73 6f 75 72 | {}......#.Handle.-load.and.-sour |
416c0 | 63 65 20 73 70 65 63 73 0a 20 20 20 20 66 6f 72 65 61 63 68 20 6b 65 79 20 7b 6c 6f 61 64 20 73 | ce.specs.....foreach.key.{load.s |
416e0 | 6f 75 72 63 65 7d 20 7b 0a 09 66 6f 72 65 61 63 68 20 66 69 6c 65 73 70 65 63 20 24 6f 70 74 73 | ource}.{..foreach.filespec.$opts |
41700 | 28 2d 24 6b 65 79 29 20 7b 0a 09 20 20 20 20 66 6f 72 65 61 63 68 20 7b 66 69 6c 65 6e 61 6d 65 | (-$key).{......foreach.{filename |
41720 | 20 70 72 6f 63 6c 69 73 74 7d 20 7b 7b 7d 20 7b 7d 7d 20 7b 0a 09 09 62 72 65 61 6b 0a 09 20 20 | .proclist}.{{}.{}}.{...break.... |
41740 | 20 20 7d 0a 09 20 20 20 20 66 6f 72 65 61 63 68 20 7b 66 69 6c 65 6e 61 6d 65 20 70 72 6f 63 6c | ..}......foreach.{filename.procl |
41760 | 69 73 74 7d 20 24 66 69 6c 65 73 70 65 63 20 7b 0a 09 09 62 72 65 61 6b 0a 09 20 20 20 20 7d 0a | ist}.$filespec.{...break......}. |
41780 | 09 20 20 20 20 0a 09 20 20 20 20 69 66 20 7b 20 5b 6c 6c 65 6e 67 74 68 20 24 70 72 6f 63 6c 69 | ...........if.{.[llength.$procli |
417a0 | 73 74 5d 20 3d 3d 20 30 20 7d 20 7b 0a 09 09 73 65 74 20 63 6d 64 20 22 5c 5b 6c 69 73 74 20 24 | st].==.0.}.{...set.cmd."\[list.$ |
417c0 | 6b 65 79 20 5c 5b 66 69 6c 65 20 6a 6f 69 6e 20 5c 24 64 69 72 20 5b 6c 69 73 74 20 24 66 69 6c | key.\[file.join.\$dir.[list.$fil |
417e0 | 65 6e 61 6d 65 5d 5c 5d 5c 5d 22 0a 09 09 6c 61 70 70 65 6e 64 20 63 6d 64 4c 69 73 74 20 24 63 | ename]\]\]"...lappend.cmdList.$c |
41800 | 6d 64 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 6c 61 70 70 65 6e 64 20 6c 61 7a 79 46 | md......}.else.{...lappend.lazyF |
41820 | 69 6c 65 4c 69 73 74 20 5b 6c 69 73 74 20 24 66 69 6c 65 6e 61 6d 65 20 24 6b 65 79 20 24 70 72 | ileList.[list.$filename.$key.$pr |
41840 | 6f 63 6c 69 73 74 5d 0a 09 20 20 20 20 7d 0a 09 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 69 66 20 | oclist]......}..}.....}......if. |
41860 | 7b 20 5b 6c 6c 65 6e 67 74 68 20 24 6c 61 7a 79 46 69 6c 65 4c 69 73 74 5d 20 3e 20 30 20 7d 20 | {.[llength.$lazyFileList].>.0.}. |
41880 | 7b 0a 09 6c 61 70 70 65 6e 64 20 63 6d 64 4c 69 73 74 20 22 5c 5b 6c 69 73 74 20 74 63 6c 50 6b | {..lappend.cmdList."\[list.tclPk |
418a0 | 67 53 65 74 75 70 20 5c 24 64 69 72 20 24 6f 70 74 73 28 2d 6e 61 6d 65 29 5c 0a 09 09 24 6f 70 | gSetup.\$dir.$opts(-name)\...$op |
418c0 | 74 73 28 2d 76 65 72 73 69 6f 6e 29 20 5b 6c 69 73 74 20 24 6c 61 7a 79 46 69 6c 65 4c 69 73 74 | ts(-version).[list.$lazyFileList |
418e0 | 5d 5c 5d 22 0a 20 20 20 20 7d 0a 20 20 20 20 61 70 70 65 6e 64 20 63 6d 64 6c 69 6e 65 20 5b 6a | ]\]".....}.....append.cmdline.[j |
41900 | 6f 69 6e 20 24 63 6d 64 4c 69 73 74 20 22 5c 5c 6e 22 5d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 | oin.$cmdList."\\n"].....return.$ |
41920 | 63 6d 64 6c 69 6e 65 0a 7d 0a 0a 00 00 23 1d 23 20 68 69 73 74 6f 72 79 2e 74 63 6c 20 2d 2d 0a | cmdline.}....#.#.history.tcl.--. |
41940 | 23 0a 23 20 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 68 69 73 74 6f 72 | #.#.Implementation.of.the.histor |
41960 | 79 20 63 6f 6d 6d 61 6e 64 2e 0a 23 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 68 69 | y.command..#.#.RCS:.@(#).$Id:.hi |
41980 | 73 74 6f 72 79 2e 74 63 6c 2c 76 20 31 2e 33 20 31 39 39 38 2f 30 39 2f 31 34 20 31 38 3a 34 30 | story.tcl,v.1.3.1998/09/14.18:40 |
419a0 | 3a 30 33 20 73 74 61 6e 74 6f 6e 20 45 78 70 20 24 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 | :03.stanton.Exp.$.#.#.Copyright. |
419c0 | 28 63 29 20 31 39 39 37 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a | (c).1997.Sun.Microsystems,.Inc.. |
419e0 | 23 0a 23 20 53 65 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 | #.#.See.the.file."license.terms" |
41a00 | 20 66 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 | .for.information.on.usage.and.re |
41a20 | 64 69 73 74 72 69 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 | distribution.#.of.this.file,.and |
41a40 | 20 66 6f 72 20 61 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 | .for.a.DISCLAIMER.OF.ALL.WARRANT |
41a60 | 49 45 53 2e 0a 23 0a 0a 23 20 54 68 65 20 74 63 6c 3a 3a 68 69 73 74 6f 72 79 20 61 72 72 61 79 | IES..#..#.The.tcl::history.array |
41a80 | 20 68 6f 6c 64 73 20 74 68 65 20 68 69 73 74 6f 72 79 20 6c 69 73 74 20 61 6e 64 0a 23 20 73 6f | .holds.the.history.list.and.#.so |
41aa0 | 6d 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 62 6f 6f 6b 6b 65 65 70 69 6e 67 20 76 61 72 69 61 62 | me.additional.bookkeeping.variab |
41ac0 | 6c 65 73 2e 0a 23 0a 23 20 6e 65 78 74 69 64 09 74 68 65 20 69 6e 64 65 78 20 75 73 65 64 20 66 | les..#.#.nextid.the.index.used.f |
41ae0 | 6f 72 20 74 68 65 20 6e 65 78 74 20 68 69 73 74 6f 72 79 20 6c 69 73 74 20 69 74 65 6d 2e 0a 23 | or.the.next.history.list.item..# |
41b00 | 20 6b 65 65 70 09 09 74 68 65 20 6d 61 78 20 73 69 7a 65 20 6f 66 20 74 68 65 20 68 69 73 74 6f | .keep..the.max.size.of.the.histo |
41b20 | 72 79 20 6c 69 73 74 0a 23 20 6f 6c 64 65 73 74 09 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 | ry.list.#.oldest.the.index.of.th |
41b40 | 65 20 6f 6c 64 65 73 74 20 69 74 65 6d 20 69 6e 20 74 68 65 20 68 69 73 74 6f 72 79 2e 0a 0a 6e | e.oldest.item.in.the.history...n |
41b60 | 61 6d 65 73 70 61 63 65 20 65 76 61 6c 20 74 63 6c 20 7b 0a 20 20 20 20 76 61 72 69 61 62 6c 65 | amespace.eval.tcl.{.....variable |
41b80 | 20 68 69 73 74 6f 72 79 0a 20 20 20 20 69 66 20 7b 21 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 68 | .history.....if.{![info.exists.h |
41ba0 | 69 73 74 6f 72 79 5d 7d 20 7b 0a 09 61 72 72 61 79 20 73 65 74 20 68 69 73 74 6f 72 79 20 7b 0a | istory]}.{..array.set.history.{. |
41bc0 | 09 20 20 20 20 6e 65 78 74 69 64 09 30 0a 09 20 20 20 20 6b 65 65 70 09 32 30 0a 09 20 20 20 20 | .....nextid.0......keep.20...... |
41be0 | 6f 6c 64 65 73 74 09 2d 32 30 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 68 69 73 74 6f 72 79 | oldest.-20..}.....}.}..#.history |
41c00 | 20 2d 2d 0a 23 0a 23 09 54 68 69 73 20 69 73 20 74 68 65 20 6d 61 69 6e 20 68 69 73 74 6f 72 79 | .--.#.#.This.is.the.main.history |
41c20 | 20 63 6f 6d 6d 61 6e 64 2e 20 20 53 65 65 20 74 68 65 20 6d 61 6e 20 70 61 67 65 20 66 6f 72 20 | .command...See.the.man.page.for. |
41c40 | 69 74 73 20 69 6e 74 65 72 66 61 63 65 2e 0a 23 09 54 68 69 73 20 64 6f 65 73 20 61 72 67 75 6d | its.interface..#.This.does.argum |
41c60 | 65 6e 74 20 63 68 65 63 6b 69 6e 67 20 61 6e 64 20 63 61 6c 6c 73 20 68 65 6c 70 65 72 20 70 72 | ent.checking.and.calls.helper.pr |
41c80 | 6f 63 65 64 75 72 65 73 20 69 6e 20 74 68 65 0a 23 09 68 69 73 74 6f 72 79 20 6e 61 6d 65 73 70 | ocedures.in.the.#.history.namesp |
41ca0 | 61 63 65 2e 0a 0a 70 72 6f 63 20 68 69 73 74 6f 72 79 20 7b 61 72 67 73 7d 20 7b 0a 20 20 20 20 | ace...proc.history.{args}.{..... |
41cc0 | 73 65 74 20 6c 65 6e 20 5b 6c 6c 65 6e 67 74 68 20 24 61 72 67 73 5d 0a 20 20 20 20 69 66 20 7b | set.len.[llength.$args].....if.{ |
41ce0 | 24 6c 65 6e 20 3d 3d 20 30 7d 20 7b 0a 09 72 65 74 75 72 6e 20 5b 74 63 6c 3a 3a 48 69 73 74 49 | $len.==.0}.{..return.[tcl::HistI |
41d00 | 6e 66 6f 5d 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 6b 65 79 20 5b 6c 69 6e 64 65 78 20 24 | nfo].....}.....set.key.[lindex.$ |
41d20 | 61 72 67 73 20 30 5d 0a 20 20 20 20 73 65 74 20 6f 70 74 69 6f 6e 73 20 22 61 64 64 2c 20 63 68 | args.0].....set.options."add,.ch |
41d40 | 61 6e 67 65 2c 20 63 6c 65 61 72 2c 20 65 76 65 6e 74 2c 20 69 6e 66 6f 2c 20 6b 65 65 70 2c 20 | ange,.clear,.event,.info,.keep,. |
41d60 | 6e 65 78 74 69 64 2c 20 6f 72 20 72 65 64 6f 22 0a 20 20 20 20 73 77 69 74 63 68 20 2d 67 6c 6f | nextid,.or.redo".....switch.-glo |
41d80 | 62 20 2d 2d 20 24 6b 65 79 20 7b 0a 09 61 2a 20 7b 20 23 20 68 69 73 74 6f 72 79 20 61 64 64 0a | b.--.$key.{..a*.{.#.history.add. |
41da0 | 0a 09 20 20 20 20 69 66 20 7b 24 6c 65 6e 20 3e 20 33 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d | ......if.{$len.>.3}.{...return.- |
41dc0 | 63 6f 64 65 20 65 72 72 6f 72 20 22 77 72 6f 6e 67 20 23 20 61 72 67 73 3a 20 73 68 6f 75 6c 64 | code.error."wrong.#.args:.should |
41de0 | 20 62 65 20 5c 22 68 69 73 74 6f 72 79 20 61 64 64 20 65 76 65 6e 74 20 3f 65 78 65 63 3f 5c 22 | .be.\"history.add.event.?exec?\" |
41e00 | 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 21 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 | "......}......if.{![string.match |
41e20 | 20 24 6b 65 79 2a 20 61 64 64 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 | .$key*.add]}.{...return.-code.er |
41e40 | 72 6f 72 20 22 62 61 64 20 6f 70 74 69 6f 6e 20 5c 22 24 6b 65 79 5c 22 3a 20 6d 75 73 74 20 62 | ror."bad.option.\"$key\":.must.b |
41e60 | 65 20 24 6f 70 74 69 6f 6e 73 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 24 6c 65 6e | e.$options"......}......if.{$len |
41e80 | 20 3d 3d 20 33 7d 20 7b 0a 09 09 73 65 74 20 61 72 67 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 | .==.3}.{...set.arg.[lindex.$args |
41ea0 | 20 32 5d 0a 09 09 69 66 20 7b 21 20 28 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 65 2a 20 24 61 | .2]...if.{!.([string.match.e*.$a |
41ec0 | 72 67 5d 20 26 26 20 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 24 61 72 67 2a 20 65 78 65 63 5d | rg].&&.[string.match.$arg*.exec] |
41ee0 | 29 7d 20 7b 0a 09 09 20 20 20 20 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 62 | )}.{.......return.-code.error."b |
41f00 | 61 64 20 61 72 67 75 6d 65 6e 74 20 5c 22 24 61 72 67 5c 22 3a 20 73 68 6f 75 6c 64 20 62 65 20 | ad.argument.\"$arg\":.should.be. |
41f20 | 5c 22 65 78 65 63 5c 22 22 0a 09 09 7d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 72 65 74 75 72 6e | \"exec\""...}......}......return |
41f40 | 20 5b 74 63 6c 3a 3a 48 69 73 74 41 64 64 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 31 5d 20 | .[tcl::HistAdd.[lindex.$args.1]. |
41f60 | 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 32 5d 5d 0a 09 7d 0a 09 63 68 2a 20 7b 20 23 20 68 69 | [lindex.$args.2]]..}..ch*.{.#.hi |
41f80 | 73 74 6f 72 79 20 63 68 61 6e 67 65 0a 0a 09 20 20 20 20 69 66 20 7b 28 24 6c 65 6e 20 3e 20 33 | story.change.......if.{($len.>.3 |
41fa0 | 29 20 7c 7c 20 28 24 6c 65 6e 20 3c 20 32 29 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 | ).||.($len.<.2)}.{...return.-cod |
41fc0 | 65 20 65 72 72 6f 72 20 22 77 72 6f 6e 67 20 23 20 61 72 67 73 3a 20 73 68 6f 75 6c 64 20 62 65 | e.error."wrong.#.args:.should.be |
41fe0 | 20 5c 22 68 69 73 74 6f 72 79 20 63 68 61 6e 67 65 20 6e 65 77 56 61 6c 75 65 20 3f 65 76 65 6e | .\"history.change.newValue.?even |
42000 | 74 3f 5c 22 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 21 5b 73 74 72 69 6e 67 20 6d | t?\""......}......if.{![string.m |
42020 | 61 74 63 68 20 24 6b 65 79 2a 20 63 68 61 6e 67 65 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d | atch.$key*.change]}.{...return.- |
42040 | 63 6f 64 65 20 65 72 72 6f 72 20 22 62 61 64 20 6f 70 74 69 6f 6e 20 5c 22 24 6b 65 79 5c 22 3a | code.error."bad.option.\"$key\": |
42060 | 20 6d 75 73 74 20 62 65 20 24 6f 70 74 69 6f 6e 73 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 | .must.be.$options"......}......i |
42080 | 66 20 7b 24 6c 65 6e 20 3d 3d 20 32 7d 20 7b 0a 09 09 73 65 74 20 65 76 65 6e 74 20 30 0a 09 20 | f.{$len.==.2}.{...set.event.0... |
420a0 | 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 09 73 65 74 20 65 76 65 6e 74 20 5b 6c 69 6e 64 65 78 20 | ...}.else.{...set.event.[lindex. |
420c0 | 24 61 72 67 73 20 32 5d 0a 09 20 20 20 20 7d 0a 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 74 63 | $args.2]......}.......return.[tc |
420e0 | 6c 3a 3a 48 69 73 74 43 68 61 6e 67 65 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 31 5d 20 24 | l::HistChange.[lindex.$args.1].$ |
42100 | 65 76 65 6e 74 5d 0a 09 7d 0a 09 63 6c 2a 20 7b 20 23 20 68 69 73 74 6f 72 79 20 63 6c 65 61 72 | event]..}..cl*.{.#.history.clear |
42120 | 0a 0a 09 20 20 20 20 69 66 20 7b 28 24 6c 65 6e 20 3e 20 31 29 7d 20 7b 0a 09 09 72 65 74 75 72 | .......if.{($len.>.1)}.{...retur |
42140 | 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 77 72 6f 6e 67 20 23 20 61 72 67 73 3a 20 73 68 6f | n.-code.error."wrong.#.args:.sho |
42160 | 75 6c 64 20 62 65 20 5c 22 68 69 73 74 6f 72 79 20 63 6c 65 61 72 5c 22 22 0a 09 20 20 20 20 7d | uld.be.\"history.clear\""......} |
42180 | 0a 09 20 20 20 20 69 66 20 7b 21 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 24 6b 65 79 2a 20 63 | ......if.{![string.match.$key*.c |
421a0 | 6c 65 61 72 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 62 | lear]}.{...return.-code.error."b |
421c0 | 61 64 20 6f 70 74 69 6f 6e 20 5c 22 24 6b 65 79 5c 22 3a 20 6d 75 73 74 20 62 65 20 24 6f 70 74 | ad.option.\"$key\":.must.be.$opt |
421e0 | 69 6f 6e 73 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 74 63 6c 3a 3a 48 | ions"......}......return.[tcl::H |
42200 | 69 73 74 43 6c 65 61 72 5d 0a 09 7d 0a 09 65 2a 20 7b 20 23 20 68 69 73 74 6f 72 79 20 65 76 65 | istClear]..}..e*.{.#.history.eve |
42220 | 6e 74 0a 0a 09 20 20 20 20 69 66 20 7b 24 6c 65 6e 20 3e 20 32 7d 20 7b 0a 09 09 72 65 74 75 72 | nt.......if.{$len.>.2}.{...retur |
42240 | 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 77 72 6f 6e 67 20 23 20 61 72 67 73 3a 20 73 68 6f | n.-code.error."wrong.#.args:.sho |
42260 | 75 6c 64 20 62 65 20 5c 22 68 69 73 74 6f 72 79 20 65 76 65 6e 74 20 3f 65 76 65 6e 74 3f 5c 22 | uld.be.\"history.event.?event?\" |
42280 | 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 21 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 | "......}......if.{![string.match |
422a0 | 20 24 6b 65 79 2a 20 65 76 65 6e 74 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 | .$key*.event]}.{...return.-code. |
422c0 | 65 72 72 6f 72 20 22 62 61 64 20 6f 70 74 69 6f 6e 20 5c 22 24 6b 65 79 5c 22 3a 20 6d 75 73 74 | error."bad.option.\"$key\":.must |
422e0 | 20 62 65 20 24 6f 70 74 69 6f 6e 73 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 24 6c | .be.$options"......}......if.{$l |
42300 | 65 6e 20 3d 3d 20 31 7d 20 7b 0a 09 09 73 65 74 20 65 76 65 6e 74 20 2d 31 0a 09 20 20 20 20 7d | en.==.1}.{...set.event.-1......} |
42320 | 20 65 6c 73 65 20 7b 0a 09 09 73 65 74 20 65 76 65 6e 74 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 | .else.{...set.event.[lindex.$arg |
42340 | 73 20 31 5d 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 74 63 6c 3a 3a 48 69 | s.1]......}......return.[tcl::Hi |
42360 | 73 74 45 76 65 6e 74 20 24 65 76 65 6e 74 5d 0a 09 7d 0a 09 69 2a 20 7b 20 23 20 68 69 73 74 6f | stEvent.$event]..}..i*.{.#.histo |
42380 | 72 79 20 69 6e 66 6f 0a 0a 09 20 20 20 20 69 66 20 7b 24 6c 65 6e 20 3e 20 32 7d 20 7b 0a 09 09 | ry.info.......if.{$len.>.2}.{... |
423a0 | 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 77 72 6f 6e 67 20 23 20 61 72 67 73 | return.-code.error."wrong.#.args |
423c0 | 3a 20 73 68 6f 75 6c 64 20 62 65 20 5c 22 68 69 73 74 6f 72 79 20 69 6e 66 6f 20 3f 63 6f 75 6e | :.should.be.\"history.info.?coun |
423e0 | 74 3f 5c 22 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 21 5b 73 74 72 69 6e 67 20 6d | t?\""......}......if.{![string.m |
42400 | 61 74 63 68 20 24 6b 65 79 2a 20 69 6e 66 6f 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f | atch.$key*.info]}.{...return.-co |
42420 | 64 65 20 65 72 72 6f 72 20 22 62 61 64 20 6f 70 74 69 6f 6e 20 5c 22 24 6b 65 79 5c 22 3a 20 6d | de.error."bad.option.\"$key\":.m |
42440 | 75 73 74 20 62 65 20 24 6f 70 74 69 6f 6e 73 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 72 65 74 | ust.be.$options"......}......ret |
42460 | 75 72 6e 20 5b 74 63 6c 3a 3a 48 69 73 74 49 6e 66 6f 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 | urn.[tcl::HistInfo.[lindex.$args |
42480 | 20 31 5d 5d 0a 09 7d 0a 09 6b 2a 20 7b 20 23 20 68 69 73 74 6f 72 79 20 6b 65 65 70 0a 0a 09 20 | .1]]..}..k*.{.#.history.keep.... |
424a0 | 20 20 20 69 66 20 7b 24 6c 65 6e 20 3e 20 32 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 | ...if.{$len.>.2}.{...return.-cod |
424c0 | 65 20 65 72 72 6f 72 20 22 77 72 6f 6e 67 20 23 20 61 72 67 73 3a 20 73 68 6f 75 6c 64 20 62 65 | e.error."wrong.#.args:.should.be |
424e0 | 20 5c 22 68 69 73 74 6f 72 79 20 6b 65 65 70 20 3f 63 6f 75 6e 74 3f 5c 22 22 0a 09 20 20 20 20 | .\"history.keep.?count?\""...... |
42500 | 7d 0a 09 20 20 20 20 69 66 20 7b 24 6c 65 6e 20 3d 3d 20 31 7d 20 7b 0a 09 09 72 65 74 75 72 6e | }......if.{$len.==.1}.{...return |
42520 | 20 5b 74 63 6c 3a 3a 48 69 73 74 4b 65 65 70 5d 0a 09 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 | .[tcl::HistKeep]......}.else.{.. |
42540 | 09 73 65 74 20 6c 69 6d 69 74 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 31 5d 0a 09 09 69 66 | .set.limit.[lindex.$args.1]...if |
42560 | 20 7b 5b 63 61 74 63 68 20 7b 65 78 70 72 20 7b 7e 24 6c 69 6d 69 74 7d 7d 5d 20 7c 7c 20 28 24 | .{[catch.{expr.{~$limit}}].||.($ |
42580 | 6c 69 6d 69 74 20 3c 20 30 29 7d 20 7b 0a 09 09 20 20 20 20 72 65 74 75 72 6e 20 2d 63 6f 64 65 | limit.<.0)}.{.......return.-code |
425a0 | 20 65 72 72 6f 72 20 22 69 6c 6c 65 67 61 6c 20 6b 65 65 70 20 63 6f 75 6e 74 20 5c 22 24 6c 69 | .error."illegal.keep.count.\"$li |
425c0 | 6d 69 74 5c 22 22 0a 09 09 7d 0a 09 09 72 65 74 75 72 6e 20 5b 74 63 6c 3a 3a 48 69 73 74 4b 65 | mit\""...}...return.[tcl::HistKe |
425e0 | 65 70 20 24 6c 69 6d 69 74 5d 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 6e 2a 20 7b 20 23 20 68 69 73 | ep.$limit]......}..}..n*.{.#.his |
42600 | 74 6f 72 79 20 6e 65 78 74 69 64 0a 0a 09 20 20 20 20 69 66 20 7b 24 6c 65 6e 20 3e 20 31 7d 20 | tory.nextid.......if.{$len.>.1}. |
42620 | 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 77 72 6f 6e 67 20 23 20 | {...return.-code.error."wrong.#. |
42640 | 61 72 67 73 3a 20 73 68 6f 75 6c 64 20 62 65 20 5c 22 68 69 73 74 6f 72 79 20 6e 65 78 74 69 64 | args:.should.be.\"history.nextid |
42660 | 5c 22 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 21 5b 73 74 72 69 6e 67 20 6d 61 74 | \""......}......if.{![string.mat |
42680 | 63 68 20 24 6b 65 79 2a 20 6e 65 78 74 69 64 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f | ch.$key*.nextid]}.{...return.-co |
426a0 | 64 65 20 65 72 72 6f 72 20 22 62 61 64 20 6f 70 74 69 6f 6e 20 5c 22 24 6b 65 79 5c 22 3a 20 6d | de.error."bad.option.\"$key\":.m |
426c0 | 75 73 74 20 62 65 20 24 6f 70 74 69 6f 6e 73 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 72 65 74 | ust.be.$options"......}......ret |
426e0 | 75 72 6e 20 5b 65 78 70 72 20 7b 24 74 63 6c 3a 3a 68 69 73 74 6f 72 79 28 6e 65 78 74 69 64 29 | urn.[expr.{$tcl::history(nextid) |
42700 | 20 2b 20 31 7d 5d 0a 09 7d 0a 09 72 2a 20 7b 20 23 20 68 69 73 74 6f 72 79 20 72 65 64 6f 0a 0a | .+.1}]..}..r*.{.#.history.redo.. |
42720 | 09 20 20 20 20 69 66 20 7b 24 6c 65 6e 20 3e 20 32 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 | .....if.{$len.>.2}.{...return.-c |
42740 | 6f 64 65 20 65 72 72 6f 72 20 22 77 72 6f 6e 67 20 23 20 61 72 67 73 3a 20 73 68 6f 75 6c 64 20 | ode.error."wrong.#.args:.should. |
42760 | 62 65 20 5c 22 68 69 73 74 6f 72 79 20 72 65 64 6f 20 3f 65 76 65 6e 74 3f 5c 22 22 0a 09 20 20 | be.\"history.redo.?event?\"".... |
42780 | 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 21 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 24 6b 65 79 | ..}......if.{![string.match.$key |
427a0 | 2a 20 72 65 64 6f 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 | *.redo]}.{...return.-code.error. |
427c0 | 22 62 61 64 20 6f 70 74 69 6f 6e 20 5c 22 24 6b 65 79 5c 22 3a 20 6d 75 73 74 20 62 65 20 24 6f | "bad.option.\"$key\":.must.be.$o |
427e0 | 70 74 69 6f 6e 73 22 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 72 65 74 75 72 6e 20 5b 74 63 6c 3a | ptions"......}......return.[tcl: |
42800 | 3a 48 69 73 74 52 65 64 6f 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 31 5d 5d 0a 09 7d 0a 09 | :HistRedo.[lindex.$args.1]]..}.. |
42820 | 64 65 66 61 75 6c 74 20 7b 0a 09 20 20 20 20 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f | default.{......return.-code.erro |
42840 | 72 20 22 62 61 64 20 6f 70 74 69 6f 6e 20 5c 22 24 6b 65 79 5c 22 3a 20 6d 75 73 74 20 62 65 20 | r."bad.option.\"$key\":.must.be. |
42860 | 24 6f 70 74 69 6f 6e 73 22 0a 09 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 63 6c 3a 3a 48 69 73 | $options"..}.....}.}..#.tcl::His |
42880 | 74 41 64 64 20 2d 2d 0a 23 0a 23 09 41 64 64 20 61 6e 20 69 74 65 6d 20 74 6f 20 74 68 65 20 68 | tAdd.--.#.#.Add.an.item.to.the.h |
428a0 | 69 73 74 6f 72 79 2c 20 61 6e 64 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 65 76 61 6c 20 69 74 20 61 | istory,.and.optionally.eval.it.a |
428c0 | 74 20 74 68 65 20 67 6c 6f 62 61 6c 20 73 63 6f 70 65 0a 23 0a 23 20 50 61 72 61 6d 65 74 65 72 | t.the.global.scope.#.#.Parameter |
428e0 | 73 3a 0a 23 09 63 6f 6d 6d 61 6e 64 09 09 74 68 65 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61 64 64 | s:.#.command..the.command.to.add |
42900 | 0a 23 09 65 78 65 63 09 09 28 6f 70 74 69 6f 6e 61 6c 29 20 61 20 73 75 62 73 74 72 69 6e 67 20 | .#.exec..(optional).a.substring. |
42920 | 6f 66 20 22 65 78 65 63 22 20 63 61 75 73 65 73 20 74 68 65 0a 23 09 09 09 63 6f 6d 6d 61 6e 64 | of."exec".causes.the.#...command |
42940 | 20 74 6f 20 62 65 20 65 76 61 6c 65 64 2e 0a 23 20 52 65 73 75 6c 74 73 3a 0a 23 20 09 49 66 20 | .to.be.evaled..#.Results:.#..If. |
42960 | 65 78 65 63 75 74 69 6e 67 2c 20 74 68 65 6e 20 74 68 65 20 72 65 73 75 6c 74 73 20 6f 66 20 74 | executing,.then.the.results.of.t |
42980 | 68 65 20 63 6f 6d 6d 61 6e 64 20 61 72 65 20 72 65 74 75 72 6e 65 64 0a 23 0a 23 20 53 69 64 65 | he.command.are.returned.#.#.Side |
429a0 | 20 45 66 66 65 63 74 73 3a 0a 23 09 41 64 64 73 20 74 6f 20 74 68 65 20 68 69 73 74 6f 72 79 20 | .Effects:.#.Adds.to.the.history. |
429c0 | 6c 69 73 74 0a 0a 20 70 72 6f 63 20 74 63 6c 3a 3a 48 69 73 74 41 64 64 20 7b 63 6f 6d 6d 61 6e | list...proc.tcl::HistAdd.{comman |
429e0 | 64 20 7b 65 78 65 63 20 7b 7d 7d 7d 20 7b 0a 20 20 20 20 76 61 72 69 61 62 6c 65 20 68 69 73 74 | d.{exec.{}}}.{.....variable.hist |
42a00 | 6f 72 79 0a 20 20 20 20 73 65 74 20 69 20 5b 69 6e 63 72 20 68 69 73 74 6f 72 79 28 6e 65 78 74 | ory.....set.i.[incr.history(next |
42a20 | 69 64 29 5d 0a 20 20 20 20 73 65 74 20 68 69 73 74 6f 72 79 28 24 69 29 20 24 63 6f 6d 6d 61 6e | id)].....set.history($i).$comman |
42a40 | 64 0a 20 20 20 20 73 65 74 20 6a 20 5b 69 6e 63 72 20 68 69 73 74 6f 72 79 28 6f 6c 64 65 73 74 | d.....set.j.[incr.history(oldest |
42a60 | 29 5d 0a 20 20 20 20 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 68 69 73 74 6f 72 79 28 | )].....if.{[info.exists.history( |
42a80 | 24 6a 29 5d 7d 20 7b 75 6e 73 65 74 20 68 69 73 74 6f 72 79 28 24 6a 29 7d 0a 20 20 20 20 69 66 | $j)]}.{unset.history($j)}.....if |
42aa0 | 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 65 2a 20 24 65 78 65 63 5d 7d 20 7b 0a 09 72 65 | .{[string.match.e*.$exec]}.{..re |
42ac0 | 74 75 72 6e 20 5b 75 70 6c 65 76 65 6c 20 23 30 20 24 63 6f 6d 6d 61 6e 64 5d 0a 20 20 20 20 7d | turn.[uplevel.#0.$command].....} |
42ae0 | 20 65 6c 73 65 20 7b 0a 09 72 65 74 75 72 6e 20 7b 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 63 | .else.{..return.{}.....}.}..#.tc |
42b00 | 6c 3a 3a 48 69 73 74 4b 65 65 70 20 2d 2d 0a 23 0a 23 09 53 65 74 20 6f 72 20 71 75 65 72 79 20 | l::HistKeep.--.#.#.Set.or.query. |
42b20 | 74 68 65 20 6c 69 6d 69 74 20 6f 6e 20 74 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 20 68 | the.limit.on.the.length.of.the.h |
42b40 | 69 73 74 6f 72 79 20 6c 69 73 74 0a 23 0a 23 20 50 61 72 61 6d 65 74 65 72 73 3a 0a 23 09 6c 69 | istory.list.#.#.Parameters:.#.li |
42b60 | 6d 69 74 09 28 6f 70 74 69 6f 6e 61 6c 29 20 74 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 | mit.(optional).the.length.of.the |
42b80 | 20 68 69 73 74 6f 72 79 20 6c 69 73 74 0a 23 0a 23 20 52 65 73 75 6c 74 73 3a 0a 23 09 49 66 20 | .history.list.#.#.Results:.#.If. |
42ba0 | 6e 6f 20 6c 69 6d 69 74 20 69 73 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 20 63 75 72 72 65 | no.limit.is.specified,.the.curre |
42bc0 | 6e 74 20 6c 69 6d 69 74 20 69 73 20 72 65 74 75 72 6e 65 64 0a 23 0a 23 20 53 69 64 65 20 45 66 | nt.limit.is.returned.#.#.Side.Ef |
42be0 | 66 65 63 74 73 3a 0a 23 09 55 70 64 61 74 65 73 20 68 69 73 74 6f 72 79 28 6b 65 65 70 29 20 69 | fects:.#.Updates.history(keep).i |
42c00 | 66 20 61 20 6c 69 6d 69 74 20 69 73 20 73 70 65 63 69 66 69 65 64 0a 0a 20 70 72 6f 63 20 74 63 | f.a.limit.is.specified...proc.tc |
42c20 | 6c 3a 3a 48 69 73 74 4b 65 65 70 20 7b 7b 6c 69 6d 69 74 20 7b 7d 7d 7d 20 7b 0a 20 20 20 20 76 | l::HistKeep.{{limit.{}}}.{.....v |
42c40 | 61 72 69 61 62 6c 65 20 68 69 73 74 6f 72 79 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 | ariable.history.....if.{[string. |
42c60 | 6c 65 6e 67 74 68 20 24 6c 69 6d 69 74 5d 20 3d 3d 20 30 7d 20 7b 0a 09 72 65 74 75 72 6e 20 24 | length.$limit].==.0}.{..return.$ |
42c80 | 68 69 73 74 6f 72 79 28 6b 65 65 70 29 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 | history(keep).....}.else.{..set. |
42ca0 | 6f 6c 64 6f 6c 64 20 24 68 69 73 74 6f 72 79 28 6f 6c 64 65 73 74 29 0a 09 73 65 74 20 68 69 73 | oldold.$history(oldest)..set.his |
42cc0 | 74 6f 72 79 28 6f 6c 64 65 73 74 29 20 5b 65 78 70 72 20 7b 24 68 69 73 74 6f 72 79 28 6e 65 78 | tory(oldest).[expr.{$history(nex |
42ce0 | 74 69 64 29 20 2d 20 24 6c 69 6d 69 74 7d 5d 0a 09 66 6f 72 20 7b 7d 20 7b 24 6f 6c 64 6f 6c 64 | tid).-.$limit}]..for.{}.{$oldold |
42d00 | 20 3c 3d 20 24 68 69 73 74 6f 72 79 28 6f 6c 64 65 73 74 29 7d 20 7b 69 6e 63 72 20 6f 6c 64 6f | .<=.$history(oldest)}.{incr.oldo |
42d20 | 6c 64 7d 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 68 69 73 74 | ld}.{......if.{[info.exists.hist |
42d40 | 6f 72 79 28 24 6f 6c 64 6f 6c 64 29 5d 7d 20 7b 75 6e 73 65 74 20 68 69 73 74 6f 72 79 28 24 6f | ory($oldold)]}.{unset.history($o |
42d60 | 6c 64 6f 6c 64 29 7d 0a 09 7d 0a 09 73 65 74 20 68 69 73 74 6f 72 79 28 6b 65 65 70 29 20 24 6c | ldold)}..}..set.history(keep).$l |
42d80 | 69 6d 69 74 0a 20 20 20 20 7d 0a 7d 0a 0a 23 20 74 63 6c 3a 3a 48 69 73 74 43 6c 65 61 72 20 2d | imit.....}.}..#.tcl::HistClear.- |
42da0 | 2d 0a 23 0a 23 09 45 72 61 73 65 20 74 68 65 20 68 69 73 74 6f 72 79 20 6c 69 73 74 0a 23 0a 23 | -.#.#.Erase.the.history.list.#.# |
42dc0 | 20 50 61 72 61 6d 65 74 65 72 73 3a 0a 23 09 6e 6f 6e 65 0a 23 0a 23 20 52 65 73 75 6c 74 73 3a | .Parameters:.#.none.#.#.Results: |
42de0 | 0a 23 09 6e 6f 6e 65 0a 23 0a 23 20 53 69 64 65 20 45 66 66 65 63 74 73 3a 0a 23 09 52 65 73 65 | .#.none.#.#.Side.Effects:.#.Rese |
42e00 | 74 73 20 74 68 65 20 68 69 73 74 6f 72 79 20 61 72 72 61 79 2c 20 65 78 63 65 70 74 20 66 6f 72 | ts.the.history.array,.except.for |
42e20 | 20 74 68 65 20 6b 65 65 70 20 6c 69 6d 69 74 0a 0a 20 70 72 6f 63 20 74 63 6c 3a 3a 48 69 73 74 | .the.keep.limit...proc.tcl::Hist |
42e40 | 43 6c 65 61 72 20 7b 7d 20 7b 0a 20 20 20 20 76 61 72 69 61 62 6c 65 20 68 69 73 74 6f 72 79 0a | Clear.{}.{.....variable.history. |
42e60 | 20 20 20 20 73 65 74 20 6b 65 65 70 20 24 68 69 73 74 6f 72 79 28 6b 65 65 70 29 0a 20 20 20 20 | ....set.keep.$history(keep)..... |
42e80 | 75 6e 73 65 74 20 68 69 73 74 6f 72 79 0a 20 20 20 20 61 72 72 61 79 20 73 65 74 20 68 69 73 74 | unset.history.....array.set.hist |
42ea0 | 6f 72 79 20 5b 6c 69 73 74 20 5c 0a 09 6e 65 78 74 69 64 09 30 09 5c 0a 09 6b 65 65 70 09 24 6b | ory.[list.\..nextid.0.\..keep.$k |
42ec0 | 65 65 70 09 5c 0a 09 6f 6c 64 65 73 74 09 2d 24 6b 65 65 70 09 5c 0a 20 20 20 20 5d 0a 7d 0a 0a | eep.\..oldest.-$keep.\.....].}.. |
42ee0 | 23 20 74 63 6c 3a 3a 48 69 73 74 49 6e 66 6f 20 2d 2d 0a 23 0a 23 09 52 65 74 75 72 6e 20 61 20 | #.tcl::HistInfo.--.#.#.Return.a. |
42f00 | 70 72 65 74 74 79 2d 70 72 69 6e 74 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 68 69 | pretty-printed.version.of.the.hi |
42f20 | 73 74 6f 72 79 20 6c 69 73 74 0a 23 0a 23 20 50 61 72 61 6d 65 74 65 72 73 3a 0a 23 09 6e 75 6d | story.list.#.#.Parameters:.#.num |
42f40 | 09 28 6f 70 74 69 6f 6e 61 6c 29 20 74 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 20 68 69 | .(optional).the.length.of.the.hi |
42f60 | 73 74 6f 72 79 20 6c 69 73 74 20 74 6f 20 72 65 74 75 72 6e 0a 23 0a 23 20 52 65 73 75 6c 74 73 | story.list.to.return.#.#.Results |
42f80 | 3a 0a 23 09 41 20 66 6f 72 6d 61 74 74 65 64 20 68 69 73 74 6f 72 79 20 6c 69 73 74 0a 0a 20 70 | :.#.A.formatted.history.list...p |
42fa0 | 72 6f 63 20 74 63 6c 3a 3a 48 69 73 74 49 6e 66 6f 20 7b 7b 6e 75 6d 20 7b 7d 7d 7d 20 7b 0a 20 | roc.tcl::HistInfo.{{num.{}}}.{.. |
42fc0 | 20 20 20 76 61 72 69 61 62 6c 65 20 68 69 73 74 6f 72 79 0a 20 20 20 20 69 66 20 7b 24 6e 75 6d | ...variable.history.....if.{$num |
42fe0 | 20 3d 3d 20 7b 7d 7d 20 7b 0a 09 73 65 74 20 6e 75 6d 20 5b 65 78 70 72 20 7b 24 68 69 73 74 6f | .==.{}}.{..set.num.[expr.{$histo |
43000 | 72 79 28 6b 65 65 70 29 20 2b 20 31 7d 5d 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 72 65 73 | ry(keep).+.1}].....}.....set.res |
43020 | 75 6c 74 20 7b 7d 0a 20 20 20 20 73 65 74 20 6e 65 77 6c 69 6e 65 20 22 22 0a 20 20 20 20 66 6f | ult.{}.....set.newline."".....fo |
43040 | 72 20 7b 73 65 74 20 69 20 5b 65 78 70 72 20 7b 24 68 69 73 74 6f 72 79 28 6e 65 78 74 69 64 29 | r.{set.i.[expr.{$history(nextid) |
43060 | 20 2d 20 24 6e 75 6d 20 2b 20 31 7d 5d 7d 20 5c 0a 09 20 20 20 20 7b 24 69 20 3c 3d 20 24 68 69 | .-.$num.+.1}]}.\......{$i.<=.$hi |
43080 | 73 74 6f 72 79 28 6e 65 78 74 69 64 29 7d 20 7b 69 6e 63 72 20 69 7d 20 7b 0a 09 69 66 20 7b 21 | story(nextid)}.{incr.i}.{..if.{! |
430a0 | 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 68 69 73 74 6f 72 79 28 24 69 29 5d 7d 20 7b 0a 09 20 20 | [info.exists.history($i)]}.{.... |
430c0 | 20 20 63 6f 6e 74 69 6e 75 65 0a 09 7d 0a 09 73 65 74 20 63 6d 64 20 5b 73 74 72 69 6e 67 20 74 | ..continue..}..set.cmd.[string.t |
430e0 | 72 69 6d 72 69 67 68 74 20 24 68 69 73 74 6f 72 79 28 24 69 29 20 5c 20 5c 6e 5d 0a 09 72 65 67 | rimright.$history($i).\.\n]..reg |
43100 | 73 75 62 20 2d 61 6c 6c 20 5c 6e 20 24 63 6d 64 20 22 5c 6e 5c 74 22 20 63 6d 64 0a 09 61 70 70 | sub.-all.\n.$cmd."\n\t".cmd..app |
43120 | 65 6e 64 20 72 65 73 75 6c 74 20 24 6e 65 77 6c 69 6e 65 5b 66 6f 72 6d 61 74 20 22 25 36 64 20 | end.result.$newline[format."%6d. |
43140 | 20 25 73 22 20 24 69 20 24 63 6d 64 5d 0a 09 73 65 74 20 6e 65 77 6c 69 6e 65 20 5c 6e 0a 20 20 | .%s".$i.$cmd]..set.newline.\n... |
43160 | 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 0a 7d 0a 0a 23 20 74 63 6c 3a | ..}.....return.$result.}..#.tcl: |
43180 | 3a 48 69 73 74 52 65 64 6f 20 2d 2d 0a 23 0a 23 09 46 65 74 63 68 20 74 68 65 20 70 72 65 76 69 | :HistRedo.--.#.#.Fetch.the.previ |
431a0 | 6f 75 73 20 6f 72 20 73 70 65 63 69 66 69 65 64 20 65 76 65 6e 74 2c 20 65 78 65 63 75 74 65 20 | ous.or.specified.event,.execute. |
431c0 | 69 74 2c 20 61 6e 64 20 74 68 65 6e 0a 23 09 72 65 70 6c 61 63 65 20 74 68 65 20 63 75 72 72 65 | it,.and.then.#.replace.the.curre |
431e0 | 6e 74 20 68 69 73 74 6f 72 79 20 69 74 65 6d 20 77 69 74 68 20 74 68 61 74 20 65 76 65 6e 74 2e | nt.history.item.with.that.event. |
43200 | 0a 23 0a 23 20 50 61 72 61 6d 65 74 65 72 73 3a 0a 23 09 65 76 65 6e 74 09 28 6f 70 74 69 6f 6e | .#.#.Parameters:.#.event.(option |
43220 | 61 6c 29 20 69 6e 64 65 78 20 6f 66 20 68 69 73 74 6f 72 79 20 69 74 65 6d 20 74 6f 20 72 65 64 | al).index.of.history.item.to.red |
43240 | 6f 2e 20 20 44 65 66 61 75 6c 74 73 20 74 6f 20 2d 31 2c 0a 23 09 09 77 68 69 63 68 20 6d 65 61 | o...Defaults.to.-1,.#..which.mea |
43260 | 6e 73 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 65 76 65 6e 74 2e 0a 23 0a 23 20 52 65 73 75 6c | ns.the.previous.event..#.#.Resul |
43280 | 74 73 3a 0a 23 09 54 68 6f 73 65 20 6f 66 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 62 65 69 6e 67 | ts:.#.Those.of.the.command.being |
432a0 | 20 72 65 64 6f 6e 65 2e 0a 23 0a 23 20 53 69 64 65 20 45 66 66 65 63 74 73 3a 0a 23 09 52 65 70 | .redone..#.#.Side.Effects:.#.Rep |
432c0 | 6c 61 63 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 68 69 73 74 6f 72 79 20 6c 69 73 74 20 69 | laces.the.current.history.list.i |
432e0 | 74 65 6d 20 77 69 74 68 20 74 68 65 20 6f 6e 65 20 62 65 69 6e 67 20 72 65 64 6f 6e 65 2e 0a 0a | tem.with.the.one.being.redone... |
43300 | 20 70 72 6f 63 20 74 63 6c 3a 3a 48 69 73 74 52 65 64 6f 20 7b 7b 65 76 65 6e 74 20 2d 31 7d 7d | .proc.tcl::HistRedo.{{event.-1}} |
43320 | 20 7b 0a 20 20 20 20 76 61 72 69 61 62 6c 65 20 68 69 73 74 6f 72 79 0a 20 20 20 20 69 66 20 7b | .{.....variable.history.....if.{ |
43340 | 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 24 65 76 65 6e 74 5d 20 3d 3d 20 30 7d 20 7b 0a 09 | [string.length.$event].==.0}.{.. |
43360 | 73 65 74 20 65 76 65 6e 74 20 2d 31 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 69 20 5b 48 69 | set.event.-1.....}.....set.i.[Hi |
43380 | 73 74 49 6e 64 65 78 20 24 65 76 65 6e 74 5d 0a 20 20 20 20 69 66 20 7b 24 69 20 3d 3d 20 24 68 | stIndex.$event].....if.{$i.==.$h |
433a0 | 69 73 74 6f 72 79 28 6e 65 78 74 69 64 29 7d 20 7b 0a 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 | istory(nextid)}.{..return.-code. |
433c0 | 65 72 72 6f 72 20 22 63 61 6e 6e 6f 74 20 72 65 64 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 65 | error."cannot.redo.the.current.e |
433e0 | 76 65 6e 74 22 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 63 6d 64 20 24 68 69 73 74 6f 72 79 | vent".....}.....set.cmd.$history |
43400 | 28 24 69 29 0a 20 20 20 20 48 69 73 74 43 68 61 6e 67 65 20 24 63 6d 64 20 30 0a 20 20 20 20 75 | ($i).....HistChange.$cmd.0.....u |
43420 | 70 6c 65 76 65 6c 20 23 30 20 24 63 6d 64 0a 7d 0a 0a 23 20 74 63 6c 3a 3a 48 69 73 74 49 6e 64 | plevel.#0.$cmd.}..#.tcl::HistInd |
43440 | 65 78 20 2d 2d 0a 23 0a 23 09 4d 61 70 20 66 72 6f 6d 20 61 6e 20 65 76 65 6e 74 20 73 70 65 63 | ex.--.#.#.Map.from.an.event.spec |
43460 | 69 66 69 65 72 20 74 6f 20 61 6e 20 69 6e 64 65 78 20 69 6e 20 74 68 65 20 68 69 73 74 6f 72 79 | ifier.to.an.index.in.the.history |
43480 | 20 6c 69 73 74 2e 0a 23 0a 23 20 50 61 72 61 6d 65 74 65 72 73 3a 0a 23 09 65 76 65 6e 74 09 69 | .list..#.#.Parameters:.#.event.i |
434a0 | 6e 64 65 78 20 6f 66 20 68 69 73 74 6f 72 79 20 69 74 65 6d 20 74 6f 20 72 65 64 6f 2e 0a 23 09 | ndex.of.history.item.to.redo..#. |
434c0 | 09 49 66 20 74 68 69 73 20 69 73 20 61 20 70 6f 73 69 74 69 76 65 20 6e 75 6d 62 65 72 2c 20 69 | .If.this.is.a.positive.number,.i |
434e0 | 74 20 69 73 20 75 73 65 64 20 64 69 72 65 63 74 6c 79 2e 0a 23 09 09 49 66 20 69 74 20 69 73 20 | t.is.used.directly..#..If.it.is. |
43500 | 61 20 6e 65 67 61 74 69 76 65 20 6e 75 6d 62 65 72 2c 20 74 68 65 6e 20 69 74 20 63 6f 75 6e 74 | a.negative.number,.then.it.count |
43520 | 73 20 62 61 63 6b 20 74 6f 20 61 20 70 72 65 76 69 6f 75 73 0a 23 09 09 65 76 65 6e 74 2c 20 77 | s.back.to.a.previous.#..event,.w |
43540 | 68 65 72 65 20 2d 31 20 69 73 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 20 65 76 65 6e 74 | here.-1.is.the.most.recent.event |
43560 | 2e 0a 23 09 09 41 20 73 74 72 69 6e 67 20 63 61 6e 20 62 65 20 6d 61 74 63 68 65 64 2c 20 65 69 | ..#..A.string.can.be.matched,.ei |
43580 | 74 68 65 72 20 62 79 20 62 65 69 6e 67 20 74 68 65 20 70 72 65 66 69 78 20 6f 66 0a 23 09 09 61 | ther.by.being.the.prefix.of.#..a |
435a0 | 20 63 6f 6d 6d 61 6e 64 20 6f 72 20 62 79 20 6d 61 74 63 68 69 6e 67 20 61 20 63 6f 6d 6d 61 6e | .command.or.by.matching.a.comman |
435c0 | 64 20 77 69 74 68 20 73 74 72 69 6e 67 20 6d 61 74 63 68 2e 0a 23 0a 23 20 52 65 73 75 6c 74 73 | d.with.string.match..#.#.Results |
435e0 | 3a 0a 23 09 54 68 65 20 69 6e 64 65 78 20 69 6e 74 6f 20 68 69 73 74 6f 72 79 2c 20 6f 72 20 61 | :.#.The.index.into.history,.or.a |
43600 | 6e 20 65 72 72 6f 72 20 69 66 20 74 68 65 20 69 6e 64 65 78 20 64 69 64 6e 27 74 20 6d 61 74 63 | n.error.if.the.index.didn't.matc |
43620 | 68 2e 0a 0a 20 70 72 6f 63 20 74 63 6c 3a 3a 48 69 73 74 49 6e 64 65 78 20 7b 65 76 65 6e 74 7d | h....proc.tcl::HistIndex.{event} |
43640 | 20 7b 0a 20 20 20 20 76 61 72 69 61 62 6c 65 20 68 69 73 74 6f 72 79 0a 20 20 20 20 69 66 20 7b | .{.....variable.history.....if.{ |
43660 | 5b 63 61 74 63 68 20 7b 65 78 70 72 20 7b 7e 24 65 76 65 6e 74 7d 7d 5d 7d 20 7b 0a 09 66 6f 72 | [catch.{expr.{~$event}}]}.{..for |
43680 | 20 7b 73 65 74 20 69 20 24 68 69 73 74 6f 72 79 28 6e 65 78 74 69 64 29 7d 20 7b 5b 69 6e 66 6f | .{set.i.$history(nextid)}.{[info |
436a0 | 20 65 78 69 73 74 73 20 68 69 73 74 6f 72 79 28 24 69 29 5d 7d 20 7b 69 6e 63 72 20 69 20 2d 31 | .exists.history($i)]}.{incr.i.-1 |
436c0 | 7d 20 7b 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 24 65 76 65 6e | }.{......if.{[string.match.$even |
436e0 | 74 2a 20 24 68 69 73 74 6f 72 79 28 24 69 29 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 24 69 3b | t*.$history($i)]}.{...return.$i; |
43700 | 0a 09 20 20 20 20 7d 0a 09 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 20 24 | ......}......if.{[string.match.$ |
43720 | 65 76 65 6e 74 20 24 68 69 73 74 6f 72 79 28 24 69 29 5d 7d 20 7b 0a 09 09 72 65 74 75 72 6e 20 | event.$history($i)]}.{...return. |
43740 | 24 69 3b 0a 09 20 20 20 20 7d 0a 09 7d 0a 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f | $i;......}..}..return.-code.erro |
43760 | 72 20 22 6e 6f 20 65 76 65 6e 74 20 6d 61 74 63 68 65 73 20 5c 22 24 65 76 65 6e 74 5c 22 22 0a | r."no.event.matches.\"$event\"". |
43780 | 20 20 20 20 7d 20 65 6c 73 65 69 66 20 7b 24 65 76 65 6e 74 20 3c 3d 20 30 7d 20 7b 0a 09 73 65 | ....}.elseif.{$event.<=.0}.{..se |
437a0 | 74 20 69 20 5b 65 78 70 72 20 7b 24 68 69 73 74 6f 72 79 28 6e 65 78 74 69 64 29 20 2b 20 24 65 | t.i.[expr.{$history(nextid).+.$e |
437c0 | 76 65 6e 74 7d 5d 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 09 73 65 74 20 69 20 24 65 76 65 6e | vent}].....}.else.{..set.i.$even |
437e0 | 74 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 24 69 20 3c 3d 20 24 68 69 73 74 6f 72 79 28 6f | t.....}.....if.{$i.<=.$history(o |
43800 | 6c 64 65 73 74 29 7d 20 7b 0a 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 6f 72 20 22 65 | ldest)}.{..return.-code.error."e |
43820 | 76 65 6e 74 20 5c 22 24 65 76 65 6e 74 5c 22 20 69 73 20 74 6f 6f 20 66 61 72 20 69 6e 20 74 68 | vent.\"$event\".is.too.far.in.th |
43840 | 65 20 70 61 73 74 22 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 24 69 20 3e 20 24 68 69 73 74 | e.past".....}.....if.{$i.>.$hist |
43860 | 6f 72 79 28 6e 65 78 74 69 64 29 7d 20 7b 0a 09 72 65 74 75 72 6e 20 2d 63 6f 64 65 20 65 72 72 | ory(nextid)}.{..return.-code.err |
43880 | 6f 72 20 22 65 76 65 6e 74 20 5c 22 24 65 76 65 6e 74 5c 22 20 68 61 73 6e 27 74 20 6f 63 63 75 | or."event.\"$event\".hasn't.occu |
438a0 | 72 65 64 20 79 65 74 22 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 69 0a 7d 0a 0a | red.yet".....}.....return.$i.}.. |
438c0 | 23 20 74 63 6c 3a 3a 48 69 73 74 45 76 65 6e 74 20 2d 2d 0a 23 0a 23 09 4d 61 70 20 66 72 6f 6d | #.tcl::HistEvent.--.#.#.Map.from |
438e0 | 20 61 6e 20 65 76 65 6e 74 20 73 70 65 63 69 66 69 65 72 20 74 6f 20 74 68 65 20 76 61 6c 75 65 | .an.event.specifier.to.the.value |
43900 | 20 69 6e 20 74 68 65 20 68 69 73 74 6f 72 79 20 6c 69 73 74 2e 0a 23 0a 23 20 50 61 72 61 6d 65 | .in.the.history.list..#.#.Parame |
43920 | 74 65 72 73 3a 0a 23 09 65 76 65 6e 74 09 69 6e 64 65 78 20 6f 66 20 68 69 73 74 6f 72 79 20 69 | ters:.#.event.index.of.history.i |
43940 | 74 65 6d 20 74 6f 20 72 65 64 6f 2e 20 20 53 65 65 20 69 6e 64 65 78 20 66 6f 72 20 61 0a 23 09 | tem.to.redo...See.index.for.a.#. |
43960 | 09 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 70 6f 73 73 69 62 6c 65 20 65 76 65 6e 74 20 70 | .description.of.possible.event.p |
43980 | 61 74 74 65 72 6e 73 2e 0a 23 0a 23 20 52 65 73 75 6c 74 73 3a 0a 23 09 54 68 65 20 76 61 6c 75 | atterns..#.#.Results:.#.The.valu |
439a0 | 65 20 66 72 6f 6d 20 74 68 65 20 68 69 73 74 6f 72 79 20 6c 69 73 74 2e 0a 0a 20 70 72 6f 63 20 | e.from.the.history.list....proc. |
439c0 | 74 63 6c 3a 3a 48 69 73 74 45 76 65 6e 74 20 7b 65 76 65 6e 74 7d 20 7b 0a 20 20 20 20 76 61 72 | tcl::HistEvent.{event}.{.....var |
439e0 | 69 61 62 6c 65 20 68 69 73 74 6f 72 79 0a 20 20 20 20 73 65 74 20 69 20 5b 48 69 73 74 49 6e 64 | iable.history.....set.i.[HistInd |
43a00 | 65 78 20 24 65 76 65 6e 74 5d 0a 20 20 20 20 69 66 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 | ex.$event].....if.{[info.exists. |
43a20 | 68 69 73 74 6f 72 79 28 24 69 29 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 5b 73 74 72 69 6e 67 20 | history($i)]}.{..return.[string. |
43a40 | 74 72 69 6d 72 69 67 68 74 20 24 68 69 73 74 6f 72 79 28 24 69 29 20 5c 20 5c 6e 5d 0a 20 20 20 | trimright.$history($i).\.\n].... |
43a60 | 20 7d 20 65 6c 73 65 20 7b 0a 09 72 65 74 75 72 6e 20 22 22 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 23 | .}.else.{..return."";.....}.}..# |
43a80 | 20 74 63 6c 3a 3a 48 69 73 74 43 68 61 6e 67 65 20 2d 2d 0a 23 0a 23 09 52 65 70 6c 61 63 65 20 | .tcl::HistChange.--.#.#.Replace. |
43aa0 | 61 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 68 69 73 74 6f 72 79 20 6c 69 73 74 2e 0a 23 0a 23 | a.value.in.the.history.list..#.# |
43ac0 | 20 50 61 72 61 6d 65 74 65 72 73 3a 0a 23 09 63 6d 64 09 54 68 65 20 6e 65 77 20 76 61 6c 75 65 | .Parameters:.#.cmd.The.new.value |
43ae0 | 20 74 6f 20 70 75 74 20 69 6e 74 6f 20 74 68 65 20 68 69 73 74 6f 72 79 20 6c 69 73 74 2e 0a 23 | .to.put.into.the.history.list..# |
43b00 | 09 65 76 65 6e 74 09 28 6f 70 74 69 6f 6e 61 6c 29 20 69 6e 64 65 78 20 6f 66 20 68 69 73 74 6f | .event.(optional).index.of.histo |
43b20 | 72 79 20 69 74 65 6d 20 74 6f 20 72 65 64 6f 2e 20 20 53 65 65 20 69 6e 64 65 78 20 66 6f 72 20 | ry.item.to.redo...See.index.for. |
43b40 | 61 0a 23 09 09 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 70 6f 73 73 69 62 6c 65 20 65 76 65 | a.#..description.of.possible.eve |
43b60 | 6e 74 20 70 61 74 74 65 72 6e 73 2e 20 20 54 68 69 73 20 64 65 66 61 75 6c 74 73 0a 23 09 09 74 | nt.patterns...This.defaults.#..t |
43b80 | 6f 20 30 2c 20 77 68 69 63 68 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 | o.0,.which.specifies.the.current |
43ba0 | 20 65 76 65 6e 74 2e 0a 23 0a 23 20 53 69 64 65 20 45 66 66 65 63 74 73 3a 0a 23 09 43 68 61 6e | .event..#.#.Side.Effects:.#.Chan |
43bc0 | 67 65 73 20 74 68 65 20 68 69 73 74 6f 72 79 20 6c 69 73 74 2e 0a 0a 20 70 72 6f 63 20 74 63 6c | ges.the.history.list....proc.tcl |
43be0 | 3a 3a 48 69 73 74 43 68 61 6e 67 65 20 7b 63 6d 64 20 7b 65 76 65 6e 74 20 30 7d 7d 20 7b 0a 20 | ::HistChange.{cmd.{event.0}}.{.. |
43c00 | 20 20 20 76 61 72 69 61 62 6c 65 20 68 69 73 74 6f 72 79 0a 20 20 20 20 73 65 74 20 69 20 5b 48 | ...variable.history.....set.i.[H |
43c20 | 69 73 74 49 6e 64 65 78 20 24 65 76 65 6e 74 5d 0a 20 20 20 20 73 65 74 20 68 69 73 74 6f 72 79 | istIndex.$event].....set.history |
43c40 | 28 24 69 29 20 24 63 6d 64 0a 7d 0a 00 00 11 0b 23 20 77 6f 72 64 2e 74 63 6c 20 2d 2d 0a 23 0a | ($i).$cmd.}.....#.word.tcl.--.#. |
43c60 | 23 20 54 68 69 73 20 66 69 6c 65 20 64 65 66 69 6e 65 73 20 76 61 72 69 6f 75 73 20 70 72 6f 63 | #.This.file.defines.various.proc |
43c80 | 65 64 75 72 65 73 20 66 6f 72 20 63 6f 6d 70 75 74 69 6e 67 20 77 6f 72 64 20 62 6f 75 6e 64 61 | edures.for.computing.word.bounda |
43ca0 | 72 69 65 73 0a 23 20 69 6e 20 73 74 72 69 6e 67 73 2e 20 20 54 68 69 73 20 66 69 6c 65 20 69 73 | ries.#.in.strings...This.file.is |
43cc0 | 20 70 72 69 6d 61 72 69 6c 79 20 6e 65 65 64 65 64 20 73 6f 20 54 6b 20 74 65 78 74 20 61 6e 64 | .primarily.needed.so.Tk.text.and |
43ce0 | 20 65 6e 74 72 79 0a 23 20 77 69 64 67 65 74 73 20 62 65 68 61 76 65 20 70 72 6f 70 65 72 6c 79 | .entry.#.widgets.behave.properly |
43d00 | 20 66 6f 72 20 64 69 66 66 65 72 65 6e 74 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 23 0a 23 20 43 6f | .for.different.platforms..#.#.Co |
43d20 | 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 36 20 62 79 20 53 75 6e 20 4d 69 63 72 6f 73 79 73 | pyright.(c).1996.by.Sun.Microsys |
43d40 | 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 38 20 | tems,.Inc..#.Copyright.(c).1998. |
43d60 | 62 79 20 53 63 72 69 74 70 69 63 73 20 43 6f 72 70 6f 72 61 74 69 6f 6e 2e 0a 23 0a 23 20 53 65 | by.Scritpics.Corporation..#.#.Se |
43d80 | 65 20 74 68 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 | e.the.file."license.terms".for.i |
43da0 | 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 | nformation.on.usage.and.redistri |
43dc0 | 62 75 74 69 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 | bution.#.of.this.file,.and.for.a |
43de0 | 20 44 49 53 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 | .DISCLAIMER.OF.ALL.WARRANTIES..# |
43e00 | 20 0a 23 20 52 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 77 6f 72 64 2e 74 63 6c 2c 76 20 31 2e | ..#.RCS:.@(#).$Id:.word.tcl,v.1. |
43e20 | 36 20 32 30 30 30 2f 30 31 2f 32 31 20 30 32 3a 32 35 3a 33 38 20 68 6f 62 62 73 20 45 78 70 20 | 6.2000/01/21.02:25:38.hobbs.Exp. |
43e40 | 24 0a 0a 23 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 | $..#.The.following.variables.are |
43e60 | 20 75 73 65 64 20 74 6f 20 64 65 74 65 72 6d 69 6e 65 20 77 68 69 63 68 20 63 68 61 72 61 63 74 | .used.to.determine.which.charact |
43e80 | 65 72 73 20 61 72 65 0a 23 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 73 20 77 68 69 74 65 20 73 | ers.are.#.interpreted.as.white.s |
43ea0 | 70 61 63 65 2e 20 20 0a 0a 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 74 63 6c 5f | pace.....if.{[string.equal.$tcl_ |
43ec0 | 70 6c 61 74 66 6f 72 6d 28 70 6c 61 74 66 6f 72 6d 29 20 22 77 69 6e 64 6f 77 73 22 5d 7d 20 7b | platform(platform)."windows"]}.{ |
43ee0 | 0a 20 20 20 20 23 20 57 69 6e 64 6f 77 73 20 73 74 79 6c 65 20 2d 20 61 6e 79 20 62 75 74 20 61 | .....#.Windows.style.-.any.but.a |
43f00 | 20 75 6e 69 63 6f 64 65 20 73 70 61 63 65 20 63 68 61 72 0a 20 20 20 20 73 65 74 20 74 63 6c 5f | .unicode.space.char.....set.tcl_ |
43f20 | 77 6f 72 64 63 68 61 72 73 20 22 5c 5c 53 22 0a 20 20 20 20 73 65 74 20 74 63 6c 5f 6e 6f 6e 77 | wordchars."\\S".....set.tcl_nonw |
43f40 | 6f 72 64 63 68 61 72 73 20 22 5c 5c 73 22 0a 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 23 20 4d 6f | ordchars."\\s".}.else.{.....#.Mo |
43f60 | 74 69 66 20 73 74 79 6c 65 20 2d 20 61 6e 79 20 75 6e 69 63 6f 64 65 20 77 6f 72 64 20 63 68 61 | tif.style.-.any.unicode.word.cha |
43f80 | 72 20 28 6e 75 6d 62 65 72 2c 20 6c 65 74 74 65 72 2c 20 6f 72 20 75 6e 64 65 72 73 63 6f 72 65 | r.(number,.letter,.or.underscore |
43fa0 | 29 0a 20 20 20 20 73 65 74 20 74 63 6c 5f 77 6f 72 64 63 68 61 72 73 20 22 5c 5c 77 22 0a 20 20 | ).....set.tcl_wordchars."\\w"... |
43fc0 | 20 20 73 65 74 20 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 68 61 72 73 20 22 5c 5c 57 22 0a 7d 0a 0a | ..set.tcl_nonwordchars."\\W".}.. |
43fe0 | 23 20 74 63 6c 5f 77 6f 72 64 42 72 65 61 6b 41 66 74 65 72 20 2d 2d 0a 23 0a 23 20 54 68 69 73 | #.tcl_wordBreakAfter.--.#.#.This |
44000 | 20 70 72 6f 63 65 64 75 72 65 20 72 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 | .procedure.returns.the.index.of. |
44020 | 74 68 65 20 66 69 72 73 74 20 77 6f 72 64 20 62 6f 75 6e 64 61 72 79 0a 23 20 61 66 74 65 72 20 | the.first.word.boundary.#.after. |
44040 | 74 68 65 20 73 74 61 72 74 69 6e 67 20 70 6f 69 6e 74 20 69 6e 20 74 68 65 20 67 69 76 65 6e 20 | the.starting.point.in.the.given. |
44060 | 73 74 72 69 6e 67 2c 20 6f 72 20 2d 31 20 69 66 20 74 68 65 72 65 0a 23 20 61 72 65 20 6e 6f 20 | string,.or.-1.if.there.#.are.no. |
44080 | 6d 6f 72 65 20 62 6f 75 6e 64 61 72 69 65 73 20 69 6e 20 74 68 65 20 67 69 76 65 6e 20 73 74 72 | more.boundaries.in.the.given.str |
440a0 | 69 6e 67 2e 20 20 54 68 65 20 69 6e 64 65 78 20 72 65 74 75 72 6e 65 64 20 72 65 66 65 72 73 0a | ing...The.index.returned.refers. |
440c0 | 23 20 74 6f 20 74 68 65 20 66 69 72 73 74 20 63 68 61 72 61 63 74 65 72 20 6f 66 20 74 68 65 20 | #.to.the.first.character.of.the. |
440e0 | 70 61 69 72 20 74 68 61 74 20 63 6f 6d 70 72 69 73 65 73 20 61 20 62 6f 75 6e 64 61 72 79 2e 0a | pair.that.comprises.a.boundary.. |
44100 | 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 73 74 72 20 2d 09 09 53 74 72 69 6e 67 20 74 | #.#.Arguments:.#.str.-..String.t |
44120 | 6f 20 73 65 61 72 63 68 2e 0a 23 20 73 74 61 72 74 20 2d 09 49 6e 64 65 78 20 69 6e 74 6f 20 73 | o.search..#.start.-.Index.into.s |
44140 | 74 72 69 6e 67 20 73 70 65 63 69 66 79 69 6e 67 20 73 74 61 72 74 69 6e 67 20 70 6f 69 6e 74 2e | tring.specifying.starting.point. |
44160 | 0a 0a 70 72 6f 63 20 74 63 6c 5f 77 6f 72 64 42 72 65 61 6b 41 66 74 65 72 20 7b 73 74 72 20 73 | ..proc.tcl_wordBreakAfter.{str.s |
44180 | 74 61 72 74 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 68 | tart}.{.....global.tcl_nonwordch |
441a0 | 61 72 73 20 74 63 6c 5f 77 6f 72 64 63 68 61 72 73 0a 20 20 20 20 73 65 74 20 73 74 72 20 5b 73 | ars.tcl_wordchars.....set.str.[s |
441c0 | 74 72 69 6e 67 20 72 61 6e 67 65 20 24 73 74 72 20 24 73 74 61 72 74 20 65 6e 64 5d 0a 20 20 20 | tring.range.$str.$start.end].... |
441e0 | 20 69 66 20 7b 5b 72 65 67 65 78 70 20 2d 69 6e 64 69 63 65 73 20 22 24 74 63 6c 5f 77 6f 72 64 | .if.{[regexp.-indices."$tcl_word |
44200 | 63 68 61 72 73 24 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 68 61 72 73 7c 24 74 63 6c 5f 6e 6f 6e 77 | chars$tcl_nonwordchars|$tcl_nonw |
44220 | 6f 72 64 63 68 61 72 73 24 74 63 6c 5f 77 6f 72 64 63 68 61 72 73 22 20 24 73 74 72 20 72 65 73 | ordchars$tcl_wordchars".$str.res |
44240 | 75 6c 74 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 5b 65 78 70 72 20 7b 5b 6c 69 6e 64 65 78 20 24 | ult]}.{..return.[expr.{[lindex.$ |
44260 | 72 65 73 75 6c 74 20 31 5d 20 2b 20 24 73 74 61 72 74 7d 5d 0a 20 20 20 20 7d 0a 20 20 20 20 72 | result.1].+.$start}].....}.....r |
44280 | 65 74 75 72 6e 20 2d 31 0a 7d 0a 0a 23 20 74 63 6c 5f 77 6f 72 64 42 72 65 61 6b 42 65 66 6f 72 | eturn.-1.}..#.tcl_wordBreakBefor |
442a0 | 65 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 72 65 74 75 72 6e 73 20 | e.--.#.#.This.procedure.returns. |
442c0 | 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 77 6f 72 64 20 62 6f 75 6e | the.index.of.the.first.word.boun |
442e0 | 64 61 72 79 0a 23 20 62 65 66 6f 72 65 20 74 68 65 20 73 74 61 72 74 69 6e 67 20 70 6f 69 6e 74 | dary.#.before.the.starting.point |
44300 | 20 69 6e 20 74 68 65 20 67 69 76 65 6e 20 73 74 72 69 6e 67 2c 20 6f 72 20 2d 31 20 69 66 20 74 | .in.the.given.string,.or.-1.if.t |
44320 | 68 65 72 65 0a 23 20 61 72 65 20 6e 6f 20 6d 6f 72 65 20 62 6f 75 6e 64 61 72 69 65 73 20 69 6e | here.#.are.no.more.boundaries.in |
44340 | 20 74 68 65 20 67 69 76 65 6e 20 73 74 72 69 6e 67 2e 20 20 54 68 65 20 69 6e 64 65 78 20 72 65 | .the.given.string...The.index.re |
44360 | 74 75 72 6e 65 64 0a 23 20 72 65 66 65 72 73 20 74 6f 20 74 68 65 20 73 65 63 6f 6e 64 20 63 68 | turned.#.refers.to.the.second.ch |
44380 | 61 72 61 63 74 65 72 20 6f 66 20 74 68 65 20 70 61 69 72 20 74 68 61 74 20 63 6f 6d 70 72 69 73 | aracter.of.the.pair.that.compris |
443a0 | 65 73 20 61 20 62 6f 75 6e 64 61 72 79 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 | es.a.boundary..#.#.Arguments:.#. |
443c0 | 73 74 72 20 2d 09 09 53 74 72 69 6e 67 20 74 6f 20 73 65 61 72 63 68 2e 0a 23 20 73 74 61 72 74 | str.-..String.to.search..#.start |
443e0 | 20 2d 09 49 6e 64 65 78 20 69 6e 74 6f 20 73 74 72 69 6e 67 20 73 70 65 63 69 66 79 69 6e 67 20 | .-.Index.into.string.specifying. |
44400 | 73 74 61 72 74 69 6e 67 20 70 6f 69 6e 74 2e 0a 0a 70 72 6f 63 20 74 63 6c 5f 77 6f 72 64 42 72 | starting.point...proc.tcl_wordBr |
44420 | 65 61 6b 42 65 66 6f 72 65 20 7b 73 74 72 20 73 74 61 72 74 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 | eakBefore.{str.start}.{.....glob |
44440 | 61 6c 20 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 68 61 72 73 20 74 63 6c 5f 77 6f 72 64 63 68 61 72 | al.tcl_nonwordchars.tcl_wordchar |
44460 | 73 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 73 74 61 72 74 20 65 | s.....if.{[string.equal.$start.e |
44480 | 6e 64 5d 7d 20 7b 0a 09 73 65 74 20 73 74 61 72 74 20 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 | nd]}.{..set.start.[string.length |
444a0 | 20 24 73 74 72 5d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 72 65 67 65 78 70 20 2d 69 6e | .$str].....}.....if.{[regexp.-in |
444c0 | 64 69 63 65 73 20 22 5e 2e 2a 28 24 74 63 6c 5f 77 6f 72 64 63 68 61 72 73 24 74 63 6c 5f 6e 6f | dices."^.*($tcl_wordchars$tcl_no |
444e0 | 6e 77 6f 72 64 63 68 61 72 73 7c 24 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 68 61 72 73 24 74 63 6c | nwordchars|$tcl_nonwordchars$tcl |
44500 | 5f 77 6f 72 64 63 68 61 72 73 29 22 20 5b 73 74 72 69 6e 67 20 72 61 6e 67 65 20 24 73 74 72 20 | _wordchars)".[string.range.$str. |
44520 | 30 20 24 73 74 61 72 74 5d 20 72 65 73 75 6c 74 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 5b 6c 69 | 0.$start].result]}.{..return.[li |
44540 | 6e 64 65 78 20 24 72 65 73 75 6c 74 20 31 5d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e | ndex.$result.1].....}.....return |
44560 | 20 2d 31 0a 7d 0a 0a 23 20 74 63 6c 5f 65 6e 64 4f 66 57 6f 72 64 20 2d 2d 0a 23 0a 23 20 54 68 | .-1.}..#.tcl_endOfWord.--.#.#.Th |
44580 | 69 73 20 70 72 6f 63 65 64 75 72 65 20 72 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 20 6f | is.procedure.returns.the.index.o |
445a0 | 66 20 74 68 65 20 66 69 72 73 74 20 65 6e 64 2d 6f 66 2d 77 6f 72 64 20 6c 6f 63 61 74 69 6f 6e | f.the.first.end-of-word.location |
445c0 | 0a 23 20 61 66 74 65 72 20 61 20 73 74 61 72 74 69 6e 67 20 69 6e 64 65 78 20 69 6e 20 74 68 65 | .#.after.a.starting.index.in.the |
445e0 | 20 67 69 76 65 6e 20 73 74 72 69 6e 67 2e 20 20 41 6e 20 65 6e 64 2d 6f 66 2d 77 6f 72 64 20 6c | .given.string...An.end-of-word.l |
44600 | 6f 63 61 74 69 6f 6e 0a 23 20 69 73 20 64 65 66 69 6e 65 64 20 74 6f 20 62 65 20 74 68 65 20 66 | ocation.#.is.defined.to.be.the.f |
44620 | 69 72 73 74 20 77 68 69 74 65 73 70 61 63 65 20 63 68 61 72 61 63 74 65 72 20 66 6f 6c 6c 6f 77 | irst.whitespace.character.follow |
44640 | 69 6e 67 20 74 68 65 20 66 69 72 73 74 0a 23 20 6e 6f 6e 2d 77 68 69 74 65 73 70 61 63 65 20 63 | ing.the.first.#.non-whitespace.c |
44660 | 68 61 72 61 63 74 65 72 20 61 66 74 65 72 20 74 68 65 20 73 74 61 72 74 69 6e 67 20 70 6f 69 6e | haracter.after.the.starting.poin |
44680 | 74 2e 20 20 52 65 74 75 72 6e 73 20 2d 31 20 69 66 0a 23 20 74 68 65 72 65 20 61 72 65 20 6e 6f | t...Returns.-1.if.#.there.are.no |
446a0 | 20 6d 6f 72 65 20 77 6f 72 64 73 20 61 66 74 65 72 20 74 68 65 20 73 74 61 72 74 69 6e 67 20 70 | .more.words.after.the.starting.p |
446c0 | 6f 69 6e 74 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 73 74 72 20 2d 09 09 53 74 | oint..#.#.Arguments:.#.str.-..St |
446e0 | 72 69 6e 67 20 74 6f 20 73 65 61 72 63 68 2e 0a 23 20 73 74 61 72 74 20 2d 09 49 6e 64 65 78 20 | ring.to.search..#.start.-.Index. |
44700 | 69 6e 74 6f 20 73 74 72 69 6e 67 20 73 70 65 63 69 66 79 69 6e 67 20 73 74 61 72 74 69 6e 67 20 | into.string.specifying.starting. |
44720 | 70 6f 69 6e 74 2e 0a 0a 70 72 6f 63 20 74 63 6c 5f 65 6e 64 4f 66 57 6f 72 64 20 7b 73 74 72 20 | point...proc.tcl_endOfWord.{str. |
44740 | 73 74 61 72 74 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 | start}.{.....global.tcl_nonwordc |
44760 | 68 61 72 73 20 74 63 6c 5f 77 6f 72 64 63 68 61 72 73 0a 20 20 20 20 69 66 20 7b 5b 72 65 67 65 | hars.tcl_wordchars.....if.{[rege |
44780 | 78 70 20 2d 69 6e 64 69 63 65 73 20 22 24 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 68 61 72 73 2a 24 | xp.-indices."$tcl_nonwordchars*$ |
447a0 | 74 63 6c 5f 77 6f 72 64 63 68 61 72 73 2b 24 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 68 61 72 73 22 | tcl_wordchars+$tcl_nonwordchars" |
447c0 | 20 5c 0a 09 20 20 20 20 5b 73 74 72 69 6e 67 20 72 61 6e 67 65 20 24 73 74 72 20 24 73 74 61 72 | .\......[string.range.$str.$star |
447e0 | 74 20 65 6e 64 5d 20 72 65 73 75 6c 74 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 5b 65 78 70 72 20 | t.end].result]}.{..return.[expr. |
44800 | 7b 5b 6c 69 6e 64 65 78 20 24 72 65 73 75 6c 74 20 31 5d 20 2b 20 24 73 74 61 72 74 7d 5d 0a 20 | {[lindex.$result.1].+.$start}].. |
44820 | 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 2d 31 0a 7d 0a 0a 23 20 74 63 6c 5f 73 74 61 72 | ...}.....return.-1.}..#.tcl_star |
44840 | 74 4f 66 4e 65 78 74 57 6f 72 64 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 70 72 6f 63 65 64 75 72 | tOfNextWord.--.#.#.This.procedur |
44860 | 65 20 72 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 65 20 66 69 72 73 74 | e.returns.the.index.of.the.first |
44880 | 20 73 74 61 72 74 2d 6f 66 2d 77 6f 72 64 20 6c 6f 63 61 74 69 6f 6e 0a 23 20 61 66 74 65 72 20 | .start-of-word.location.#.after. |
448a0 | 61 20 73 74 61 72 74 69 6e 67 20 69 6e 64 65 78 20 69 6e 20 74 68 65 20 67 69 76 65 6e 20 73 74 | a.starting.index.in.the.given.st |
448c0 | 72 69 6e 67 2e 20 20 41 20 73 74 61 72 74 2d 6f 66 2d 77 6f 72 64 0a 23 20 6c 6f 63 61 74 69 6f | ring...A.start-of-word.#.locatio |
448e0 | 6e 20 69 73 20 64 65 66 69 6e 65 64 20 74 6f 20 62 65 20 61 20 6e 6f 6e 2d 77 68 69 74 65 73 70 | n.is.defined.to.be.a.non-whitesp |
44900 | 61 63 65 20 63 68 61 72 61 63 74 65 72 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 0a 23 20 77 68 69 74 | ace.character.following.a.#.whit |
44920 | 65 73 70 61 63 65 20 63 68 61 72 61 63 74 65 72 2e 20 20 52 65 74 75 72 6e 73 20 2d 31 20 69 66 | espace.character...Returns.-1.if |
44940 | 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 6d 6f 72 65 20 73 74 61 72 74 2d 6f 66 2d 77 6f 72 64 | .there.are.no.more.start-of-word |
44960 | 0a 23 20 6c 6f 63 61 74 69 6f 6e 73 20 61 66 74 65 72 20 74 68 65 20 73 74 61 72 74 69 6e 67 20 | .#.locations.after.the.starting. |
44980 | 70 6f 69 6e 74 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 73 74 72 20 2d 09 09 53 | point..#.#.Arguments:.#.str.-..S |
449a0 | 74 72 69 6e 67 20 74 6f 20 73 65 61 72 63 68 2e 0a 23 20 73 74 61 72 74 20 2d 09 49 6e 64 65 78 | tring.to.search..#.start.-.Index |
449c0 | 20 69 6e 74 6f 20 73 74 72 69 6e 67 20 73 70 65 63 69 66 79 69 6e 67 20 73 74 61 72 74 69 6e 67 | .into.string.specifying.starting |
449e0 | 20 70 6f 69 6e 74 2e 0a 0a 70 72 6f 63 20 74 63 6c 5f 73 74 61 72 74 4f 66 4e 65 78 74 57 6f 72 | .point...proc.tcl_startOfNextWor |
44a00 | 64 20 7b 73 74 72 20 73 74 61 72 74 7d 20 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 74 63 6c 5f 6e | d.{str.start}.{.....global.tcl_n |
44a20 | 6f 6e 77 6f 72 64 63 68 61 72 73 20 74 63 6c 5f 77 6f 72 64 63 68 61 72 73 0a 20 20 20 20 69 66 | onwordchars.tcl_wordchars.....if |
44a40 | 20 7b 5b 72 65 67 65 78 70 20 2d 69 6e 64 69 63 65 73 20 22 24 74 63 6c 5f 77 6f 72 64 63 68 61 | .{[regexp.-indices."$tcl_wordcha |
44a60 | 72 73 2a 24 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 68 61 72 73 2b 24 74 63 6c 5f 77 6f 72 64 63 68 | rs*$tcl_nonwordchars+$tcl_wordch |
44a80 | 61 72 73 22 20 5c 0a 09 20 20 20 20 5b 73 74 72 69 6e 67 20 72 61 6e 67 65 20 24 73 74 72 20 24 | ars".\......[string.range.$str.$ |
44aa0 | 73 74 61 72 74 20 65 6e 64 5d 20 72 65 73 75 6c 74 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 5b 65 | start.end].result]}.{..return.[e |
44ac0 | 78 70 72 20 7b 5b 6c 69 6e 64 65 78 20 24 72 65 73 75 6c 74 20 31 5d 20 2b 20 24 73 74 61 72 74 | xpr.{[lindex.$result.1].+.$start |
44ae0 | 7d 5d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 2d 31 0a 7d 0a 0a 23 20 74 63 6c 5f | }].....}.....return.-1.}..#.tcl_ |
44b00 | 73 74 61 72 74 4f 66 50 72 65 76 69 6f 75 73 57 6f 72 64 20 2d 2d 0a 23 0a 23 20 54 68 69 73 20 | startOfPreviousWord.--.#.#.This. |
44b20 | 70 72 6f 63 65 64 75 72 65 20 72 65 74 75 72 6e 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 | procedure.returns.the.index.of.t |
44b40 | 68 65 20 66 69 72 73 74 20 73 74 61 72 74 2d 6f 66 2d 77 6f 72 64 20 6c 6f 63 61 74 69 6f 6e 0a | he.first.start-of-word.location. |
44b60 | 23 20 62 65 66 6f 72 65 20 61 20 73 74 61 72 74 69 6e 67 20 69 6e 64 65 78 20 69 6e 20 74 68 65 | #.before.a.starting.index.in.the |
44b80 | 20 67 69 76 65 6e 20 73 74 72 69 6e 67 2e 0a 23 0a 23 20 41 72 67 75 6d 65 6e 74 73 3a 0a 23 20 | .given.string..#.#.Arguments:.#. |
44ba0 | 73 74 72 20 2d 09 09 53 74 72 69 6e 67 20 74 6f 20 73 65 61 72 63 68 2e 0a 23 20 73 74 61 72 74 | str.-..String.to.search..#.start |
44bc0 | 20 2d 09 49 6e 64 65 78 20 69 6e 74 6f 20 73 74 72 69 6e 67 20 73 70 65 63 69 66 79 69 6e 67 20 | .-.Index.into.string.specifying. |
44be0 | 73 74 61 72 74 69 6e 67 20 70 6f 69 6e 74 2e 0a 0a 70 72 6f 63 20 74 63 6c 5f 73 74 61 72 74 4f | starting.point...proc.tcl_startO |
44c00 | 66 50 72 65 76 69 6f 75 73 57 6f 72 64 20 7b 73 74 72 20 73 74 61 72 74 7d 20 7b 0a 20 20 20 20 | fPreviousWord.{str.start}.{..... |
44c20 | 67 6c 6f 62 61 6c 20 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 68 61 72 73 20 74 63 6c 5f 77 6f 72 64 | global.tcl_nonwordchars.tcl_word |
44c40 | 63 68 61 72 73 0a 20 20 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 20 65 71 75 61 6c 20 24 73 74 61 | chars.....if.{[string.equal.$sta |
44c60 | 72 74 20 65 6e 64 5d 7d 20 7b 0a 09 73 65 74 20 73 74 61 72 74 20 5b 73 74 72 69 6e 67 20 6c 65 | rt.end]}.{..set.start.[string.le |
44c80 | 6e 67 74 68 20 24 73 74 72 5d 0a 20 20 20 20 7d 0a 20 20 20 20 69 66 20 7b 5b 72 65 67 65 78 70 | ngth.$str].....}.....if.{[regexp |
44ca0 | 20 2d 69 6e 64 69 63 65 73 20 5c 0a 09 20 20 20 20 22 24 74 63 6c 5f 6e 6f 6e 77 6f 72 64 63 68 | .-indices.\......"$tcl_nonwordch |
44cc0 | 61 72 73 2a 28 24 74 63 6c 5f 77 6f 72 64 63 68 61 72 73 2b 29 24 74 63 6c 5f 6e 6f 6e 77 6f 72 | ars*($tcl_wordchars+)$tcl_nonwor |
44ce0 | 64 63 68 61 72 73 2a 5c 24 22 20 5c 0a 09 20 20 20 20 5b 73 74 72 69 6e 67 20 72 61 6e 67 65 20 | dchars*\$".\......[string.range. |
44d00 | 24 73 74 72 20 30 20 5b 65 78 70 72 20 7b 24 73 74 61 72 74 20 2d 20 31 7d 5d 5d 20 72 65 73 75 | $str.0.[expr.{$start.-.1}]].resu |
44d20 | 6c 74 20 77 6f 72 64 5d 7d 20 7b 0a 09 72 65 74 75 72 6e 20 5b 6c 69 6e 64 65 78 20 24 77 6f 72 | lt.word]}.{..return.[lindex.$wor |
44d40 | 64 20 30 5d 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 2d 31 0a 7d 0a 00 00 03 72 23 | d.0].....}.....return.-1.}....r# |
44d60 | 20 70 61 72 72 61 79 3a 0a 23 20 50 72 69 6e 74 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 | .parray:.#.Print.the.contents.of |
44d80 | 20 61 20 67 6c 6f 62 61 6c 20 61 72 72 61 79 20 6f 6e 20 73 74 64 6f 75 74 2e 0a 23 0a 23 20 52 | .a.global.array.on.stdout..#.#.R |
44da0 | 43 53 3a 20 40 28 23 29 20 24 49 64 3a 20 70 61 72 72 61 79 2e 74 63 6c 2c 76 20 31 2e 33 20 31 | CS:.@(#).$Id:.parray.tcl,v.1.3.1 |
44dc0 | 39 39 38 2f 30 39 2f 31 34 20 31 38 3a 34 30 3a 30 33 20 73 74 61 6e 74 6f 6e 20 45 78 70 20 24 | 998/09/14.18:40:03.stanton.Exp.$ |
44de0 | 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 31 2d 31 39 39 33 20 54 68 65 | .#.#.Copyright.(c).1991-1993.The |
44e00 | 20 52 65 67 65 6e 74 73 20 6f 66 20 74 68 65 20 55 6e 69 76 65 72 73 69 74 79 20 6f 66 20 43 61 | .Regents.of.the.University.of.Ca |
44e20 | 6c 69 66 6f 72 6e 69 61 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 31 39 39 34 20 53 | lifornia..#.Copyright.(c).1994.S |
44e40 | 75 6e 20 4d 69 63 72 6f 73 79 73 74 65 6d 73 2c 20 49 6e 63 2e 0a 23 0a 23 20 53 65 65 20 74 68 | un.Microsystems,.Inc..#.#.See.th |
44e60 | 65 20 66 69 6c 65 20 22 6c 69 63 65 6e 73 65 2e 74 65 72 6d 73 22 20 66 6f 72 20 69 6e 66 6f 72 | e.file."license.terms".for.infor |
44e80 | 6d 61 74 69 6f 6e 20 6f 6e 20 75 73 61 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 69 | mation.on.usage.and.redistributi |
44ea0 | 6f 6e 0a 23 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2c 20 61 6e 64 20 66 6f 72 20 61 20 44 49 53 | on.#.of.this.file,.and.for.a.DIS |
44ec0 | 43 4c 41 49 4d 45 52 20 4f 46 20 41 4c 4c 20 57 41 52 52 41 4e 54 49 45 53 2e 0a 23 0a 0a 70 72 | CLAIMER.OF.ALL.WARRANTIES..#..pr |
44ee0 | 6f 63 20 70 61 72 72 61 79 20 7b 61 20 7b 70 61 74 74 65 72 6e 20 2a 7d 7d 20 7b 0a 20 20 20 20 | oc.parray.{a.{pattern.*}}.{..... |
44f00 | 75 70 76 61 72 20 31 20 24 61 20 61 72 72 61 79 0a 20 20 20 20 69 66 20 7b 21 5b 61 72 72 61 79 | upvar.1.$a.array.....if.{![array |
44f20 | 20 65 78 69 73 74 73 20 61 72 72 61 79 5d 7d 20 7b 0a 09 65 72 72 6f 72 20 22 5c 22 24 61 5c 22 | .exists.array]}.{..error."\"$a\" |
44f40 | 20 69 73 6e 27 74 20 61 6e 20 61 72 72 61 79 22 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 6d | .isn't.an.array".....}.....set.m |
44f60 | 61 78 6c 20 30 0a 20 20 20 20 66 6f 72 65 61 63 68 20 6e 61 6d 65 20 5b 6c 73 6f 72 74 20 5b 61 | axl.0.....foreach.name.[lsort.[a |
44f80 | 72 72 61 79 20 6e 61 6d 65 73 20 61 72 72 61 79 20 24 70 61 74 74 65 72 6e 5d 5d 20 7b 0a 09 69 | rray.names.array.$pattern]].{..i |
44fa0 | 66 20 7b 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 24 6e 61 6d 65 5d 20 3e 20 24 6d 61 78 6c | f.{[string.length.$name].>.$maxl |
44fc0 | 7d 20 7b 0a 09 20 20 20 20 73 65 74 20 6d 61 78 6c 20 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 | }.{......set.maxl.[string.length |
44fe0 | 20 24 6e 61 6d 65 5d 0a 09 7d 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 74 20 6d 61 78 6c 20 5b 65 | .$name]..}.....}.....set.maxl.[e |
45000 | 78 70 72 20 7b 24 6d 61 78 6c 20 2b 20 5b 73 74 72 69 6e 67 20 6c 65 6e 67 74 68 20 24 61 5d 20 | xpr.{$maxl.+.[string.length.$a]. |
45020 | 2b 20 32 7d 5d 0a 20 20 20 20 66 6f 72 65 61 63 68 20 6e 61 6d 65 20 5b 6c 73 6f 72 74 20 5b 61 | +.2}].....foreach.name.[lsort.[a |
45040 | 72 72 61 79 20 6e 61 6d 65 73 20 61 72 72 61 79 20 24 70 61 74 74 65 72 6e 5d 5d 20 7b 0a 09 73 | rray.names.array.$pattern]].{..s |
45060 | 65 74 20 6e 61 6d 65 53 74 72 69 6e 67 20 5b 66 6f 72 6d 61 74 20 25 73 28 25 73 29 20 24 61 20 | et.nameString.[format.%s(%s).$a. |
45080 | 24 6e 61 6d 65 5d 0a 09 70 75 74 73 20 73 74 64 6f 75 74 20 5b 66 6f 72 6d 61 74 20 22 25 2d 2a | $name]..puts.stdout.[format."%-* |
450a0 | 73 20 3d 20 25 73 22 20 24 6d 61 78 6c 20 24 6e 61 6d 65 53 74 72 69 6e 67 20 24 61 72 72 61 79 | s.=.%s".$maxl.$nameString.$array |
450c0 | 28 24 6e 61 6d 65 29 5d 0a 20 20 20 20 7d 0a 7d 0a 00 00 01 00 00 04 50 6f 00 04 4f 6f 00 00 0b | ($name)].....}.}.......Po..Oo... |
450e0 | 52 06 c8 fe dc 04 a2 00 00 00 1c 06 c6 00 0b 43 4e 54 4c 00 00 00 62 63 72 73 72 00 0e 00 6e 43 | R..............CNTL...bcrsr...nC |
45100 | 55 52 53 00 54 01 22 44 49 54 4c 00 01 05 1e 44 4c 4f 47 00 01 05 36 4d 44 45 46 00 00 05 4e 4d | URS.T."DITL....DLOG...6MDEF...NM |
45120 | 45 4e 55 00 00 05 5a 50 49 43 54 00 00 05 66 53 49 43 4e 00 00 05 72 53 49 5a 45 00 00 05 7e 53 | ENU...ZPICT...fSICN...rSIZE...~S |
45140 | 54 52 23 00 00 05 8a 54 45 58 54 00 16 05 96 00 83 00 00 20 00 00 00 00 00 00 00 03 e8 00 10 00 | TR#....TEXT..................... |
45160 | 00 00 25 00 00 00 00 03 e9 00 15 00 00 01 1b 00 00 00 00 0b bc 00 1a 20 00 02 11 00 00 00 00 0b | ..%............................. |
45180 | c5 00 1f 00 00 03 6f 00 00 00 00 0b c6 00 25 00 00 04 cd 00 00 00 00 0b d3 00 30 00 00 06 23 00 | ......o.......%...........0...#. |
451a0 | 00 00 00 0b d4 00 38 00 00 07 79 00 00 00 00 0b d7 00 3e 00 00 08 c7 00 00 00 00 0b e2 00 44 20 | ......8...y.......>...........D. |
451c0 | 00 09 c5 00 00 00 00 0b e3 00 4a 20 00 0b 43 00 00 00 00 0b f3 00 51 00 00 0c 99 00 00 00 00 0b | ..........J...C.......Q......... |
451e0 | f6 00 59 00 00 0d ef 00 00 00 00 0b f7 00 62 00 00 0f 6d 00 00 00 00 0b ff 00 67 00 00 10 63 00 | ..Y...........b...m.......g...c. |
45200 | 00 00 00 0c 03 00 6c 20 00 11 b9 00 00 00 00 03 e8 00 72 00 00 12 ff 00 00 00 00 03 ea 00 77 00 | ......l...........r...........w. |
45220 | 00 13 47 00 00 00 00 03 eb 00 7e 00 00 13 8f 00 00 00 00 03 ec 00 85 00 00 13 d7 00 00 00 00 03 | ..G.......~..................... |
45240 | ed 00 8c 00 00 14 1f 00 00 00 00 03 ee 00 94 00 00 14 67 00 00 00 00 03 ef 00 a1 00 00 14 af 00 | ..................g............. |
45260 | 00 00 00 03 f0 00 a9 00 00 14 f7 00 00 00 00 0b b8 00 b2 00 00 15 3f 00 00 00 00 0b b9 00 bb 00 | ......................?......... |
45280 | 00 15 87 00 00 00 00 0b ba 00 c1 00 00 15 cf 00 00 00 00 0b bb 00 d2 00 00 16 17 00 00 00 00 0b | ................................ |
452a0 | bc 00 e1 00 00 16 5f 00 00 00 00 0b bd 00 e6 00 00 16 a7 00 00 00 00 0b be 00 ef 00 00 16 ef 00 | ......_......................... |
452c0 | 00 00 00 0b bf 01 02 00 00 17 37 00 00 00 00 0b c0 01 16 00 00 17 7f 00 00 00 00 0b c1 01 22 00 | ..........7...................". |
452e0 | 00 17 c7 00 00 00 00 0b c2 01 2d 00 00 18 0f 00 00 00 00 0b c3 01 38 00 00 18 57 00 00 00 00 0b | ..........-...........8...W..... |
45300 | c4 01 43 00 00 18 9f 00 00 00 00 0b c5 01 4a 00 00 18 e7 00 00 00 00 0b c6 01 50 00 00 19 2f 00 | ..C...........J...........P.../. |
45320 | 00 00 00 0b c7 01 5b 00 00 19 77 00 00 00 00 0b c8 01 61 00 00 19 bf 00 00 00 00 0b c9 01 6f 00 | ......[...w.......a...........o. |
45340 | 00 1a 07 00 00 00 00 0b ca 01 79 00 00 1a 4f 00 00 00 00 0b cb 01 87 00 00 1a 97 00 00 00 00 0b | ..........y...O................. |
45360 | cc 01 8b 00 00 1a df 00 00 00 00 0b cd 01 92 00 00 1b 27 00 00 00 00 0b ce 01 9f 00 00 1b 6f 00 | ..................'...........o. |
45380 | 00 00 00 0b cf 01 ab 00 00 1b b7 00 00 00 00 0b d0 01 b7 00 00 1b ff 00 00 00 00 0b d1 01 c2 00 | ................................ |
453a0 | 00 1c 47 00 00 00 00 0b d2 01 cb 00 00 1c 8f 00 00 00 00 0b d3 01 d1 00 00 1c d7 00 00 00 00 0b | ..G............................. |
453c0 | d4 01 d9 00 00 1d 1f 00 00 00 00 0b d5 01 df 00 00 1d 67 00 00 00 00 0b d6 01 e5 00 00 1d af 00 | ..................g............. |
453e0 | 00 00 00 0b d7 01 eb 00 00 1d f7 00 00 00 00 0b d8 01 f1 00 00 1e 3f 00 00 00 00 0b d9 01 f6 00 | ......................?......... |
45400 | 00 1e 87 00 00 00 00 0b da 02 01 00 00 1e cf 00 00 00 00 0b db 02 0a 00 00 1f 17 00 00 00 00 0b | ................................ |
45420 | dc 02 14 00 00 1f 5f 00 00 00 00 0b dd 02 1d 00 00 1f a7 00 00 00 00 0b de 02 28 00 00 1f ef 00 | ......_...................(..... |
45440 | 00 00 00 0b df 02 31 00 00 20 37 00 00 00 00 0b e0 02 3a 00 00 20 7f 00 00 00 00 0b e1 02 3e 00 | ......1...7.......:...........>. |
45460 | 00 20 c7 00 00 00 00 0b e2 02 4b 00 00 21 0f 00 00 00 00 0b e3 02 51 00 00 21 57 00 00 00 00 0b | ..........K..!........Q..!W..... |
45480 | e4 02 58 00 00 21 9f 00 00 00 00 0b e5 02 5f 00 00 21 e7 00 00 00 00 0b e6 02 64 00 00 22 2f 00 | ..X..!........_..!........d.."/. |
454a0 | 00 00 00 0b e7 02 73 00 00 22 77 00 00 00 00 0b e8 02 7d 00 00 22 bf 00 00 00 00 0b e9 02 88 00 | ......s.."w.......}..".......... |
454c0 | 00 23 07 00 00 00 00 0b ea 02 92 00 00 23 4f 00 00 00 00 0b eb 02 9e 00 00 23 97 00 00 00 00 0b | .#...........#O..........#...... |
454e0 | ec 02 a7 00 00 23 df 00 00 00 00 0b ed 02 b0 00 00 24 27 00 00 00 00 0b ee 02 be 00 00 24 6f 00 | .....#...........$'..........$o. |
45500 | 00 00 00 0b ef 02 d0 00 00 24 b7 00 00 00 00 0b f0 02 de 00 00 24 ff 00 00 00 00 0b f1 02 ed 00 | .........$...........$.......... |
45520 | 00 25 47 00 00 00 00 0b f2 02 f9 00 00 25 8f 00 00 00 00 0b f3 03 0b 00 00 25 d7 00 00 00 00 0b | .%G..........%...........%...... |
45540 | f4 03 13 00 00 26 1f 00 00 00 00 0b f5 03 1a 00 00 26 67 00 00 00 00 0b f6 03 21 00 00 26 af 00 | .....&...........&g.......!..&.. |
45560 | 00 00 00 0b f7 03 2a 00 00 26 f7 00 00 00 00 0b f8 03 2f 00 00 27 3f 00 00 00 00 0b f9 03 36 00 | ......*..&......../..'?.......6. |
45580 | 00 27 87 00 00 00 00 0b fa 03 3d 00 00 27 cf 00 00 00 00 0b fb 03 4c 00 00 28 17 00 00 00 00 0b | .'........=..'........L..(...... |
455a0 | fc 03 5c 00 00 28 5f 00 00 00 00 0b fd 03 6d 00 00 28 a7 00 00 00 00 0b fe 03 76 00 00 28 ef 00 | ..\..(_.......m..(........v..(.. |
455c0 | 00 00 00 0b ff 03 7e 00 00 29 37 00 00 00 00 0c 00 03 83 00 00 29 7f 00 00 00 00 0c 01 03 8c 00 | ......~..)7..........).......... |
455e0 | 00 29 c7 00 00 00 00 0c 02 03 95 00 00 2a 0f 00 00 00 00 0c 03 03 9e 00 00 2a 57 00 00 00 00 0c | .)...........*...........*W..... |
45600 | 04 03 a4 00 00 2a 9f 00 00 00 00 00 80 03 aa 20 00 2a e7 00 00 00 00 00 82 03 b4 20 00 2b 8f 00 | .....*...........*...........+.. |
45620 | 00 00 00 00 80 03 c2 20 00 2c 41 00 00 00 00 00 82 ff ff 20 00 2c 5d 00 00 00 00 02 4f ff ff 04 | .........,A..........,].....O... |
45640 | 00 2c 79 00 00 00 00 00 84 ff ff 04 00 2d 4b 00 00 00 00 00 80 ff ff 00 00 2d 5f 00 00 00 00 00 | .,y..........-K..........-_..... |
45660 | 80 ff ff 14 00 41 07 00 00 00 00 ff ff ff ff 00 00 41 eb 00 00 00 00 00 80 03 d4 00 00 41 f9 00 | .....A...........A...........A.. |
45680 | 00 00 00 00 0a 03 ee 24 00 42 60 00 00 00 00 00 0b 03 f1 24 00 6a b6 00 00 00 00 00 0c 03 f8 24 | .......$.B`........$.j.........$ |
456a0 | 00 97 b9 00 00 00 00 00 0d 03 ff 24 00 af 30 00 00 00 00 00 0e 04 05 24 00 ed 2e 00 00 00 00 00 | ...........$..0........$........ |
456c0 | 0f 04 0b 24 01 00 f7 00 00 00 00 00 10 04 13 24 01 35 5d 00 00 00 00 00 11 04 18 24 01 c1 7f 00 | ...$...........$.5]........$.... |
456e0 | 00 00 00 00 12 04 23 24 01 c7 fe 00 00 00 00 00 13 04 2b 24 01 e4 e6 00 00 00 00 00 14 04 31 24 | ......#$..........+$..........1$ |
45700 | 02 00 25 00 00 00 00 00 15 04 3b 24 02 2e 08 00 00 00 00 00 16 04 43 24 02 40 3d 00 00 00 00 00 | ..%.......;$..........C$.@=..... |
45720 | 17 04 48 24 02 ad e3 00 00 00 00 00 18 04 50 24 02 bb a0 00 00 00 00 00 19 04 58 24 02 eb d6 00 | ..H$..........P$..........X$.... |
45740 | 00 00 00 00 1a 04 5f 24 03 25 9d 00 00 00 00 07 d0 04 66 20 03 41 a2 00 00 00 00 07 d1 04 6b 20 | ......_$.%........f..A........k. |
45760 | 03 84 a3 00 00 00 00 07 d2 04 70 24 03 cf 89 00 00 00 00 07 d3 04 78 20 04 17 c9 00 00 00 00 07 | ..........p$..........x......... |
45780 | d4 04 80 24 04 3a ea 00 00 00 00 07 d5 04 85 24 04 4b f9 00 00 00 00 0f 46 69 6c 65 20 54 79 70 | ...$.:.........$.K......File.Typ |
457a0 | 65 73 20 6d 65 6e 75 04 68 61 6e 64 04 66 69 73 74 04 62 6f 61 74 05 63 6c 6f 63 6b 0a 63 6f 66 | es.menu.hand.fist.boat.clock.cof |
457c0 | 66 65 65 5f 6d 75 67 07 67 6f 62 62 6c 65 72 05 67 75 6d 62 79 05 68 65 61 72 74 05 6d 6f 75 73 | fee_mug.gobbler.gumby.heart.mous |
457e0 | 65 06 70 65 6e 63 69 6c 07 73 68 75 74 74 6c 65 08 73 70 72 61 79 63 61 6e 04 73 74 61 72 04 74 | e.pencil.shuttle.spraycan.star.t |
45800 | 72 65 6b 05 77 61 74 63 68 04 68 61 6e 64 06 62 75 63 6b 65 74 06 63 61 6e 63 65 6c 06 52 65 73 | rek.watch.hand.bucket.cancel.Res |
45820 | 69 7a 65 07 65 79 65 64 72 6f 70 0c 65 79 65 64 72 6f 70 2d 66 75 6c 6c 07 7a 6f 6f 6d 2d 69 6e | ize.eyedrop.eyedrop-full.zoom-in |
45840 | 08 7a 6f 6f 6d 2d 6f 75 74 08 58 5f 63 75 72 73 6f 72 05 61 72 72 6f 77 10 62 61 73 65 64 5f 61 | .zoom-out.X_cursor.arrow.based_a |
45860 | 72 72 6f 77 5f 64 6f 77 6e 0e 62 61 73 65 64 5f 61 72 72 6f 77 5f 75 70 04 62 6f 61 74 08 62 6f | rrow_down.based_arrow_up.boat.bo |
45880 | 67 6f 73 69 74 79 12 62 6f 74 74 6f 6d 5f 6c 65 66 74 5f 63 6f 72 6e 65 72 13 62 6f 74 74 6f 6d | gosity.bottom_left_corner.bottom |
458a0 | 5f 72 69 67 68 74 5f 63 6f 72 6e 65 72 0b 62 6f 74 74 6f 6d 5f 73 69 64 65 0a 62 6f 74 74 6f 6d | _right_corner.bottom_side.bottom |
458c0 | 5f 74 65 65 0a 62 6f 78 5f 73 70 69 72 61 6c 0a 63 65 6e 74 65 72 5f 70 74 72 06 63 69 72 63 6c | _tee.box_spiral.center_ptr.circl |
458e0 | 65 05 63 6c 6f 63 6b 0a 63 6f 66 66 65 65 5f 6d 75 67 05 63 72 6f 73 73 0d 63 72 6f 73 73 5f 72 | e.clock.coffee_mug.cross.cross_r |
45900 | 65 76 65 72 73 65 09 63 72 6f 73 73 68 61 69 72 0d 64 69 61 6d 6f 6e 64 5f 63 72 6f 73 73 03 64 | everse.crosshair.diamond_cross.d |
45920 | 6f 74 06 64 6f 74 62 6f 78 0c 64 6f 75 62 6c 65 5f 61 72 72 6f 77 0b 64 72 61 66 74 5f 6c 61 72 | ot.dotbox.double_arrow.draft_lar |
45940 | 67 65 0b 64 72 61 66 74 5f 73 6d 61 6c 6c 0a 64 72 61 70 65 64 5f 62 6f 78 08 65 78 63 68 61 6e | ge.draft_small.draped_box.exchan |
45960 | 67 65 05 66 6c 65 75 72 07 67 6f 62 62 6c 65 72 05 67 75 6d 62 79 05 68 61 6e 64 31 05 68 61 6e | ge.fleur.gobbler.gumby.hand1.han |
45980 | 64 32 05 68 65 61 72 74 04 69 63 6f 6e 0a 69 72 6f 6e 5f 63 72 6f 73 73 08 6c 65 66 74 5f 70 74 | d2.heart.icon.iron_cross.left_pt |
459a0 | 72 09 6c 65 66 74 5f 73 69 64 65 08 6c 65 66 74 5f 74 65 65 0a 6c 65 66 74 62 75 74 74 6f 6e 08 | r.left_side.left_tee.leftbutton. |
459c0 | 6c 6c 5f 61 6e 67 6c 65 08 6c 72 5f 61 6e 67 6c 65 03 6d 61 6e 0c 6d 69 64 64 6c 65 62 75 74 74 | ll_angle.lr_angle.man.middlebutt |
459e0 | 6f 6e 05 6d 6f 75 73 65 06 70 65 6e 63 69 6c 06 70 69 72 61 74 65 04 70 6c 75 73 0e 71 75 65 73 | on.mouse.pencil.pirate.plus.ques |
45a00 | 74 69 6f 6e 5f 61 72 72 6f 77 09 72 69 67 68 74 5f 70 74 72 0a 72 69 67 68 74 5f 73 69 64 65 09 | tion_arrow.right_ptr.right_side. |
45a20 | 72 69 67 68 74 5f 74 65 65 0b 72 69 67 68 74 62 75 74 74 6f 6e 08 72 74 6c 5f 6c 6f 67 6f 08 73 | right_tee.rightbutton.rtl_logo.s |
45a40 | 61 69 6c 62 6f 61 74 0d 73 62 5f 64 6f 77 6e 5f 61 72 72 6f 77 11 73 62 5f 68 5f 64 6f 75 62 6c | ailboat.sb_down_arrow.sb_h_doubl |
45a60 | 65 5f 61 72 72 6f 77 0d 73 62 5f 6c 65 66 74 5f 61 72 72 6f 77 0e 73 62 5f 72 69 67 68 74 5f 61 | e_arrow.sb_left_arrow.sb_right_a |
45a80 | 72 72 6f 77 0b 73 62 5f 75 70 5f 61 72 72 6f 77 11 73 62 5f 76 5f 64 6f 75 62 6c 65 5f 61 72 72 | rrow.sb_up_arrow.sb_v_double_arr |
45aa0 | 6f 77 07 73 68 75 74 74 6c 65 06 73 69 7a 69 6e 67 06 73 70 69 64 65 72 08 73 70 72 61 79 63 61 | ow.shuttle.sizing.spider.sprayca |
45ac0 | 6e 04 73 74 61 72 06 74 61 72 67 65 74 06 74 63 72 6f 73 73 0e 74 6f 70 5f 6c 65 66 74 5f 61 72 | n.star.target.tcross.top_left_ar |
45ae0 | 72 6f 77 0f 74 6f 70 5f 6c 65 66 74 5f 63 6f 72 6e 65 72 10 74 6f 70 5f 72 69 67 68 74 5f 63 6f | row.top_left_corner.top_right_co |
45b00 | 72 6e 65 72 08 74 6f 70 5f 73 69 64 65 07 74 6f 70 5f 74 65 65 04 74 72 65 6b 08 75 6c 5f 61 6e | rner.top_side.top_tee.trek.ul_an |
45b20 | 67 6c 65 08 75 6d 62 72 65 6c 6c 61 08 75 72 5f 61 6e 67 6c 65 05 77 61 74 63 68 05 78 74 65 72 | gle.umbrella.ur_angle.watch.xter |
45b40 | 6d 09 41 62 6f 75 74 20 42 6f 78 0d 46 69 6c 65 20 4f 70 65 6e 20 42 6f 78 11 44 65 66 61 75 6c | m.About.Box.File.Open.Box.Defaul |
45b60 | 74 20 41 62 6f 75 74 20 42 6f 78 19 54 63 6c 20 45 6e 76 69 72 6f 6e 6d 65 6e 74 20 56 61 72 69 | t.About.Box.Tcl.Environment.Vari |
45b80 | 61 62 6c 65 73 02 74 6b 06 62 75 74 74 6f 6e 06 64 69 61 6c 6f 67 05 65 6e 74 72 79 05 66 6f 63 | ables.tk.button.dialog.entry.foc |
45ba0 | 75 73 07 6c 69 73 74 62 6f 78 04 6d 65 6e 75 0a 6f 70 74 69 6f 6e 4d 65 6e 75 07 70 61 6c 65 74 | us.listbox.menu.optionMenu.palet |
45bc0 | 74 65 05 73 63 61 6c 65 09 73 63 72 6f 6c 6c 62 61 72 07 74 65 61 72 6f 66 66 04 74 65 78 74 07 | te.scale.scrollbar.tearoff.text. |
45be0 | 74 6b 65 72 72 6f 72 07 43 6f 6e 73 6f 6c 65 06 6d 73 67 62 6f 78 06 63 6f 6d 64 6c 67 04 49 6e | tkerror.Console.msgbox.comdlg.In |
45c00 | 69 74 04 41 75 74 6f 07 50 61 63 6b 61 67 65 07 48 69 73 74 6f 72 79 04 57 6f 72 64 06 50 61 72 | it.Auto.Package.History.Word.Par |
45c20 | 72 61 79 | ray |