home *** CD-ROM | disk | FTP | other *** search
Unknown | 1997-10-10 | 33.4 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was not able to be converted.
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| file
| data
| default
| |
100%
| gt2
| Kopftext: 'HELP('
| default (weak)
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 48 45 4c 50 28 00 00 00 | fa 00 00 00 ff ff ff ff |HELP(...|........|
|00000010| 2c 00 00 00 00 fd ff ff | 00 00 00 00 ec 00 00 00 |,.......|........|
|00000020| 00 01 00 00 00 00 00 00 | 24 00 00 00 44 49 52 24 |........|$...DIR$|
|00000030| f4 00 00 00 f4 00 00 00 | 20 01 00 00 47 fd ff ff |........| ...G...|
|00000040| e5 61 06 d7 9c 07 00 00 | 13 01 00 00 00 00 00 00 |.a......|........|
|00000050| 50 52 4f 43 00 00 00 00 | c8 3c 00 00 47 fd ff ff |PROC....|.<..G...|
|00000060| 96 6b 06 d7 dc 06 00 00 | 13 01 00 00 00 00 00 00 |.k......|........|
|00000070| 46 4e 00 00 18 72 00 00 | 47 fd ff ff 1e 19 03 d7 |FN...r..|G.......|
|00000080| 2d 0a 00 00 13 00 00 00 | 00 00 00 00 21 52 6f 6f |-.......|....!Roo|
|00000090| 74 00 00 00 48 7c 00 00 | 47 fd ff ff dd 6b 49 02 |t...H|..|G....kI.|
|000000a0| 89 04 00 00 13 00 00 00 | 00 00 00 00 6d 65 6e 75 |........|....menu|
|000000b0| 63 6f 6e 74 72 6f 6c 00 | d4 80 00 00 46 fd ff ff |control.|....F...|
|000000c0| 5f a6 ae 41 41 00 00 00 | 13 00 00 00 00 00 00 00 |_..AA...|........|
|000000d0| 74 6f 67 67 6c 65 66 6c | 61 67 00 00 18 81 00 00 |togglefl|ag......|
|000000e0| 46 fd ff ff a2 a6 b4 41 | 55 01 00 00 13 00 00 00 |F......A|U.......|
|000000f0| 00 00 00 00 68 65 6c 70 | 66 6f 72 6d 61 74 00 00 |....help|format..|
|00000100| 70 82 00 00 47 fd ff ff | 29 36 ff 92 33 03 00 00 |p...G...|)6..3...|
|00000110| 13 00 00 00 00 00 00 00 | 69 6e 66 6f 00 00 00 00 |........|info....|
|00000120| 44 49 52 24 9c 07 00 00 | 9c 07 00 00 bc 08 00 00 |DIR$....|........|
|00000130| 46 ff ff ff 4d 70 f6 4d | 90 00 00 00 13 00 00 00 |F...Mp.M|........|
|00000140| 00 00 00 00 69 6e 69 74 | 6c 69 62 72 61 72 79 00 |....init|library.|
|00000150| 4c 09 00 00 46 ff ff ff | e9 71 f6 4d 96 00 00 00 |L...F...|.q.M....|
|00000160| 13 00 00 00 00 00 00 00 | 6e 6f 74 65 6d 65 73 73 |........|notemess|
|00000170| 61 67 65 00 e4 09 00 00 | 46 ff ff ff e7 83 f6 4d |age.....|F......M|
|00000180| d4 01 00 00 13 00 00 00 | 00 00 00 00 65 72 72 6f |........|....erro|
|00000190| 72 00 00 00 b8 0b 00 00 | 46 ff ff ff 90 8f f6 4d |r.......|F......M|
|000001a0| 4c 00 00 00 13 00 00 00 | 00 00 00 00 69 62 6d 65 |L.......|....ibme|
|000001b0| 6e 75 00 00 04 0c 00 00 | 46 ff ff ff 85 91 f6 4d |nu......|F......M|
|000001c0| b3 00 00 00 13 00 00 00 | 00 00 00 00 6d 65 6e 75 |........|....menu|
|000001d0| 00 00 00 00 b8 0c 00 00 | 46 ff ff ff 30 93 f6 4d |........|F...0..M|
|000001e0| a5 00 00 00 13 00 00 00 | 00 00 00 00 72 65 63 72 |........|....recr|
|000001f0| 65 61 74 65 6d 65 6e 75 | 00 00 00 00 60 0d 00 00 |eatemenu|....`...|
|00000200| 46 ff ff ff aa be f6 4d | 52 00 00 00 13 00 00 00 |F......M|R.......|
|00000210| 00 00 00 00 63 6c 6f 73 | 65 77 69 6e 00 00 00 00 |....clos|ewin....|
|00000220| b4 0d 00 00 46 ff ff ff | d6 c0 f6 4d 50 00 00 00 |....F...|...MP...|
|00000230| 13 00 00 00 00 00 00 00 | 6f 70 65 6e 77 69 6e 00 |........|openwin.|
|00000240| 04 0e 00 00 46 ff ff ff | eb c3 f6 4d c1 00 00 00 |....F...|...M....|
|00000250| 13 00 00 00 00 00 00 00 | 6f 70 65 6e 77 69 6e 61 |........|openwina|
|00000260| 74 00 00 00 c8 0e 00 00 | 46 ff ff ff b8 c5 f6 4d |t.......|F......M|
|00000270| 6c 00 00 00 13 00 00 00 | 00 00 00 00 6f 70 65 6e |l.......|....open|
|00000280| 77 69 6e 63 65 6e 74 72 | 65 00 00 00 34 0f 00 00 |wincentr|e...4...|
|00000290| 46 ff ff ff 0e a5 f8 4d | 1b 01 00 00 13 00 00 00 |F......M|........|
|000002a0| 00 00 00 00 66 6f 72 63 | 65 72 65 64 72 61 77 00 |....forc|eredraw.|
|000002b0| 50 10 00 00 47 ff ff ff | 43 e1 03 d7 e4 01 00 00 |P...G...|C.......|
|000002c0| 13 00 00 00 00 00 00 00 | 77 69 6e 73 65 74 65 78 |........|winsetex|
|000002d0| 74 65 6e 74 00 00 00 00 | 34 12 00 00 46 ff ff ff |tent....|4...F...|
|000002e0| 07 c7 f6 4d 96 01 00 00 | 13 00 00 00 00 00 00 00 |...M....|........|
|000002f0| 6f 70 65 6e 77 69 6e 74 | 6f 00 00 00 cc 13 00 00 |openwint|o.......|
|00000300| 46 ff ff ff 5f b4 f6 4d | 7c 00 00 00 13 00 00 00 |F..._..M||.......|
|00000310| 00 00 00 00 72 65 6c 65 | 61 73 65 66 6f 6e 74 6d |....rele|asefontm|
|00000320| 65 6e 75 00 48 14 00 00 | 46 ff ff ff 7b a1 f6 4d |enu.H...|F...{..M|
|00000330| cc 00 00 00 13 00 00 00 | 00 00 00 00 6d 65 6e 75 |........|....menu|
|00000340| 74 69 63 6b 00 00 00 00 | 14 15 00 00 46 ff ff ff |tick....|....F...|
|00000350| 7b a3 f6 4d cf 00 00 00 | 13 00 00 00 00 00 00 00 |{..M....|........|
|00000360| 6d 65 6e 75 73 68 61 64 | 65 00 00 00 e4 15 00 00 |menushad|e.......|
|00000370| 46 ff ff ff 81 ce 2f b7 | ef 00 00 00 13 00 00 00 |F...../.|........|
|00000380| 00 00 00 00 73 65 74 6d | 65 6e 75 74 65 78 74 00 |....setm|enutext.|
|00000390| d4 16 00 00 46 ff ff ff | 4a b3 f8 4d 46 01 00 00 |....F...|J..MF...|
|000003a0| 13 00 00 00 00 00 00 00 | 64 65 6c 65 74 65 69 63 |........|deleteic|
|000003b0| 6f 6e 00 00 1c 18 00 00 | 46 ff ff ff f5 13 7b 4f |on......|F.....{O|
|000003c0| cb 01 00 00 13 00 00 00 | 00 00 00 00 72 65 61 64 |........|....read|
|000003d0| 68 65 6c 70 00 00 00 00 | e8 19 00 00 47 ff ff ff |help....|....G...|
|000003e0| 71 e0 03 d7 c8 01 00 00 | 13 00 00 00 00 00 00 00 |q.......|........|
|000003f0| 73 65 6e 64 68 65 6c 70 | 00 00 00 00 b0 1b 00 00 |sendhelp|........|
|00000400| 46 ff ff ff 16 fd f8 4d | 61 00 00 00 13 00 00 00 |F......M|a.......|
|00000410| 00 00 00 00 6f 70 65 6e | 6d 65 73 73 61 67 65 73 |....open|messages|
|00000420| 00 00 00 00 14 1c 00 00 | 46 ff ff ff a9 ff f8 4d |........|F......M|
|00000430| 6f 00 00 00 13 00 00 00 | 00 00 00 00 63 6c 6f 73 |o.......|....clos|
|00000440| 65 6d 65 73 73 61 67 65 | 73 00 00 00 84 1c 00 00 |emessage|s.......|
|00000450| 46 ff ff ff fe bc f6 4d | a0 00 00 00 13 00 00 00 |F......M|........|
|00000460| 00 00 00 00 72 65 6c 65 | 61 73 65 66 74 6d 65 6e |....rele|aseftmen|
|00000470| 75 00 00 00 24 1d 00 00 | 46 ff ff ff 2d b9 f8 4d |u...$...|F...-..M|
|00000480| c4 00 00 00 13 00 00 00 | 00 00 00 00 69 63 6f 6e |........|....icon|
|00000490| 73 68 61 64 65 00 00 00 | e8 1d 00 00 46 ff ff ff |shade...|....F...|
|000004a0| f2 ba f8 4d c7 00 00 00 | 13 00 00 00 00 00 00 00 |...M....|........|
|000004b0| 69 63 6f 6e 73 74 61 74 | 65 00 00 00 b0 1e 00 00 |iconstat|e.......|
|000004c0| 47 ff ff ff a6 df 03 d7 | 0c 01 00 00 13 00 00 00 |G.......|........|
|000004d0| 00 00 00 00 73 65 74 69 | 63 6f 6e 62 69 74 00 00 |....seti|conbit..|
|000004e0| bc 1f 00 00 46 ff ff ff | 47 c6 f8 4d 7d 00 00 00 |....F...|G..M}...|
|000004f0| 13 00 00 00 00 00 00 00 | 72 65 64 72 61 77 69 63 |........|redrawic|
|00000500| 6f 6e 00 00 3c 20 00 00 | 46 ff ff ff 22 cc f8 4d |on..< ..|F..."..M|
|00000510| f2 00 00 00 13 00 00 00 | 00 00 00 00 73 65 74 69 |........|....seti|
|00000520| 63 6f 6e 74 65 78 74 00 | 30 21 00 00 46 ff ff ff |context.|0!..F...|
|00000530| c0 48 09 eb ad 00 00 00 | 13 00 00 00 00 00 00 00 |.H......|........|
|00000540| 64 72 61 67 69 63 6f 6e | 00 00 00 00 e0 21 00 00 |dragicon|.....!..|
|00000550| 47 ff ff ff 14 df 03 d7 | 7e 01 00 00 13 00 00 00 |G.......|~.......|
|00000560| 00 00 00 00 77 69 6e 64 | 6f 77 74 69 74 6c 65 00 |....wind|owtitle.|
|00000570| 60 23 00 00 46 ff ff ff | 69 2c f5 4d f4 00 00 00 |`#..F...|i,.M....|
|00000580| 13 00 00 00 00 00 00 00 | 72 65 61 64 74 61 73 6b |........|readtask|
|00000590| 61 72 65 61 00 00 00 00 | 54 24 00 00 46 ff ff ff |area....|T$..F...|
|000005a0| bb 65 f5 4d aa 00 00 00 | 13 00 00 00 00 00 00 00 |.e.M....|........|
|000005b0| 73 65 74 63 61 72 65 74 | 65 6e 64 00 00 25 00 00 |setcaret|end..%..|
|000005c0| 46 ff ff ff f7 6d f5 4d | e8 00 00 00 13 00 00 00 |F....m.M|........|
|000005d0| 00 00 00 00 73 65 74 63 | 61 72 65 74 70 6f 73 00 |....setc|aretpos.|
|000005e0| e8 25 00 00 46 ff ff ff | fb 41 3a 52 b6 00 00 00 |.%..F...|.A:R....|
|000005f0| 13 00 00 00 00 00 00 00 | 67 65 74 63 61 72 65 74 |........|getcaret|
|00000600| 70 6f 73 00 a0 26 00 00 | 46 ff ff ff d3 85 f5 4d |pos..&..|F......M|
|00000610| ae 00 00 00 13 00 00 00 | 00 00 00 00 67 65 74 70 |........|....getp|
|00000620| 74 72 70 6f 73 00 00 00 | 50 27 00 00 47 ff ff ff |trpos...|P'..G...|
|00000630| 6c de 03 d7 c6 00 00 00 | 13 00 00 00 00 00 00 00 |l.......|........|
|00000640| 77 72 69 74 65 63 6d 6f | 73 00 00 00 18 28 00 00 |writecmo|s....(..|
|00000650| 46 ff ff ff 02 fd 76 4f | ea 00 00 00 13 00 00 00 |F.....vO|........|
|00000660| 00 00 00 00 6d 65 6e 75 | 75 6e 74 69 63 6b 00 00 |....menu|untick..|
|00000670| 04 29 00 00 46 ff ff ff | 5f d7 f8 4d d8 00 00 00 |.)..F...|_..M....|
|00000680| 13 00 00 00 00 00 00 00 | 73 65 74 69 63 6f 6e 76 |........|seticonv|
|00000690| 61 6c 69 64 00 00 00 00 | dc 29 00 00 47 ff ff ff |alid....|.)..G...|
|000006a0| 3f 16 c3 1e e6 01 00 00 | 13 00 00 00 00 00 00 00 |?.......|........|
|000006b0| 6d 61 6b 65 73 74 61 74 | 75 73 66 69 6c 65 00 00 |makestat|usfile..|
|000006c0| c4 2b 00 00 46 ff ff ff | ff c3 f5 4d 7e 00 00 00 |.+..F...|...M~...|
|000006d0| 13 00 00 00 00 00 00 00 | 63 6c 6f 73 65 73 74 61 |........|closesta|
|000006e0| 74 75 73 66 69 6c 65 00 | 44 2c 00 00 46 ff ff ff |tusfile.|D,..F...|
|000006f0| e2 aa 8b 4f e0 00 00 00 | 13 00 00 00 00 00 00 00 |...O....|........|
|00000700| 73 74 61 74 75 73 70 75 | 74 00 00 00 24 2d 00 00 |statuspu|t...$-..|
|00000710| 46 ff ff ff f3 9c 8b 4f | e3 00 00 00 13 00 00 00 |F......O|........|
|00000720| 00 00 00 00 73 74 61 74 | 75 73 6f 70 74 69 6f 6e |....stat|usoption|
|00000730| 00 00 00 00 08 2e 00 00 | 46 ff ff ff a3 c2 8b 4f |........|F......O|
|00000740| e0 00 00 00 13 00 00 00 | 00 00 00 00 73 74 61 74 |........|....stat|
|00000750| 75 73 6e 65 78 74 00 00 | e8 2e 00 00 46 ff ff ff |usnext..|....F...|
|00000760| 5f 9a f4 4d fd 00 00 00 | 13 00 00 00 00 00 00 00 |_..M....|........|
|00000770| 72 65 6c 65 61 73 65 00 | e8 2f 00 00 46 ff ff ff |release.|./..F...|
|00000780| 25 e0 f8 4d 8f 00 00 00 | 13 00 00 00 00 00 00 00 |%..M....|........|
|00000790| 70 72 65 73 73 69 63 6f | 6e 00 00 00 78 30 00 00 |pressico|n...x0..|
|000007a0| 46 ff ff ff c3 b4 8b 4f | 04 01 00 00 13 00 00 00 |F......O|........|
|000007b0| 00 00 00 00 73 74 61 74 | 75 73 66 6c 61 67 00 00 |....stat|usflag..|
|000007c0| 7c 31 00 00 46 ff ff ff | 62 32 35 53 43 02 00 00 ||1..F...|b25SC...|
|000007d0| 13 00 00 00 00 00 00 00 | 73 68 6f 77 66 72 65 65 |........|showfree|
|000007e0| 00 00 00 00 c0 33 00 00 | 46 ff ff ff e4 e4 cb 53 |.....3..|F......S|
|000007f0| eb 01 00 00 13 00 00 00 | 00 00 00 00 65 65 72 72 |........|....eerr|
|00000800| 6f 72 00 00 ac 35 00 00 | 47 ff ff ff 90 dd 03 d7 |or...5..|G.......|
|00000810| d6 01 00 00 13 00 00 00 | 00 00 00 00 64 72 61 67 |........|....drag|
|00000820| 73 61 76 65 00 00 00 00 | 84 37 00 00 46 ff ff ff |save....|.7..F...|
|00000830| ec 91 fe fa 56 01 00 00 | 13 00 00 00 00 00 00 00 |....V...|........|
|00000840| 72 65 73 69 7a 65 77 69 | 6e 74 6f 00 dc 38 00 00 |resizewi|nto..8..|
|00000850| 47 ff ff ff a4 0e 03 d7 | 3e 01 00 00 33 00 00 00 |G.......|>...3...|
|00000860| 00 00 00 00 65 6d 62 65 | 64 77 69 6e 00 00 00 00 |....embe|dwin....|
|00000870| 1c 3a 00 00 47 ff ff ff | 98 f9 fe 92 32 01 00 00 |.:..G...|....2...|
|00000880| 33 00 00 00 00 00 00 00 | 75 6e 65 6d 62 65 64 77 |3.......|unembedw|
|00000890| 69 6e 00 00 50 3b 00 00 | 47 ff ff ff bd 00 03 d7 |in..P;..|G.......|
|000008a0| 78 01 00 00 33 00 00 00 | 00 00 00 00 65 6d 62 65 |x...3...|....embe|
|000008b0| 64 77 69 6e 77 69 74 68 | 00 00 00 00 44 41 54 41 |dwinwith|....DATA|
|000008c0| 90 00 00 00 50 52 4f 43 | 69 6e 69 74 6c 69 62 72 |....PROC|initlibr|
|000008d0| 61 72 79 0a 23 50 61 72 | 65 6e 74 20 21 52 6f 6f |ary.#Par|ent !Roo|
|000008e0| 74 0a 49 6e 69 74 69 61 | 6c 69 73 65 73 20 6c 69 |t.Initia|lises li|
|000008f0| 62 72 61 72 79 20 76 61 | 72 69 61 62 6c 65 73 2e |brary va|riables.|
|00000900| 0a 0a 43 61 6c 6c 20 74 | 68 69 73 20 72 6f 75 74 |..Call t|his rout|
|00000910| 69 6e 65 20 61 74 20 74 | 68 65 20 73 74 61 72 74 |ine at t|he start|
|00000920| 20 6f 66 20 61 6e 79 20 | 70 72 6f 67 72 61 6d 20 | of any |program |
|00000930| 74 68 61 74 20 75 73 65 | 73 20 74 68 65 20 57 69 |that use|s the Wi|
|00000940| 6d 70 4c 69 62 20 66 69 | 6c 65 2e 0a 44 41 54 41 |mpLib fi|le..DATA|
|00000950| 96 00 00 00 50 52 4f 43 | 6e 6f 74 65 6d 65 73 73 |....PROC|notemess|
|00000960| 61 67 65 28 6e 75 6d 62 | 65 72 29 0a 23 50 61 72 |age(numb|er).#Par|
|00000970| 65 6e 74 20 21 52 6f 6f | 74 0a 3d 3e 09 7b 2f 7d |ent !Roo|t.=>.{/}|
|00000980| 6e 75 6d 62 65 72 7b 2f | 7d 09 6d 65 73 73 61 67 |number{/|}.messag|
|00000990| 65 20 6e 75 6d 62 65 72 | 0a 0a 4d 61 72 6b 20 74 |e number|..Mark t|
|000009a0| 68 65 20 67 69 76 65 6e | 20 6d 65 73 73 61 67 65 |he given| message|
|000009b0| 20 61 73 20 72 65 63 65 | 69 76 65 61 62 6c 65 2e | as rece|iveable.|
|000009c0| 20 55 73 65 64 20 66 6f | 72 20 52 49 53 43 20 4f | Used fo|r RISC O|
|000009d0| 53 20 33 20 61 70 70 6c | 69 63 61 74 69 6f 6e 73 |S 3 appl|ications|
|000009e0| 2e 0a 00 00 44 41 54 41 | d4 01 00 00 50 52 4f 43 |....DATA|....PROC|
|000009f0| 65 72 72 6f 72 0a 23 50 | 61 72 65 6e 74 20 21 52 |error.#P|arent !R|
|00000a00| 6f 6f 74 0a 43 61 6c 6c | 65 64 20 61 74 20 61 6e |oot.Call|ed at an|
|00000a10| 79 20 62 61 73 69 63 20 | 65 72 72 6f 72 2e 20 65 |y basic |error. e|
|00000a20| 67 20 7b 66 43 6f 64 65 | 7d 4f 4e 20 45 52 52 4f |g {fCode|}ON ERRO|
|00000a30| 52 20 50 52 4f 43 65 72 | 72 6f 72 3a 47 4f 54 4f |R PROCer|ror:GOTO|
|00000a40| 20 3f 3f 3f 3f 7b 66 7d | 0a 45 52 52 4f 52 20 6e | ????{f}|.ERROR n|
|00000a50| 75 6d 62 65 72 73 20 26 | 38 30 30 2b 0a 23 49 6e |umbers &|800+.#In|
|00000a60| 64 65 6e 74 20 32 0a 30 | 20 3d 20 4f 4b 0a 31 20 |dent 2.0| = OK.1 |
|00000a70| 3d 20 43 61 6e 63 65 6c | 0a 32 20 3d 20 4f 4b 20 |= Cancel|.2 = OK |
|00000a80| 61 6e 64 20 43 61 6e 63 | 65 6c 20 28 74 6f 20 71 |and Canc|el (to q|
|00000a90| 75 69 74 29 0a 23 49 6e | 64 65 6e 74 0a 43 61 6e |uit).#In|dent.Can|
|00000aa0| 63 65 6c 20 6f 6e 6c 79 | 20 73 65 74 73 20 74 68 |cel only| sets th|
|00000ab0| 65 20 7b 2f 7d 71 75 69 | 74 25 7b 2f 7d 20 76 61 |e {/}qui|t%{/} va|
|00000ac0| 72 69 61 62 6c 65 20 74 | 6f 20 54 52 55 45 20 61 |riable t|o TRUE a|
|00000ad0| 6e 64 20 74 68 65 20 63 | 61 6c 6c 69 6e 67 20 72 |nd the c|alling r|
|00000ae0| 6f 75 74 69 6e 65 20 77 | 69 6c 6c 20 74 68 65 72 |outine w|ill ther|
|00000af0| 65 66 6f 72 65 20 6e 65 | 65 64 20 74 6f 20 65 78 |efore ne|ed to ex|
|00000b00| 69 74 20 69 66 20 74 68 | 69 73 20 69 73 20 73 65 |it if th|is is se|
|00000b10| 74 2c 20 68 6f 77 65 76 | 65 72 20 68 6f 6c 64 69 |t, howev|er holdi|
|00000b20| 6e 67 20 53 68 69 66 74 | 2d 43 74 72 6c 2d 51 20 |ng Shift|-Ctrl-Q |
|00000b30| 77 68 69 6c 73 74 20 63 | 6c 69 63 6b 69 6e 67 20 |whilst c|licking |
|00000b40| 61 20 62 75 74 74 6f 6e | 20 77 69 6c 6c 20 65 78 |a button| will ex|
|00000b50| 69 74 20 74 68 65 20 70 | 72 6f 67 72 61 6d 2e 20 |it the p|rogram. |
|00000b60| 49 66 20 43 61 6e 63 65 | 6c 20 69 73 20 63 6c 69 |If Cance|l is cli|
|00000b70| 63 6b 65 64 2c 20 74 68 | 65 6e 20 74 68 65 20 73 |cked, th|en the s|
|00000b80| 79 73 74 65 6d 20 76 61 | 72 69 61 62 6c 65 20 45 |ystem va|riable E|
|00000b90| 72 72 6f 72 24 20 77 69 | 6c 6c 20 62 65 20 73 65 |rror$ wi|ll be se|
|00000ba0| 74 20 74 6f 20 74 68 65 | 20 65 72 72 6f 72 20 6d |t to the| error m|
|00000bb0| 65 73 73 61 67 65 2e 0a | 44 41 54 41 4c 00 00 00 |essage..|DATAL...|
|00000bc0| 50 52 4f 43 69 62 6d 65 | 6e 75 0a 23 50 61 72 65 |PROCibme|nu.#Pare|
|00000bd0| 6e 74 20 21 52 6f 6f 74 | 0a 43 72 65 61 74 65 20 |nt !Root|.Create |
|00000be0| 61 6e 20 69 63 6f 6e 62 | 61 72 20 6d 65 6e 75 20 |an iconb|ar menu |
|00000bf0| 66 72 6f 6d 20 7b 2f 7d | 69 62 6d 65 6e 75 25 7b |from {/}|ibmenu%{|
|00000c00| 2f 7d 2e 0a 44 41 54 41 | b3 00 00 00 50 52 4f 43 |/}..DATA|....PROC|
|00000c10| 6d 65 6e 75 28 6d 65 6e | 75 2c 78 2c 79 29 0a 23 |menu(men|u,x,y).#|
|00000c20| 50 61 72 65 6e 74 20 21 | 52 6f 6f 74 0a 3d 3e 09 |Parent !|Root.=>.|
|00000c30| 7b 2f 7d 6d 65 6e 75 7b | 2f 7d 09 70 6f 69 6e 74 |{/}menu{|/}.point|
|00000c40| 65 72 20 74 6f 20 6d 65 | 6e 75 0a 09 7b 2f 7d 78 |er to me|nu..{/}x|
|00000c50| 7b 2f 7d 09 09 78 20 63 | 6f 2d 6f 72 64 69 6e 61 |{/}..x c|o-ordina|
|00000c60| 74 65 2c 20 6f 72 20 2d | 31 20 66 6f 72 20 6d 6f |te, or -|1 for mo|
|00000c70| 75 73 65 20 70 6f 73 69 | 74 69 6f 6e 0a 09 7b 2f |use posi|tion..{/|
|00000c80| 7d 79 7b 2f 7d 09 09 79 | 20 63 6f 2d 6f 72 64 69 |}y{/}..y| co-ordi|
|00000c90| 6e 61 74 65 0a 09 0a 43 | 72 65 61 74 65 20 61 20 |nate...C|reate a |
|00000ca0| 6d 65 6e 75 20 61 74 20 | 63 6f 2d 6f 72 64 73 20 |menu at |co-ords |
|00000cb0| 67 69 76 65 6e 2e 0a 00 | 44 41 54 41 a5 00 00 00 |given...|DATA....|
|00000cc0| 50 52 4f 43 72 65 63 72 | 65 61 74 65 6d 65 6e 75 |PROCrecr|eatemenu|
|00000cd0| 0a 23 50 61 72 65 6e 74 | 20 21 52 6f 6f 74 0a 52 |.#Parent| !Root.R|
|00000ce0| 65 63 72 65 61 74 65 20 | 74 68 65 20 70 72 65 76 |ecreate |the prev|
|00000cf0| 69 6f 75 73 20 6d 65 6e | 75 20 63 72 65 61 74 65 |ious men|u create|
|00000d00| 64 20 69 6e 20 69 74 73 | 20 70 72 65 76 69 6f 75 |d in its| previou|
|00000d10| 73 20 6c 6f 63 61 74 69 | 6f 6e 2e 20 4f 6e 6c 79 |s locati|on. Only|
|00000d20| 20 77 6f 72 6b 73 20 69 | 66 20 50 52 4f 43 6d 65 | works i|f PROCme|
|00000d30| 6e 75 20 6f 72 20 50 52 | 4f 43 69 62 6d 65 6e 75 |nu or PR|OCibmenu|
|00000d40| 20 68 61 73 20 62 65 65 | 6e 20 63 61 6c 6c 65 64 | has bee|n called|
|00000d50| 20 70 72 65 76 69 6f 75 | 73 6c 79 2e 0a 00 00 00 | previou|sly.....|
|00000d60| 44 41 54 41 52 00 00 00 | 50 52 4f 43 63 6c 6f 73 |DATAR...|PROCclos|
|00000d70| 65 77 69 6e 28 77 69 6e | 29 0a 23 50 61 72 65 6e |ewin(win|).#Paren|
|00000d80| 74 20 21 52 6f 6f 74 0a | 3d 3e 09 7b 2f 7d 77 69 |t !Root.|=>.{/}wi|
|00000d90| 6e 7b 2f 7d 09 77 69 6e | 64 6f 77 20 68 61 6e 64 |n{/}.win|dow hand|
|00000da0| 6c 65 0a 0a 43 6c 6f 73 | 65 20 77 69 6e 64 6f 77 |le..Clos|e window|
|00000db0| 2e 0a 00 00 44 41 54 41 | 50 00 00 00 50 52 4f 43 |....DATA|P...PROC|
|00000dc0| 6f 70 65 6e 77 69 6e 28 | 77 69 6e 29 0a 23 50 61 |openwin(|win).#Pa|
|00000dd0| 72 65 6e 74 20 21 52 6f | 6f 74 0a 3d 3e 09 7b 2f |rent !Ro|ot.=>.{/|
|00000de0| 7d 77 69 6e 7b 2f 7d 09 | 77 69 6e 64 6f 77 20 68 |}win{/}.|window h|
|00000df0| 61 6e 64 6c 65 0a 0a 4f | 70 65 6e 20 77 69 6e 64 |andle..O|pen wind|
|00000e00| 6f 77 2e 0a 44 41 54 41 | c1 00 00 00 50 52 4f 43 |ow..DATA|....PROC|
|00000e10| 6f 70 65 6e 77 69 6e 61 | 74 28 77 69 6e 2c 78 2c |openwina|t(win,x,|
|00000e20| 79 29 0a 23 50 61 72 65 | 6e 74 20 21 52 6f 6f 74 |y).#Pare|nt !Root|
|00000e30| 0a 23 57 72 61 70 20 4f | 66 66 0a 3d 3e 09 7b 2f |.#Wrap O|ff.=>.{/|
|00000e40| 7d 77 69 6e 7b 2f 7d 09 | 77 69 6e 64 6f 77 20 68 |}win{/}.|window h|
|00000e50| 61 6e 64 6c 65 0a 09 7b | 2f 7d 78 7b 2f 7d 09 09 |andle..{|/}x{/}..|
|00000e60| 6c 65 66 74 20 6f 66 20 | 77 69 6e 64 6f 77 20 6f |left of |window o|
|00000e70| 6e 20 73 63 72 65 65 6e | 0a 09 7b 2f 7d 79 7b 2f |n screen|..{/}y{/|
|00000e80| 7d 09 09 74 6f 70 20 6f | 66 20 77 69 6e 64 6f 77 |}..top o|f window|
|00000e90| 20 6f 6e 20 73 63 72 65 | 65 6e 0a 0a 4f 70 65 6e | on scre|en..Open|
|00000ea0| 20 77 69 6e 64 6f 77 20 | 70 6f 73 69 74 69 6f 6e | window |position|
|00000eb0| 69 6e 67 20 74 6f 70 2d | 6c 65 66 74 20 63 6f 72 |ing top-|left cor|
|00000ec0| 6e 65 72 2e 0a 00 00 00 | 44 41 54 41 6c 00 00 00 |ner.....|DATAl...|
|00000ed0| 50 52 4f 43 6f 70 65 6e | 77 69 6e 63 65 6e 74 72 |PROCopen|wincentr|
|00000ee0| 65 28 77 69 6e 29 0a 23 | 50 61 72 65 6e 74 20 21 |e(win).#|Parent !|
|00000ef0| 52 6f 6f 74 0a 3d 3e 09 | 7b 2f 7d 77 69 6e 7b 2f |Root.=>.|{/}win{/|
|00000f00| 7d 09 77 69 6e 64 6f 77 | 20 68 61 6e 64 6c 65 0a |}.window| handle.|
|00000f10| 0a 4f 70 65 6e 20 77 69 | 6e 64 6f 77 20 63 65 6e |.Open wi|ndow cen|
|00000f20| 74 72 65 64 20 6f 6e 20 | 74 68 65 20 73 63 72 65 |tred on |the scre|
|00000f30| 65 6e 2e 0a 44 41 54 41 | 1b 01 00 00 50 52 4f 43 |en..DATA|....PROC|
|00000f40| 66 6f 72 63 65 72 65 64 | 72 61 77 28 77 69 6e 2c |forcered|raw(win,|
|00000f50| 6c 2c 74 2c 72 2c 62 29 | 0a 23 50 61 72 65 6e 74 |l,t,r,b)|.#Parent|
|00000f60| 20 21 52 6f 6f 74 0a 3d | 3e 09 7b 2f 7d 77 69 6e | !Root.=|>.{/}win|
|00000f70| 7b 2f 7d 09 77 69 6e 64 | 6f 77 20 68 61 6e 64 6c |{/}.wind|ow handl|
|00000f80| 65 2c 20 6f 72 20 2d 31 | 20 66 6f 72 20 77 68 6f |e, or -1| for who|
|00000f90| 6c 65 20 73 63 72 65 65 | 6e 0a 09 7b 2f 7d 6c 7b |le scree|n..{/}l{|
|00000fa0| 2f 7d 09 09 6c 65 66 74 | 20 6f 66 20 72 65 64 72 |/}..left| of redr|
|00000fb0| 61 77 20 62 6f 78 0a 09 | 7b 2f 7d 74 7b 2f 7d 09 |aw box..|{/}t{/}.|
|00000fc0| 09 74 6f 70 20 6f 66 20 | 72 65 64 72 61 77 20 62 |.top of |redraw b|
|00000fd0| 6f 78 0a 09 7b 2f 7d 72 | 7b 2f 7d 09 09 72 69 67 |ox..{/}r|{/}..rig|
|00000fe0| 68 74 20 6f 66 20 72 65 | 64 72 61 77 20 62 6f 78 |ht of re|draw box|
|00000ff0| 0a 09 7b 2f 7d 62 7b 2f | 7d 09 09 62 6f 74 74 6f |..{/}b{/|}..botto|
|00001000| 6d 20 6f 66 20 72 65 64 | 72 61 77 20 62 6f 78 0a |m of red|raw box.|
|00001010| 0a 52 65 64 72 61 77 20 | 74 68 65 20 73 70 65 63 |.Redraw |the spec|
|00001020| 69 66 69 65 64 20 77 69 | 6e 64 6f 77 20 77 69 74 |ified wi|ndow wit|
|00001030| 68 69 6e 20 74 68 65 20 | 73 70 65 63 69 66 69 65 |hin the |specifie|
|00001040| 64 20 63 6f 2d 6f 72 64 | 69 6e 61 74 65 73 2e 00 |d co-ord|inates..|
|00001050| 44 41 54 41 e4 01 00 00 | 50 52 4f 43 77 69 6e 73 |DATA....|PROCwins|
|00001060| 65 74 65 78 74 65 6e 74 | 28 77 69 6e 2c 6c 2c 74 |etextent|(win,l,t|
|00001070| 2c 72 2c 62 29 0a 23 50 | 61 72 65 6e 74 20 21 52 |,r,b).#P|arent !R|
|00001080| 6f 6f 74 0a 3d 3e 09 7b | 2f 7d 77 69 6e 7b 2f 7d |oot.=>.{|/}win{/}|
|00001090| 09 77 69 6e 64 6f 77 20 | 68 61 6e 64 6c 65 0a 09 |.window |handle..|
|000010a0| 7b 2f 7d 6c 7b 2f 7d 09 | 09 6c 65 66 74 20 6f 66 |{/}l{/}.|.left of|
|000010b0| 20 65 78 74 65 6e 74 0a | 09 7b 2f 7d 74 7b 2f 7d | extent.|.{/}t{/}|
|000010c0| 09 09 74 6f 70 20 6f 66 | 20 65 78 74 65 6e 74 0a |..top of| extent.|
|000010d0| 09 7b 2f 7d 72 7b 2f 7d | 09 09 72 69 67 68 74 20 |.{/}r{/}|..right |
|000010e0| 6f 66 20 65 78 74 65 6e | 74 0a 09 7b 2f 7d 62 7b |of exten|t..{/}b{|
|000010f0| 2f 7d 09 09 62 6f 74 74 | 6f 6d 20 6f 66 20 65 78 |/}..bott|om of ex|
|00001100| 74 65 6e 74 0a 09 0a 53 | 65 74 20 74 68 65 20 6d |tent...S|et the m|
|00001110| 61 78 69 6d 75 6d 20 65 | 78 74 65 6e 74 20 6f 66 |aximum e|xtent of|
|00001120| 20 77 69 6e 64 6f 77 20 | 28 54 57 41 29 2e 20 49 | window |(TWA). I|
|00001130| 66 20 61 6e 79 20 6f 66 | 20 74 68 65 20 76 61 72 |f any of| the var|
|00001140| 69 61 62 6c 65 73 20 61 | 72 65 20 2d 31 20 74 68 |iables a|re -1 th|
|00001150| 65 6e 20 74 68 65 79 20 | 61 72 65 20 6e 6f 74 20 |en they |are not |
|00001160| 63 68 61 6e 67 65 64 2e | 0a 0a 49 6e 20 57 69 6d |changed.|..In Wim|
|00001170| 70 4c 69 62 32 20 74 68 | 69 73 20 75 73 65 73 20 |pLib2 th|is uses |
|00001180| 3c 57 69 6d 70 5f 47 65 | 74 57 69 6e 64 6f 77 49 |<Wimp_Ge|tWindowI|
|00001190| 6e 66 6f 3d 3e 57 69 6d | 70 3a 57 69 6d 70 5f 47 |nfo=>Wim|p:Wimp_G|
|000011a0| 65 74 57 69 6e 64 6f 77 | 49 6e 66 6f 3e 20 77 68 |etWindow|Info> wh|
|000011b0| 69 63 68 20 72 65 74 75 | 72 6e 73 20 74 68 65 20 |ich retu|rns the |
|000011c0| 65 6e 74 69 72 65 20 77 | 69 6e 64 6f 77 20 62 6c |entire w|indow bl|
|000011d0| 6f 63 6b 20 69 6e 63 6c | 75 64 69 6e 67 20 69 63 |ock incl|uding ic|
|000011e0| 6f 6e 73 20 74 6f 20 62 | 25 2c 20 74 68 65 72 65 |ons to b|%, there|
|000011f0| 66 6f 72 65 20 69 74 20 | 69 73 20 76 69 74 61 6c |fore it |is vital|
|00001200| 20 74 68 61 74 20 74 68 | 65 20 62 6c 6f 63 6b 20 | that th|e block |
|00001210| 68 61 73 20 73 75 66 66 | 69 63 69 65 6e 74 20 73 |has suff|icient s|
|00001220| 70 61 63 65 20 74 6f 20 | 73 74 6f 72 65 20 74 68 |pace to |store th|
|00001230| 65 6d 2e 0a 44 41 54 41 | 96 01 00 00 50 52 4f 43 |em..DATA|....PROC|
|00001240| 6f 70 65 6e 77 69 6e 74 | 6f 28 77 69 6e 2c 6c 2c |openwint|o(win,l,|
|00001250| 74 2c 72 2c 62 29 0a 23 | 50 61 72 65 6e 74 20 21 |t,r,b).#|Parent !|
|00001260| 52 6f 6f 74 0a 3d 3e 09 | 7b 2f 7d 77 69 6e 7b 2f |Root.=>.|{/}win{/|
|00001270| 7d 09 77 69 6e 64 6f 77 | 20 68 61 6e 64 6c 65 0a |}.window| handle.|
|00001280| 09 7b 2f 7d 6c 7b 2f 7d | 09 09 6c 65 66 74 20 6f |.{/}l{/}|..left o|
|00001290| 66 20 56 57 41 20 69 6e | 20 54 57 41 0a 09 7b 2f |f VWA in| TWA..{/|
|000012a0| 7d 74 7b 2f 7d 09 09 74 | 6f 70 20 6f 66 20 56 57 |}t{/}..t|op of VW|
|000012b0| 41 20 69 6e 20 54 57 41 | 2e 0a 09 7b 2f 7d 72 7b |A in TWA|...{/}r{|
|000012c0| 2f 7d 09 09 72 69 67 68 | 74 20 6f 66 20 56 57 41 |/}..righ|t of VWA|
|000012d0| 20 69 6e 20 54 57 41 0a | 09 7b 2f 7d 62 7b 2f 7d | in TWA.|.{/}b{/}|
|000012e0| 09 09 62 6f 74 74 6f 6d | 20 6f 66 20 56 57 41 20 |..bottom| of VWA |
|000012f0| 69 6e 20 54 57 41 2e 0a | 0a 4f 70 65 6e 20 77 69 |in TWA..|.Open wi|
|00001300| 6e 64 6f 77 20 61 74 20 | 70 6f 73 69 74 69 6f 6e |ndow at |position|
|00001310| 20 77 69 74 68 69 6e 20 | 54 57 41 2e 0a 0a 57 69 | within |TWA...Wi|
|00001320| 6e 64 6f 77 20 64 6f 65 | 73 20 6e 6f 74 20 6d 6f |ndow doe|s not mo|
|00001330| 76 65 2c 20 62 75 74 20 | 69 74 73 20 73 69 7a 65 |ve, but |its size|
|00001340| 20 69 73 20 61 6c 74 65 | 72 65 64 20 74 6f 20 64 | is alte|red to d|
|00001350| 69 66 66 65 72 65 6e 63 | 65 20 62 65 74 77 65 65 |ifferenc|e betwee|
|00001360| 6e 20 6c 26 72 20 61 6e | 64 20 74 26 62 2e 20 54 |n l&r an|d t&b. T|
|00001370| 6f 70 2d 6c 65 66 74 20 | 6f 66 20 56 57 41 20 69 |op-left |of VWA i|
|00001380| 73 20 70 6f 73 69 74 69 | 6f 6e 65 64 20 74 6f 20 |s positi|oned to |
|00001390| 74 6c 2e 0a 49 66 20 72 | 62 20 3d 20 2d 31 20 74 |tl..If r|b = -1 t|
|000013a0| 68 65 6e 20 6e 6f 20 61 | 63 74 75 61 6c 20 73 69 |hen no a|ctual si|
|000013b0| 7a 65 20 63 68 61 6e 67 | 65 2c 20 6a 75 73 74 20 |ze chang|e, just |
|000013c0| 70 6f 73 69 74 69 6f 6e | 2e 0a 00 00 44 41 54 41 |position|....DATA|
|000013d0| 7c 00 00 00 50 52 4f 43 | 72 65 6c 65 61 73 65 66 ||...PROC|releasef|
|000013e0| 6f 6e 74 6d 65 6e 75 0a | 23 50 61 72 65 6e 74 20 |ontmenu.|#Parent |
|000013f0| 21 52 6f 6f 74 0a 52 65 | 6c 65 61 73 65 20 6d 65 |!Root.Re|lease me|
|00001400| 6d 6f 72 79 20 75 73 65 | 64 20 62 79 20 3c 46 4e |mory use|d by <FN|
|00001410| 67 65 74 66 6f 6e 74 6d | 65 6e 75 3e 2e 0a 0a 54 |getfontm|enu>...T|
|00001420| 68 69 73 20 6d 75 73 74 | 20 62 65 20 64 6f 6e 65 |his must| be done|
|00001430| 20 62 65 66 6f 72 65 20 | 61 20 70 72 6f 67 72 61 | before |a progra|
|00001440| 6d 20 65 78 69 74 73 2e | 44 41 54 41 cc 00 00 00 |m exits.|DATA....|
|00001450| 50 52 4f 43 6d 65 6e 75 | 74 69 63 6b 28 6d 65 6e |PROCmenu|tick(men|
|00001460| 75 2c 6e 75 6d 62 65 72 | 2c 74 6f 67 67 6c 65 29 |u,number|,toggle)|
|00001470| 0a 23 50 61 72 65 6e 74 | 20 21 52 6f 6f 74 0a 3d |.#Parent| !Root.=|
|00001480| 3e 09 7b 2f 7d 6d 65 6e | 75 7b 2f 7d 09 70 6f 69 |>.{/}men|u{/}.poi|
|00001490| 6e 74 65 72 20 74 6f 20 | 6d 65 6e 75 20 62 6c 6f |nter to |menu blo|
|000014a0| 63 6b 0a 09 7b 2f 7d 6e | 75 6d 62 65 72 7b 2f 7d |ck..{/}n|umber{/}|
|000014b0| 09 6f 70 74 69 6f 6e 20 | 74 6f 20 63 68 61 6e 67 |.option |to chang|
|000014c0| 65 0a 09 7b 2f 7d 74 6f | 67 67 6c 65 7b 2f 7d 09 |e..{/}to|ggle{/}.|
|000014d0| 3c 66 6c 61 67 3d 3e 74 | 6f 67 67 6c 65 66 6c 61 |<flag=>t|ogglefla|
|000014e0| 67 3e 20 66 6f 72 20 77 | 68 65 74 68 65 72 20 74 |g> for w|hether t|
|000014f0| 6f 20 74 69 63 6b 0a 0a | 54 69 63 6b 2f 75 6e 74 |o tick..|Tick/unt|
|00001500| 69 63 6b 20 6f 70 74 69 | 6f 6e 20 6f 6e 20 6d 65 |ick opti|on on me|
|00001510| 6e 75 2e 0a 44 41 54 41 | cf 00 00 00 50 52 4f 43 |nu..DATA|....PROC|
|00001520| 6d 65 6e 75 73 68 61 64 | 65 28 6d 65 6e 75 2c 6e |menushad|e(menu,n|
|00001530| 75 6d 62 65 72 2c 74 6f | 67 67 6c 65 29 0a 23 50 |umber,to|ggle).#P|
|00001540| 61 72 65 6e 74 20 21 52 | 6f 6f 74 0a 3d 3e 09 7b |arent !R|oot.=>.{|
|00001550| 2f 7d 6d 65 6e 75 7b 2f | 7d 09 70 6f 69 6e 74 65 |/}menu{/|}.pointe|
|00001560| 72 20 74 6f 20 6d 65 6e | 75 20 62 6c 6f 63 6b 0a |r to men|u block.|
|00001570| 09 7b 2f 7d 6e 75 6d 62 | 65 72 7b 2f 7d 09 6f 70 |.{/}numb|er{/}.op|
|00001580| 74 69 6f 6e 20 74 6f 20 | 61 6c 74 65 72 0a 09 7b |tion to |alter..{|
|00001590| 2f 7d 74 6f 67 67 6c 65 | 7b 2f 7d 09 3c 66 6c 61 |/}toggle|{/}.<fla|
|000015a0| 67 3d 3e 74 6f 67 67 6c | 65 66 6c 61 67 3e 20 66 |g=>toggl|eflag> f|
|000015b0| 6f 72 20 77 68 65 74 68 | 65 72 20 74 6f 20 73 68 |or wheth|er to sh|
|000015c0| 61 64 65 0a 0a 53 68 61 | 64 65 2f 75 6e 73 68 61 |ade..Sha|de/unsha|
|000015d0| 64 65 20 6f 70 74 69 6f | 6e 20 6f 6e 20 6d 65 6e |de optio|n on men|
|000015e0| 75 2e 0a 00 44 41 54 41 | ef 00 00 00 50 52 4f 43 |u...DATA|....PROC|
|000015f0| 73 65 74 6d 65 6e 75 74 | 65 78 74 28 6d 65 6e 75 |setmenut|ext(menu|
|00001600| 2c 6e 75 6d 62 65 72 2c | 74 65 78 74 24 29 0a 23 |,number,|text$).#|
|00001610| 50 61 72 65 6e 74 20 21 | 52 6f 6f 74 0a 3d 3e 09 |Parent !|Root.=>.|
|00001620| 7b 2f 7d 6d 65 6e 75 7b | 2f 7d 09 70 6f 69 6e 74 |{/}menu{|/}.point|
|00001630| 65 72 20 74 6f 20 6d 65 | 6e 75 20 62 6c 6f 63 6b |er to me|nu block|
|00001640| 0a 09 7b 2f 7d 6e 75 6d | 62 65 72 7b 2f 7d 09 6f |..{/}num|ber{/}.o|
|00001650| 70 74 69 6f 6e 20 6e 75 | 6d 62 65 72 0a 09 7b 2f |ption nu|mber..{/|
|00001660| 7d 74 65 78 74 24 7b 2f | 7d 09 6e 65 77 20 74 65 |}text${/|}.new te|
|00001670| 78 74 0a 0a 53 65 74 20 | 74 68 65 20 74 65 78 74 |xt..Set |the text|
|00001680| 20 66 6f 72 20 6f 70 74 | 69 6f 6e 20 6f 6e 20 6d | for opt|ion on m|
|00001690| 65 6e 75 2e 20 54 65 78 | 74 20 6d 75 73 74 20 66 |enu. Tex|t must f|
|000016a0| 69 74 20 69 6e 74 6f 20 | 73 70 61 63 65 20 61 6c |it into |space al|
|000016b0| 6c 6f 63 61 74 65 64 20 | 2d 20 6e 6f 20 63 68 65 |located |- no che|
|000016c0| 63 6b 73 20 61 72 65 20 | 70 65 72 66 6f 72 6d 65 |cks are |performe|
|000016d0| 64 2e 0a 00 44 41 54 41 | 46 01 00 00 50 52 4f 43 |d...DATA|F...PROC|
|000016e0| 64 65 6c 65 74 65 69 63 | 6f 6e 28 77 69 6e 2c 69 |deleteic|on(win,i|
|000016f0| 63 6f 6e 29 0a 23 50 61 | 72 65 6e 74 20 21 52 6f |con).#Pa|rent !Ro|
|00001700| 6f 74 0a 3d 3e 09 7b 2f | 7d 77 69 6e 7b 2f 7d 09 |ot.=>.{/|}win{/}.|
|00001710| 77 69 6e 64 6f 77 20 68 | 61 6e 64 6c 65 0a 09 7b |window h|andle..{|
|00001720| 2f 7d 69 63 6f 6e 7b 2f | 7d 09 69 63 6f 6e 20 68 |/}icon{/|}.icon h|
|00001730| 61 6e 64 6c 65 0a 0a 44 | 65 6c 65 74 65 20 69 63 |andle..D|elete ic|
|00001740| 6f 6e 20 66 72 6f 6d 20 | 77 69 6e 64 6f 77 2e 0a |on from |window..|
|00001750| 0a 4e 6f 74 65 3a 20 54 | 68 65 20 69 63 6f 6e 20 |.Note: T|he icon |
|00001760| 69 73 20 64 65 6c 65 74 | 65 64 2c 20 62 75 74 20 |is delet|ed, but |
|00001770| 73 70 61 63 65 20 69 73 | 20 73 74 69 6c 6c 20 61 |space is| still a|
|00001780| 6c 6c 6f 63 61 74 65 64 | 20 74 6f 20 69 74 20 69 |llocated| to it i|
|00001790| 6e 20 74 68 65 20 77 69 | 6e 64 6f 77 20 62 6c 6f |n the wi|ndow blo|
|000017a0| 63 6b 2c 20 68 65 6e 63 | 65 20 69 66 20 61 20 6e |ck, henc|e if a n|
|000017b0| 65 77 20 69 63 6f 6e 20 | 69 73 20 63 72 65 61 74 |ew icon |is creat|
|000017c0| 65 64 20 74 68 65 20 6e | 65 77 20 69 63 6f 6e 20 |ed the n|ew icon |
|000017d0| 77 69 6c 6c 20 74 61 6b | 65 20 74 68 65 20 73 70 |will tak|e the sp|
|000017e0| 61 63 65 20 61 6c 6c 6f | 63 61 74 65 64 20 74 6f |ace allo|cated to|
|000017f0| 20 74 68 65 20 70 72 65 | 76 69 6f 75 73 20 69 63 | the pre|vious ic|
|00001800| 6f 6e 20 61 6e 64 20 68 | 65 6e 63 65 20 69 74 27 |on and h|ence it'|
|00001810| 73 20 68 61 6e 64 6c 65 | 2e 0a 00 00 44 41 54 41 |s handle|....DATA|
|00001820| cb 01 00 00 50 52 4f 43 | 72 65 61 64 68 65 6c 70 |....PROC|readhelp|
|00001830| 28 77 69 6e 2c 69 63 6f | 6e 2c 74 6f 29 0a 23 50 |(win,ico|n,to).#P|
|00001840| 61 72 65 6e 74 20 21 52 | 6f 6f 74 0a 3d 3e 09 7b |arent !R|oot.=>.{|
|00001850| 2f 7d 77 69 6e 7b 2f 7d | 09 77 69 6e 64 6f 77 20 |/}win{/}|.window |
|00001860| 68 61 6e 64 6c 65 0a 09 | 7b 2f 7d 69 63 6f 6e 7b |handle..|{/}icon{|
|00001870| 2f 7d 09 69 63 6f 6e 20 | 68 61 6e 64 6c 65 0a 09 |/}.icon |handle..|
|00001880| 7b 2f 7d 74 6f 7b 2f 7d | 09 74 61 73 6b 20 68 61 |{/}to{/}|.task ha|
|00001890| 6e 64 6c 65 20 74 6f 20 | 73 65 6e 64 20 6d 65 73 |ndle to |send mes|
|000018a0| 73 61 67 65 20 74 6f 0a | 0a 52 65 61 64 20 68 65 |sage to.|.Read he|
|000018b0| 6c 70 20 66 72 6f 6d 20 | 61 70 70 6c 69 63 61 74 |lp from |applicat|
|000018c0| 69 6f 6e 20 61 6e 64 20 | 73 65 6e 64 20 69 74 20 |ion and |send it |
|000018d0| 62 61 63 6b 2e 0a 0a 55 | 73 75 61 6c 6c 79 20 63 |back...U|sually c|
|000018e0| 61 6c 6c 65 64 20 77 69 | 74 68 20 0a 7b 66 43 6f |alled wi|th .{fCo|
|000018f0| 64 65 7d 52 45 53 54 4f | 52 45 20 64 61 74 61 73 |de}RESTO|RE datas|
|00001900| 74 61 74 65 6d 65 6e 74 | 73 3a 20 50 52 4f 43 72 |tatement|s: PROCr|
|00001910| 65 61 64 68 65 6c 70 28 | 62 25 21 33 32 2c 62 25 |eadhelp(|b%!32,b%|
|00001920| 21 33 36 2c 62 25 21 34 | 29 7b 66 7d 2e 0a 4d 65 |!36,b%!4|){f}..Me|
|00001930| 6e 75 73 20 61 72 65 20 | 72 65 73 70 6f 6e 64 65 |nus are |responde|
|00001940| 64 20 74 6f 20 63 6f 72 | 72 65 63 74 6c 79 20 61 |d to cor|rectly a|
|00001950| 6e 64 20 67 69 76 65 20 | 6d 65 73 73 61 67 65 73 |nd give |messages|
|00001960| 20 75 6e 64 65 72 20 52 | 4f 33 2e 20 53 65 65 20 | under R|O3. See |
|00001970| 3c 50 52 4f 43 73 65 6e | 64 68 65 6c 70 3e 20 66 |<PROCsen|dhelp> f|
|00001980| 6f 72 20 6d 6f 72 65 20 | 69 6e 66 6f 72 6d 61 74 |or more |informat|
|00001990| 69 6f 6e 2e 0a 57 69 6d | 70 4c 69 62 32 20 68 61 |ion..Wim|pLib2 ha|
|000019a0| 73 20 6e 6f 20 73 75 70 | 70 6f 72 74 20 66 6f 72 |s no sup|port for|
|000019b0| 20 6d 65 6e 75 20 68 65 | 6c 70 2e 0a 0a 43 6c 69 | menu he|lp...Cli|
|000019c0| 63 6b 20 3c 68 65 72 65 | 3d 3e 68 65 6c 70 66 6f |ck <here|=>helpfo|
|000019d0| 72 6d 61 74 3e 20 66 6f | 72 20 44 41 54 41 20 66 |rmat> fo|r DATA f|
|000019e0| 6f 72 6d 61 74 2e 0a 00 | 44 41 54 41 c8 01 00 00 |ormat...|DATA....|
|000019f0| 50 52 4f 43 73 65 6e 64 | 68 65 6c 70 28 68 65 6c |PROCsend|help(hel|
|00001a00| 70 24 2c 74 6f 29 0a 23 | 50 61 72 65 6e 74 20 21 |p$,to).#|Parent !|
|00001a10| 52 6f 6f 74 0a 3d 3e 09 | 7b 2f 7d 68 65 6c 70 24 |Root.=>.|{/}help$|
|00001a20| 7b 2f 7d 09 4d 65 73 73 | 61 67 65 20 74 6f 20 73 |{/}.Mess|age to s|
|00001a30| 65 6e 64 0a 09 7b 2f 7d | 74 6f 7b 2f 7d 09 74 61 |end..{/}|to{/}.ta|
|00001a40| 73 6b 20 74 6f 20 73 65 | 6e 64 20 74 6f 0a 0a 53 |sk to se|nd to..S|
|00001a50| 65 6e 64 20 68 65 6c 70 | 20 74 6f 20 61 70 70 6c |end help| to appl|
|00001a60| 69 63 61 74 69 6f 6e 2e | 0a 0a 3c 53 70 65 63 69 |ication.|..<Speci|
|00001a70| 61 6c 20 63 6f 64 65 73 | 3d 3e 57 69 6d 70 3a 57 |al codes|=>Wimp:W|
|00001a80| 69 6d 70 5f 55 4d 35 30 | 33 43 6f 64 65 73 3e 20 |imp_UM50|3Codes> |
|00001a90| 6d 61 79 20 62 65 20 75 | 73 65 64 20 75 6e 64 65 |may be u|sed unde|
|00001aa0| 72 20 52 4f 33 20 21 48 | 65 6c 70 20 6f 72 20 21 |r RO3 !H|elp or !|
|00001ab0| 51 75 69 63 6b 48 6c 70 | 2e 20 49 6e 20 61 64 64 |QuickHlp|. In add|
|00001ac0| 69 74 69 6f 6e 20 74 6f | 20 74 68 65 20 21 48 65 |ition to| the !He|
|00001ad0| 6c 70 20 63 6f 64 65 73 | 20 3a 0a a4 53 74 72 69 |lp codes| :..Stri|
|00001ae0| 6e 67 24 a4 20 77 69 6c | 6c 20 69 6e 63 6c 75 64 |ng$. wil|l includ|
|00001af0| 65 20 73 74 72 69 6e 67 | 20 7b 2f 7d 73 74 72 69 |e string| {/}stri|
|00001b00| 6e 67 24 7b 2f 7d 0a 3e | 74 6f 6b 65 6e 5b 3a 73 |ng${/}.>|token[:s|
|00001b10| 75 62 73 74 31 5b 3a 73 | 75 62 73 74 32 5b 3a 73 |ubst1[:s|ubst2[:s|
|00001b20| 75 62 73 74 33 5d 5d 5d | 20 77 69 6c 6c 20 6c 6f |ubst3]]]| will lo|
|00001b30| 6f 6b 2d 75 70 20 74 68 | 65 20 74 6f 6b 65 6e 20 |ok-up th|e token |
|00001b40| 69 6e 20 74 68 65 20 4d | 65 73 73 61 67 65 54 72 |in the M|essageTr|
|00001b50| 61 6e 73 20 66 69 6c 65 | 2e 0a 0a 49 66 20 74 68 |ans file|...If th|
|00001b60| 65 20 69 73 20 6e 6f 20 | 66 75 6c 6c 20 73 74 6f |e is no |full sto|
|00001b70| 70 20 61 74 20 74 68 65 | 20 65 6e 64 20 6f 66 20 |p at the| end of |
|00001b80| 74 68 65 20 6c 69 6e 65 | 20 28 6f 72 20 62 65 66 |the line| (or bef|
|00001b90| 6f 72 65 20 7c 4d 29 20 | 74 68 65 6e 20 6f 6e 65 |ore |M) |then one|
|00001ba0| 20 77 69 6c 6c 20 62 65 | 20 61 64 64 65 64 2e 0a | will be| added..|
|00001bb0| 44 41 54 41 61 00 00 00 | 50 52 4f 43 6f 70 65 6e |DATAa...|PROCopen|
|00001bc0| 6d 65 73 73 61 67 65 73 | 0a 23 50 61 72 65 6e 74 |messages|.#Parent|
|00001bd0| 20 21 52 6f 6f 74 0a 4f | 70 65 6e 20 61 20 4d 65 | !Root.O|pen a Me|
|00001be0| 73 73 61 67 65 54 72 61 | 6e 73 20 66 69 6c 65 20 |ssageTra|ns file |
|00001bf0| 28 41 70 70 64 69 72 24 | 2b 22 2e 4d 65 73 73 61 |(Appdir$|+".Messa|
|00001c00| 67 65 73 22 29 20 66 6f | 72 20 69 6e 70 75 74 2e |ges") fo|r input.|
|00001c10| 0a 00 00 00 44 41 54 41 | 6f 00 00 00 50 52 4f 43 |....DATA|o...PROC|
|00001c20| 63 6c 6f 73 65 6d 65 73 | 73 61 67 65 73 0a 23 50 |closemes|sages.#P|
|00001c30| 61 72 65 6e 74 20 21 52 | 6f 6f 74 0a 43 6c 6f 73 |arent !R|oot.Clos|
|00001c40| 65 20 74 68 65 20 4d 65 | 73 73 61 67 65 54 72 61 |e the Me|ssageTra|
|00001c50| 6e 73 20 66 69 6c 65 20 | 70 72 65 76 69 6f 75 73 |ns file |previous|
|00001c60| 6c 79 20 6f 70 65 6e 65 | 64 20 77 69 74 68 20 3c |ly opene|d with <|
|00001c70| 50 52 4f 43 6f 70 65 6e | 6d 65 73 73 61 67 65 73 |PROCopen|messages|
|00001c80| 3e 2e 0a 00 44 41 54 41 | a0 00 00 00 50 52 4f 43 |>...DATA|....PROC|
|00001c90| 72 65 6c 65 61 73 65 66 | 74 6d 65 6e 75 0a 23 50 |releasef|tmenu.#P|
|00001ca0| 61 72 65 6e 74 20 21 52 | 6f 6f 74 0a 52 65 6c 65 |arent !R|oot.Rele|
|00001cb0| 61 73 65 73 20 74 68 65 | 20 73 70 61 63 65 20 75 |ases the| space u|
|00001cc0| 73 65 64 20 62 79 20 74 | 68 65 20 66 69 6c 65 74 |sed by t|he filet|
|00001cd0| 79 70 65 20 6d 65 6e 75 | 20 61 73 20 63 72 65 61 |ype menu| as crea|
|00001ce0| 74 65 64 20 62 79 20 3c | 46 4e 63 72 65 61 74 65 |ted by <|FNcreate|
|00001cf0| 66 74 6d 65 6e 75 3e 2e | 0a 0a 54 68 69 73 20 6d |ftmenu>.|..This m|
|00001d00| 75 73 74 20 62 65 20 64 | 6f 6e 65 20 62 65 66 6f |ust be d|one befo|
|00001d10| 72 65 20 61 20 70 72 6f | 67 72 61 6d 20 65 78 69 |re a pro|gram exi|
|00001d20| 74 73 2e 0a 44 41 54 41 | c4 00 00 00 50 52 4f 43 |ts..DATA|....PROC|
|00001d30| 69 63 6f 6e 73 68 61 64 | 65 28 77 69 6e 2c 69 63 |iconshad|e(win,ic|
|00001d40| 6f 6e 2c 74 6f 67 67 6c | 65 29 0a 23 50 61 72 65 |on,toggl|e).#Pare|
|00001d50| 6e 74 20 21 52 6f 6f 74 | 0a 3d 3e 09 7b 2f 7d 77 |nt !Root|.=>.{/}w|
|00001d60| 69 6e 64 6f 77 7b 2f 7d | 09 77 69 6e 64 6f 77 20 |indow{/}|.window |
|00001d70| 68 61 6e 64 6c 65 0a 09 | 7b 2f 7d 69 63 6f 6e 7b |handle..|{/}icon{|
|00001d80| 2f 7d 09 69 63 6f 6e 20 | 68 61 6e 64 6c 65 0a 09 |/}.icon |handle..|
|00001d90| 7b 2f 7d 74 6f 67 67 6c | 65 7b 2f 7d 09 3c 66 6c |{/}toggl|e{/}.<fl|
|00001da0| 61 67 3d 3e 74 6f 67 67 | 6c 65 66 6c 61 67 3e 20 |ag=>togg|leflag> |
|00001db0| 66 6f 72 20 77 68 65 74 | 68 65 72 20 74 6f 20 73 |for whet|her to s|
|00001dc0| 68 61 64 65 0a 0a 53 68 | 61 64 65 2c 20 75 6e 73 |hade..Sh|ade, uns|
|00001dd0| 68 61 64 65 20 6f 72 20 | 74 6f 67 67 6c 65 20 61 |hade or |toggle a|
|00001de0| 6e 20 69 63 6f 6e 2e 0a | 44 41 54 41 c7 00 00 00 |n icon..|DATA....|
|00001df0| 50 52 4f 43 69 63 6f 6e | 73 74 61 74 65 28 77 69 |PROCicon|state(wi|
|00001e00| 6e 2c 69 63 6f 6e 2c 74 | 6f 67 67 6c 65 29 0a 23 |n,icon,t|oggle).#|
|00001e10| 50 61 72 65 6e 74 20 21 | 52 6f 6f 74 0a 3d 3e 09 |Parent !|Root.=>.|
|00001e20| 7b 2f 7d 77 69 6e 64 6f | 77 7b 2f 7d 09 77 69 6e |{/}windo|w{/}.win|
|00001e30| 64 6f 77 20 68 61 6e 64 | 6c 65 0a 09 7b 2f 7d 69 |dow hand|le..{/}i|
|00001e40| 63 6f 6e 7b 2f 7d 09 69 | 63 6f 6e 20 68 61 6e 64 |con{/}.i|con hand|
|00001e50| 6c 65 0a 09 7b 2f 7d 74 | 6f 67 67 6c 65 7b 2f 7d |le..{/}t|oggle{/}|
|00001e60| 09 3c 66 6c 61 67 3d 3e | 74 6f 67 67 6c 65 66 6c |.<flag=>|togglefl|
|00001e70| 61 67 3e 20 66 6f 72 20 | 77 68 65 74 68 65 72 20 |ag> for |whether |
|00001e80| 74 6f 20 73 65 6c 65 63 | 74 0a 0a 53 65 6c 65 63 |to selec|t..Selec|
|00001e90| 74 2c 20 75 6e 73 65 6c | 65 63 74 20 6f 72 20 74 |t, unsel|ect or t|
|00001ea0| 6f 67 67 6c 65 20 61 6e | 20 69 63 6f 6e 2e 0a 00 |oggle an| icon...|
|00001eb0| 44 41 54 41 0c 01 00 00 | 50 52 4f 43 73 65 74 69 |DATA....|PROCseti|
|00001ec0| 63 6f 6e 62 69 74 28 77 | 69 6e 2c 69 63 6f 6e 2c |conbit(w|in,icon,|
|00001ed0| 62 69 74 2c 74 6f 67 67 | 6c 65 29 0a 23 50 61 72 |bit,togg|le).#Par|
|00001ee0| 65 6e 74 20 21 52 6f 6f | 74 0a 3d 3e 09 7b 2f 7d |ent !Roo|t.=>.{/}|
|00001ef0| 77 69 6e 64 6f 77 7b 2f | 7d 09 77 69 6e 64 6f 77 |window{/|}.window|
|00001f00| 20 68 61 6e 64 6c 65 0a | 09 7b 2f 7d 69 63 6f 6e | handle.|.{/}icon|
|00001f10| 7b 2f 7d 09 69 63 6f 6e | 20 68 61 6e 64 6c 65 0a |{/}.icon| handle.|
|00001f20| 09 7b 2f 7d 62 69 74 7b | 2f 7d 09 3c 62 69 74 3d |.{/}bit{|/}.<bit=|
|00001f30| 3e 57 69 6d 70 3a 57 69 | 6d 70 5f 69 63 6f 6e 66 |>Wimp:Wi|mp_iconf|
|00001f40| 6c 61 67 73 3e 20 74 6f | 20 63 68 61 6e 67 65 0a |lags> to| change.|
|00001f50| 09 7b 2f 7d 74 6f 67 67 | 6c 65 7b 2f 7d 09 3c 66 |.{/}togg|le{/}.<f|
|00001f60| 6c 61 67 3d 3e 74 6f 67 | 67 6c 65 66 6c 61 67 3e |lag=>tog|gleflag>|
|00001f70| 20 66 6f 72 20 77 68 65 | 74 68 65 72 20 74 6f 20 | for whe|ther to |
|00001f80| 73 68 61 64 65 0a 0a 53 | 65 74 2f 75 6e 73 65 74 |shade..S|et/unset|
|00001f90| 2f 74 6f 67 67 6c 65 20 | 61 20 70 61 72 74 69 63 |/toggle |a partic|
|00001fa0| 75 6c 61 72 20 62 69 74 | 20 69 6e 20 61 6e 20 69 |ular bit| in an i|
|00001fb0| 63 6f 6e 27 73 20 66 6c | 61 67 73 0a 44 41 54 41 |con's fl|ags.DATA|
|00001fc0| 7d 00 00 00 50 52 4f 43 | 72 65 64 72 61 77 69 63 |}...PROC|redrawic|
|00001fd0| 6f 6e 28 77 69 6e 2c 69 | 63 6f 6e 29 0a 23 50 61 |on(win,i|con).#Pa|
|00001fe0| 72 65 6e 74 20 21 52 6f | 6f 74 0a 3d 3e 09 7b 2f |rent !Ro|ot.=>.{/|
|00001ff0| 7d 77 69 6e 7b 2f 7d 09 | 77 69 6e 64 6f 77 20 68 |}win{/}.|window h|
|00002000| 61 6e 64 6c 65 0a 09 7b | 2f 7d 69 63 6f 6e 7b 2f |andle..{|/}icon{/|
|00002010| 7d 09 69 63 6f 6e 20 68 | 61 6e 64 6c 65 0a 0a 52 |}.icon h|andle..R|
|00002020| 65 64 72 61 77 20 74 68 | 65 20 73 70 65 63 69 66 |edraw th|e specif|
|00002030| 69 65 64 20 69 63 6f 6e | 2e 00 00 00 44 41 54 41 |ied icon|....DATA|
|00002040| f2 00 00 00 50 52 4f 43 | 73 65 74 69 63 6f 6e 74 |....PROC|seticont|
|00002050| 65 78 74 28 77 69 6e 2c | 69 63 6f 6e 2c 74 65 78 |ext(win,|icon,tex|
|00002060| 74 24 29 0a 23 50 61 72 | 65 6e 74 20 21 52 6f 6f |t$).#Par|ent !Roo|
|00002070| 74 0a 3d 3e 09 7b 2f 7d | 77 69 6e 7b 2f 7d 09 77 |t.=>.{/}|win{/}.w|
|00002080| 69 6e 64 6f 77 20 68 61 | 6e 64 6c 65 0a 09 7b 2f |indow ha|ndle..{/|
|00002090| 7d 69 63 6f 6e 7b 2f 7d | 09 69 63 6f 6e 20 68 61 |}icon{/}|.icon ha|
|000020a0| 6e 64 6c 65 0a 09 7b 2f | 7d 74 65 78 74 24 7b 2f |ndle..{/|}text${/|
|000020b0| 7d 09 6e 65 77 20 74 65 | 78 74 0a 0a 53 65 74 20 |}.new te|xt..Set |
|000020c0| 69 63 6f 6e 27 73 20 74 | 65 78 74 20 73 74 72 69 |icon's t|ext stri|
|000020d0| 6e 67 20 28 6f 6e 6c 79 | 20 66 6f 72 20 69 6e 64 |ng (only| for ind|
|000020e0| 69 72 65 63 74 65 64 20 | 73 70 72 69 74 65 73 29 |irected |sprites)|
|000020f0| 2e 0a 0a 4e 6f 74 65 3a | 20 44 6f 20 6e 6f 74 20 |...Note:| Do not |
|00002100| 6f 76 65 72 72 75 6e 20 | 6d 61 78 69 6d 75 6d 20 |overrun |maximum |
|00002110| 6c 65 6e 67 74 68 20 6f | 66 20 69 6e 64 69 72 65 |length o|f indire|
|00002120| 63 74 69 6f 6e 20 62 75 | 66 66 65 72 2e 0a 00 00 |ction bu|ffer....|
|00002130| 44 41 54 41 ad 00 00 00 | 50 52 4f 43 64 72 61 67 |DATA....|PROCdrag|
|00002140| 69 63 6f 6e 28 77 69 6e | 64 6f 77 2c 69 63 6f 6e |icon(win|dow,icon|
|00002150| 2c 66 6c 61 67 29 0a 23 | 50 61 72 65 6e 74 20 21 |,flag).#|Parent !|
|00002160| 52 6f 6f 74 0a 3d 3e 09 | 7b 2f 7d 77 69 6e 7b 2f |Root.=>.|{/}win{/|
|00002170| 7d 09 77 69 6e 64 6f 77 | 20 68 61 6e 64 6c 65 0a |}.window| handle.|
|00002180| 09 7b 2f 7d 69 63 6f 6e | 7b 2f 7d 09 69 63 6f 6e |.{/}icon|{/}.icon|
|00002190| 20 68 61 6e 64 6c 65 0a | 09 7b 2f 7d 66 6c 61 67 | handle.|.{/}flag|
|000021a0| 7b 2f 7d 09 54 52 55 45 | 20 74 6f 20 72 65 73 74 |{/}.TRUE| to rest|
|000021b0| 72 69 63 74 20 74 6f 20 | 74 68 65 20 77 69 6e 64 |rict to |the wind|
|000021c0| 6f 77 0a 0a 53 74 61 72 | 74 20 61 20 64 72 61 67 |ow..Star|t a drag|
|000021d0| 20 6f 66 20 61 6e 20 69 | 63 6f 6e 2e 0a 00 00 00 | of an i|con.....|
|000021e0| 44 41 54 41 7e 01 00 00 | 50 52 4f 43 77 69 6e 64 |DATA~...|PROCwind|
|000021f0| 6f 77 74 69 74 6c 65 28 | 77 69 6e 2c 74 69 74 6c |owtitle(|win,titl|
|00002200| 65 24 29 0a 23 50 61 72 | 65 6e 74 20 21 52 6f 6f |e$).#Par|ent !Roo|
|00002210| 74 0a 3d 3e 09 7b 2f 7d | 77 69 6e 7b 2f 7d 09 77 |t.=>.{/}|win{/}.w|
|00002220| 69 6e 64 6f 77 20 68 61 | 6e 64 6c 65 0a 09 7b 2f |indow ha|ndle..{/|
|00002230| 7d 74 69 74 6c 65 24 7b | 2f 7d 09 6e 65 77 20 74 |}title${|/}.new t|
|00002240| 69 74 6c 65 20 6f 66 20 | 77 69 6e 64 6f 77 0a 0a |itle of |window..|
|00002250| 53 65 74 20 74 69 74 6c | 65 20 6f 66 20 77 69 6e |Set titl|e of win|
|00002260| 64 6f 77 2e 20 49 6e 64 | 69 72 65 63 74 69 6f 6e |dow. Ind|irection|
|00002270| 20 6d 75 73 74 20 62 65 | 20 75 73 65 64 20 66 6f | must be| used fo|
|00002280| 72 20 74 69 74 6c 65 20 | 62 61 72 2e 0a 0a 49 6e |r title |bar...In|
|00002290| 20 57 69 6d 70 4c 69 62 | 32 20 74 68 69 73 20 75 | WimpLib|2 this u|
|000022a0| 73 65 73 20 3c 57 69 6d | 70 5f 47 65 74 57 69 6e |ses <Wim|p_GetWin|
|000022b0| 64 6f 77 49 6e 66 6f 3d | 3e 57 69 6d 70 3a 57 69 |dowInfo=|>Wimp:Wi|
|000022c0| 6d 70 5f 47 65 74 57 69 | 6e 64 6f 77 49 6e 66 6f |mp_GetWi|ndowInfo|
|000022d0| 3e 20 77 68 69 63 68 20 | 72 65 74 75 72 6e 73 20 |> which |returns |
|000022e0| 74 68 65 20 65 6e 74 69 | 72 65 20 77 69 6e 64 6f |the enti|re windo|
|000022f0| 77 20 62 6c 6f 63 6b 20 | 69 6e 63 6c 75 64 69 6e |w block |includin|
|00002300| 67 20 69 63 6f 6e 73 20 | 74 6f 20 7b 2f 7d 62 25 |g icons |to {/}b%|
|00002310| 7b 2f 7d 2c 20 74 68 65 | 72 65 66 6f 72 65 20 69 |{/}, the|refore i|
|00002320| 74 20 69 73 20 76 69 74 | 61 6c 20 74 68 61 74 20 |t is vit|al that |
|00002330| 74 68 65 20 62 6c 6f 63 | 6b 20 68 61 73 20 73 75 |the bloc|k has su|
|00002340| 66 66 69 63 69 65 6e 74 | 20 73 70 61 63 65 20 74 |fficient| space t|
|00002350| 6f 20 73 74 6f 72 65 20 | 74 68 65 6d 2e 0a 00 00 |o store |them....|
|00002360| 44 41 54 41 f4 00 00 00 | 50 52 4f 43 72 65 61 64 |DATA....|PROCread|
|00002370| 74 61 73 6b 61 72 65 61 | 28 74 61 73 6b 2c 6c 6f |taskarea|(task,lo|
|00002380| 63 2c 74 6f 2c 6c 65 6e | 29 0a 23 50 61 72 65 6e |c,to,len|).#Paren|
|00002390| 74 20 21 52 6f 6f 74 0a | 3d 3e 09 7b 2f 7d 74 61 |t !Root.|=>.{/}ta|
|000023a0| 73 6b 7b 2f 7d 09 73 6f | 75 72 63 65 20 61 70 70 |sk{/}.so|urce app|
|000023b0| 6c 69 63 61 74 69 6f 6e | 27 73 20 68 61 6e 64 6c |lication|'s handl|
|000023c0| 65 0a 09 7b 2f 7d 6c 6f | 63 7b 2f 7d 09 61 64 64 |e..{/}lo|c{/}.add|
|000023d0| 72 65 73 73 20 69 6e 20 | 73 6f 75 72 63 65 0a 09 |ress in |source..|
|000023e0| 7b 2f 7d 74 6f 7b 2f 7d | 09 61 64 64 72 65 73 73 |{/}to{/}|.address|
|000023f0| 20 69 6e 20 6f 75 72 20 | 61 70 70 6c 69 63 61 74 | in our |applicat|
|00002400| 69 6f 6e 0a 09 7b 2f 7d | 6c 65 6e 7b 2f 7d 09 6c |ion..{/}|len{/}.l|
|00002410| 65 6e 67 74 68 20 74 6f | 20 72 65 61 64 0a 0a 52 |ength to| read..R|
|00002420| 65 61 64 20 61 20 62 6c | 6f 63 6b 20 66 72 6f 6d |ead a bl|ock from|
|00002430| 20 67 69 76 65 6e 20 74 | 61 73 6b 20 69 6e 74 6f | given t|ask into|
|00002440| 20 61 70 70 6c 69 63 61 | 74 69 6f 6e 20 73 70 61 | applica|tion spa|
|00002450| 63 65 2e 0a 44 41 54 41 | aa 00 00 00 50 52 4f 43 |ce..DATA|....PROC|
|00002460| 73 65 74 63 61 72 65 74 | 65 6e 64 28 77 69 6e 2c |setcaret|end(win,|
|00002470| 69 63 6f 6e 29 0a 23 50 | 61 72 65 6e 74 20 21 52 |icon).#P|arent !R|
|00002480| 6f 6f 74 0a 3d 3e 09 7b | 2f 7d 77 69 6e 7b 2f 7d |oot.=>.{|/}win{/}|
|00002490| 09 77 69 6e 64 6f 77 20 | 68 61 6e 64 6c 65 0a 09 |.window |handle..|
|000024a0| 7b 2f 7d 69 63 6f 6e 7b | 2f 7d 09 69 63 6f 6e 20 |{/}icon{|/}.icon |
|000024b0| 68 61 6e 64 6c 65 0a 0a | 53 65 74 20 74 68 65 20 |handle..|Set the |
|000024c0| 63 61 72 65 74 73 20 6c | 6f 63 61 74 69 6f 6e 20 |carets l|ocation |
|000024d0| 61 73 20 74 68 65 20 65 | 6e 64 20 6f 66 20 74 68 |as the e|nd of th|
|000024e0| 65 20 74 65 78 74 20 69 | 6e 20 74 68 65 20 73 70 |e text i|n the sp|
|000024f0| 65 63 69 66 69 65 64 20 | 69 63 6f 6e 2e 0a 00 00 |ecified |icon....|
|00002500| 44 41 54 41 e8 00 00 00 | 50 52 4f 43 73 65 74 63 |DATA....|PROCsetc|
|00002510| 61 72 65 74 70 6f 73 28 | 77 69 6e 2c 69 63 6f 6e |aretpos(|win,icon|
|00002520| 2c 63 68 61 72 73 29 0a | 23 50 61 72 65 6e 74 20 |,chars).|#Parent |
|00002530| 21 52 6f 6f 74 0a 3d 3e | 09 7b 2f 7d 77 69 6e 7b |!Root.=>|.{/}win{|
|00002540| 2f 7d 09 77 69 6e 64 6f | 77 20 68 61 6e 64 6c 65 |/}.windo|w handle|
|00002550| 2c 20 6f 72 20 2d 31 20 | 74 6f 20 6c 6f 73 65 0a |, or -1 |to lose.|
|00002560| 09 7b 2f 7d 69 63 6f 6e | 7b 2f 7d 09 69 63 6f 6e |.{/}icon|{/}.icon|
|00002570| 20 68 61 6e 64 6c 65 0a | 09 7b 2f 7d 63 68 61 72 | handle.|.{/}char|
|00002580| 73 7b 2f 7d 09 6e 75 6d | 62 65 72 20 6f 66 20 63 |s{/}.num|ber of c|
|00002590| 68 61 72 61 63 74 65 72 | 73 0a 0a 53 65 74 20 74 |haracter|s..Set t|
|000025a0| 68 65 20 63 61 72 65 74 | 73 20 6c 6f 63 61 74 69 |he caret|s locati|
|000025b0| 6f 6e 20 61 73 20 74 68 | 65 20 73 70 65 63 69 66 |on as th|e specif|
|000025c0| 69 65 64 20 6e 75 6d 62 | 65 72 20 6f 66 20 63 68 |ied numb|er of ch|
|000025d0| 61 72 61 63 74 65 72 73 | 20 69 6e 74 6f 20 74 68 |aracters| into th|
|000025e0| 65 20 69 63 6f 6e 2e 0a | 44 41 54 41 b6 00 00 00 |e icon..|DATA....|
|000025f0| 50 52 4f 43 67 65 74 63 | 61 72 65 74 70 6f 73 28 |PROCgetc|aretpos(|
|00002600| 77 69 6e 2c 69 63 6f 6e | 2c 63 68 61 72 73 29 0a |win,icon|,chars).|
|00002610| 23 50 61 72 65 6e 74 20 | 21 52 6f 6f 74 0a 3c 3d |#Parent |!Root.<=|
|00002620| 09 7b 2f 7d 77 69 6e 7b | 2f 7d 09 77 69 6e 64 6f |.{/}win{|/}.windo|
|00002630| 77 20 68 61 6e 64 6c 65 | 0a 09 7b 2f 7d 69 63 6f |w handle|..{/}ico|
|00002640| 6e 7b 2f 7d 09 69 63 6f | 6e 20 68 61 6e 64 6c 65 |n{/}.ico|n handle|
|00002650| 0a 09 7b 2f 7d 63 68 61 | 72 73 7b 2f 7d 09 63 68 |..{/}cha|rs{/}.ch|
|00002660| 61 72 61 63 74 65 72 20 | 6f 66 66 73 65 74 20 69 |aracter |offset i|
|00002670| 6e 74 6f 20 73 74 72 69 | 6e 67 0a 0a 52 65 74 75 |nto stri|ng..Retu|
|00002680| 72 6e 20 74 68 65 20 6c | 6f 63 61 74 69 6f 6e 20 |rn the l|ocation |
|00002690| 6f 66 20 74 68 65 20 63 | 61 72 65 74 2e 0a 00 00 |of the c|aret....|
|000026a0| 44 41 54 41 ae 00 00 00 | 50 52 4f 43 67 65 74 70 |DATA....|PROCgetp|
|000026b0| 74 72 70 6f 73 28 78 2c | 79 2c 77 69 6e 2c 69 63 |trpos(x,|y,win,ic|
|000026c0| 6f 6e 29 0a 23 50 61 72 | 65 6e 74 20 21 52 6f 6f |on).#Par|ent !Roo|
|000026d0| 74 0a 3c 3d 09 7b 2f 7d | 78 7b 2f 7d 09 09 6d 6f |t.<=.{/}|x{/}..mo|
|000026e0| 75 73 65 20 78 0a 09 7b | 2f 7d 79 7b 2f 7d 09 09 |use x..{|/}y{/}..|
|000026f0| 6d 6f 75 73 65 20 79 0a | 09 7b 2f 7d 77 69 6e 7b |mouse y.|.{/}win{|
|00002700| 2f 7d 09 77 69 6e 64 6f | 77 20 68 61 6e 64 6c 65 |/}.windo|w handle|
|00002710| 0a 09 7b 2f 7d 69 63 6f | 6e 7b 2f 7d 09 69 63 6f |..{/}ico|n{/}.ico|
|00002720| 6e 20 68 61 6e 64 6c 65 | 0a 0a 52 65 74 75 72 6e |n handle|..Return|
|00002730| 20 74 68 65 20 6c 6f 63 | 61 74 69 6f 6e 20 6f 66 | the loc|ation of|
|00002740| 20 74 68 65 20 70 6f 69 | 6e 74 65 72 2e 0a 00 00 | the poi|nter....|
|00002750| 44 41 54 41 c6 00 00 00 | 50 52 4f 43 77 72 69 74 |DATA....|PROCwrit|
|00002760| 65 63 6d 6f 73 28 62 79 | 74 65 2c 76 61 6c 75 65 |ecmos(by|te,value|
|00002770| 29 0a 23 50 61 72 65 6e | 74 20 21 52 6f 6f 74 0a |).#Paren|t !Root.|
|00002780| 23 57 72 61 70 20 6f 66 | 66 0a 3d 3e 09 7b 2f 7d |#Wrap of|f.=>.{/}|
|00002790| 62 79 74 65 7b 2f 7d 09 | 3c 43 4d 4f 53 20 62 79 |byte{/}.|<CMOS by|
|000027a0| 74 65 20 74 6f 20 63 68 | 61 6e 67 65 3d 3e 4f 53 |te to ch|ange=>OS|
|000027b0| 3a 4f 53 5f 62 79 74 65 | 63 6d 6f 73 3e 0a 09 7b |:OS_byte|cmos>..{|
|000027c0| 2f 7d 76 61 6c 75 65 7b | 2f 7d 09 6e 65 77 20 76 |/}value{|/}.new v|
|000027d0| 61 6c 75 65 20 6f 66 20 | 62 79 74 65 0a 23 57 72 |alue of |byte.#Wr|
|000027e0| 61 70 0a 0a 57 72 69 74 | 65 20 61 20 62 79 74 65 |ap..Writ|e a byte|
|000027f0| 20 6f 66 20 63 6f 6e 66 | 69 67 75 72 61 74 69 6f | of conf|iguratio|
|00002800| 6e 20 69 6e 66 6f 20 69 | 6e 74 6f 20 43 4d 4f 53 |n info i|nto CMOS|
|00002810| 20 52 41 4d 2e 0a 00 00 | 44 41 54 41 ea 00 00 00 | RAM....|DATA....|
|00002820| 50 52 4f 43 6d 65 6e 75 | 75 6e 74 69 63 6b 28 6d |PROCmenu|untick(m|
|00002830| 65 6e 75 2c 73 74 61 72 | 74 2c 65 6e 64 29 0a 23 |enu,star|t,end).#|
|00002840| 50 61 72 65 6e 74 20 21 | 52 6f 6f 74 0a 3d 3e 09 |Parent !|Root.=>.|
|00002850| 7b 2f 7d 6d 65 6e 75 7b | 2f 7d 09 70 6f 69 6e 74 |{/}menu{|/}.point|
|00002860| 65 72 20 74 6f 20 6d 65 | 6e 75 20 62 6c 6f 63 6b |er to me|nu block|
|00002870| 0a 09 7b 2f 7d 73 74 61 | 72 74 7b 2f 7d 09 6f 70 |..{/}sta|rt{/}.op|
|00002880| 74 69 6f 6e 20 74 6f 20 | 73 74 61 72 74 20 61 74 |tion to |start at|
|00002890| 0a 09 7b 2f 7d 65 6e 64 | 7b 2f 7d 09 6f 70 74 69 |..{/}end|{/}.opti|
|000028a0| 6f 6e 20 74 6f 20 65 6e | 64 20 61 74 2c 20 6f 72 |on to en|d at, or|
|000028b0| 20 2d 31 20 66 6f 72 20 | 65 6e 64 20 6f 66 20 6d | -1 for |end of m|
|000028c0| 65 6e 75 0a 0a 55 6e 74 | 69 63 6b 73 20 61 6c 6c |enu..Unt|icks all|
|000028d0| 20 74 68 65 20 6f 70 74 | 69 6f 6e 73 20 62 65 74 | the opt|ions bet|
|000028e0| 77 65 65 6e 20 74 68 6f | 73 65 20 73 70 65 63 69 |ween tho|se speci|
|000028f0| 66 69 65 64 20 28 69 6e | 63 6c 75 73 69 76 65 29 |fied (in|clusive)|
|00002900| 2e 0a 00 00 44 41 54 41 | d8 00 00 00 50 52 4f 43 |....DATA|....PROC|
|00002910| 73 65 74 69 63 6f 6e 76 | 61 6c 69 64 28 77 69 6e |seticonv|alid(win|
|00002920| 2c 69 63 6f 6e 2c 76 61 | 6c 69 64 24 29 0a 23 50 |,icon,va|lid$).#P|
|00002930| 61 72 65 6e 74 20 21 52 | 6f 6f 74 0a 3d 3e 09 7b |arent !R|oot.=>.{|
|00002940| 2f 7d 77 69 6e 7b 2f 7d | 09 77 69 6e 64 6f 77 20 |/}win{/}|.window |
|00002950| 68 61 6e 64 6c 65 0a 09 | 7b 2f 7d 69 63 6f 6e 7b |handle..|{/}icon{|
|00002960| 2f 7d 09 69 63 6f 6e 20 | 68 61 6e 64 6c 65 0a 09 |/}.icon |handle..|
|00002970| 7b 2f 7d 76 61 6c 69 64 | 24 7b 2f 7d 09 6e 65 77 |{/}valid|${/}.new|
|00002980| 20 76 61 6c 69 64 61 74 | 69 6f 6e 20 73 74 72 69 | validat|ion stri|
|00002990| 6e 67 0a 0a 53 65 74 20 | 69 63 6f 6e 27 73 20 76 |ng..Set |icon's v|
|000029a0| 61 6c 69 64 61 74 69 6f | 6e 20 73 74 72 69 6e 67 |alidatio|n string|
|000029b0| 2e 20 44 6f 20 6e 6f 74 | 20 6f 76 65 72 72 75 6e |. Do not| overrun|
|000029c0| 20 76 61 6c 69 64 61 74 | 69 6f 6e 20 73 74 72 69 | validat|ion stri|
|000029d0| 6e 67 73 20 62 75 66 66 | 65 72 2e 0a 44 41 54 41 |ngs buff|er..DATA|
|000029e0| e6 01 00 00 50 52 4f 43 | 6d 61 6b 65 73 74 61 74 |....PROC|makestat|
|000029f0| 75 73 66 69 6c 65 28 66 | 69 6c 65 24 29 0a 23 50 |usfile(f|ile$).#P|
|00002a00| 61 72 65 6e 74 20 21 52 | 6f 6f 74 0a 3d 3e 09 7b |arent !R|oot.=>.{|
|00002a10| 2f 7d 66 69 6c 65 24 7b | 2f 7d 09 66 69 6c 65 20 |/}file${|/}.file |
|00002a20| 74 6f 20 63 72 65 61 74 | 65 0a 0a 42 65 67 69 6e |to creat|e..Begin|
|00002a30| 20 6d 61 6b 69 6e 67 20 | 61 20 73 74 61 74 75 73 | making |a status|
|00002a40| 20 66 69 6c 65 20 66 6f | 72 20 75 73 65 20 62 79 | file fo|r use by|
|00002a50| 20 74 68 69 73 20 70 72 | 6f 67 72 61 6d 20 61 6c | this pr|ogram al|
|00002a60| 6f 6e 65 20 28 6f 72 20 | 3c 21 43 6f 6e 66 69 67 |one (or |<!Config|
|00002a70| 2b 3d 3e 43 6f 6e 66 69 | 67 50 6c 75 73 3a 69 6e |+=>Confi|gPlus:in|
|00002a80| 66 6f 3e 20 69 66 20 73 | 75 70 70 6f 72 74 65 64 |fo> if s|upported|
|00002a90| 29 2e 0a 0a 54 68 65 20 | 66 69 6c 65 20 69 73 20 |)...The |file is |
|00002aa0| 63 72 65 61 74 65 64 20 | 77 69 74 68 20 74 79 70 |created |with typ|
|00002ab0| 65 20 74 65 78 74 20 61 | 6e 64 20 68 65 61 64 65 |e text a|nd heade|
|00002ac0| 64 20 77 69 74 68 20 7b | 2f 7d 41 70 70 6e 61 6d |d with {|/}Appnam|
|00002ad0| 65 24 7b 2f 7d 20 74 6f | 20 6d 61 72 6b 20 69 74 |e${/} to| mark it|
|00002ae0| 20 61 73 20 62 65 6c 6f | 6e 67 69 6e 67 20 74 6f | as belo|nging to|
|00002af0| 20 74 68 69 73 20 61 70 | 70 6c 69 63 61 74 69 6f | this ap|plicatio|
|00002b00| 6e 2e 0a 0a 52 65 6c 61 | 74 65 64 20 63 6f 6d 6d |n...Rela|ted comm|
|00002b10| 61 6e 64 73 20 3a 0a 23 | 54 61 62 3b 49 6e 64 65 |ands :.#|Tab;Inde|
|00002b20| 6e 74 20 32 0a 3c 50 52 | 4f 43 73 74 61 74 75 73 |nt 2.<PR|OCstatus|
|00002b30| 70 75 74 3e 09 09 73 74 | 6f 72 65 73 20 61 20 73 |put>..st|ores a s|
|00002b40| 74 72 69 6e 67 0a 3c 50 | 52 4f 43 73 74 61 74 75 |tring.<P|ROCstatu|
|00002b50| 73 6f 70 74 69 6f 6e 3e | 09 73 74 6f 72 65 73 20 |soption>|.stores |
|00002b60| 61 20 76 61 72 69 61 62 | 6c 65 0a 3c 50 52 4f 43 |a variab|le.<PROC|
|00002b70| 73 74 61 74 75 73 66 6c | 61 67 3e 09 73 74 6f 72 |statusfl|ag>.stor|
|00002b80| 65 73 20 61 20 66 6c 61 | 67 0a 3c 50 52 4f 43 63 |es a fla|g.<PROCc|
|00002b90| 6c 6f 73 65 73 74 61 74 | 75 73 66 69 6c 65 3e 09 |losestat|usfile>.|
|00002ba0| 66 69 6e 69 73 68 65 73 | 20 6d 61 6b 69 6e 67 20 |finishes| making |
|00002bb0| 74 68 65 20 66 69 6c 65 | 2e 0a 23 49 6e 64 65 6e |the file|..#Inden|
|00002bc0| 74 0a 00 00 44 41 54 41 | 7e 00 00 00 50 52 4f 43 |t...DATA|~...PROC|
|00002bd0| 63 6c 6f 73 65 73 74 61 | 74 75 73 66 69 6c 65 0a |closesta|tusfile.|
|00002be0| 23 50 61 72 65 6e 74 20 | 21 52 6f 6f 74 0a 43 6c |#Parent |!Root.Cl|
|00002bf0| 6f 73 65 20 61 20 73 74 | 61 74 75 73 20 66 69 6c |ose a st|atus fil|
|00002c00| 65 20 70 72 65 76 69 6f | 75 73 6c 79 20 6f 70 65 |e previo|usly ope|
|00002c10| 6e 65 64 20 62 79 20 3c | 50 52 4f 43 6d 61 6b 65 |ned by <|PROCmake|
|00002c20| 73 74 61 74 75 73 66 69 | 6c 65 3e 20 6f 72 20 3c |statusfi|le> or <|
|00002c30| 46 4e 72 65 61 64 73 74 | 61 74 75 73 66 69 6c 65 |FNreadst|atusfile|
|00002c40| 3e 0a 00 00 44 41 54 41 | e0 00 00 00 50 52 4f 43 |>...DATA|....PROC|
|00002c50| 73 74 61 74 75 73 70 75 | 74 28 74 61 67 24 2c 76 |statuspu|t(tag$,v|
|00002c60| 61 6c 75 65 24 29 0a 23 | 50 61 72 65 6e 74 20 21 |alue$).#|Parent !|
|00002c70| 52 6f 6f 74 0a 3d 3e 09 | 7b 2f 7d 74 61 67 24 7b |Root.=>.|{/}tag${|
|00002c80| 2f 7d 09 74 61 67 20 63 | 6f 64 65 0a 09 7b 2f 7d |/}.tag c|ode..{/}|
|00002c90| 76 61 6c 75 65 24 7b 2f | 7d 09 76 61 6c 75 65 20 |value${/|}.value |
|00002ca0| 74 6f 20 73 74 6f 72 65 | 0a 0a 53 74 6f 72 65 20 |to store|..Store |
|00002cb0| 61 20 73 74 72 69 6e 67 | 20 69 6e 20 74 68 65 20 |a string| in the |
|00002cc0| 73 74 61 74 75 73 20 66 | 69 6c 65 20 77 69 74 68 |status f|ile with|
|00002cd0| 20 72 65 66 65 72 65 6e | 63 65 20 74 61 67 2e 0a | referen|ce tag..|
|00002ce0| 0a 54 68 69 73 20 77 69 | 6c 6c 20 62 65 20 73 74 |.This wi|ll be st|
|00002cf0| 6f 72 65 64 20 69 6e 20 | 74 68 65 20 66 69 6c 65 |ored in |the file|
|00002d00| 20 61 73 20 3a 0a 20 20 | 7b 66 43 6f 64 65 7d 5c | as :. |{fCode}\|
|00002d10| 3c 74 61 67 24 3e 3a 5c | 3c 76 61 6c 75 65 24 3e |<tag$>:\|<value$>|
|00002d20| 7b 66 7d 0a 44 41 54 41 | e3 00 00 00 50 52 4f 43 |{f}.DATA|....PROC|
|00002d30| 73 74 61 74 75 73 6f 70 | 74 69 6f 6e 28 74 61 67 |statusop|tion(tag|
|00002d40| 24 2c 76 61 6c 75 65 29 | 0a 23 50 61 72 65 6e 74 |$,value)|.#Parent|
|00002d50| 20 21 52 6f 6f 74 0a 3d | 3e 09 7b 2f 7d 74 61 67 | !Root.=|>.{/}tag|
|00002d60| 24 7b 2f 7d 09 74 61 67 | 20 63 6f 64 65 0a 09 7b |${/}.tag| code..{|
|00002d70| 2f 7d 76 61 6c 75 65 7b | 2f 7d 09 76 61 6c 75 65 |/}value{|/}.value|
|00002d80| 20 74 6f 20 73 74 6f 72 | 65 0a 0a 53 74 6f 72 65 | to stor|e..Store|
|00002d90| 20 61 20 76 61 72 69 61 | 62 6c 65 20 69 6e 20 74 | a varia|ble in t|
|00002da0| 68 65 20 73 74 61 74 75 | 73 20 66 69 6c 65 20 77 |he statu|s file w|
|00002db0| 69 74 68 20 72 65 66 65 | 72 65 6e 63 65 20 74 61 |ith refe|rence ta|
|00002dc0| 67 2e 0a 0a 54 68 69 73 | 20 77 69 6c 6c 20 62 65 |g...This| will be|
|00002dd0| 20 73 74 6f 72 65 64 20 | 69 6e 20 74 68 65 20 66 | stored |in the f|
|00002de0| 69 6c 65 20 61 73 20 3a | 0a 20 20 7b 66 43 6f 64 |ile as :|. {fCod|
|00002df0| 65 7d 5c 3c 74 61 67 24 | 3e 3a 25 5c 3c 76 61 6c |e}\<tag$|>:%\<val|
|00002e00| 75 65 3e 7b 66 7d 0a 00 | 44 41 54 41 e0 00 00 00 |ue>{f}..|DATA....|
|00002e10| 50 52 4f 43 73 74 61 74 | 75 73 6e 65 78 74 28 74 |PROCstat|usnext(t|
|00002e20| 61 67 24 2c 76 61 6c 75 | 65 24 29 0a 23 50 61 72 |ag$,valu|e$).#Par|
|00002e30| 65 6e 74 20 21 52 6f 6f | 74 0a 23 57 72 61 70 20 |ent !Roo|t.#Wrap |
|00002e40| 6f 66 66 0a 3c 3d 09 7b | 2f 7d 74 61 67 24 7b 2f |off.<=.{|/}tag${/|
|00002e50| 7d 09 74 61 67 20 63 6f | 64 65 2c 20 6f 72 20 2a |}.tag co|de, or *|
|00002e60| 45 2a 4e 2a 44 2a 20 69 | 66 20 45 4f 46 0a 09 7b |E*N*D* i|f EOF..{|
|00002e70| 2f 7d 76 61 6c 75 65 24 | 7b 2f 7d 09 76 61 6c 75 |/}value$|{/}.valu|
|00002e80| 65 0a 23 57 72 61 70 0a | 0a 54 68 69 73 20 72 65 |e.#Wrap.|.This re|
|00002e90| 74 75 72 6e 73 20 74 68 | 65 20 6e 65 78 74 20 74 |turns th|e next t|
|00002ea0| 61 67 20 61 6e 64 20 76 | 61 6c 75 65 20 69 6e 20 |ag and v|alue in |
|00002eb0| 74 68 65 20 66 69 6c 65 | 2e 20 43 6f 6d 6d 65 6e |the file|. Commen|
|00002ec0| 74 20 6c 69 6e 65 73 20 | 70 72 65 63 65 65 64 65 |t lines |preceede|
|00002ed0| 64 20 62 79 20 23 20 77 | 69 6c 6c 20 62 65 20 69 |d by # w|ill be i|
|00002ee0| 67 6e 6f 72 65 64 2e 0a | 44 41 54 41 fd 00 00 00 |gnored..|DATA....|
|00002ef0| 50 52 4f 43 72 65 6c 65 | 61 73 65 28 70 6f 69 6e |PROCrele|ase(poin|
|00002f00| 74 65 72 29 20 2d 20 57 | 69 6d 70 4c 69 62 20 76 |ter) - W|impLib v|
|00002f10| 65 72 73 69 6f 6e 0a 23 | 50 61 72 65 6e 74 20 21 |ersion.#|Parent !|
|00002f20| 52 6f 6f 74 0a 3d 3e 09 | 7b 2f 7d 70 6f 69 6e 74 |Root.=>.|{/}point|
|00002f30| 65 72 7b 2f 7d 09 70 6f | 69 6e 74 65 72 20 74 6f |er{/}.po|inter to|
|00002f40| 20 62 6c 6f 63 6b 0a 3c | 3d 09 2d 31 20 74 6f 20 | block.<|=.-1 to |
|00002f50| 69 6e 64 69 63 61 74 65 | 20 74 6f 20 62 6c 6f 63 |indicate| to bloc|
|00002f60| 6b 2e 0a 0a 52 65 6c 65 | 61 73 65 20 61 20 63 6c |k...Rele|ase a cl|
|00002f70| 61 69 6d 65 64 20 62 6c | 6f 63 6b 20 6f 66 20 52 |aimed bl|ock of R|
|00002f80| 4d 41 2e 20 0a 0a 4e 6f | 74 65 3a 20 54 68 69 73 |MA. ..No|te: This|
|00002f90| 20 63 61 6c 6c 20 69 73 | 20 72 65 70 6c 61 63 65 | call is| replace|
|00002fa0| 64 20 69 6e 20 48 65 61 | 70 4c 69 62 20 62 79 20 |d in Hea|pLib by |
|00002fb0| 61 20 48 65 61 70 20 63 | 6c 61 69 6d 20 3c 50 52 |a Heap c|laim <PR|
|00002fc0| 4f 43 72 65 6c 65 61 73 | 65 3d 3e 48 65 61 70 4c |OCreleas|e=>HeapL|
|00002fd0| 69 62 3a 50 52 4f 43 72 | 65 6c 65 61 73 65 3e 20 |ib:PROCr|elease> |
|00002fe0| 63 61 6c 6c 2e 00 00 00 | 44 41 54 41 8f 00 00 00 |call....|DATA....|
|00002ff0| 50 52 4f 43 70 72 65 73 | 73 69 63 6f 6e 28 77 69 |PROCpres|sicon(wi|
|00003000| 6e 2c 69 63 6f 6e 29 0a | 23 50 61 72 65 6e 74 20 |n,icon).|#Parent |
|00003010| 21 52 6f 6f 74 0a 3d 3e | 09 7b 2f 7d 77 69 6e 7b |!Root.=>|.{/}win{|
|00003020| 2f 7d 09 77 69 6e 64 6f | 77 20 68 61 6e 64 6c 65 |/}.windo|w handle|
|00003030| 0a 09 7b 2f 7d 69 63 6f | 6e 7b 2f 7d 09 69 63 6f |..{/}ico|n{/}.ico|
|00003040| 6e 20 68 61 6e 64 6c 65 | 0a 0a 50 72 65 73 73 20 |n handle|..Press |
|00003050| 61 6e 20 69 63 6f 6e 20 | 66 6f 72 20 61 62 6f 75 |an icon |for abou|
|00003060| 74 20 bc 20 73 65 63 6f | 6e 64 20 61 6e 64 20 72 |t . seco|nd and r|
|00003070| 65 6c 65 61 73 65 2e 00 | 44 41 54 41 04 01 00 00 |elease..|DATA....|
|00003080| 50 52 4f 43 73 74 61 74 | 75 73 66 6c 61 67 28 74 |PROCstat|usflag(t|
|00003090| 61 67 24 2c 66 6c 61 67 | 29 0a 23 50 61 72 65 6e |ag$,flag|).#Paren|
|000030a0| 74 20 21 52 6f 6f 74 0a | 3d 3e 09 7b 2f 7d 74 61 |t !Root.|=>.{/}ta|
|000030b0| 67 24 7b 2f 7d 09 74 61 | 67 20 63 6f 64 65 0a 09 |g${/}.ta|g code..|
|000030c0| 7b 2f 7d 66 6c 61 67 7b | 2f 7d 09 66 6c 61 67 20 |{/}flag{|/}.flag |
|000030d0| 74 6f 20 73 74 6f 72 65 | 0a 0a 53 74 6f 72 65 20 |to store|..Store |
|000030e0| 61 20 66 6c 61 67 20 69 | 6e 20 74 68 65 20 73 74 |a flag i|n the st|
|000030f0| 61 74 75 73 20 66 69 6c | 65 20 77 69 74 68 20 72 |atus fil|e with r|
|00003100| 65 66 65 72 65 6e 63 65 | 20 74 61 67 2e 0a 0a 54 |eference| tag...T|
|00003110| 68 69 73 20 77 69 6c 6c | 20 62 65 20 73 74 6f 72 |his will| be stor|
|00003120| 65 64 20 69 6e 20 74 68 | 65 20 66 69 6c 65 20 61 |ed in th|e file a|
|00003130| 73 20 3a 0a 23 54 61 62 | 0a 20 20 7b 66 43 6f 64 |s :.#Tab|. {fCod|
|00003140| 65 7d 5c 3c 74 61 67 24 | 3e 3a 25 4f 6e 7b 66 7d |e}\<tag$|>:%On{f}|
|00003150| 09 09 69 66 20 54 52 55 | 45 0a 20 20 7b 66 43 6f |..if TRU|E. {fCo|
|00003160| 64 65 7d 5c 3c 74 61 67 | 24 3e 3a 25 4f 66 66 7b |de}\<tag|$>:%Off{|
|00003170| 66 7d 09 69 66 20 46 41 | 4c 53 45 0a 44 41 54 41 |f}.if FA|LSE.DATA|
|00003180| 43 02 00 00 50 52 4f 43 | 73 68 6f 77 66 72 65 65 |C...PROC|showfree|
|00003190| 0a 23 50 61 72 65 6e 74 | 20 21 52 6f 6f 74 0a 54 |.#Parent| !Root.T|
|000031a0| 68 69 73 20 63 61 6c 6c | 20 64 69 73 70 6c 61 79 |his call| display|
|000031b0| 73 20 6f 6e 20 74 68 65 | 20 77 69 6e 64 6f 77 20 |s on the| window |
|000031c0| 7b 2f 7d 69 6e 66 6f 62 | 6f 78 25 7b 2f 7d 20 74 |{/}infob|ox%{/} t|
|000031d0| 68 65 20 61 6d 6f 75 6e | 74 20 6f 66 20 73 70 61 |he amoun|t of spa|
|000031e0| 63 65 20 74 61 6b 65 6e | 20 75 70 20 62 79 20 74 |ce taken| up by t|
|000031f0| 68 65 20 70 72 6f 67 72 | 61 6d 2c 20 76 61 72 69 |he progr|am, vari|
|00003200| 61 62 6c 65 73 20 61 6e | 64 20 66 72 65 65 20 73 |ables an|d free s|
|00003210| 70 61 63 65 2e 20 49 66 | 20 74 68 65 20 3c 48 65 |pace. If| the <He|
|00003220| 61 70 20 4c 69 62 72 61 | 72 79 3d 3e 48 65 61 70 |ap Libra|ry=>Heap|
|00003230| 4c 69 62 3a 21 52 6f 6f | 74 3e 20 69 73 20 69 6e |Lib:!Roo|t> is in|
|00003240| 73 74 61 6c 6c 65 64 2c | 20 74 68 65 6e 20 69 6e |stalled,| then in|
|00003250| 66 6f 72 6d 61 74 69 6f | 6e 20 6f 6e 20 74 68 65 |formatio|n on the|
|00003260| 20 68 65 61 70 20 77 69 | 6c 6c 20 61 6c 73 6f 20 | heap wi|ll also |
|00003270| 62 65 20 64 69 73 70 6c | 61 79 65 64 2e 20 4e 6f |be displ|ayed. No|
|00003280| 74 65 20 74 68 61 74 20 | 61 6e 79 20 6c 69 62 72 |te that |any libr|
|00003290| 61 72 69 65 73 20 69 6e | 73 74 61 6c 6c 65 64 20 |aries in|stalled |
|000032a0| 77 69 6c 6c 20 62 65 20 | 69 6e 63 6c 75 64 65 64 |will be |included|
|000032b0| 20 69 6e 20 74 68 65 20 | 76 61 72 69 61 62 6c 65 | in the |variable|
|000032c0| 20 75 73 61 67 65 20 65 | 6e 74 72 79 2e 0a 0a 54 | usage e|ntry...T|
|000032d0| 68 69 73 20 69 73 20 62 | 65 73 74 20 75 73 65 64 |his is b|est used|
|000032e0| 20 64 75 72 69 6e 67 20 | 74 65 73 74 69 6e 67 20 | during |testing |
|000032f0| 69 66 20 74 68 65 20 75 | 73 65 72 20 63 6c 69 63 |if the u|ser clic|
|00003300| 6b 73 20 6f 6e 20 74 68 | 65 20 7b 2f 7d 69 6e 66 |ks on th|e {/}inf|
|00003310| 6f 62 6f 78 25 7b 2f 7d | 20 77 69 6e 64 6f 77 0a |obox%{/}| window.|
|00003320| 0a 4e 6f 74 65 3a 20 54 | 68 65 20 77 69 6e 64 6f |.Note: T|he windo|
|00003330| 77 20 73 68 6f 75 6c 64 | 20 72 65 61 6c 6c 79 20 |w should| really |
|00003340| 62 65 20 6f 6e 65 20 66 | 72 6f 6d 20 74 68 65 20 |be one f|rom the |
|00003350| 53 6b 65 6c 65 74 6f 6e | 20 61 70 70 6c 69 63 61 |Skeleton| applica|
|00003360| 74 69 6f 6e 20 61 73 20 | 74 68 69 73 20 68 61 73 |tion as |this has|
|00003370| 20 74 68 65 20 63 6f 72 | 72 65 63 74 20 6e 75 6d | the cor|rect num|
|00003380| 62 65 72 20 6f 66 20 69 | 63 6f 6e 73 20 69 6e 20 |ber of i|cons in |
|00003390| 74 68 65 20 63 6f 72 72 | 65 63 74 20 70 6c 61 63 |the corr|ect plac|
|000033a0| 65 73 20 77 69 74 68 20 | 74 68 65 20 63 6f 72 72 |es with |the corr|
|000033b0| 65 63 74 20 76 61 6c 69 | 64 61 74 69 6f 6e 2e 00 |ect vali|dation..|
|000033c0| 44 41 54 41 eb 01 00 00 | 50 52 4f 43 65 65 72 72 |DATA....|PROCeerr|
|000033d0| 6f 72 0a 23 50 61 72 65 | 6e 74 20 21 52 6f 6f 74 |or.#Pare|nt !Root|
|000033e0| 0a 54 68 69 73 20 69 73 | 20 74 68 65 20 73 69 6e |.This is| the sin|
|000033f0| 67 6c 65 20 74 61 73 6b | 69 6e 67 20 76 65 72 73 |gle task|ing vers|
|00003400| 69 6f 6e 20 6f 66 20 50 | 52 4f 43 65 72 72 6f 72 |ion of P|ROCerror|
|00003410| 20 66 6f 72 20 72 75 6e | 6e 69 6e 67 20 28 73 74 | for run|ning (st|
|00003420| 72 61 6e 67 65 6c 79 29 | 20 69 6e 20 74 68 65 20 |rangely)| in the |
|00003430| 64 65 73 6b 74 6f 70 20 | 65 6e 76 69 72 6f 6e 6d |desktop |environm|
|00003440| 65 6e 74 2e 20 4d 6f 73 | 74 6c 79 20 69 74 20 69 |ent. Mos|tly it i|
|00003450| 73 20 75 73 65 64 20 66 | 6f 72 20 64 65 62 75 67 |s used f|or debug|
|00003460| 67 69 6e 67 20 70 75 72 | 70 6f 73 65 73 2e 0a 0a |ging pur|poses...|
|00003470| 55 73 75 61 6c 6c 79 20 | 74 68 65 72 65 20 61 72 |Usually |there ar|
|00003480| 65 20 6e 75 6d 65 72 6f | 75 73 20 76 61 72 69 61 |e numero|us varia|
|00003490| 62 6c 65 73 20 79 6f 75 | 20 6e 65 65 64 20 74 6f |bles you| need to|
|000034a0| 20 69 6e 69 74 69 61 6c | 69 73 65 20 62 65 66 6f | initial|ise befo|
|000034b0| 72 65 20 74 68 65 20 57 | 69 6d 70 20 69 73 20 73 |re the W|imp is s|
|000034c0| 65 74 20 75 70 20 66 6f | 72 20 75 73 65 20 61 6e |et up fo|r use an|
|000034d0| 64 20 74 68 65 72 65 66 | 6f 72 65 20 61 20 64 69 |d theref|ore a di|
|000034e0| 66 66 65 72 65 6e 74 20 | 65 72 72 6f 72 20 68 61 |fferent |error ha|
|000034f0| 6e 64 6c 65 72 20 69 73 | 20 72 65 71 75 69 72 65 |ndler is| require|
|00003500| 64 2e 20 55 73 61 67 65 | 20 69 73 20 75 73 75 61 |d. Usage| is usua|
|00003510| 6c 6c 79 20 3a 0a 0a 7b | 66 43 6f 64 65 7d 4f 4e |lly :..{|fCode}ON|
|00003520| 20 45 52 52 4f 52 20 50 | 52 4f 43 65 65 72 72 6f | ERROR P|ROCeerro|
|00003530| 72 3a 45 4e 44 7b 66 7d | 0a 0a 54 68 65 20 45 72 |r:END{f}|..The Er|
|00003540| 72 6f 72 24 20 61 6e 64 | 20 45 72 72 6f 72 24 54 |ror$ and| Error$T|
|00003550| 61 73 6b 20 76 61 72 69 | 61 62 6c 65 73 20 61 72 |ask vari|ables ar|
|00003560| 65 20 73 65 74 20 75 70 | 20 63 6f 72 72 65 63 74 |e set up| correct|
|00003570| 6c 79 20 61 6e 64 20 74 | 68 65 20 65 72 72 6f 72 |ly and t|he error|
|00003580| 20 69 73 20 64 69 73 70 | 6c 61 79 65 64 20 69 6e | is disp|layed in|
|00003590| 20 61 20 73 74 61 6e 64 | 61 72 64 20 57 69 6d 70 | a stand|ard Wimp|
|000035a0| 20 65 72 72 6f 72 20 62 | 6f 78 2e 00 44 41 54 41 | error b|ox..DATA|
|000035b0| d6 01 00 00 50 52 4f 43 | 64 72 61 67 73 61 76 65 |....PROC|dragsave|
|000035c0| 28 77 69 6e 64 6f 77 2c | 69 63 6f 6e 2c 74 79 70 |(window,|icon,typ|
|000035d0| 65 2c 73 69 7a 65 29 0a | 23 50 61 72 65 6e 74 20 |e,size).|#Parent |
|000035e0| 21 52 6f 6f 74 0a 3d 3e | 09 7b 2f 7d 77 69 6e 7b |!Root.=>|.{/}win{|
|000035f0| 2f 7d 09 77 69 6e 64 6f | 77 20 68 61 6e 64 6c 65 |/}.windo|w handle|
|00003600| 20 6f 66 20 73 61 76 65 | 20 62 6f 78 20 77 65 20 | of save| box we |
|00003610| 63 61 6d 65 20 66 72 6f | 6d 0a 09 7b 2f 7d 69 63 |came fro|m..{/}ic|
|00003620| 6f 6e 7b 2f 7d 09 69 63 | 6f 6e 20 68 61 6e 64 6c |on{/}.ic|on handl|
|00003630| 65 20 6f 66 20 66 69 6c | 65 6e 61 6d 65 20 69 63 |e of fil|ename ic|
|00003640| 6f 6e 20 28 75 73 75 61 | 6c 6c 79 20 32 29 0a 09 |on (usua|lly 2)..|
|00003650| 7b 2f 7d 74 79 70 65 7b | 2f 7d 09 3c 66 69 6c 65 |{/}type{|/}.<file|
|00003660| 74 79 70 65 3d 3e 46 69 | 6c 65 74 79 70 65 73 3a |type=>Fi|letypes:|
|00003670| 21 52 6f 6f 74 3e 0a 09 | 7b 2f 7d 73 69 7a 65 7b |!Root>..|{/}size{|
|00003680| 2f 7d 09 65 73 74 69 6d | 61 74 65 64 20 73 69 7a |/}.estim|ated siz|
|00003690| 65 20 6f 66 20 74 68 65 | 20 66 69 6c 65 20 28 6f |e of the| file (o|
|000036a0| 72 20 2d 31 20 69 66 20 | 75 6e 6b 6e 6f 77 6e 29 |r -1 if |unknown)|
|000036b0| 0a 0a 49 6e 69 74 69 61 | 74 65 73 20 74 68 65 20 |..Initia|tes the |
|000036c0| 44 61 74 61 53 61 76 65 | 20 70 72 6f 74 6f 63 6f |DataSave| protoco|
|000036d0| 6c 20 61 66 74 65 72 20 | 61 20 64 72 61 67 20 68 |l after |a drag h|
|000036e0| 61 73 20 62 65 65 6e 20 | 63 6f 6d 70 6c 65 74 65 |as been |complete|
|000036f0| 64 2e 20 59 6f 75 20 73 | 68 6f 75 6c 64 20 6c 69 |d. You s|hould li|
|00003700| 73 74 65 6e 20 66 6f 72 | 20 61 20 3c 44 61 74 61 |sten for| a <Data|
|00003710| 53 61 76 65 41 63 6b 3d | 3e 57 69 6d 70 3a 57 69 |SaveAck=|>Wimp:Wi|
|00003720| 6d 70 5f 55 4d 32 3e 20 | 6d 65 73 73 61 67 65 20 |mp_UM2> |message |
|00003730| 66 6f 72 20 73 75 63 63 | 65 73 73 2c 20 6f 72 20 |for succ|ess, or |
|00003740| 61 20 61 63 6b 6e 6f 77 | 6c 65 64 67 65 64 20 28 |a acknow|ledged (|
|00003750| 72 65 61 73 6f 6e 20 31 | 39 29 20 3c 44 61 74 61 |reason 1|9) <Data|
|00003760| 53 61 76 65 3d 3e 57 69 | 6d 70 3a 57 69 6d 70 5f |Save=>Wi|mp:Wimp_|
|00003770| 55 4d 31 3e 20 66 6f 72 | 20 66 61 69 6c 75 72 65 |UM1> for| failure|
|00003780| 2e 0a 00 00 44 41 54 41 | 56 01 00 00 50 52 4f 43 |....DATA|V...PROC|
|00003790| 72 65 73 69 7a 65 77 69 | 6e 74 6f 28 77 69 6e 2c |resizewi|nto(win,|
|000037a0| 6c 2c 74 2c 72 2c 62 29 | 0a 23 50 61 72 65 6e 74 |l,t,r,b)|.#Parent|
|000037b0| 20 21 52 6f 6f 74 0a 3d | 3e 09 7b 2f 7d 77 69 6e | !Root.=|>.{/}win|
|000037c0| 7b 2f 7d 09 77 69 6e 64 | 6f 77 20 68 61 6e 64 6c |{/}.wind|ow handl|
|000037d0| 65 0a 09 7b 2f 7d 6c 7b | 2f 7d 09 09 6c 65 66 74 |e..{/}l{|/}..left|
|000037e0| 20 6f 66 20 54 57 41 0a | 09 7b 2f 7d 74 7b 2f 7d | of TWA.|.{/}t{/}|
|000037f0| 09 09 74 6f 70 20 6f 66 | 20 54 57 41 0a 09 7b 2f |..top of| TWA..{/|
|00003800| 7d 72 7b 2f 7d 09 09 72 | 69 67 68 74 20 6f 66 20 |}r{/}..r|ight of |
|00003810| 54 57 41 0a 09 7b 2f 7d | 62 7b 2f 7d 09 09 62 6f |TWA..{/}|b{/}..bo|
|00003820| 74 74 6f 6d 20 6f 66 20 | 54 57 41 0a 0a 52 65 73 |ttom of |TWA..Res|
|00003830| 69 7a 65 73 20 77 69 6e | 64 6f 77 20 6f 6e 20 73 |izes win|dow on s|
|00003840| 63 72 65 65 6e 20 74 6f | 20 74 68 65 20 73 69 7a |creen to| the siz|
|00003850| 65 20 67 69 76 65 6e 2e | 0a 0a 57 69 6e 64 6f 77 |e given.|..Window|
|00003860| 20 77 69 6c 6c 20 6e 6f | 74 20 63 68 61 6e 67 65 | will no|t change|
|00003870| 20 69 6e 20 73 69 7a 65 | 2c 20 75 6e 6c 65 73 73 | in size|, unless|
|00003880| 20 69 74 20 69 73 20 63 | 75 72 72 65 6e 74 6c 79 | it is c|urrently|
|00003890| 20 61 74 20 66 75 6c 6c | 20 73 69 7a 65 20 69 6e | at full| size in|
|000038a0| 20 77 68 69 63 68 20 63 | 61 73 65 20 69 74 20 77 | which c|ase it w|
|000038b0| 69 6c 6c 20 63 68 61 6e | 67 65 20 74 6f 20 74 68 |ill chan|ge to th|
|000038c0| 65 20 6e 65 77 20 73 69 | 7a 65 20 6f 66 20 74 68 |e new si|ze of th|
|000038d0| 65 20 77 69 6e 64 6f 77 | 2e 0a 00 00 44 41 54 41 |e window|....DATA|
|000038e0| 3e 01 00 00 50 52 4f 43 | 65 6d 62 65 64 77 69 6e |>...PROC|embedwin|
|000038f0| 28 70 61 72 65 6e 74 2c | 63 68 69 6c 64 2c 66 6c |(parent,|child,fl|
|00003900| 61 67 73 29 0a 23 50 61 | 72 65 6e 74 20 21 52 6f |ags).#Pa|rent !Ro|
|00003910| 6f 74 0a 3d 3e 09 7b 2f | 7d 70 61 72 65 6e 74 7b |ot.=>.{/|}parent{|
|00003920| 2f 7d 09 70 61 72 65 6e | 74 20 77 69 6e 64 6f 77 |/}.paren|t window|
|00003930| 20 68 61 6e 64 6c 65 0a | 09 7b 2f 7d 63 68 69 6c | handle.|.{/}chil|
|00003940| 64 7b 2f 7d 09 63 68 69 | 6c 64 20 77 69 6e 64 6f |d{/}.chi|ld windo|
|00003950| 77 20 68 61 6e 64 6c 65 | 0a 09 7b 2f 7d 66 6c 61 |w handle|..{/}fla|
|00003960| 67 73 7b 2f 7d 09 3c 6e | 65 73 74 69 6e 67 20 66 |gs{/}.<n|esting f|
|00003970| 6c 61 67 73 3d 3e 57 69 | 6d 70 3a 57 69 6d 70 5f |lags=>Wi|mp:Wimp_|
|00003980| 4f 70 65 6e 57 69 6e 64 | 6f 77 2e 66 6c 61 67 73 |OpenWind|ow.flags|
|00003990| 3e 0a 0a 45 6d 62 65 64 | 20 61 20 77 69 6e 64 6f |>..Embed| a windo|
|000039a0| 77 20 77 69 74 68 69 6e | 20 61 6e 6f 74 68 65 72 |w within| another|
|000039b0| 2e 20 4d 6f 73 74 20 6f | 66 20 74 68 65 20 74 69 |. Most o|f the ti|
|000039c0| 6d 65 20 79 6f 75 27 6c | 6c 20 77 61 6e 74 20 74 |me you'l|l want t|
|000039d0| 6f 20 75 73 65 20 66 6c | 61 67 73 20 3d 20 30 2e |o use fl|ags = 0.|
|000039e0| 0a 0a 4e 6f 74 65 3a 20 | 54 68 69 73 20 77 69 6c |..Note: |This wil|
|000039f0| 6c 20 6f 6e 6c 79 20 77 | 6f 72 6b 20 6f 6e 20 74 |l only w|ork on t|
|00003a00| 68 65 20 6e 65 73 74 65 | 64 20 77 69 6e 64 6f 77 |he neste|d window|
|00003a10| 20 6d 61 6e 61 67 65 72 | 2e 0a 00 00 44 41 54 41 | manager|....DATA|
|00003a20| 32 01 00 00 50 52 4f 43 | 75 6e 65 6d 62 65 64 77 |2...PROC|unembedw|
|00003a30| 69 6e 28 70 61 72 65 6e | 74 2c 63 68 69 6c 64 29 |in(paren|t,child)|
|00003a40| 0a 23 50 61 72 65 6e 74 | 20 21 52 6f 6f 74 0a 3d |.#Parent| !Root.=|
|00003a50| 3e 09 7b 2f 7d 70 61 72 | 65 6e 74 7b 2f 7d 09 70 |>.{/}par|ent{/}.p|
|00003a60| 61 72 65 6e 74 20 77 69 | 6e 64 6f 77 20 68 61 6e |arent wi|ndow han|
|00003a70| 64 6c 65 0a 09 7b 2f 7d | 63 68 69 6c 64 7b 2f 7d |dle..{/}|child{/}|
|00003a80| 09 63 68 69 6c 64 20 77 | 69 6e 64 6f 77 20 68 61 |.child w|indow ha|
|00003a90| 6e 64 6c 65 0a 0a 55 6e | 65 6d 62 65 64 73 20 61 |ndle..Un|embeds a|
|00003aa0| 20 77 69 6e 64 6f 77 20 | 66 72 6f 6d 20 77 69 74 | window |from wit|
|00003ab0| 68 69 6e 20 61 6e 6f 74 | 68 65 72 2e 20 54 68 69 |hin anot|her. Thi|
|00003ac0| 73 20 63 6c 6f 73 65 73 | 20 74 68 65 20 77 69 6e |s closes| the win|
|00003ad0| 64 6f 77 20 77 69 74 68 | 69 6e 20 69 74 27 73 20 |dow with|in it's |
|00003ae0| 70 61 72 65 6e 74 20 61 | 6e 64 20 61 6c 6c 6f 77 |parent a|nd allow|
|00003af0| 73 20 69 74 20 74 6f 20 | 62 65 20 6f 70 65 6e 65 |s it to |be opene|
|00003b00| 64 20 6f 75 74 73 69 64 | 65 20 6f 6e 63 65 20 6d |d outsid|e once m|
|00003b10| 6f 72 65 2e 0a 0a 4e 6f | 74 65 3a 20 54 68 69 73 |ore...No|te: This|
|00003b20| 20 77 69 6c 6c 20 6f 6e | 6c 79 20 77 6f 72 6b 20 | will on|ly work |
|00003b30| 6f 6e 20 74 68 65 20 6e | 65 73 74 65 64 20 77 69 |on the n|ested wi|
|00003b40| 6e 64 6f 77 20 6d 61 6e | 61 67 65 72 2e 0a 00 00 |ndow man|ager....|
|00003b50| 44 41 54 41 78 01 00 00 | 50 52 4f 43 65 6d 62 65 |DATAx...|PROCembe|
|00003b60| 64 77 69 6e 77 69 74 68 | 28 70 61 72 65 6e 74 2c |dwinwith|(parent,|
|00003b70| 63 68 69 6c 64 2c 66 6c | 61 67 73 2c 77 69 6e 66 |child,fl|ags,winf|
|00003b80| 6c 61 67 73 29 0a 23 50 | 61 72 65 6e 74 20 21 52 |lags).#P|arent !R|
|00003b90| 6f 6f 74 0a 3d 3e 09 7b | 2f 7d 70 61 72 65 6e 74 |oot.=>.{|/}parent|
|00003ba0| 7b 2f 7d 09 70 61 72 65 | 6e 74 20 77 69 6e 64 6f |{/}.pare|nt windo|
|00003bb0| 77 20 68 61 6e 64 6c 65 | 0a 09 7b 2f 7d 63 68 69 |w handle|..{/}chi|
|00003bc0| 6c 64 7b 2f 7d 09 63 68 | 69 6c 64 20 77 69 6e 64 |ld{/}.ch|ild wind|
|00003bd0| 6f 77 20 68 61 6e 64 6c | 65 0a 09 7b 2f 7d 66 6c |ow handl|e..{/}fl|
|00003be0| 61 67 73 7b 2f 7d 09 3c | 6e 65 73 74 69 6e 67 20 |ags{/}.<|nesting |
|00003bf0| 66 6c 61 67 73 3d 3e 57 | 69 6d 70 3a 57 69 6d 70 |flags=>W|imp:Wimp|
|00003c00| 5f 4f 70 65 6e 57 69 6e | 64 6f 77 2e 66 6c 61 67 |_OpenWin|dow.flag|
|00003c10| 73 3e 0a 09 7b 2f 7d 77 | 69 6e 66 6c 61 67 73 7b |s>..{/}w|inflags{|
|00003c20| 2f 7d 09 3c 77 69 6e 64 | 6f 77 20 66 6c 61 67 73 |/}.<wind|ow flags|
|00003c30| 3d 3e 57 69 6d 70 3a 57 | 69 6d 70 5f 57 69 6e 64 |=>Wimp:W|imp_Wind|
|00003c40| 6f 77 46 6c 61 67 73 3e | 0a 0a 45 6d 62 65 64 20 |owFlags>|..Embed |
|00003c50| 61 20 77 69 6e 64 6f 77 | 20 77 69 74 68 69 6e 20 |a window| within |
|00003c60| 61 6e 6f 74 68 65 72 2c | 20 73 65 74 74 69 6e 67 |another,| setting|
|00003c70| 20 69 74 27 73 20 66 6c | 61 67 73 20 74 6f 20 7b | it's fl|ags to {|
|00003c80| 2f 7d 77 69 6e 66 6c 61 | 67 73 7b 2f 7d 2e 0a 0a |/}winfla|gs{/}...|
|00003c90| 4e 6f 74 65 3a 20 54 68 | 69 73 20 77 69 6c 6c 20 |Note: Th|is will |
|00003ca0| 6f 6e 6c 79 20 77 6f 72 | 6b 20 6f 6e 20 74 68 65 |only wor|k on the|
|00003cb0| 20 6e 65 73 74 65 64 20 | 77 69 6e 64 6f 77 20 6d | nested |window m|
|00003cc0| 61 6e 61 67 65 72 2e 0a | 44 49 52 24 dc 06 00 00 |anager..|DIR$....|
|00003cd0| dc 06 00 00 a4 43 00 00 | 47 ff ff ff d7 da 03 d7 |.....C..|G.......|
|00003ce0| 01 02 00 00 13 00 00 00 | 00 00 00 00 64 65 63 6f |........|....deco|
|00003cf0| 64 65 6d 65 6e 75 00 00 | a8 45 00 00 46 ff ff ff |demenu..|.E..F...|
|00003d00| 06 b2 f6 4d 09 01 00 00 | 13 00 00 00 00 00 00 00 |...M....|........|
|00003d10| 67 65 74 66 6f 6e 74 6d | 65 6e 75 00 b4 46 00 00 |getfontm|enu..F..|
|00003d20| 46 ff ff ff 54 a5 f6 4d | a8 00 00 00 13 00 00 00 |F...T..M|........|
|00003d30| 00 00 00 00 6d 65 6e 75 | 74 69 63 6b 65 64 00 00 |....menu|ticked..|
|00003d40| 5c 47 00 00 46 ff ff ff | ed a6 f6 4d a8 00 00 00 |\G..F...|...M....|
|00003d50| 13 00 00 00 00 00 00 00 | 6d 65 6e 75 73 68 61 64 |........|menushad|
|00003d60| 65 64 00 00 04 48 00 00 | 46 ff ff ff bf ab f6 4d |ed...H..|F......M|
|00003d70| aa 00 00 00 13 00 00 00 | 00 00 00 00 67 65 74 6d |........|....getm|
|00003d80| 65 6e 75 74 65 78 74 00 | b0 48 00 00 47 ff ff ff |enutext.|.H..G...|
|00003d90| 4b dc 03 d7 75 02 00 00 | 13 00 00 00 00 00 00 00 |K...u...|........|
|00003da0| 63 72 65 61 74 65 69 63 | 6f 6e 00 00 28 4b 00 00 |createic|on..(K..|
|00003db0| 47 ff ff ff a9 a4 e8 d6 | 41 03 00 00 13 00 00 00 |G.......|A.......|
|00003dc0| 00 00 00 00 43 72 65 61 | 74 65 49 63 6f 6e 42 61 |....Crea|teIconBa|
|00003dd0| 72 49 63 6f 6e 00 00 00 | 6c 4e 00 00 46 ff ff ff |rIcon...|lN..F...|
|00003de0| 56 8d f6 4d b8 00 00 00 | 13 00 00 00 00 00 00 00 |V..M....|........|
|00003df0| 69 6e 64 69 72 65 63 74 | 00 00 00 00 24 4f 00 00 |indirect|....$O..|
|00003e00| 46 ff ff ff 45 76 f6 4d | 0a 01 00 00 13 00 00 00 |F...Ev.M|........|
|00003e10| 00 00 00 00 6c 6f 61 64 | 74 65 6d 70 6c 61 74 65 |....load|template|
|00003e20| 00 00 00 00 30 50 00 00 | 46 ff ff ff 4b 7b f6 4d |....0P..|F...K{.M|
|00003e30| 84 00 00 00 13 00 00 00 | 00 00 00 00 6c 6f 61 64 |........|....load|
|00003e40| 73 70 72 69 74 65 73 00 | b4 50 00 00 47 ff ff ff |sprites.|.P..G...|
|00003e50| ed 91 73 06 3f 01 00 00 | 13 00 00 00 00 00 00 00 |..s.?...|........|
|00003e60| 6d 73 67 74 6f 6b 65 6e | 00 00 00 00 f4 51 00 00 |msgtoken|.....Q..|
|00003e70| 46 ff ff ff 50 ba f6 4d | 06 01 00 00 13 00 00 00 |F...P..M|........|
|00003e80| 00 00 00 00 63 72 65 61 | 74 65 66 74 6d 65 6e 75 |....crea|teftmenu|
|00003e90| 00 00 00 00 fc 52 00 00 | 46 ff ff ff 69 0b f9 4d |.....R..|F...i..M|
|00003ea0| a9 01 00 00 13 00 00 00 | 00 00 00 00 6d 73 67 74 |........|....msgt|
|00003eb0| 65 78 74 00 a8 54 00 00 | 46 ff ff ff c9 51 19 55 |ext..T..|F....Q.U|
|00003ec0| d5 00 00 00 13 00 00 00 | 00 00 00 00 63 72 65 61 |........|....crea|
|00003ed0| 74 65 6d 65 6e 75 00 00 | 80 55 00 00 46 ff ff ff |temenu..|.U..F...|
|00003ee0| 79 81 f6 4d b4 00 00 00 | 13 00 00 00 00 00 00 00 |y..M....|........|
|00003ef0| 73 79 73 74 65 6d 76 61 | 72 00 00 00 34 56 00 00 |systemva|r...4V..|
|00003f00| 46 ff ff ff bb 29 ed a9 | ac 00 00 00 13 00 00 00 |F....)..|........|
|00003f10| 00 00 00 00 73 74 72 69 | 6e 67 30 00 e0 56 00 00 |....stri|ng0..V..|
|00003f20| 46 ff ff ff b3 bf f8 4d | 93 00 00 00 13 00 00 00 |F......M|........|
|00003f30| 00 00 00 00 67 65 74 69 | 63 6f 6e 73 74 61 74 65 |....geti|constate|
|00003f40| 00 00 00 00 74 57 00 00 | 46 ff ff ff 13 d0 f8 4d |....tW..|F......M|
|00003f50| ad 00 00 00 13 00 00 00 | 00 00 00 00 67 65 74 69 |........|....geti|
|00003f60| 63 6f 6e 74 65 78 74 00 | 24 58 00 00 46 ff ff ff |context.|$X..F...|
|00003f70| c0 d4 f8 4d c0 00 00 00 | 13 00 00 00 00 00 00 00 |...M....|........|
|00003f80| 67 65 74 69 63 6f 6e 76 | 61 6c 69 64 00 00 00 00 |geticonv|alid....|
|00003f90| e4 58 00 00 46 ff ff ff | 55 48 f9 4d 71 00 00 00 |.X..F...|UH.Mq...|
|00003fa0| 13 00 00 00 00 00 00 00 | 6c 6f 77 65 72 00 00 00 |........|lower...|
|00003fb0| 58 59 00 00 46 ff ff ff | bc 4a f9 4d 6e 00 00 00 |XY..F...|.J.Mn...|
|00003fc0| 13 00 00 00 00 00 00 00 | 75 70 70 65 72 00 00 00 |........|upper...|
|00003fd0| c8 59 00 00 46 ff ff ff | 6d 4c f9 4d 4e 01 00 00 |.Y..F...|mL.MN...|
|00003fe0| 13 00 00 00 00 00 00 00 | 74 69 64 79 00 00 00 00 |........|tidy....|
|00003ff0| 18 5b 00 00 46 ff ff ff | 14 7e f6 4d e6 00 00 00 |.[..F...|.~.M....|
|00004000| 13 00 00 00 00 00 00 00 | 47 65 74 45 6e 76 00 00 |........|GetEnv..|
|00004010| 00 5c 00 00 46 ff ff ff | 1d ba 7b 4f b2 00 00 00 |.\..F...|..{O....|
|00004020| 13 00 00 00 00 00 00 00 | 66 69 6c 65 74 79 70 65 |........|filetype|
|00004030| 00 00 00 00 b4 5c 00 00 | 46 ff ff ff 87 72 f4 4d |.....\..|F....r.M|
|00004040| 8b 00 00 00 13 00 00 00 | 00 00 00 00 66 69 6c 65 |........|....file|
|00004050| 6c 65 6e 67 74 68 00 00 | 40 5d 00 00 47 ff ff ff |length..|@]..G...|
|00004060| ba d7 03 d7 01 01 00 00 | 13 00 00 00 00 00 00 00 |........|........|
|00004070| 65 72 72 6f 72 62 6f 78 | 00 00 00 00 44 5e 00 00 |errorbox|....D^..|
|00004080| 46 ff ff ff 7d 83 5f 4e | e8 00 00 00 13 00 00 00 |F...}._N|........|
|00004090| 00 00 00 00 63 6c 61 69 | 6d 00 00 00 2c 5f 00 00 |....clai|m...,_..|
|000040a0| 47 ff ff ff c9 ce 03 d7 | ff 00 00 00 13 00 00 00 |G.......|........|
|000040b0| 00 00 00 00 74 61 73 6b | 6e 61 6d 65 00 00 00 00 |....task|name....|
|000040c0| 2c 60 00 00 46 ff ff ff | c3 f4 f4 4d 80 00 00 00 |,`..F...|...M....|
|000040d0| 13 00 00 00 00 00 00 00 | 77 69 6e 64 6f 77 74 61 |........|windowta|
|000040e0| 73 6b 00 00 ac 60 00 00 | 46 ff ff ff 0e 26 ed a9 |sk...`..|F....&..|
|000040f0| b3 00 00 00 13 00 00 00 | 00 00 00 00 72 65 61 64 |........|....read|
|00004100| 74 61 73 6b 73 74 72 69 | 6e 67 00 00 60 61 00 00 |taskstri|ng..`a..|
|00004110| 46 ff ff ff 62 43 f5 4d | d2 00 00 00 13 00 00 00 |F...bC.M|........|
|00004120| 00 00 00 00 62 61 63 6b | 6f 66 77 69 6e 73 74 61 |....back|ofwinsta|
|00004130| 63 6b 00 00 34 62 00 00 | 46 ff ff ff f2 5a f5 4d |ck..4b..|F....Z.M|
|00004140| a5 00 00 00 13 00 00 00 | 00 00 00 00 77 69 6e 73 |........|....wins|
|00004150| 74 61 63 6b 6e 65 78 74 | 00 00 00 00 dc 62 00 00 |tacknext|.....b..|
|00004160| 46 ff ff ff 04 6d f4 4d | 81 00 00 00 13 00 00 00 |F....m.M|........|
|00004170| 00 00 00 00 6c 65 61 66 | 6e 61 6d 65 00 00 00 00 |....leaf|name....|
|00004180| 60 63 00 00 46 ff ff ff | fb 61 f4 4d 97 00 00 00 |`c..F...|.a.M....|
|00004190| 13 00 00 00 00 00 00 00 | 70 61 74 68 6e 61 6d 65 |........|pathname|
|000041a0| 00 00 00 00 f8 63 00 00 | 47 ff ff ff a4 cb 03 d7 |.....c..|G.......|
|000041b0| 0f 01 00 00 13 00 00 00 | 00 00 00 00 6c 6f 6e 67 |........|....long|
|000041c0| 66 69 6c 65 6e 61 6d 65 | 00 00 00 00 08 65 00 00 |filename|.....e..|
|000041d0| 47 ff ff ff c9 09 06 d7 | ac 00 00 00 13 00 00 00 |G.......|........|
|000041e0| 00 00 00 00 72 65 61 64 | 63 6d 6f 73 00 00 00 00 |....read|cmos....|
|000041f0| b4 65 00 00 46 ff ff ff | a6 6a f9 4d 82 00 00 00 |.e..F...|.j.M....|
|00004200| 13 00 00 00 00 00 00 00 | 73 77 69 6e 75 6d 62 65 |........|swinumbe|
|00004210| 72 00 00 00 38 66 00 00 | 46 ff ff ff bb 4e f9 4d |r...8f..|F....N.M|
|00004220| b4 00 00 00 13 00 00 00 | 00 00 00 00 73 74 72 69 |........|....stri|
|00004230| 70 73 70 61 63 65 73 00 | ec 66 00 00 46 ff ff ff |pspaces.|.f..F...|
|00004240| 7d 51 f9 4d 0b 02 00 00 | 13 00 00 00 00 00 00 00 |}Q.M....|........|
|00004250| 73 75 62 73 74 76 61 72 | 73 00 00 00 f8 68 00 00 |substvar|s....h..|
|00004260| 46 ff ff ff 26 5a f9 4d | 93 01 00 00 13 00 00 00 |F...&Z.M|........|
|00004270| 00 00 00 00 73 75 62 73 | 74 76 61 72 73 70 00 00 |....subs|tvarsp..|
|00004280| 8c 6a 00 00 47 ff ff ff | 43 b9 04 d7 bf 00 00 00 |.j..G...|C.......|
|00004290| 13 00 00 00 00 00 00 00 | 67 73 74 72 61 6e 73 00 |........|gstrans.|
|000042a0| 4c 6b 00 00 46 ff ff ff | 19 e9 8b 4f 1f 02 00 00 |Lk..F...|...O....|
|000042b0| 13 00 00 00 00 00 00 00 | 72 65 61 64 73 74 61 74 |........|readstat|
|000042c0| 75 73 66 69 6c 65 00 00 | 6c 6d 00 00 46 ff ff ff |usfile..|lm..F...|
|000042d0| f9 d0 8b 4f b7 00 00 00 | 13 00 00 00 00 00 00 00 |...O....|........|
|000042e0| 73 74 61 74 75 73 67 65 | 74 00 00 00 24 6e 00 00 |statusge|t...$n..|
|000042f0| 46 ff ff ff 24 e1 8b 4f | 9d 00 00 00 13 00 00 00 |F...$..O|........|
|00004300| 00 00 00 00 73 74 61 74 | 75 73 67 65 74 76 00 00 |....stat|usgetv..|
|00004310| c4 6e 00 00 46 ff ff ff | 6a ca 7b 4f 0b 01 00 00 |.n..F...|j.{O....|
|00004320| 13 00 00 00 00 00 00 00 | 62 61 73 65 74 79 70 65 |........|basetype|
|00004330| 00 00 00 00 d0 6f 00 00 | 47 ff ff ff 84 c0 04 d7 |.....o..|G.......|
|00004340| 26 01 00 00 13 00 00 00 | 00 00 00 00 66 69 6e 64 |&.......|....find|
|00004350| 74 61 73 6b 00 00 00 00 | f8 70 00 00 46 ff ff ff |task....|.p..F...|
|00004360| ea d6 8b 4f 8c 00 00 00 | 13 00 00 00 00 00 00 00 |...O....|........|
|00004370| 73 74 61 74 75 73 67 65 | 74 66 6c 61 67 00 00 00 |statusge|tflag...|
|00004380| 84 71 00 00 47 ff ff ff | cf 0d ff 92 92 00 00 00 |.q..G...|........|
|00004390| 33 00 00 00 00 00 00 00 | 70 61 72 65 6e 74 77 69 |3.......|parentwi|
|000043a0| 6e 00 00 00 44 41 54 41 | 01 02 00 00 46 4e 64 65 |n...DATA|....FNde|
|000043b0| 63 6f 64 65 6d 65 6e 75 | 28 6d 65 6e 75 29 0a 23 |codemenu|(menu).#|
|000043c0| 50 61 72 65 6e 74 20 21 | 52 6f 6f 74 0a 3d 3e 09 |Parent !|Root.=>.|
|000043d0| 7b 2f 7d 6d 65 6e 75 7b | 2f 7d 09 70 6f 69 6e 74 |{/}menu{|/}.point|
|000043e0| 65 72 20 74 6f 20 6d 65 | 6e 75 20 62 6c 6f 63 6b |er to me|nu block|
|000043f0| 0a 3c 3d 09 73 74 72 69 | 6e 67 20 63 72 65 61 74 |.<=.stri|ng creat|
|00004400| 65 64 20 66 72 6f 6d 20 | 6d 65 6e 75 20 65 6e 74 |ed from |menu ent|
|00004410| 72 69 65 73 0a 0a 52 65 | 74 75 72 6e 20 6d 65 6e |ries..Re|turn men|
|00004420| 75 20 73 74 72 69 6e 67 | 20 66 72 6f 6d 20 64 61 |u string| from da|
|00004430| 74 61 20 73 74 6f 72 65 | 64 20 61 74 20 62 25 2c |ta store|d at b%,|
|00004440| 20 75 73 69 6e 67 20 6d | 65 6e 75 20 61 73 20 74 | using m|enu as t|
|00004450| 65 6d 70 6c 61 74 65 2e | 20 46 6f 6e 74 20 6d 65 |emplate.| Font me|
|00004460| 6e 75 73 20 61 72 65 20 | 68 61 6e 64 6c 65 64 20 |nus are |handled |
|00004470| 63 6f 72 72 65 63 74 6c | 79 20 61 6e 64 20 77 69 |correctl|y and wi|
|00004480| 6c 6c 20 72 65 74 75 72 | 6e 20 73 74 72 69 6e 67 |ll retur|n string|
|00004490| 73 20 66 6f 72 20 75 73 | 65 20 69 6e 20 3c 46 6f |s for us|e in <Fo|
|000044a0| 6e 74 5f 46 69 6e 64 46 | 6f 6e 74 3d 3e 4f 53 3a |nt_FindF|ont=>OS:|
|000044b0| 46 6f 6e 74 5f 46 69 6e | 64 46 6f 6e 74 3e 2e 20 |Font_Fin|dFont>. |
|000044c0| 4b 65 79 62 6f 61 72 64 | 20 73 68 6f 72 74 63 75 |Keyboard| shortcu|
|000044d0| 74 73 20 77 69 6c 6c 20 | 62 65 20 72 65 6d 6f 76 |ts will |be remov|
|000044e0| 65 64 20 69 66 20 74 68 | 65 79 20 61 72 65 20 72 |ed if th|ey are r|
|000044f0| 65 63 6f 67 6e 69 73 65 | 64 2e 20 54 68 69 73 20 |ecognise|d. This |
|00004500| 69 6e 63 6c 75 64 65 73 | 20 61 6c 6c 20 74 68 65 |includes| all the|
|00004510| 20 6b 65 79 73 20 70 72 | 65 66 69 78 65 64 20 62 | keys pr|efixed b|
|00004520| 79 20 5e 20 6f 72 20 74 | 68 65 20 75 70 20 61 72 |y ^ or t|he up ar|
|00004530| 72 6f 77 2c 20 70 6c 75 | 73 20 74 68 6f 73 65 20 |row, plu|s those |
|00004540| 64 65 73 63 72 69 62 65 | 64 20 69 6e 20 3c 46 4e |describe|d in <FN|
|00004550| 63 72 65 61 74 65 6d 65 | 6e 75 3d 3e 6d 65 6e 75 |createme|nu=>menu|
|00004560| 63 6f 6e 74 72 6f 6c 3e | 2e 0a 0a 55 73 65 20 63 |control>|...Use c|
|00004570| 75 72 6d 65 6e 75 25 20 | 69 66 20 63 72 65 61 74 |urmenu% |if creat|
|00004580| 65 64 20 75 73 69 6e 67 | 20 3c 50 52 4f 43 69 62 |ed using| <PROCib|
|00004590| 6d 65 6e 75 3e 20 6f 72 | 20 3c 50 52 4f 43 6d 65 |menu> or| <PROCme|
|000045a0| 6e 75 3e 2e 0a 00 00 00 | 44 41 54 41 09 01 00 00 |nu>.....|DATA....|
|000045b0| 46 4e 67 65 74 66 6f 6e | 74 6d 65 6e 75 0a 23 50 |FNgetfon|tmenu.#P|
|000045c0| 61 72 65 6e 74 20 21 52 | 6f 6f 74 0a 23 57 72 61 |arent !R|oot.#Wra|
|000045d0| 70 20 6f 66 66 0a 5c 3c | 3d 09 70 6f 69 6e 74 65 |p off.\<|=.pointe|
|000045e0| 72 20 74 6f 20 6d 65 6e | 75 20 62 6c 6f 63 6b 20 |r to men|u block |
|000045f0| 6f 66 20 66 6f 6e 74 20 | 6d 65 6e 75 0a 09 6f 72 |of font |menu..or|
|00004600| 20 2d 31 20 69 66 20 6e | 6f 74 20 65 6e 6f 75 67 | -1 if n|ot enoug|
|00004610| 68 20 73 70 61 63 65 0a | 23 57 72 61 70 0a 0a 52 |h space.|#Wrap..R|
|00004620| 65 74 75 72 6e 20 6c 6f | 63 61 74 69 6f 6e 20 6f |eturn lo|cation o|
|00004630| 66 20 66 6f 6e 74 20 6d | 65 6e 75 2e 20 42 6c 6f |f font m|enu. Blo|
|00004640| 63 6b 20 69 73 20 73 74 | 6f 72 65 64 20 69 6e 20 |ck is st|ored in |
|00004650| 52 4d 41 20 28 75 6e 6c | 65 73 73 20 3c 48 65 61 |RMA (unl|ess <Hea|
|00004660| 70 4c 69 62 3d 3e 48 65 | 61 70 4c 69 62 3a 21 52 |pLib=>He|apLib:!R|
|00004670| 6f 6f 74 3e 20 69 6e 73 | 74 61 6c 6c 65 64 29 20 |oot> ins|talled) |
|00004680| 61 6e 64 20 6d 75 73 74 | 20 62 65 20 72 65 6c 65 |and must| be rele|
|00004690| 61 73 65 64 20 77 69 74 | 68 20 3c 50 52 4f 43 72 |ased wit|h <PROCr|
|000046a0| 65 6c 65 61 73 65 66 6f | 6e 74 6d 65 6e 75 3e 2e |eleasefo|ntmenu>.|
|000046b0| 0a 00 00 00 44 41 54 41 | a8 00 00 00 46 4e 6d 65 |....DATA|....FNme|
|000046c0| 6e 75 74 69 63 6b 65 64 | 28 6d 65 6e 75 2c 69 74 |nuticked|(menu,it|
|000046d0| 65 6d 29 0a 23 50 61 72 | 65 6e 74 20 21 52 6f 6f |em).#Par|ent !Roo|
|000046e0| 74 0a 3d 3e 09 7b 2f 7d | 6d 65 6e 75 7b 2f 7d 09 |t.=>.{/}|menu{/}.|
|000046f0| 70 6f 69 6e 74 65 72 20 | 74 6f 20 6d 65 6e 75 20 |pointer |to menu |
|00004700| 62 6c 6f 63 6b 0a 09 7b | 2f 7d 69 74 65 6d 7b 2f |block..{|/}item{/|
|00004710| 7d 09 6f 70 74 69 6f 6e | 20 74 6f 20 63 68 65 63 |}.option| to chec|
|00004720| 6b 0a 5c 3c 3d 09 54 52 | 55 45 20 69 66 20 69 74 |k.\<=.TR|UE if it|
|00004730| 65 6d 20 69 73 20 74 69 | 63 6b 65 64 0a 0a 43 68 |em is ti|cked..Ch|
|00004740| 65 63 6b 20 69 66 20 6d | 65 6e 75 20 69 74 65 6d |eck if m|enu item|
|00004750| 20 69 73 20 74 69 63 6b | 65 64 2e 0a 44 41 54 41 | is tick|ed..DATA|
|00004760| a8 00 00 00 46 4e 6d 65 | 6e 75 73 68 61 64 65 64 |....FNme|nushaded|
|00004770| 28 6d 65 6e 75 2c 69 74 | 65 6d 29 0a 23 50 61 72 |(menu,it|em).#Par|
|00004780| 65 6e 74 20 21 52 6f 6f | 74 0a 3d 3e 09 7b 2f 7d |ent !Roo|t.=>.{/}|
|00004790| 6d 65 6e 75 7b 2f 7d 09 | 70 6f 69 6e 74 65 72 20 |menu{/}.|pointer |
|000047a0| 74 6f 20 6d 65 6e 75 20 | 62 6c 6f 63 6b 0a 09 7b |to menu |block..{|
|000047b0| 2f 7d 69 74 65 6d 7b 2f | 7d 09 6f 70 74 69 6f 6e |/}item{/|}.option|
|000047c0| 20 74 6f 20 63 68 65 63 | 6b 0a 5c 3c 3d 09 54 52 | to chec|k.\<=.TR|
|000047d0| 55 45 20 69 66 20 69 74 | 65 6d 20 69 73 20 73 68 |UE if it|em is sh|
|000047e0| 61 64 65 64 0a 0a 43 68 | 65 63 6b 20 69 66 20 6d |aded..Ch|eck if m|
|000047f0| 65 6e 75 20 69 74 65 6d | 20 69 73 20 73 68 61 64 |enu item| is shad|
|00004800| 65 64 2e 0a 44 41 54 41 | aa 00 00 00 46 4e 67 65 |ed..DATA|....FNge|
|00004810| 74 6d 65 6e 75 74 65 78 | 74 28 6d 65 6e 75 2c 6e |tmenutex|t(menu,n|
|00004820| 75 6d 62 65 72 29 0a 23 | 50 61 72 65 6e 74 20 21 |umber).#|Parent !|
|00004830| 52 6f 6f 74 0a 3d 3e 09 | 7b 2f 7d 6d 65 6e 75 7b |Root.=>.|{/}menu{|
|00004840| 2f 7d 09 70 6f 69 6e 74 | 65 72 20 74 6f 20 6d 65 |/}.point|er to me|
|00004850| 6e 75 0a 09 7b 2f 7d 6e | 75 6d 62 65 72 7b 2f 7d |nu..{/}n|umber{/}|
|00004860| 09 6f 70 74 69 6f 6e 20 | 6e 75 6d 62 65 72 20 74 |.option |number t|
|00004870| 6f 20 72 65 61 64 0a 5c | 3c 3d 09 74 65 78 74 20 |o read.\|<=.text |
|00004880| 6f 66 20 6f 70 74 69 6f | 6e 0a 0a 52 65 61 64 20 |of optio|n..Read |
|00004890| 74 68 65 20 74 65 78 74 | 20 66 72 6f 6d 20 6f 70 |the text| from op|
|000048a0| 74 69 6f 6e 20 6f 6e 20 | 6d 65 6e 75 2e 0a 00 00 |tion on |menu....|
|000048b0| 44 41 54 41 75 02 00 00 | 46 4e 63 72 65 61 74 65 |DATAu...|FNcreate|
|000048c0| 69 63 6f 6e 28 77 69 6e | 2c 78 2c 79 2c 77 69 64 |icon(win|,x,y,wid|
|000048d0| 74 68 2c 68 65 69 67 68 | 74 2c 74 69 74 6c 65 24 |th,heigh|t,title$|
|000048e0| 2c 76 61 6c 69 64 24 2c | 63 6f 6c 2c 65 73 67 2c |,valid$,|col,esg,|
|000048f0| 62 75 74 2c 66 6c 61 67 | 73 29 0a 23 50 61 72 65 |but,flag|s).#Pare|
|00004900| 6e 74 20 21 52 6f 6f 74 | 0a 3d 3e 09 7b 2f 7d 77 |nt !Root|.=>.{/}w|
|00004910| 69 6e 7b 2f 7d 09 77 69 | 6e 64 6f 77 20 68 61 6e |in{/}.wi|ndow han|
|00004920| 64 6c 65 0a 09 7b 2f 7d | 78 7b 2f 7d 09 09 6c 65 |dle..{/}|x{/}..le|
|00004930| 66 74 20 6f 66 20 69 63 | 6f 6e 0a 09 7b 2f 7d 79 |ft of ic|on..{/}y|
|00004940| 7b 2f 7d 09 09 74 6f 70 | 20 6f 66 20 69 63 6f 6e |{/}..top| of icon|
|00004950| 0a 09 7b 2f 7d 77 69 64 | 74 68 7b 2f 7d 09 77 69 |..{/}wid|th{/}.wi|
|00004960| 64 74 68 20 6f 66 20 69 | 63 6f 6e 20 61 63 72 6f |dth of i|con acro|
|00004970| 73 73 0a 09 7b 2f 7d 68 | 65 69 67 68 74 7b 2f 7d |ss..{/}h|eight{/}|
|00004980| 09 68 65 69 67 68 74 20 | 6f 66 20 69 63 6f 6e 20 |.height |of icon |
|00004990| 64 6f 77 6e 0a 09 7b 2f | 7d 74 69 74 6c 65 24 7b |down..{/|}title${|
|000049a0| 2f 7d 09 74 65 78 74 20 | 73 74 72 69 6e 67 2c 20 |/}.text |string, |
|000049b0| 6f 72 20 43 48 52 24 28 | 30 29 20 66 6f 72 20 61 |or CHR$(|0) for a|
|000049c0| 20 66 75 6c 6c 20 70 61 | 74 68 20 6e 61 6d 65 0a | full pa|th name.|
|000049d0| 09 7b 2f 7d 76 61 6c 69 | 64 24 7b 2f 7d 09 76 61 |.{/}vali|d${/}.va|
|000049e0| 6c 69 64 61 74 69 6f 6e | 20 73 74 72 69 6e 67 20 |lidation| string |
|000049f0| 6f 72 20 6e 75 6c 6c 20 | 66 6f 72 20 6e 6f 6e 65 |or null |for none|
|00004a00| 0a 09 7b 2f 7d 63 6f 6c | 7b 2f 7d 09 63 6f 6c 6f |..{/}col|{/}.colo|
|00004a10| 75 72 20 6f 66 20 69 63 | 6f 6e 20 26 42 46 20 28 |ur of ic|on &BF (|
|00004a20| 42 3d 62 61 63 6b 67 72 | 6f 75 6e 64 2c 20 46 3d |B=backgr|ound, F=|
|00004a30| 66 6f 72 65 67 72 6f 75 | 6e 64 29 20 6f 72 20 66 |foregrou|nd) or f|
|00004a40| 6f 6e 74 20 68 61 6e 64 | 6c 65 0a 09 7b 2f 7d 45 |ont hand|le..{/}E|
|00004a50| 53 47 7b 2f 7d 09 45 78 | 63 75 6c 73 69 76 65 20 |SG{/}.Ex|culsive |
|00004a60| 53 65 6c 65 63 74 69 6f | 6e 20 47 72 6f 75 70 20 |Selectio|n Group |
|00004a70| 6f 72 20 30 20 66 6f 72 | 20 6e 6f 6e 65 0a 09 7b |or 0 for| none..{|
|00004a80| 2f 7d 62 75 74 7b 2f 7d | 09 3c 62 75 74 74 6f 6e |/}but{/}|.<button|
|00004a90| 20 74 79 70 65 3d 3e 57 | 69 6d 70 3a 57 69 6d 70 | type=>W|imp:Wimp|
|00004aa0| 5f 69 63 6f 6e 62 75 74 | 74 6f 6e 3e 20 28 30 2d |_iconbut|ton> (0-|
|00004ab0| 31 35 29 0a 09 7b 2f 7d | 66 6c 61 67 73 7b 2f 7d |15)..{/}|flags{/}|
|00004ac0| 09 6f 74 68 65 72 20 3c | 66 6c 61 67 73 3d 3e 57 |.other <|flags=>W|
|00004ad0| 69 6d 70 3a 57 69 6d 70 | 5f 69 63 6f 6e 66 6c 61 |imp:Wimp|_iconfla|
|00004ae0| 67 73 3e 20 7b 66 43 6f | 64 65 7d 25 41 46 56 48 |gs> {fCo|de}%AFVH|
|00004af0| 42 30 30 7b 66 7d 20 28 | 41 3d 46 6f 6e 74 2c 20 |B00{f} (|A=Font, |
|00004b00| 46 3d 46 69 6c 6c 65 64 | 2c 20 42 3d 42 6f 72 64 |F=Filled|, B=Bord|
|00004b10| 65 72 29 0a 0a 43 72 65 | 61 74 65 20 61 6e 20 69 |er)..Cre|ate an i|
|00004b20| 63 6f 6e 2e 0a 00 00 00 | 44 41 54 41 41 03 00 00 |con.....|DATAA...|
|00004b30| 46 4e 43 72 65 61 74 65 | 49 63 6f 6e 42 61 72 49 |FNCreate|IconBarI|
|00004b40| 63 6f 6e 28 73 70 72 69 | 74 65 24 2c 6e 61 6d 65 |con(spri|te$,name|
|00004b50| 24 2c 70 6f 73 69 74 69 | 6f 6e 29 0a 23 50 61 72 |$,positi|on).#Par|
|00004b60| 65 6e 74 20 21 52 6f 6f | 74 0a 3d 3e 09 7b 2f 7d |ent !Roo|t.=>.{/}|
|00004b70| 73 70 72 69 74 65 24 7b | 2f 7d 09 73 70 72 69 74 |sprite${|/}.sprit|
|00004b80| 65 20 74 6f 20 75 73 65 | 20 28 66 72 6f 6d 20 77 |e to use| (from w|
|00004b90| 69 6d 70 20 70 6f 6f 6c | 29 0a 09 7b 2f 7d 6e 61 |imp pool|)..{/}na|
|00004ba0| 6d 65 24 7b 2f 7d 09 74 | 65 78 74 20 74 6f 20 61 |me${/}.t|ext to a|
|00004bb0| 70 70 65 61 72 20 75 6e | 64 65 72 20 69 63 6f 6e |ppear un|der icon|
|00004bc0| 20 28 6f 72 20 6e 75 6c | 6c 29 0a 09 7b 2f 7d 70 | (or nul|l)..{/}p|
|00004bd0| 6f 73 69 74 69 6f 6e 7b | 2f 7d 09 3c 69 63 6f 6e |osition{|/}.<icon|
|00004be0| 62 61 72 20 70 6f 73 69 | 74 69 6f 6e 3d 3e 2e 70 |bar posi|tion=>.p|
|00004bf0| 6f 73 69 74 69 6f 6e 3e | 0a 0a 43 72 65 61 74 65 |osition>|..Create|
|00004c00| 20 61 6e 20 69 63 6f 6e | 20 66 6f 72 20 74 68 65 | an icon| for the|
|00004c10| 20 69 63 6f 6e 20 62 61 | 72 2e 0a 23 53 75 62 70 | icon ba|r..#Subp|
|00004c20| 61 67 65 20 70 6f 73 69 | 74 69 6f 6e 0a 46 4e 43 |age posi|tion.FNC|
|00004c30| 72 65 61 74 65 49 63 6f | 6e 42 61 72 49 63 6f 6e |reateIco|nBarIcon|
|00004c40| 20 70 6f 73 74 69 6f 6e | 0a 54 68 69 73 20 69 73 | postion|.This is|
|00004c50| 20 61 20 6d 61 73 6b 65 | 64 20 62 79 74 65 20 74 | a maske|d byte t|
|00004c60| 6f 20 69 6e 64 69 63 61 | 74 65 20 74 68 65 20 70 |o indica|te the p|
|00004c70| 6f 73 69 74 69 6f 6e 20 | 79 6f 75 20 77 69 73 68 |osition |you wish|
|00004c80| 20 74 68 65 20 69 63 6f | 6e 20 74 6f 20 74 61 6b | the ico|n to tak|
|00004c90| 65 20 6f 6e 20 74 68 65 | 20 69 63 6f 6e 62 61 72 |e on the| iconbar|
|00004ca0| 2e 20 54 68 65 20 6c 6f | 77 20 62 79 74 65 20 69 |. The lo|w byte i|
|00004cb0| 73 20 74 68 65 20 61 62 | 73 6f 6c 75 74 65 20 3c |s the ab|solute <|
|00004cc0| 70 6f 73 69 74 69 6f 6e | 20 61 73 20 67 69 76 65 |position| as give|
|00004cd0| 6e 20 74 6f 20 57 69 6d | 70 5f 43 72 65 61 74 65 |n to Wim|p_Create|
|00004ce0| 49 63 6f 6e 3d 3e 57 69 | 6d 70 3a 57 69 6d 70 5f |Icon=>Wi|mp:Wimp_|
|00004cf0| 43 72 65 61 74 65 49 63 | 6f 6e 2e 70 6f 73 69 74 |CreateIc|on.posit|
|00004d00| 69 6f 6e 3e 2c 20 61 6e | 64 20 74 68 65 20 6e 65 |ion>, an|d the ne|
|00004d10| 78 74 20 62 79 74 65 28 | 73 29 20 75 70 20 74 68 |xt byte(|s) up th|
|00004d20| 65 20 70 61 72 61 6d 65 | 74 65 72 2e 20 46 6f 72 |e parame|ter. For|
|00004d30| 20 3c 70 72 69 6f 72 69 | 74 69 65 73 3d 3e 57 69 | <priori|ties=>Wi|
|00004d40| 6d 70 3a 57 69 6d 70 5f | 43 72 65 61 74 65 49 63 |mp:Wimp_|CreateIc|
|00004d50| 6f 6e 2e 70 72 69 6f 72 | 69 74 69 65 73 3e 2c 20 |on.prior|ities>, |
|00004d60| 74 68 69 73 20 77 69 6c | 6c 20 62 65 20 73 68 69 |this wil|l be shi|
|00004d70| 66 74 65 64 20 75 70 20 | 62 79 20 31 36 20 62 69 |fted up |by 16 bi|
|00004d80| 74 73 3b 20 66 6f 72 20 | 69 63 6f 6e 73 2c 20 74 |ts; for |icons, t|
|00004d90| 68 69 73 20 69 73 20 74 | 68 65 20 69 63 6f 6e 20 |his is t|he icon |
|00004da0| 6e 75 6d 62 65 72 2e 0a | 0a 54 68 65 72 65 66 6f |number..|.Therefo|
|00004db0| 72 65 20 74 6f 20 63 72 | 65 61 74 65 20 61 6e 20 |re to cr|eate an |
|00004dc0| 69 63 6f 6e 20 74 6f 20 | 74 68 65 20 72 69 67 68 |icon to |the righ|
|00004dd0| 74 20 6f 66 20 69 63 6f | 6e 20 37 20 6f 6e 20 74 |t of ico|n 7 on t|
|00004de0| 68 65 20 69 63 6f 6e 62 | 61 72 20 79 6f 75 20 77 |he iconb|ar you w|
|00004df0| 6f 75 6c 64 20 75 73 65 | 20 61 20 76 61 6c 75 65 |ould use| a value|
|00004e00| 20 6f 66 20 26 30 37 30 | 34 2c 20 61 6e 64 20 74 | of &070|4, and t|
|00004e10| 6f 20 63 72 65 61 74 65 | 20 61 6e 20 69 63 6f 6e |o create| an icon|
|00004e20| 20 6f 6e 20 74 68 65 20 | 6c 65 66 74 20 6f 66 20 | on the |left of |
|00004e30| 74 68 65 20 69 63 6f 6e | 20 62 61 72 20 77 69 74 |the icon| bar wit|
|00004e40| 68 20 70 72 69 6f 72 69 | 74 79 20 26 37 38 30 30 |h priori|ty &7800|
|00004e50| 30 30 30 30 20 79 6f 75 | 20 77 6f 75 6c 64 20 75 |0000 you| would u|
|00004e60| 73 65 20 26 37 38 30 37 | 2e 00 00 00 44 41 54 41 |se &7807|....DATA|
|00004e70| b8 00 00 00 46 4e 69 6e | 64 69 72 65 63 74 28 74 |....FNin|direct(t|
|00004e80| 65 78 74 24 29 0a 23 50 | 61 72 65 6e 74 20 21 52 |ext$).#P|arent !R|
|00004e90| 6f 6f 74 0a 3d 3e 09 7b | 2f 7d 74 65 78 74 24 7b |oot.=>.{|/}text${|
|00004ea0| 2f 7d 09 73 74 72 69 6e | 67 20 74 6f 20 69 6e 64 |/}.strin|g to ind|
|00004eb0| 69 72 65 63 74 0a 5c 3c | 3d 09 70 6f 69 6e 74 65 |irect.\<|=.pointe|
|00004ec0| 72 20 74 6f 20 73 74 72 | 69 6e 67 2c 20 30 20 69 |r to str|ing, 0 i|
|00004ed0| 66 20 6e 75 6c 6c 20 73 | 74 72 69 6e 67 0a 0a 50 |f null s|tring..P|
|00004ee0| 6c 61 63 65 20 73 74 72 | 69 6e 67 20 69 6e 20 69 |lace str|ing in i|
|00004ef0| 6e 64 69 72 65 63 74 69 | 6f 6e 20 62 75 66 66 65 |ndirecti|on buffe|
|00004f00| 72 2e 20 47 65 6e 65 72 | 61 74 65 20 65 72 72 6f |r. Gener|ate erro|
|00004f10| 72 73 20 69 66 20 6e 6f | 20 6d 6f 72 65 20 72 6f |rs if no| more ro|
|00004f20| 6f 6d 2e 0a 44 41 54 41 | 0a 01 00 00 46 4e 6c 6f |om..DATA|....FNlo|
|00004f30| 61 64 74 65 6d 70 6c 61 | 74 65 28 6e 61 6d 65 24 |adtempla|te(name$|
|00004f40| 2c 73 70 72 69 74 65 62 | 6c 6f 63 6b 29 0a 23 50 |,spriteb|lock).#P|
|00004f50| 61 72 65 6e 74 20 21 52 | 6f 6f 74 0a 3d 3e 09 7b |arent !R|oot.=>.{|
|00004f60| 2f 7d 6e 61 6d 65 24 7b | 2f 7d 09 09 6e 61 6d 65 |/}name${|/}..name|
|00004f70| 20 6f 66 20 74 65 6d 70 | 6c 61 74 65 20 74 6f 20 | of temp|late to |
|00004f80| 6c 6f 61 64 0a 09 7b 2f | 7d 73 70 72 69 74 65 62 |load..{/|}spriteb|
|00004f90| 6c 6f 63 6b 7b 2f 7d 09 | 70 6f 69 6e 74 65 72 20 |lock{/}.|pointer |
|00004fa0| 74 6f 20 62 6c 6f 63 6b | 2c 20 6f 72 20 31 20 66 |to block|, or 1 f|
|00004fb0| 6f 72 20 77 69 6d 70 20 | 70 6f 6f 6c 0a 3c 3d 09 |or wimp |pool.<=.|
|00004fc0| 70 6f 69 6e 74 65 72 20 | 74 6f 20 77 69 6e 64 6f |pointer |to windo|
|00004fd0| 77 20 62 6c 6f 63 6b 0a | 0a 4c 6f 61 64 20 6e 61 |w block.|.Load na|
|00004fe0| 6d 65 64 20 74 65 6d 70 | 6c 61 74 65 20 61 6e 64 |med temp|late and|
|00004ff0| 20 63 72 65 61 74 65 20 | 77 69 6e 64 6f 77 2e 20 | create |window. |
|00005000| 28 46 69 6c 65 20 74 6f | 20 62 65 20 61 63 63 65 |(File to| be acce|
|00005010| 73 73 65 64 20 69 73 20 | 41 70 70 64 69 72 24 2b |ssed is |Appdir$+|
|00005020| 22 2e 54 65 6d 70 6c 61 | 74 65 73 22 29 0a 00 00 |".Templa|tes")...|
|00005030| 44 41 54 41 84 00 00 00 | 46 4e 6c 6f 61 64 73 70 |DATA....|FNloadsp|
|00005040| 72 69 74 65 73 28 66 69 | 6c 65 24 29 0a 23 50 61 |rites(fi|le$).#Pa|
|00005050| 72 65 6e 74 20 21 52 6f | 6f 74 0a 3d 3e 09 7b 2f |rent !Ro|ot.=>.{/|
|00005060| 7d 66 69 6c 65 24 7b 2f | 7d 09 6e 61 6d 65 20 6f |}file${/|}.name o|
|00005070| 66 20 66 69 6c 65 0a 3c | 3d 09 70 6f 69 6e 74 65 |f file.<|=.pointe|
|00005080| 72 20 74 6f 20 73 70 72 | 69 74 65 20 61 72 65 61 |r to spr|ite area|
|00005090| 0a 0a 4c 6f 61 64 20 73 | 70 72 69 74 65 20 66 69 |..Load s|prite fi|
|000050a0| 6c 65 20 69 6e 74 6f 20 | 61 20 6e 65 77 20 61 72 |le into |a new ar|
|000050b0| 65 61 2e 0a 44 41 54 41 | 3f 01 00 00 46 4e 6d 73 |ea..DATA|?...FNms|
|000050c0| 67 74 6f 6b 65 6e 28 74 | 6f 6b 65 6e 24 29 0a 23 |gtoken(t|oken$).#|
|000050d0| 50 61 72 65 6e 74 20 21 | 52 6f 6f 74 0a 3d 3e 09 |Parent !|Root.=>.|
|000050e0| 7b 2f 7d 74 6f 6b 65 6e | 24 7b 2f 7d 09 74 6f 6b |{/}token|${/}.tok|
|000050f0| 65 6e 20 74 6f 20 6c 6f | 6f 6b 20 75 70 0a 0a 54 |en to lo|ok up..T|
|00005100| 72 61 6e 73 6c 61 74 65 | 20 61 20 74 6f 6b 65 6e |ranslate| a token|
|00005110| 20 74 6f 20 61 20 6d 65 | 73 73 61 67 65 2e 20 50 | to a me|ssage. P|
|00005120| 61 72 61 6d 65 74 65 72 | 73 20 66 6f 72 20 73 75 |arameter|s for su|
|00005130| 62 73 74 69 74 75 74 69 | 6f 6e 20 61 72 65 20 70 |bstituti|on are p|
|00005140| 61 73 73 65 64 20 75 73 | 69 6e 67 20 3a 27 73 20 |assed us|ing :'s |
|00005150| 62 65 74 77 65 65 6e 20 | 74 68 65 6d 2e 20 49 66 |between |them. If|
|00005160| 20 79 6f 75 20 77 69 73 | 68 20 74 6f 20 73 75 70 | you wis|h to sup|
|00005170| 70 6c 79 20 61 20 70 61 | 72 61 6d 65 74 65 72 20 |ply a pa|rameter |
|00005180| 77 69 74 68 20 3a 27 73 | 20 69 6e 2c 20 74 68 65 |with :'s| in, the|
|00005190| 6e 20 79 6f 75 20 73 68 | 6f 75 6c 64 20 70 72 65 |n you sh|ould pre|
|000051a0| 66 69 78 20 69 74 20 77 | 69 74 68 20 61 20 7c 20 |fix it w|ith a | |
|000051b0| 63 68 61 72 61 63 74 65 | 72 2e 20 54 68 69 73 20 |characte|r. This |
|000051c0| 77 69 6c 6c 20 63 61 75 | 73 65 20 74 68 65 20 72 |will cau|se the r|
|000051d0| 65 73 74 20 6f 66 20 74 | 68 65 20 6c 69 6e 65 20 |est of t|he line |
|000051e0| 74 6f 20 62 65 20 73 75 | 62 73 74 69 74 75 74 65 |to be su|bstitute|
|000051f0| 64 2e 0a 00 44 41 54 41 | 06 01 00 00 46 4e 63 72 |d...DATA|....FNcr|
|00005200| 65 61 74 65 66 74 6d 65 | 6e 75 0a 23 50 61 72 65 |eateftme|nu.#Pare|
|00005210| 6e 74 20 21 52 6f 6f 74 | 0a 5c 3c 3d 09 70 6f 69 |nt !Root|.\<=.poi|
|00005220| 6e 74 65 72 20 74 6f 20 | 6d 65 6e 75 20 62 6c 6f |nter to |menu blo|
|00005230| 63 6b 20 6f 66 20 66 69 | 6c 65 74 79 70 65 20 6d |ck of fi|letype m|
|00005240| 65 6e 75 0a 0a 43 72 65 | 61 74 65 73 20 61 20 66 |enu..Cre|ates a f|
|00005250| 69 6c 65 74 79 70 65 20 | 6d 65 6e 75 20 61 6e 64 |iletype |menu and|
|00005260| 20 72 65 74 75 72 6e 73 | 20 61 20 70 6f 69 6e 74 | returns| a point|
|00005270| 65 72 20 74 6f 20 69 74 | 73 20 73 74 72 75 63 74 |er to it|s struct|
|00005280| 75 72 65 2e 20 42 6c 6f | 63 6b 20 69 73 20 73 74 |ure. Blo|ck is st|
|00005290| 6f 72 65 64 20 69 6e 20 | 52 4d 41 20 28 75 6e 6c |ored in |RMA (unl|
|000052a0| 65 73 73 20 3c 48 65 61 | 70 4c 69 62 3d 3e 48 65 |ess <Hea|pLib=>He|
|000052b0| 61 70 4c 69 62 3a 21 52 | 6f 6f 74 3e 20 69 73 20 |apLib:!R|oot> is |
|000052c0| 69 6e 73 74 61 6c 6c 65 | 64 29 20 61 6e 64 20 6d |installe|d) and m|
|000052d0| 75 73 74 20 62 65 20 72 | 65 6c 65 61 73 65 64 20 |ust be r|eleased |
|000052e0| 77 69 74 68 20 3c 50 52 | 4f 43 72 65 6c 65 61 73 |with <PR|OCreleas|
|000052f0| 65 66 74 6d 65 6e 75 3e | 2e 0a 00 00 44 41 54 41 |eftmenu>|....DATA|
|00005300| a9 01 00 00 46 4e 6d 73 | 67 74 65 78 74 28 74 65 |....FNms|gtext(te|
|00005310| 78 74 24 29 0a 23 50 61 | 72 65 6e 74 20 21 52 6f |xt$).#Pa|rent !Ro|
|00005320| 6f 74 0a 3d 3e 09 7b 2f | 7d 74 65 78 74 24 7b 2f |ot.=>.{/|}text${/|
|00005330| 7d 09 74 65 78 74 20 74 | 6f 20 70 72 6f 63 65 73 |}.text t|o proces|
|00005340| 73 0a 5c 3c 3d 09 74 65 | 78 74 20 73 74 72 69 6e |s.\<=.te|xt strin|
|00005350| 67 0a 0a 50 72 6f 63 65 | 73 73 20 74 65 78 74 20 |g..Proce|ss text |
|00005360| 61 6e 64 20 72 65 74 75 | 72 6e 20 73 74 72 69 6e |and retu|rn strin|
|00005370| 67 20 66 72 6f 6d 20 4d | 65 73 73 61 67 65 73 20 |g from M|essages |
|00005380| 66 69 6c 65 20 69 66 20 | 61 70 70 72 6f 70 72 69 |file if |appropri|
|00005390| 61 74 65 2e 0a 0a 49 66 | 20 70 72 65 66 69 78 65 |ate...If| prefixe|
|000053a0| 64 20 62 79 20 61 20 3e | 20 73 79 6d 62 6f 6c 20 |d by a >| symbol |
|000053b0| 74 68 65 20 72 65 73 74 | 20 6f 66 20 74 68 65 20 |the rest| of the |
|000053c0| 6c 69 6e 65 20 77 69 6c | 6c 20 62 65 20 70 61 73 |line wil|l be pas|
|000053d0| 73 65 64 20 6f 6e 20 74 | 6f 20 3c 46 4e 6d 73 67 |sed on t|o <FNmsg|
|000053e0| 74 6f 6b 65 6e 3e 20 61 | 6e 64 20 70 72 6f 63 65 |token> a|nd proce|
|000053f0| 73 73 65 64 20 62 79 20 | 74 68 65 20 4d 65 73 73 |ssed by |the Mess|
|00005400| 61 67 65 54 72 61 6e 73 | 20 6d 6f 64 75 6c 65 2e |ageTrans| module.|
|00005410| 20 54 68 69 73 20 69 73 | 20 75 73 75 61 6c 6c 79 | This is| usually|
|00005420| 20 75 73 65 64 20 77 68 | 65 72 65 20 69 74 20 69 | used wh|ere it i|
|00005430| 73 20 70 6f 73 73 69 62 | 6c 65 20 66 6f 72 20 61 |s possib|le for a|
|00005440| 20 74 65 78 74 20 65 6e | 74 72 79 20 74 6f 20 62 | text en|try to b|
|00005450| 65 20 6c 69 74 65 72 61 | 6c 20 6f 72 20 74 61 6b |e litera|l or tak|
|00005460| 65 6e 20 66 72 6f 6d 20 | 61 20 6d 65 73 73 61 67 |en from |a messag|
|00005470| 65 73 20 66 69 6c 65 2e | 20 54 68 65 20 3c 46 4e |es file.| The <FN|
|00005480| 65 72 72 6f 72 62 6f 78 | 3e 20 72 6f 75 74 69 6e |errorbox|> routin|
|00005490| 65 20 69 73 20 61 20 67 | 6f 6f 64 20 65 78 61 6d |e is a g|ood exam|
|000054a0| 70 6c 65 2e 0a 00 00 00 | 44 41 54 41 d5 00 00 00 |ple.....|DATA....|
|000054b0| 46 4e 63 72 65 61 74 65 | 6d 65 6e 75 28 6d 65 6e |FNcreate|menu(men|
|000054c0| 75 24 29 0a 23 50 61 72 | 65 6e 74 20 21 52 6f 6f |u$).#Par|ent !Roo|
|000054d0| 74 0a 23 57 72 61 70 20 | 4f 66 66 0a 3d 3e 09 7b |t.#Wrap |Off.=>.{|
|000054e0| 2f 7d 6d 65 6e 75 24 7b | 2f 7d 09 3c 63 6f 6e 74 |/}menu${|/}.<cont|
|000054f0| 72 6f 6c 20 73 74 72 69 | 6e 67 3d 3e 6d 65 6e 75 |rol stri|ng=>menu|
|00005500| 63 6f 6e 74 72 6f 6c 3e | 0a 5c 3c 3d 09 70 6f 69 |control>|.\<=.poi|
|00005510| 6e 74 65 72 20 74 6f 20 | 6d 65 6e 75 20 62 6c 6f |nter to |menu blo|
|00005520| 63 6b 0a 09 7b 2f 7d 6f | 70 74 69 6f 6e 73 25 7b |ck..{/}o|ptions%{|
|00005530| 2f 7d 09 6e 75 6d 62 65 | 72 20 6f 66 20 6f 70 74 |/}.numbe|r of opt|
|00005540| 69 6f 6e 73 20 6f 6e 20 | 6d 65 6e 75 0a 23 57 72 |ions on |menu.#Wr|
|00005550| 61 70 20 4f 6e 0a 0a 43 | 72 65 61 74 65 20 61 20 |ap On..C|reate a |
|00005560| 6d 65 6e 75 20 67 69 76 | 65 6e 20 61 20 63 6f 6e |menu giv|en a con|
|00005570| 74 72 6f 6c 20 73 74 72 | 69 6e 67 2e 0a 00 00 00 |trol str|ing.....|
|00005580| 44 41 54 41 b4 00 00 00 | 46 4e 73 79 73 74 65 6d |DATA....|FNsystem|
|00005590| 76 61 72 28 76 61 72 69 | 61 62 6c 65 24 29 0a 23 |var(vari|able$).#|
|000055a0| 50 61 72 65 6e 74 20 21 | 52 6f 6f 74 0a 23 57 72 |Parent !|Root.#Wr|
|000055b0| 61 70 20 4f 66 66 0a 3d | 3e 09 7b 2f 7d 76 61 72 |ap Off.=|>.{/}var|
|000055c0| 69 61 62 6c 65 24 7b 2f | 7d 09 73 79 73 74 65 6d |iable${/|}.system|
|000055d0| 20 76 61 72 69 61 62 6c | 65 20 6e 61 6d 65 0a 3c | variabl|e name.<|
|000055e0| 3d 09 76 61 6c 75 65 20 | 6f 72 20 6e 75 6c 6c 20 |=.value |or null |
|000055f0| 69 66 20 6e 6f 6e 2d 65 | 78 69 73 74 61 6e 74 2e |if non-e|xistant.|
|00005600| 0a 0a 52 65 74 75 72 6e | 20 74 68 65 20 76 61 6c |..Return| the val|
|00005610| 75 65 20 6f 66 20 61 20 | 73 79 73 74 65 6d 20 76 |ue of a |system v|
|00005620| 61 72 69 61 62 6c 65 20 | 61 73 20 61 20 73 74 72 |ariable |as a str|
|00005630| 69 6e 67 2e 44 41 54 41 | ac 00 00 00 46 4e 73 74 |ing.DATA|....FNst|
|00005640| 72 69 6e 67 30 28 6c 6f | 63 61 74 69 6f 6e 29 0a |ring0(lo|cation).|
|00005650| 23 50 61 72 65 6e 74 20 | 21 52 6f 6f 74 0a 3d 3e |#Parent |!Root.=>|
|00005660| 09 7b 2f 7d 6c 6f 63 61 | 74 69 6f 6e 7b 2f 7d 09 |.{/}loca|tion{/}.|
|00005670| 70 6f 69 6e 74 65 72 20 | 74 6f 20 73 74 72 69 6e |pointer |to strin|
|00005680| 67 20 74 6f 20 72 65 74 | 75 72 6e 0a 3c 3d 09 73 |g to ret|urn.<=.s|
|00005690| 74 72 69 6e 67 20 61 74 | 20 6c 6f 63 61 74 69 6f |tring at| locatio|
|000056a0| 6e 0a 0a 52 65 74 75 72 | 6e 20 30 2d 74 65 72 6d |n..Retur|n 0-term|
|000056b0| 69 6e 61 74 65 64 20 28 | 6f 72 20 63 74 72 6c 2d |inated (|or ctrl-|
|000056c0| 74 65 72 6d 69 6e 61 74 | 65 64 29 20 73 74 72 69 |terminat|ed) stri|
|000056d0| 6e 67 20 61 74 20 6c 6f | 63 61 74 69 6f 6e 2e 0a |ng at lo|cation..|
|000056e0| 44 41 54 41 93 00 00 00 | 46 4e 67 65 74 69 63 6f |DATA....|FNgetico|
|000056f0| 6e 73 74 61 74 65 28 77 | 69 6e 2c 69 63 6f 6e 29 |nstate(w|in,icon)|
|00005700| 0a 23 50 61 72 65 6e 74 | 20 21 52 6f 6f 74 0a 3d |.#Parent| !Root.=|
|00005710| 3e 09 7b 2f 7d 77 69 6e | 7b 2f 7d 09 77 69 6e 64 |>.{/}win|{/}.wind|
|00005720| 6f 77 20 68 61 6e 64 6c | 65 0a 09 7b 2f 7d 69 63 |ow handl|e..{/}ic|
|00005730| 6f 6e 7b 2f 7d 09 69 63 | 6f 6e 20 68 61 6e 64 6c |on{/}.ic|on handl|
|00005740| 65 0a 5c 3c 3d 09 54 52 | 55 45 20 69 66 20 69 63 |e.\<=.TR|UE if ic|
|00005750| 6f 6e 20 73 65 6c 65 63 | 74 65 64 0a 0a 49 73 20 |on selec|ted..Is |
|00005760| 74 68 65 20 69 63 6f 6e | 20 73 65 6c 65 63 74 65 |the icon| selecte|
|00005770| 64 20 3f 00 44 41 54 41 | ad 00 00 00 46 4e 67 65 |d ?.DATA|....FNge|
|00005780| 74 69 63 6f 6e 74 65 78 | 74 28 77 69 6e 2c 69 63 |ticontex|t(win,ic|
|00005790| 6f 6e 29 0a 23 50 61 72 | 65 6e 74 20 21 52 6f 6f |on).#Par|ent !Roo|
|000057a0| 74 0a 3d 3e 09 7b 2f 7d | 77 69 6e 7b 2f 7d 09 77 |t.=>.{/}|win{/}.w|
|000057b0| 69 6e 64 6f 77 20 68 61 | 6e 64 6c 65 0a 09 7b 2f |indow ha|ndle..{/|
|000057c0| 7d 69 63 6f 6e 7b 2f 7d | 09 69 63 6f 6e 20 68 61 |}icon{/}|.icon ha|
|000057d0| 6e 64 6c 65 0a 5c 3c 3d | 09 74 65 78 74 20 73 74 |ndle.\<=|.text st|
|000057e0| 72 69 6e 67 20 66 6f 72 | 20 69 63 6f 6e 20 28 6f |ring for| icon (o|
|000057f0| 72 20 73 70 72 69 74 65 | 20 69 66 20 6f 6e 6c 79 |r sprite| if only|
|00005800| 20 73 70 72 69 74 65 29 | 0a 0a 52 65 74 75 72 6e | sprite)|..Return|
|00005810| 20 74 65 78 74 20 66 72 | 6f 6d 20 69 63 6f 6e 2e | text fr|om icon.|
|00005820| 0a 00 00 00 44 41 54 41 | c0 00 00 00 46 4e 67 65 |....DATA|....FNge|
|00005830| 74 69 63 6f 6e 76 61 6c | 69 64 28 77 69 6e 2c 69 |ticonval|id(win,i|
|00005840| 63 6f 6e 29 0a 23 50 61 | 72 65 6e 74 20 21 52 6f |con).#Pa|rent !Ro|
|00005850| 6f 74 0a 3d 3e 09 7b 2f | 7d 77 69 6e 7b 2f 7d 09 |ot.=>.{/|}win{/}.|
|00005860| 77 69 6e 64 6f 77 20 68 | 61 6e 64 6c 65 0a 09 7b |window h|andle..{|
|00005870| 2f 7d 69 63 6f 6e 7b 2f | 7d 09 69 63 6f 6e 20 68 |/}icon{/|}.icon h|
|00005880| 61 6e 64 6c 65 0a 5c 3c | 3d 09 76 61 6c 69 64 61 |andle.\<|=.valida|
|00005890| 74 69 6f 6e 20 73 74 72 | 69 6e 67 0a 0a 52 65 74 |tion str|ing..Ret|
|000058a0| 75 72 6e 20 69 63 6f 6e | 27 73 20 76 61 6c 69 64 |urn icon|'s valid|
|000058b0| 61 74 69 6f 6e 20 73 74 | 72 69 6e 67 2e 20 41 6e |ation st|ring. An|
|000058c0| 20 65 72 72 6f 72 20 77 | 69 6c 6c 20 6f 63 63 75 | error w|ill occu|
|000058d0| 72 20 69 66 20 64 69 72 | 65 63 74 20 73 74 72 69 |r if dir|ect stri|
|000058e0| 6e 67 2e 0a 44 41 54 41 | 71 00 00 00 46 4e 6c 6f |ng..DATA|q...FNlo|
|000058f0| 77 65 72 28 61 24 29 0a | 23 50 61 72 65 6e 74 20 |wer(a$).|#Parent |
|00005900| 21 52 6f 6f 74 0a 3d 3e | 09 7b 2f 7d 61 24 7b 2f |!Root.=>|.{/}a${/|
|00005910| 7d 09 73 74 72 69 6e 67 | 0a 3c 3d 09 73 74 72 69 |}.string|.<=.stri|
|00005920| 6e 67 20 69 6e 20 6c 6f | 77 65 72 20 63 61 73 65 |ng in lo|wer case|
|00005930| 0a 0a 52 65 74 75 72 6e | 20 67 69 76 65 6e 20 73 |..Return| given s|
|00005940| 74 72 69 6e 67 20 69 6e | 20 6c 6f 77 65 72 20 63 |tring in| lower c|
|00005950| 61 73 65 2e 0a 00 00 00 | 44 41 54 41 6e 00 00 00 |ase.....|DATAn...|
|00005960| 46 4e 75 70 70 65 72 28 | 61 24 29 0a 23 50 61 72 |FNupper(|a$).#Par|
|00005970| 65 6e 74 20 21 52 6f 6f | 74 0a 3d 3e 09 7b 2f 7d |ent !Roo|t.=>.{/}|
|00005980| 61 24 7b 2f 7d 09 73 74 | 72 69 6e 67 0a 3c 3d 09 |a${/}.st|ring.<=.|
|00005990| 75 70 70 65 72 20 63 61 | 73 65 20 73 74 72 69 6e |upper ca|se strin|
|000059a0| 67 0a 0a 52 65 74 75 72 | 6e 20 67 69 76 65 6e 20 |g..Retur|n given |
|000059b0| 73 74 72 69 6e 67 20 69 | 6e 20 75 70 70 65 72 20 |string i|n upper |
|000059c0| 63 61 73 65 2e 0a 00 00 | 44 41 54 41 4e 01 00 00 |case....|DATAN...|
|000059d0| 46 4e 74 69 64 79 28 61 | 24 29 0a 23 50 61 72 65 |FNtidy(a|$).#Pare|
|000059e0| 6e 74 20 21 52 6f 6f 74 | 0a 3d 3e 09 7b 2f 7d 61 |nt !Root|.=>.{/}a|
|000059f0| 24 7b 2f 7d 09 73 74 72 | 69 6e 67 0a 3c 3d 09 74 |${/}.str|ing.<=.t|
|00005a00| 69 64 69 65 64 20 73 74 | 72 69 6e 67 0a 0a 52 65 |idied st|ring..Re|
|00005a10| 74 75 72 6e 20 67 69 76 | 65 6e 20 73 74 72 69 6e |turn giv|en strin|
|00005a20| 67 20 69 6e 20 74 69 64 | 79 20 66 6f 72 6d 61 74 |g in tid|y format|
|00005a30| 2e 20 41 6c 6c 20 63 68 | 61 72 61 63 74 65 72 73 |. All ch|aracters|
|00005a40| 20 61 72 65 20 6c 6f 77 | 65 72 20 63 61 73 65 2c | are low|er case,|
|00005a50| 20 65 78 63 65 70 74 20 | 74 68 65 20 66 69 72 73 | except |the firs|
|00005a60| 74 20 61 6e 64 20 74 68 | 6f 73 65 20 73 75 63 63 |t and th|ose succ|
|00005a70| 65 65 64 69 6e 67 20 6e | 6f 6e 2d 61 6c 70 68 61 |eeding n|on-alpha|
|00005a80| 62 65 74 69 63 20 63 68 | 61 72 61 63 74 65 72 73 |betic ch|aracters|
|00005a90| 2c 20 77 68 69 63 68 20 | 61 72 65 20 75 70 70 65 |, which |are uppe|
|00005aa0| 72 20 63 61 73 65 2e 20 | 41 70 6f 73 74 72 6f 70 |r case. |Apostrop|
|00005ab0| 68 65 73 20 61 72 65 20 | 63 6f 6e 73 69 64 65 72 |hes are |consider|
|00005ac0| 65 64 20 74 6f 20 62 65 | 20 61 6c 70 68 61 62 65 |ed to be| alphabe|
|00005ad0| 74 69 63 20 63 68 61 72 | 61 63 74 65 72 73 20 61 |tic char|acters a|
|00005ae0| 6e 64 20 74 68 65 72 65 | 66 6f 72 65 20 22 54 48 |nd there|fore "TH|
|00005af0| 45 52 45 27 53 22 20 77 | 69 6c 6c 20 62 65 20 72 |ERE'S" w|ill be r|
|00005b00| 65 74 75 72 6e 65 64 20 | 61 73 20 22 54 68 65 72 |eturned |as "Ther|
|00005b10| 65 27 73 22 2e 0a 00 00 | 44 41 54 41 e6 00 00 00 |e's"....|DATA....|
|00005b20| 46 4e 47 65 74 45 6e 76 | 0a 23 50 61 72 65 6e 74 |FNGetEnv|.#Parent|
|00005b30| 20 21 52 6f 6f 74 0a 3c | 3d 09 65 6e 76 69 72 6f | !Root.<|=.enviro|
|00005b40| 6e 6d 65 6e 74 20 73 74 | 72 69 6e 67 20 73 74 72 |nment st|ring str|
|00005b50| 69 70 70 65 64 20 6f 66 | 20 6c 6f 61 64 65 72 0a |ipped of| loader.|
|00005b60| 0a 54 68 69 73 20 69 73 | 20 74 68 65 20 73 74 72 |.This is| the str|
|00005b70| 69 6e 67 20 77 68 69 63 | 68 20 69 73 20 75 73 65 |ing whic|h is use|
|00005b80| 64 20 74 6f 20 6c 6f 61 | 64 20 74 68 65 20 61 70 |d to loa|d the ap|
|00005b90| 70 6c 69 63 61 74 69 6f | 6e 2e 20 49 74 20 6d 61 |plicatio|n. It ma|
|00005ba0| 79 20 63 6f 6e 74 61 69 | 6e 20 61 6e 79 20 73 74 |y contai|n any st|
|00005bb0| 72 69 6e 67 20 77 68 69 | 63 68 20 69 73 20 62 65 |ring whi|ch is be|
|00005bc0| 20 61 63 74 65 64 20 75 | 70 6f 6e 20 6f 6e 20 73 | acted u|pon on s|
|00005bd0| 74 61 72 74 75 70 2c 20 | 65 67 2e 20 61 20 66 69 |tartup, |eg. a fi|
|00005be0| 6c 65 20 74 6f 20 6c 6f | 61 64 20 6f 72 20 6f 70 |le to lo|ad or op|
|00005bf0| 74 69 6f 6e 73 20 74 6f | 20 73 65 74 2e 0a 00 00 |tions to| set....|
|00005c00| 44 41 54 41 b2 00 00 00 | 46 4e 66 69 6c 65 74 79 |DATA....|FNfilety|
|00005c10| 70 65 28 66 69 6c 65 24 | 29 0a 23 50 61 72 65 6e |pe(file$|).#Paren|
|00005c20| 74 20 21 52 6f 6f 74 0a | 3d 3e 09 7b 2f 7d 66 69 |t !Root.|=>.{/}fi|
|00005c30| 6c 65 24 7b 2f 7d 09 66 | 69 6c 65 6e 61 6d 65 0a |le${/}.f|ilename.|
|00005c40| 3c 3d 09 2d 32 20 69 66 | 20 6e 6f 74 20 66 6f 75 |<=.-2 if| not fou|
|00005c50| 6e 64 0a 09 2d 31 20 69 | 66 20 75 6e 74 79 70 65 |nd..-1 i|f untype|
|00005c60| 64 0a 09 30 2d 26 46 46 | 46 20 69 66 20 74 79 70 |d..0-&FF|F if typ|
|00005c70| 65 64 0a 09 26 31 30 30 | 30 20 69 66 20 64 69 72 |ed..&100|0 if dir|
|00005c80| 65 63 74 6f 72 79 20 6f | 72 20 69 6d 61 67 65 0a |ectory o|r image.|
|00005c90| 09 0a 52 65 74 75 72 6e | 20 74 68 65 20 66 69 6c |..Return| the fil|
|00005ca0| 65 20 74 79 70 65 20 6f | 66 20 61 20 66 69 6c 65 |e type o|f a file|
|00005cb0| 2e 0a 00 00 44 41 54 41 | 8b 00 00 00 46 4e 66 69 |....DATA|....FNfi|
|00005cc0| 6c 65 6c 65 6e 67 74 68 | 28 66 69 6c 65 24 29 0a |lelength|(file$).|
|00005cd0| 23 50 61 72 65 6e 74 20 | 21 52 6f 6f 74 0a 3d 3e |#Parent |!Root.=>|
|00005ce0| 09 7b 2f 7d 66 69 6c 65 | 24 7b 2f 7d 09 66 69 6c |.{/}file|${/}.fil|
|00005cf0| 65 20 74 6f 20 63 68 65 | 63 6b 0a 3c 3d 09 6c 65 |e to che|ck.<=.le|
|00005d00| 6e 67 74 68 20 6f 66 20 | 66 69 6c 65 2c 20 6f 72 |ngth of |file, or|
|00005d10| 20 2d 31 20 69 66 20 6e | 6f 74 20 66 6f 75 6e 64 | -1 if n|ot found|
|00005d20| 0a 0a 52 65 74 75 72 6e | 20 74 68 65 20 6c 65 6e |..Return| the len|
|00005d30| 67 74 68 20 6f 66 20 61 | 20 66 69 6c 65 2e 0a 00 |gth of a| file...|
|00005d40| 44 41 54 41 01 01 00 00 | 46 4e 65 72 72 6f 72 62 |DATA....|FNerrorb|
|00005d50| 6f 78 28 74 69 74 6c 65 | 24 2c 6d 65 73 73 61 67 |ox(title|$,messag|
|00005d60| 65 24 2c 66 6c 61 67 73 | 29 0a 23 50 61 72 65 6e |e$,flags|).#Paren|
|00005d70| 74 20 21 52 6f 6f 74 0a | 3d 3e 09 7b 2f 7d 74 69 |t !Root.|=>.{/}ti|
|00005d80| 74 6c 65 24 7b 2f 7d 09 | 74 69 74 6c 65 20 6f 66 |tle${/}.|title of|
|00005d90| 20 77 69 6e 64 6f 77 0a | 09 7b 2f 7d 6d 65 73 73 | window.|.{/}mess|
|00005da0| 61 67 65 24 7b 2f 7d 09 | 6d 65 73 73 61 67 65 20 |age${/}.|message |
|00005db0| 77 69 74 68 69 6e 20 77 | 69 6e 64 6f 77 0a 09 7b |within w|indow..{|
|00005dc0| 2f 7d 66 6c 61 67 73 7b | 2f 7d 09 57 69 6d 70 5f |/}flags{|/}.Wimp_|
|00005dd0| 52 65 70 6f 72 74 45 72 | 72 6f 72 20 3c 66 6c 61 |ReportEr|ror <fla|
|00005de0| 67 73 3d 3e 57 69 6d 70 | 3a 57 69 6d 70 5f 52 65 |gs=>Wimp|:Wimp_Re|
|00005df0| 70 6f 72 74 45 72 72 6f | 72 30 3e 0a 3c 3d 09 31 |portErro|r0>.<=.1|
|00005e00| 20 66 6f 72 20 4f 4b 0a | 09 32 20 66 6f 72 20 43 | for OK.|.2 for C|
|00005e10| 61 6e 63 65 6c 0a 0a 43 | 72 65 61 74 65 20 61 6e |ancel..C|reate an|
|00005e20| 20 65 72 72 6f 72 20 62 | 6f 78 20 77 69 74 68 20 | error b|ox with |
|00005e30| 75 70 20 74 6f 20 32 20 | 62 75 74 74 6f 6e 73 2e |up to 2 |buttons.|
|00005e40| 0a 00 00 00 44 41 54 41 | e8 00 00 00 46 4e 63 6c |....DATA|....FNcl|
|00005e50| 61 69 6d 28 73 69 7a 65 | 29 20 2d 20 57 69 6d 70 |aim(size|) - Wimp|
|00005e60| 4c 69 62 20 76 65 72 73 | 69 6f 6e 0a 23 50 61 72 |Lib vers|ion.#Par|
|00005e70| 65 6e 74 20 21 52 6f 6f | 74 0a 3d 3e 09 7b 2f 7d |ent !Roo|t.=>.{/}|
|00005e80| 73 69 7a 65 7b 2f 7d 09 | 73 69 7a 65 20 6f 66 20 |size{/}.|size of |
|00005e90| 62 6c 6f 63 6b 0a 3c 3d | 09 70 6f 69 6e 74 65 72 |block.<=|.pointer|
|00005ea0| 20 74 6f 20 62 6c 6f 63 | 6b 2c 20 6f 72 20 2d 31 | to bloc|k, or -1|
|00005eb0| 20 69 66 20 6e 6f 20 72 | 6f 6f 6d 0a 0a 43 6c 61 | if no r|oom..Cla|
|00005ec0| 69 6d 20 61 20 62 6c 6f | 63 6b 20 6f 66 20 52 4d |im a blo|ck of RM|
|00005ed0| 41 2e 0a 0a 4e 6f 74 65 | 3a 20 54 68 69 73 20 63 |A...Note|: This c|
|00005ee0| 61 6c 6c 20 69 73 20 72 | 65 70 6c 61 63 65 64 20 |all is r|eplaced |
|00005ef0| 69 6e 20 48 65 61 70 4c | 69 62 20 62 79 20 61 20 |in HeapL|ib by a |
|00005f00| 48 65 61 70 20 63 6c 61 | 69 6d 20 3c 46 4e 63 6c |Heap cla|im <FNcl|
|00005f10| 61 69 6d 3d 3e 48 65 61 | 70 4c 69 62 3a 46 4e 63 |aim=>Hea|pLib:FNc|
|00005f20| 6c 61 69 6d 3e 20 63 61 | 6c 6c 2e 0a 44 41 54 41 |laim> ca|ll..DATA|
|00005f30| ff 00 00 00 46 4e 74 61 | 73 6b 6e 61 6d 65 28 74 |....FNta|skname(t|
|00005f40| 61 73 6b 29 0a 23 50 61 | 72 65 6e 74 20 21 52 6f |ask).#Pa|rent !Ro|
|00005f50| 6f 74 0a 3d 3e 09 7b 2f | 7d 74 61 73 6b 7b 2f 7d |ot.=>.{/|}task{/}|
|00005f60| 09 74 61 73 6b 20 68 61 | 6e 64 6c 65 0a 3c 3d 09 |.task ha|ndle.<=.|
|00005f70| 74 61 73 6b 73 20 6e 61 | 6d 65 2c 20 6f 72 20 22 |tasks na|me, or "|
|00005f80| 4e 6f 6e 65 22 20 69 66 | 20 69 6e 76 61 6c 69 64 |None" if| invalid|
|00005f90| 0a 0a 52 65 74 75 72 6e | 20 61 20 67 69 76 65 6e |..Return| a given|
|00005fa0| 20 74 61 73 6b 73 20 6e | 61 6d 65 2e 0a 0a 57 69 | tasks n|ame...Wi|
|00005fb0| 6d 70 4c 69 62 32 20 61 | 6c 77 61 79 73 20 72 65 |mpLib2 a|lways re|
|00005fc0| 74 75 72 6e 73 20 22 55 | 6e 6b 6e 6f 77 6e 22 2c |turns "U|nknown",|
|00005fd0| 20 61 73 20 3c 54 61 73 | 6b 4d 61 6e 61 67 65 72 | as <Tas|kManager|
|00005fe0| 5f 54 61 73 6b 4e 61 6d | 65 46 72 6f 6d 48 61 6e |_TaskNam|eFromHan|
|00005ff0| 64 6c 65 3d 3e 57 69 6d | 70 3a 54 61 73 6b 4d 61 |dle=>Wim|p:TaskMa|
|00006000| 6e 61 67 65 72 5f 54 61 | 73 6b 4e 61 6d 65 46 72 |nager_Ta|skNameFr|
|00006010| 6f 6d 48 61 6e 64 6c 65 | 3e 20 69 73 20 6e 6f 74 |omHandle|> is not|
|00006020| 20 73 75 70 70 6f 72 74 | 65 64 2e 00 44 41 54 41 | support|ed..DATA|
|00006030| 80 00 00 00 46 4e 77 69 | 6e 64 6f 77 74 61 73 6b |....FNwi|ndowtask|
|00006040| 28 77 69 6e 29 0a 23 50 | 61 72 65 6e 74 20 21 52 |(win).#P|arent !R|
|00006050| 6f 6f 74 0a 3d 3e 09 7b | 2f 7d 77 69 6e 7b 2f 7d |oot.=>.{|/}win{/}|
|00006060| 09 77 69 6e 64 6f 77 20 | 68 61 6e 64 6c 65 0a 3c |.window |handle.<|
|00006070| 3d 09 74 61 73 6b 20 68 | 61 6e 64 6c 65 20 6f 66 |=.task h|andle of|
|00006080| 20 6f 77 6e 65 72 0a 0a | 52 65 74 75 72 6e 20 74 | owner..|Return t|
|00006090| 61 73 6b 20 68 61 6e 64 | 6c 65 20 77 68 6f 20 6f |ask hand|le who o|
|000060a0| 77 6e 73 20 77 69 6e 64 | 6f 77 2e 0a 44 41 54 41 |wns wind|ow..DATA|
|000060b0| b3 00 00 00 46 4e 72 65 | 61 64 74 61 73 6b 73 74 |....FNre|adtaskst|
|000060c0| 72 69 6e 67 28 74 61 73 | 6b 2c 6c 6f 63 29 0a 23 |ring(tas|k,loc).#|
|000060d0| 50 61 72 65 6e 74 20 21 | 52 6f 6f 74 0a 3d 3e 09 |Parent !|Root.=>.|
|000060e0| 7b 2f 7d 74 61 73 6b 7b | 2f 7d 09 74 61 73 6b 20 |{/}task{|/}.task |
|000060f0| 68 61 6e 64 6c 65 20 74 | 6f 20 72 65 61 64 0a 09 |handle t|o read..|
|00006100| 7b 2f 7d 6c 6f 63 7b 2f | 7d 09 6c 6f 63 61 74 69 |{/}loc{/|}.locati|
|00006110| 6f 6e 20 6f 66 20 73 74 | 72 69 6e 67 20 69 6e 20 |on of st|ring in |
|00006120| 74 61 73 6b 0a 0a 52 65 | 61 64 20 61 20 63 74 72 |task..Re|ad a ctr|
|00006130| 6c 2d 74 65 72 6d 69 6e | 61 74 65 64 20 73 74 72 |l-termin|ated str|
|00006140| 69 6e 67 20 66 72 6f 6d | 20 74 61 73 6b 20 61 74 |ing from| task at|
|00006150| 20 6c 6f 63 61 74 69 6f | 6e 20 6c 6f 63 2e 0a 00 | locatio|n loc...|
|00006160| 44 41 54 41 d2 00 00 00 | 46 4e 62 61 63 6b 6f 66 |DATA....|FNbackof|
|00006170| 77 69 6e 73 74 61 63 6b | 0a 23 50 61 72 65 6e 74 |winstack|.#Parent|
|00006180| 20 21 52 6f 6f 74 0a 3c | 3d 09 68 61 6e 64 6c 65 | !Root.<|=.handle|
|00006190| 20 6f 66 20 62 61 63 6b | 20 61 74 20 62 61 63 6b | of back| at back|
|000061a0| 20 6f 66 20 73 74 61 63 | 6b 0a 0a 52 65 74 75 72 | of stac|k..Retur|
|000061b0| 6e 20 77 69 6e 64 6f 77 | 20 68 61 6e 64 6c 65 20 |n window| handle |
|000061c0| 6f 66 20 62 61 63 6b 20 | 6f 66 20 77 69 6e 64 6f |of back |of windo|
|000061d0| 77 20 73 74 61 63 6b 2e | 0a 0a 4e 6f 74 65 3a 20 |w stack.|..Note: |
|000061e0| 69 6e 66 6f 62 6f 78 25 | 20 6d 75 73 74 20 62 65 |infobox%| must be|
|000061f0| 20 61 20 76 61 6c 69 64 | 20 77 69 6e 64 6f 77 20 | a valid| window |
|00006200| 66 6f 72 20 74 68 69 73 | 20 74 6f 20 77 6f 72 6b |for this| to work|
|00006210| 2c 20 28 70 72 65 66 65 | 72 61 62 6c 65 20 61 20 |, (prefe|rable a |
|00006220| 73 75 62 2d 6d 65 6e 75 | 20 77 69 6e 64 6f 77 29 |sub-menu| window)|
|00006230| 2e 0a 00 00 44 41 54 41 | a5 00 00 00 46 4e 77 69 |....DATA|....FNwi|
|00006240| 6e 73 74 61 63 6b 6e 65 | 78 74 28 77 69 6e 29 0a |nstackne|xt(win).|
|00006250| 23 50 61 72 65 6e 74 20 | 21 52 6f 6f 74 0a 3d 3e |#Parent |!Root.=>|
|00006260| 09 7b 2f 7d 77 69 6e 7b | 2f 7d 09 77 69 6e 64 6f |.{/}win{|/}.windo|
|00006270| 77 20 68 61 6e 64 6c 65 | 0a 3c 3d 09 77 69 6e 64 |w handle|.<=.wind|
|00006280| 6f 77 20 68 61 6e 64 6c | 65 2c 20 6f 72 20 2d 31 |ow handl|e, or -1|
|00006290| 20 69 66 20 61 74 20 66 | 72 6f 6e 74 0a 0a 52 65 | if at f|ront..Re|
|000062a0| 74 75 72 6e 20 77 69 6e | 64 6f 77 20 68 61 6e 64 |turn win|dow hand|
|000062b0| 6c 65 20 6f 66 20 6e 65 | 78 74 20 77 69 6e 64 6f |le of ne|xt windo|
|000062c0| 77 20 69 6e 20 66 72 6f | 6e 74 20 6f 66 20 73 70 |w in fro|nt of sp|
|000062d0| 65 63 69 66 69 65 64 2e | 0a 00 00 00 44 41 54 41 |ecified.|....DATA|
|000062e0| 81 00 00 00 46 4e 6c 65 | 61 66 6e 61 6d 65 28 66 |....FNle|afname(f|
|000062f0| 69 6c 65 24 29 0a 23 50 | 61 72 65 6e 74 20 21 52 |ile$).#P|arent !R|
|00006300| 6f 6f 74 0a 3d 3e 09 7b | 2f 7d 66 69 6c 65 24 7b |oot.=>.{|/}file${|
|00006310| 2f 7d 09 66 69 6c 65 0a | 3c 3d 09 6c 65 61 66 20 |/}.file.|<=.leaf |
|00006320| 6f 66 20 66 69 6c 65 6e | 61 6d 65 0a 0a 52 65 74 |of filen|ame..Ret|
|00006330| 75 72 6e 20 74 68 65 20 | 6c 65 61 66 6e 61 6d 65 |urn the |leafname|
|00006340| 20 6f 66 20 74 68 65 20 | 73 70 65 63 69 66 69 65 | of the |specifie|
|00006350| 64 20 66 69 6c 65 20 70 | 61 74 68 2e 0a 00 00 00 |d file p|ath.....|
|00006360| 44 41 54 41 97 00 00 00 | 46 4e 70 61 74 68 6e 61 |DATA....|FNpathna|
|00006370| 6d 65 28 66 69 6c 65 24 | 29 0a 23 50 61 72 65 6e |me(file$|).#Paren|
|00006380| 74 20 21 52 6f 6f 74 0a | 3d 3e 09 7b 2f 7d 66 69 |t !Root.|=>.{/}fi|
|00006390| 6c 65 24 7b 2f 7d 09 66 | 69 6c 65 6e 61 6d 65 0a |le${/}.f|ilename.|
|000063a0| 3c 3d 09 70 61 74 68 6e | 61 6d 65 20 6f 66 20 66 |<=.pathn|ame of f|
|000063b0| 69 6c 65 6e 61 6d 65 2c | 20 6f 72 20 40 20 69 66 |ilename,| or @ if|
|000063c0| 20 6e 6f 6e 65 0a 0a 52 | 65 74 75 72 6e 20 74 68 | none..R|eturn th|
|000063d0| 65 20 70 61 74 68 6e 61 | 6d 65 20 6f 66 20 74 68 |e pathna|me of th|
|000063e0| 65 20 73 70 65 63 69 66 | 69 65 64 20 66 69 6c 65 |e specif|ied file|
|000063f0| 20 70 61 74 68 2e 0a 00 | 44 41 54 41 0f 01 00 00 | path...|DATA....|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.