Artifact
f5c49562c25e9a8fa8644f2f37aea484a95d3baa:
0000: 28 72 65 71 75 69 72 65 2d 6c 69 62 72 61 72 79 (require-library
0010: 20 69 75 70 29 0a 28 69 6d 70 6f 72 74 20 28 70 iup).(import (p
0020: 72 65 66 69 78 20 69 75 70 20 69 75 70 3a 29 29 refix iup iup:))
0030: 0a 28 75 73 65 20 63 61 6e 76 61 73 2d 64 72 61 .(use canvas-dra
0040: 77 20 63 61 6e 76 61 73 2d 64 72 61 77 2d 69 75 w canvas-draw-iu
0050: 70 29 0a 28 75 73 65 20 73 72 66 69 2d 34 29 0a p).(use srfi-4).
0060: 0a 28 64 65 66 69 6e 65 20 69 6d 67 2d 62 69 74 .(define img-bit
0070: 73 31 20 28 75 38 76 65 63 74 6f 72 2d 3e 62 6c s1 (u8vector->bl
0080: 6f 62 20 28 75 38 76 65 63 74 6f 72 0a 20 31 20 ob (u8vector. 1
0090: 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 1 1 1 1 1 1 1 1
00a0: 31 20 31 20 31 20 31 20 31 20 31 20 32 20 32 20 1 1 1 1 1 1 2 2
00b0: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
00c0: 32 20 32 20 32 20 32 20 32 20 32 20 31 0a 20 31 2 2 2 2 2 2 1. 1
00d0: 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 1 1 1 1 1 1 1 1
00e0: 20 31 20 31 20 31 20 31 20 31 20 32 20 32 20 32 1 1 1 1 1 2 2 2
00f0: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0100: 20 32 20 32 20 32 20 32 20 32 20 31 20 31 0a 20 2 2 2 2 2 1 1.
0110: 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 1 1 1 1 1 1 1 1
0120: 31 20 31 20 31 20 31 20 31 20 32 20 32 20 32 20 1 1 1 1 1 2 2 2
0130: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0140: 32 20 32 20 32 20 32 20 32 20 31 20 31 20 31 0a 2 2 2 2 2 1 1 1.
0150: 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 1 1 1 1 1 1 1 1
0160: 20 31 20 31 20 31 20 31 20 32 20 32 20 32 20 32 1 1 1 1 2 2 2 2
0170: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0180: 20 32 20 32 20 32 20 32 20 31 20 31 20 31 20 31 2 2 2 2 1 1 1 1
0190: 0a 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 . 1 1 1 1 1 1 1
01a0: 31 20 31 20 31 20 31 20 32 20 32 20 32 20 32 20 1 1 1 1 2 2 2 2
01b0: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
01c0: 32 20 32 20 32 20 32 20 31 20 31 20 31 20 31 20 2 2 2 2 1 1 1 1
01d0: 31 0a 20 31 20 31 20 31 20 31 20 31 20 31 20 31 1. 1 1 1 1 1 1 1
01e0: 20 31 20 31 20 31 20 32 20 32 20 32 20 32 20 32 1 1 1 2 2 2 2 2
01f0: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0200: 20 32 20 32 20 32 20 31 20 31 20 31 20 31 20 31 2 2 2 1 1 1 1 1
0210: 20 31 0a 20 31 20 31 20 31 20 31 20 31 20 31 20 1. 1 1 1 1 1 1
0220: 31 20 31 20 31 20 32 20 32 20 32 20 32 20 32 20 1 1 1 2 2 2 2 2
0230: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0240: 32 20 32 20 32 20 31 20 31 20 31 20 31 20 31 20 2 2 2 1 1 1 1 1
0250: 31 20 31 0a 20 31 20 31 20 31 20 31 20 31 20 31 1 1. 1 1 1 1 1 1
0260: 20 31 20 31 20 32 20 32 20 32 20 32 20 32 20 32 1 1 2 2 2 2 2 2
0270: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0280: 20 32 20 32 20 31 20 31 20 31 20 31 20 31 20 31 2 2 1 1 1 1 1 1
0290: 20 31 20 31 0a 20 32 20 32 20 32 20 32 20 32 20 1 1. 2 2 2 2 2
02a0: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
02b0: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
02c0: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
02d0: 32 20 32 20 32 0a 20 32 20 32 20 32 20 32 20 32 2 2 2. 2 2 2 2 2
02e0: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
02f0: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0300: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0310: 20 32 20 32 20 32 0a 20 32 20 32 20 32 20 30 20 2 2 2. 2 2 2 0
0320: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0330: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0340: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0350: 32 20 32 20 32 20 32 0a 20 32 20 32 20 32 20 30 2 2 2 2. 2 2 2 0
0360: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0370: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0380: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0390: 20 32 20 32 20 32 20 32 0a 20 32 20 32 20 32 20 2 2 2 2. 2 2 2
03a0: 30 20 32 20 30 20 32 20 30 20 32 20 32 20 30 20 0 2 0 2 0 2 2 0
03b0: 32 20 32 20 32 20 30 20 30 20 30 20 32 20 32 20 2 2 2 0 0 0 2 2
03c0: 32 20 30 20 30 20 32 20 30 20 32 20 32 20 30 20 2 0 0 2 0 2 2 0
03d0: 30 20 30 20 32 20 32 20 32 0a 20 32 20 32 20 32 0 0 2 2 2. 2 2 2
03e0: 20 30 20 32 20 30 20 30 20 32 20 30 20 30 20 32 0 2 0 0 2 0 0 2
03f0: 20 30 20 32 20 30 20 32 20 32 20 32 20 30 20 32 0 2 0 2 2 2 0 2
0400: 20 30 20 32 20 32 20 30 20 30 20 32 20 30 20 32 0 2 2 0 0 2 0 2
0410: 20 32 20 32 20 30 20 32 20 32 0a 20 32 20 32 20 2 2 0 2 2. 2 2
0420: 32 20 30 20 32 20 30 20 32 20 32 20 30 20 32 20 2 0 2 0 2 2 0 2
0430: 32 20 30 20 32 20 32 20 32 20 32 20 32 20 30 20 2 0 2 2 2 2 2 0
0440: 32 20 30 20 32 20 32 20 32 20 30 20 32 20 30 20 2 0 2 2 2 0 2 0
0450: 32 20 32 20 32 20 30 20 32 20 32 0a 20 32 20 32 2 2 2 0 2 2. 2 2
0460: 20 32 20 30 20 32 20 30 20 32 20 32 20 30 20 32 2 0 2 0 2 2 0 2
0470: 20 32 20 30 20 32 20 32 20 30 20 30 20 30 20 30 2 0 2 2 0 0 0 0
0480: 20 32 20 30 20 32 20 32 20 32 20 30 20 32 20 30 2 0 2 2 2 0 2 0
0490: 20 30 20 30 20 30 20 30 20 32 20 32 0a 20 32 20 0 0 0 0 2 2. 2
04a0: 32 20 32 20 30 20 32 20 30 20 32 20 32 20 30 20 2 2 0 2 0 2 2 0
04b0: 32 20 32 20 30 20 32 20 30 20 32 20 32 20 32 20 2 2 0 2 0 2 2 2
04c0: 30 20 32 20 30 20 32 20 32 20 32 20 30 20 32 20 0 2 0 2 2 2 0 2
04d0: 30 20 32 20 32 20 32 20 32 20 32 20 32 0a 20 32 0 2 2 2 2 2 2. 2
04e0: 20 32 20 32 20 30 20 32 20 30 20 32 20 32 20 30 2 2 0 2 0 2 2 0
04f0: 20 32 20 32 20 30 20 32 20 30 20 32 20 32 20 32 2 2 0 2 0 2 2 2
0500: 20 30 20 32 20 30 20 32 20 32 20 30 20 30 20 32 0 2 0 2 2 0 0 2
0510: 20 30 20 32 20 32 20 32 20 30 20 32 20 32 0a 20 0 2 2 2 0 2 2.
0520: 32 20 32 20 32 20 30 20 32 20 30 20 32 20 32 20 2 2 2 0 2 0 2 2
0530: 30 20 32 20 32 20 30 20 32 20 32 20 30 20 30 20 0 2 2 0 2 2 0 0
0540: 30 20 30 20 32 20 32 20 30 20 30 20 32 20 30 20 0 0 2 2 0 0 2 0
0550: 32 20 32 20 30 20 30 20 30 20 32 20 32 20 32 0a 2 2 0 0 0 2 2 2.
0560: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0570: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0580: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 30 2 2 2 2 2 2 2 0
0590: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
05a0: 0a 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 . 2 2 2 2 2 2 2
05b0: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
05c0: 32 20 32 20 32 20 32 20 30 20 32 20 32 20 32 20 2 2 2 2 0 2 2 2
05d0: 30 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 0 2 2 2 2 2 2 2
05e0: 32 0a 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2. 2 2 2 2 2 2 2
05f0: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0600: 20 32 20 32 20 32 20 32 20 32 20 30 20 30 20 30 2 2 2 2 2 0 0 0
0610: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0620: 20 32 0a 20 32 20 32 20 32 20 32 20 32 20 32 20 2. 2 2 2 2 2 2
0630: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0640: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0650: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0660: 32 20 32 0a 20 32 20 32 20 32 20 32 20 32 20 32 2 2. 2 2 2 2 2 2
0670: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0680: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0690: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
06a0: 20 32 20 32 0a 20 31 20 31 20 31 20 31 20 31 20 2 2. 1 1 1 1 1
06b0: 31 20 31 20 32 20 32 20 32 20 32 20 32 20 32 20 1 1 2 2 2 2 2 2
06c0: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
06d0: 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 1 1 1 1 1 1 1 1
06e0: 31 20 31 20 31 0a 20 31 20 31 20 31 20 31 20 31 1 1 1. 1 1 1 1 1
06f0: 20 31 20 32 20 32 20 32 20 32 20 32 20 32 20 32 1 2 2 2 2 2 2 2
0700: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 31 2 2 2 2 2 2 2 1
0710: 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 1 1 1 1 1 1 1 1
0720: 20 31 20 31 20 31 0a 20 31 20 31 20 31 20 31 20 1 1 1. 1 1 1 1
0730: 31 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 1 2 2 2 2 2 2 2
0740: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 31 20 2 2 2 2 2 2 2 1
0750: 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 1 1 1 1 1 1 1 1
0760: 31 20 31 20 31 20 31 0a 20 31 20 31 20 31 20 31 1 1 1 1. 1 1 1 1
0770: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0780: 20 32 20 32 20 32 20 32 20 32 20 32 20 31 20 31 2 2 2 2 2 2 1 1
0790: 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 1 1 1 1 1 1 1 1
07a0: 20 31 20 31 20 31 20 31 0a 20 31 20 31 20 31 20 1 1 1 1. 1 1 1
07b0: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
07c0: 32 20 32 20 32 20 32 20 32 20 32 20 31 20 31 20 2 2 2 2 2 2 1 1
07d0: 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 1 1 1 1 1 1 1 1
07e0: 31 20 31 20 31 20 31 20 31 0a 20 31 20 31 20 32 1 1 1 1 1. 1 1 2
07f0: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0800: 20 32 20 32 20 32 20 32 20 32 20 31 20 31 20 31 2 2 2 2 2 1 1 1
0810: 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 1 1 1 1 1 1 1 1
0820: 20 31 20 31 20 31 20 31 20 31 0a 20 31 20 32 20 1 1 1 1 1. 1 2
0830: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0840: 32 20 32 20 32 20 32 20 32 20 31 20 31 20 31 20 2 2 2 2 2 1 1 1
0850: 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 1 1 1 1 1 1 1 1
0860: 31 20 31 20 31 20 31 20 31 20 31 0a 20 32 20 32 1 1 1 1 1 1. 2 2
0870: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0880: 20 32 20 32 20 32 20 32 20 31 20 31 20 31 20 31 2 2 2 2 1 1 1 1
0890: 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 1 1 1 1 1 1 1 1
08a0: 20 31 20 31 20 31 20 31 20 31 20 31 0a 29 29 29 1 1 1 1 1 1.)))
08b0: 0a 0a 28 64 65 66 69 6e 65 20 69 6d 67 2d 62 69 ..(define img-bi
08c0: 74 73 32 20 28 75 38 76 65 63 74 6f 72 2d 3e 62 ts2 (u8vector->b
08d0: 6c 6f 62 20 28 75 38 76 65 63 74 6f 72 0a 20 32 lob (u8vector. 2
08e0: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
08f0: 20 32 20 32 20 32 20 32 20 32 20 32 20 33 20 33 2 2 2 2 2 2 3 3
0900: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
0910: 20 33 20 33 20 33 20 33 20 33 20 33 20 32 0a 20 3 3 3 3 3 3 2.
0920: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0930: 32 20 32 20 32 20 32 20 32 20 32 20 33 20 33 20 2 2 2 2 2 2 3 3
0940: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 3 3 3 3 3 3 3 3
0950: 33 20 33 20 33 20 33 20 33 20 33 20 32 20 32 0a 3 3 3 3 3 3 2 2.
0960: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0970: 20 32 20 32 20 32 20 32 20 32 20 33 20 33 20 33 2 2 2 2 2 3 3 3
0980: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
0990: 20 33 20 33 20 33 20 33 20 33 20 32 20 32 20 32 3 3 3 3 3 2 2 2
09a0: 0a 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 . 2 2 2 2 2 2 2
09b0: 32 20 32 20 32 20 32 20 32 20 33 20 33 20 33 20 2 2 2 2 2 3 3 3
09c0: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 3 3 3 3 3 3 3 3
09d0: 33 20 33 20 33 20 33 20 33 20 32 20 32 20 32 20 3 3 3 3 3 2 2 2
09e0: 32 0a 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2. 2 2 2 2 2 2 2
09f0: 20 32 20 32 20 32 20 32 20 33 20 33 20 33 20 33 2 2 2 2 3 3 3 3
0a00: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
0a10: 20 33 20 33 20 33 20 33 20 32 20 32 20 32 20 32 3 3 3 3 2 2 2 2
0a20: 20 32 0a 20 32 20 32 20 32 20 32 20 32 20 32 20 2. 2 2 2 2 2 2
0a30: 32 20 32 20 32 20 32 20 33 20 33 20 33 20 33 20 2 2 2 2 3 3 3 3
0a40: 31 20 31 20 33 20 33 20 33 20 33 20 33 20 33 20 1 1 3 3 3 3 3 3
0a50: 33 20 33 20 33 20 33 20 32 20 32 20 32 20 32 20 3 3 3 3 2 2 2 2
0a60: 32 20 32 0a 20 32 20 32 20 32 20 32 20 32 20 32 2 2. 2 2 2 2 2 2
0a70: 20 32 20 32 20 32 20 33 20 33 20 33 20 33 20 33 2 2 2 3 3 3 3 3
0a80: 20 31 20 31 20 33 20 33 20 33 20 33 20 33 20 33 1 1 3 3 3 3 3 3
0a90: 20 33 20 33 20 33 20 32 20 32 20 32 20 32 20 32 3 3 3 2 2 2 2 2
0aa0: 20 32 20 32 0a 20 32 20 32 20 32 20 32 20 32 20 2 2. 2 2 2 2 2
0ab0: 32 20 32 20 32 20 33 20 33 20 33 20 33 20 33 20 2 2 2 3 3 3 3 3
0ac0: 33 20 31 20 31 20 33 20 33 20 33 20 33 20 33 20 3 1 1 3 3 3 3 3
0ad0: 33 20 33 20 33 20 32 20 32 20 32 20 32 20 32 20 3 3 3 2 2 2 2 2
0ae0: 32 20 32 20 32 0a 20 33 20 33 20 33 20 33 20 33 2 2 2. 3 3 3 3 3
0af0: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
0b00: 20 33 20 31 20 31 20 33 20 33 20 33 20 33 20 33 3 1 1 3 3 3 3 3
0b10: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
0b20: 20 33 20 33 20 33 0a 20 33 20 33 20 33 20 33 20 3 3 3. 3 3 3 3
0b30: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 3 3 3 3 3 3 3 3
0b40: 33 20 33 20 31 20 31 20 33 20 33 20 33 20 33 20 3 3 1 1 3 3 3 3
0b50: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 3 3 3 3 3 3 3 3
0b60: 33 20 33 20 33 20 33 0a 20 33 20 33 20 33 20 30 3 3 3 3. 3 3 3 0
0b70: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
0b80: 20 33 20 33 20 31 20 31 20 33 20 33 20 33 20 33 3 3 1 1 3 3 3 3
0b90: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
0ba0: 20 33 20 33 20 33 20 33 0a 20 33 20 33 20 33 20 3 3 3 3. 3 3 3
0bb0: 30 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 0 3 3 3 3 3 3 3
0bc0: 33 20 33 20 33 20 31 20 31 20 33 20 33 20 33 20 3 3 3 1 1 3 3 3
0bd0: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 3 3 3 3 3 3 3 3
0be0: 33 20 33 20 33 20 33 20 33 0a 20 33 20 33 20 33 3 3 3 3 3. 3 3 3
0bf0: 20 30 20 33 20 30 20 33 20 30 20 33 20 33 20 30 0 3 0 3 0 3 3 0
0c00: 20 33 20 33 20 33 20 31 20 31 20 30 20 33 20 33 3 3 3 1 1 0 3 3
0c10: 20 33 20 30 20 30 20 33 20 30 20 33 20 33 20 30 3 0 0 3 0 3 3 0
0c20: 20 30 20 30 20 33 20 33 20 33 0a 20 33 20 33 20 0 0 3 3 3. 3 3
0c30: 33 20 30 20 33 20 30 20 30 20 33 20 30 20 30 20 3 0 3 0 0 3 0 0
0c40: 33 20 30 20 33 20 30 20 31 20 31 20 33 20 30 20 3 0 3 0 1 1 3 0
0c50: 33 20 30 20 33 20 33 20 30 20 30 20 33 20 30 20 3 0 3 3 0 0 3 0
0c60: 33 20 33 20 33 20 30 20 33 20 33 0a 20 33 20 33 3 3 3 0 3 3. 3 3
0c70: 20 33 20 30 20 33 20 30 20 33 20 33 20 30 20 33 3 0 3 0 3 3 0 3
0c80: 20 33 20 30 20 33 20 33 20 31 20 31 20 33 20 30 3 0 3 3 1 1 3 0
0c90: 20 33 20 30 20 33 20 33 20 33 20 30 20 33 20 30 3 0 3 3 3 0 3 0
0ca0: 20 33 20 33 20 33 20 30 20 33 20 33 0a 20 31 20 3 3 3 0 3 3. 1
0cb0: 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 1 1 1 1 1 1 1 1
0cc0: 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 1 1 1 1 1 1 1 1
0cd0: 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 1 1 1 1 1 1 1 1
0ce0: 31 20 31 20 31 20 31 20 31 20 31 20 31 0a 20 31 1 1 1 1 1 1 1. 1
0cf0: 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 1 1 1 1 1 1 1 1
0d00: 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 1 1 1 1 1 1 1 1
0d10: 20 31 20 31 20 31 20 31 20 31 20 31 20 31 20 31 1 1 1 1 1 1 1 1
0d20: 20 31 20 31 20 31 20 31 20 31 20 31 20 31 0a 20 1 1 1 1 1 1 1.
0d30: 33 20 33 20 33 20 30 20 33 20 30 20 33 20 33 20 3 3 3 0 3 0 3 3
0d40: 30 20 33 20 33 20 30 20 33 20 30 20 31 20 31 20 0 3 3 0 3 0 1 1
0d50: 33 20 30 20 33 20 30 20 33 20 33 20 30 20 30 20 3 0 3 0 3 3 0 0
0d60: 33 20 30 20 33 20 33 20 33 20 30 20 33 20 33 0a 3 0 3 3 3 0 3 3.
0d70: 20 33 20 33 20 33 20 30 20 33 20 30 20 33 20 33 3 3 3 0 3 0 3 3
0d80: 20 30 20 33 20 33 20 30 20 33 20 33 20 31 20 31 0 3 3 0 3 3 1 1
0d90: 20 30 20 30 20 33 20 33 20 30 20 30 20 33 20 30 0 0 3 3 0 0 3 0
0da0: 20 33 20 33 20 30 20 30 20 30 20 33 20 33 20 33 3 3 0 0 0 3 3 3
0db0: 0a 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 . 3 3 3 3 3 3 3
0dc0: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 31 20 3 3 3 3 3 3 3 1
0dd0: 31 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 1 3 3 3 3 3 3 3
0de0: 30 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 0 3 3 3 3 3 3 3
0df0: 33 0a 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3. 3 3 3 3 3 3 3
0e00: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 31 3 3 3 3 3 3 3 1
0e10: 20 31 20 33 20 33 20 33 20 30 20 33 20 33 20 33 1 3 3 3 0 3 3 3
0e20: 20 30 20 33 20 33 20 33 20 33 20 33 20 33 20 33 0 3 3 3 3 3 3 3
0e30: 20 33 0a 20 33 20 33 20 33 20 33 20 33 20 33 20 3. 3 3 3 3 3 3
0e40: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 3 3 3 3 3 3 3 3
0e50: 31 20 31 20 33 20 33 20 33 20 33 20 30 20 30 20 1 1 3 3 3 3 0 0
0e60: 30 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 0 3 3 3 3 3 3 3
0e70: 33 20 33 0a 20 33 20 33 20 33 20 33 20 33 20 33 3 3. 3 3 3 3 3 3
0e80: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
0e90: 20 31 20 31 20 33 20 33 20 33 20 33 20 33 20 33 1 1 3 3 3 3 3 3
0ea0: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
0eb0: 20 33 20 33 0a 20 33 20 33 20 33 20 33 20 33 20 3 3. 3 3 3 3 3
0ec0: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 3 3 3 3 3 3 3 3
0ed0: 33 20 31 20 31 20 33 20 33 20 33 20 33 20 33 20 3 1 1 3 3 3 3 3
0ee0: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 3 3 3 3 3 3 3 3
0ef0: 33 20 33 20 33 0a 20 32 20 32 20 32 20 32 20 32 3 3 3. 2 2 2 2 2
0f00: 20 32 20 32 20 33 20 33 20 33 20 33 20 33 20 33 2 2 3 3 3 3 3 3
0f10: 20 33 20 31 20 31 20 33 20 33 20 33 20 33 20 33 3 1 1 3 3 3 3 3
0f20: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0f30: 20 32 20 32 20 32 0a 20 32 20 32 20 32 20 32 20 2 2 2. 2 2 2 2
0f40: 32 20 32 20 33 20 33 20 33 20 33 20 33 20 33 20 2 2 3 3 3 3 3 3
0f50: 33 20 33 20 31 20 31 20 33 20 33 20 33 20 33 20 3 3 1 1 3 3 3 3
0f60: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0f70: 32 20 32 20 32 20 32 0a 20 32 20 32 20 32 20 32 2 2 2 2. 2 2 2 2
0f80: 20 32 20 33 20 33 20 33 20 33 20 33 20 33 20 33 2 3 3 3 3 3 3 3
0f90: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 32 3 3 3 3 3 3 3 2
0fa0: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
0fb0: 20 32 20 32 20 32 20 32 0a 20 32 20 32 20 32 20 2 2 2 2. 2 2 2
0fc0: 32 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 2 3 3 3 3 3 3 3
0fd0: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 32 20 3 3 3 3 3 3 3 2
0fe0: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
0ff0: 32 20 32 20 32 20 32 20 32 0a 20 32 20 32 20 32 2 2 2 2 2. 2 2 2
1000: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
1010: 20 33 20 33 20 33 20 33 20 33 20 33 20 32 20 32 3 3 3 3 3 3 2 2
1020: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
1030: 20 32 20 32 20 32 20 32 20 32 0a 20 32 20 32 20 2 2 2 2 2. 2 2
1040: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 3 3 3 3 3 3 3 3
1050: 33 20 33 20 33 20 33 20 33 20 33 20 32 20 32 20 3 3 3 3 3 3 2 2
1060: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
1070: 32 20 32 20 32 20 32 20 32 20 32 0a 20 32 20 33 2 2 2 2 2 2. 2 3
1080: 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 3 3 3 3 3 3 3 3
1090: 20 33 20 33 20 33 20 33 20 33 20 32 20 32 20 32 3 3 3 3 3 2 2 2
10a0: 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 2 2 2 2 2 2 2 2
10b0: 20 32 20 32 20 32 20 32 20 32 20 32 0a 20 33 20 2 2 2 2 2 2. 3
10c0: 33 20 33 20 33 20 33 20 33 20 33 20 33 20 33 20 3 3 3 3 3 3 3 3
10d0: 33 20 33 20 33 20 33 20 33 20 32 20 32 20 32 20 3 3 3 3 3 2 2 2
10e0: 32 20 32 20 32 20 32 20 32 20 32 20 32 20 32 20 2 2 2 2 2 2 2 2
10f0: 32 20 32 20 32 20 32 20 32 20 32 20 32 0a 29 29 2 2 2 2 2 2 2.))
1100: 29 0a 0a 28 64 65 66 69 6e 65 20 28 69 75 70 3a )..(define (iup:
1110: 69 74 65 6d 2d 73 65 74 2d 61 74 74 72 69 62 75 item-set-attribu
1120: 74 65 73 21 20 69 74 65 6d 20 2e 20 61 74 74 72 tes! item . attr
1130: 6c 73 74 29 0a 20 20 28 66 6f 72 2d 65 61 63 68 lst). (for-each
1140: 20 28 6c 61 6d 62 64 61 20 28 61 74 74 72 74 6f (lambda (attrto
1150: 6b 29 0a 09 20 20 20 20 20 20 28 6c 65 74 20 28 k).. (let (
1160: 28 61 74 74 72 6c 73 74 20 28 73 74 72 69 6e 67 (attrlst (string
1170: 2d 73 70 6c 69 74 20 61 74 74 72 74 6f 6b 20 22 -split attrtok "
1180: 3d 22 29 29 29 0a 09 09 28 69 75 70 3a 61 74 74 =")))...(iup:att
1190: 72 69 62 75 74 65 2d 73 65 74 21 20 69 74 65 6d ribute-set! item
11a0: 20 28 63 61 72 20 61 74 74 72 6c 73 74 29 28 63 (car attrlst)(c
11b0: 61 64 72 20 61 74 74 72 6c 73 74 29 29 29 29 0a adr attrlst)))).
11c0: 09 20 20 20 20 61 74 74 72 6c 73 74 29 0a 20 20 . attrlst).
11d0: 69 74 65 6d 29 0a 0a 28 64 65 66 69 6e 65 20 28 item)..(define (
11e0: 6d 79 61 63 74 69 6f 6e 29 0a 20 20 28 70 72 69 myaction). (pri
11f0: 6e 74 20 22 4d 79 20 61 63 74 69 6f 6e 20 63 61 nt "My action ca
1200: 6c 6c 65 64 22 29 29 0a 0a 28 64 65 66 69 6e 65 lled"))..(define
1210: 20 28 69 6e 69 74 2d 64 69 61 6c 6f 67 29 0a 20 (init-dialog).
1220: 20 28 6c 65 74 20 28 28 69 6d 67 31 20 20 20 20 (let ((img1
1230: 28 69 75 70 3a 69 6d 61 67 65 2f 70 61 6c 65 74 (iup:image/palet
1240: 74 65 20 33 32 20 33 32 20 69 6d 67 2d 62 69 74 te 32 32 img-bit
1250: 73 31 29 29 0a 09 28 69 6d 67 32 20 20 20 20 28 s1))..(img2 (
1260: 69 75 70 3a 69 6d 61 67 65 2f 70 61 6c 65 74 74 iup:image/palett
1270: 65 20 33 32 20 33 32 20 69 6d 67 2d 62 69 74 73 e 32 32 img-bits
1280: 32 29 29 0a 09 28 6d 6e 75 20 20 20 20 20 23 66 2))..(mnu #f
1290: 29 0a 09 28 5f 66 72 6d 2d 31 20 20 23 66 29 0a )..(_frm-1 #f).
12a0: 09 28 5f 66 72 6d 2d 32 20 20 23 66 29 0a 09 28 .(_frm-2 #f)..(
12b0: 5f 66 72 6d 2d 33 20 20 23 66 29 0a 09 28 5f 66 _frm-3 #f)..(_f
12c0: 72 6d 2d 34 20 20 23 66 29 0a 09 28 5f 66 72 6d rm-4 #f)..(_frm
12d0: 2d 35 20 20 23 66 29 0a 09 28 5f 6c 69 73 74 2d -5 #f)..(_list-
12e0: 31 20 23 66 29 0a 09 28 5f 6c 69 73 74 2d 32 20 1 #f)..(_list-2
12f0: 23 66 29 0a 09 28 5f 6c 69 73 74 2d 33 20 23 66 #f)..(_list-3 #f
1300: 29 0a 09 28 5f 68 62 6f 78 2d 31 20 23 66 29 0a )..(_hbox-1 #f).
1310: 09 28 5f 76 62 6f 78 2d 31 20 23 66 29 0a 09 28 .(_vbox-1 #f)..(
1320: 5f 63 6e 76 2d 31 20 20 23 66 29 0a 09 28 64 6c _cnv-1 #f)..(dl
1330: 67 20 20 20 20 20 23 66 29 0a 09 28 63 31 20 20 g #f)..(c1
1340: 20 20 20 20 23 66 29 29 0a 20 20 20 20 28 69 75 #f)). (iu
1350: 70 3a 68 61 6e 64 6c 65 2d 6e 61 6d 65 2d 73 65 p:handle-name-se
1360: 74 21 20 69 6d 67 31 20 22 69 6d 67 31 22 29 0a t! img1 "img1").
1370: 20 20 20 20 28 69 75 70 3a 61 74 74 72 69 62 75 (iup:attribu
1380: 74 65 2d 73 65 74 21 20 69 6d 67 31 20 22 30 22 te-set! img1 "0"
1390: 20 22 30 20 30 20 30 22 29 0a 20 20 20 20 28 69 "0 0 0"). (i
13a0: 75 70 3a 61 74 74 72 69 62 75 74 65 2d 73 65 74 up:attribute-set
13b0: 21 20 69 6d 67 31 20 22 31 22 20 22 42 47 43 4f ! img1 "1" "BGCO
13c0: 4c 4f 52 22 29 0a 20 20 20 20 28 69 75 70 3a 61 LOR"). (iup:a
13d0: 74 74 72 69 62 75 74 65 2d 73 65 74 21 20 69 6d ttribute-set! im
13e0: 67 31 20 22 32 22 20 22 32 35 35 20 30 20 30 22 g1 "2" "255 0 0"
13f0: 29 0a 0a 20 20 20 20 28 69 75 70 3a 68 61 6e 64 ).. (iup:hand
1400: 6c 65 2d 6e 61 6d 65 2d 73 65 74 21 20 69 6d 67 le-name-set! img
1410: 32 20 22 69 6d 67 32 22 29 0a 20 20 20 20 28 69 2 "img2"). (i
1420: 75 70 3a 61 74 74 72 69 62 75 74 65 2d 73 65 74 up:attribute-set
1430: 21 20 69 6d 67 32 20 22 30 22 20 22 30 20 30 20 ! img2 "0" "0 0
1440: 30 22 29 0a 20 20 20 20 28 69 75 70 3a 61 74 74 0"). (iup:att
1450: 72 69 62 75 74 65 2d 73 65 74 21 20 69 6d 67 32 ribute-set! img2
1460: 20 22 31 22 20 22 30 20 32 35 35 20 30 22 29 0a "1" "0 255 0").
1470: 20 20 20 20 28 69 75 70 3a 61 74 74 72 69 62 75 (iup:attribu
1480: 74 65 2d 73 65 74 21 20 69 6d 67 32 20 22 32 22 te-set! img2 "2"
1490: 20 22 42 47 43 4f 4c 4f 52 22 29 0a 20 20 20 20 "BGCOLOR").
14a0: 28 69 75 70 3a 61 74 74 72 69 62 75 74 65 2d 73 (iup:attribute-s
14b0: 65 74 21 20 69 6d 67 32 20 22 33 22 20 22 32 35 et! img2 "3" "25
14c0: 35 20 30 20 30 22 29 0a 0a 20 20 20 20 28 73 65 5 0 0").. (se
14d0: 74 21 20 6d 6e 75 20 28 69 75 70 3a 6d 65 6e 75 t! mnu (iup:menu
14e0: 0a 09 20 20 20 20 20 20 20 28 69 75 70 3a 69 74 .. (iup:it
14f0: 65 6d 2d 73 65 74 2d 61 74 74 72 69 62 75 74 65 em-set-attribute
1500: 73 21 0a 09 09 28 69 75 70 3a 6d 65 6e 75 2d 69 s!...(iup:menu-i
1510: 74 65 6d 20 22 49 75 70 53 75 62 6d 65 6e 75 20 tem "IupSubmenu
1520: 31 22 20 0a 09 09 09 20 20 20 20 20 20 20 28 69 1" .... (i
1530: 75 70 3a 6d 65 6e 75 0a 09 09 09 09 28 69 75 70 up:menu.....(iup
1540: 3a 69 74 65 6d 2d 73 65 74 2d 61 74 74 72 69 62 :item-set-attrib
1550: 75 74 65 73 21 20 0a 09 09 09 09 20 28 69 75 70 utes! ..... (iup
1560: 3a 6d 65 6e 75 2d 69 74 65 6d 20 22 49 75 70 49 :menu-item "IupI
1570: 74 65 6d 20 31 20 43 68 65 63 6b 65 64 22 20 22 tem 1 Checked" "
1580: 6d 79 61 63 74 69 6f 6e 22 29 0a 09 09 09 09 20 myaction").....
1590: 22 56 41 4c 55 45 3d 4f 4e 22 29 0a 09 09 09 09 "VALUE=ON").....
15a0: 28 69 75 70 3a 6d 65 6e 75 2d 73 65 70 61 72 61 (iup:menu-separa
15b0: 74 6f 72 29 0a 09 09 09 09 28 69 75 70 3a 69 74 tor).....(iup:it
15c0: 65 6d 2d 73 65 74 2d 61 74 74 72 69 62 75 74 65 em-set-attribute
15d0: 73 21 0a 09 09 09 09 20 28 69 75 70 3a 6d 65 6e s!..... (iup:men
15e0: 75 2d 69 74 65 6d 20 22 49 75 70 49 74 65 6d 20 u-item "IupItem
15f0: 32 20 44 69 73 61 62 6c 65 64 22 20 22 6d 79 61 2 Disabled" "mya
1600: 63 74 69 6f 6e 22 29 0a 09 09 09 09 20 22 41 43 ction")..... "AC
1610: 54 49 56 45 3d 4e 4f 22 29 29 29 29 29 29 0a 20 TIVE=NO")))))).
1620: 20 20 20 28 69 75 70 3a 68 61 6e 64 6c 65 2d 6e (iup:handle-n
1630: 61 6d 65 2d 73 65 74 21 20 6d 6e 75 20 22 6d 6e ame-set! mnu "mn
1640: 75 22 29 0a 0a 20 20 20 20 28 73 65 74 21 20 5f u").. (set! _
1650: 66 72 6d 2d 31 20 28 69 75 70 3a 66 72 61 6d 65 frm-1 (iup:frame
1660: 20 0a 09 09 20 20 28 69 75 70 3a 76 62 6f 78 20 ... (iup:vbox
1670: 0a 09 09 20 20 20 28 69 75 70 3a 62 75 74 74 6f ... (iup:butto
1680: 6e 20 22 42 75 74 74 6f 6e 20 54 65 78 74 22 20 n "Button Text"
1690: 23 3a 61 63 74 69 6f 6e 20 28 6c 61 6d 62 64 61 #:action (lambda
16a0: 20 28 78 29 28 70 72 69 6e 74 20 22 42 6c 61 68 (x)(print "Blah
16b0: 22 20 78 29 29 29 0a 09 09 20 20 20 28 69 75 70 " x)))... (iup
16c0: 3a 69 74 65 6d 2d 73 65 74 2d 61 74 74 72 69 62 :item-set-attrib
16d0: 75 74 65 73 21 0a 09 09 20 20 20 20 28 69 75 70 utes!... (iup
16e0: 3a 62 75 74 74 6f 6e 20 22 22 20 23 3a 61 63 74 :button "" #:act
16f0: 69 6f 6e 20 70 72 69 6e 74 29 20 22 49 4d 41 47 ion print) "IMAG
1700: 45 3d 69 6d 67 31 22 29 0a 09 09 20 20 20 28 69 E=img1")... (i
1710: 75 70 3a 69 74 65 6d 2d 73 65 74 2d 61 74 74 72 up:item-set-attr
1720: 69 62 75 74 65 73 21 20 0a 09 09 20 20 20 20 28 ibutes! ... (
1730: 69 75 70 3a 62 75 74 74 6f 6e 20 22 22 20 23 3a iup:button "" #:
1740: 61 63 74 69 6f 6e 20 70 72 69 6e 74 29 20 22 49 action print) "I
1750: 4d 41 47 45 3d 69 6d 67 31 22 20 22 49 4d 50 52 MAGE=img1" "IMPR
1760: 45 53 53 3d 69 6d 67 32 22 29 29 29 29 0a 20 20 ESS=img2")))).
1770: 20 20 28 69 75 70 3a 61 74 74 72 69 62 75 74 65 (iup:attribute
1780: 2d 73 65 74 21 20 5f 66 72 6d 2d 31 20 22 54 49 -set! _frm-1 "TI
1790: 54 4c 45 22 20 22 49 75 70 42 75 74 74 6f 6e 22 TLE" "IupButton"
17a0: 29 0a 0a 20 20 20 20 28 73 65 74 21 20 5f 66 72 ).. (set! _fr
17b0: 6d 2d 32 20 28 69 75 70 3a 66 72 61 6d 65 0a 09 m-2 (iup:frame..
17c0: 09 20 20 28 69 75 70 3a 76 62 6f 78 0a 09 09 20 . (iup:vbox...
17d0: 20 20 28 69 75 70 3a 6c 61 62 65 6c 20 22 4c 61 (iup:label "La
17e0: 62 65 6c 20 54 65 78 74 22 29 0a 09 09 20 20 20 bel Text")...
17f0: 28 69 75 70 3a 69 74 65 6d 2d 73 65 74 2d 61 74 (iup:item-set-at
1800: 74 72 69 62 75 74 65 73 21 20 0a 09 09 20 20 20 tributes! ...
1810: 20 28 69 75 70 3a 6c 61 62 65 6c 20 22 22 29 20 (iup:label "")
1820: 22 53 45 50 41 52 41 54 4f 52 3d 48 4f 52 49 5a "SEPARATOR=HORIZ
1830: 4f 4e 54 41 4c 22 29 0a 09 09 20 20 20 28 69 75 ONTAL")... (iu
1840: 70 3a 69 74 65 6d 2d 73 65 74 2d 61 74 74 72 69 p:item-set-attri
1850: 62 75 74 65 73 21 0a 09 09 20 20 20 20 28 69 75 butes!... (iu
1860: 70 3a 6c 61 62 65 6c 20 22 22 29 20 22 49 4d 41 p:label "") "IMA
1870: 47 45 3d 69 6d 67 31 22 29 29 29 29 0a 20 20 20 GE=img1")))).
1880: 20 28 69 75 70 3a 61 74 74 72 69 62 75 74 65 2d (iup:attribute-
1890: 73 65 74 21 20 5f 66 72 6d 2d 32 20 22 54 49 54 set! _frm-2 "TIT
18a0: 4c 45 22 20 22 49 75 70 4c 61 62 65 6c 22 29 0a LE" "IupLabel").
18b0: 0a 20 20 20 20 28 73 65 74 21 20 5f 66 72 6d 2d . (set! _frm-
18c0: 33 20 28 69 75 70 3a 66 72 61 6d 65 0a 09 09 20 3 (iup:frame...
18d0: 20 28 69 75 70 3a 76 62 6f 78 20 0a 09 09 20 20 (iup:vbox ...
18e0: 20 28 69 75 70 3a 69 74 65 6d 2d 73 65 74 2d 61 (iup:item-set-a
18f0: 74 74 72 69 62 75 74 65 73 21 20 0a 09 09 20 20 ttributes! ...
1900: 20 20 28 69 75 70 3a 74 6f 67 67 6c 65 20 22 54 (iup:toggle "T
1910: 6f 67 67 6c 65 20 54 65 78 74 22 20 22 6d 79 61 oggle Text" "mya
1920: 63 74 69 6f 6e 22 29 20 22 56 41 4c 55 45 3d 4f ction") "VALUE=O
1930: 4e 22 29 0a 09 09 20 20 20 28 69 75 70 3a 69 74 N")... (iup:it
1940: 65 6d 2d 73 65 74 2d 61 74 74 72 69 62 75 74 65 em-set-attribute
1950: 73 21 0a 09 09 20 20 20 20 28 69 75 70 3a 74 6f s!... (iup:to
1960: 67 67 6c 65 20 22 22 20 22 6d 79 61 63 74 69 6f ggle "" "myactio
1970: 6e 22 29 20 22 49 4d 41 47 45 3d 69 6d 67 31 22 n") "IMAGE=img1"
1980: 20 22 49 4d 50 52 45 53 53 3d 69 6d 67 32 22 29 "IMPRESS=img2")
1990: 0a 09 09 20 20 20 28 69 75 70 3a 69 74 65 6d 2d ... (iup:item-
19a0: 73 65 74 2d 61 74 74 72 69 62 75 74 65 73 21 0a set-attributes!.
19b0: 09 09 20 20 20 20 28 69 75 70 3a 66 72 61 6d 65 .. (iup:frame
19c0: 0a 09 09 20 20 20 20 20 28 69 75 70 3a 72 61 64 ... (iup:rad
19d0: 69 6f 0a 09 09 20 20 20 20 20 20 28 69 75 70 3a io... (iup:
19e0: 76 62 6f 78 0a 09 09 20 20 20 20 20 20 20 28 69 vbox... (i
19f0: 75 70 3a 74 6f 67 67 6c 65 20 22 54 6f 67 67 6c up:toggle "Toggl
1a00: 65 20 54 65 78 74 22 20 22 6d 79 61 63 74 69 6f e Text" "myactio
1a10: 6e 22 29 0a 09 09 20 20 20 20 20 20 20 28 69 75 n")... (iu
1a20: 70 3a 74 6f 67 67 6c 65 20 22 54 6f 67 67 6c 65 p:toggle "Toggle
1a30: 20 54 65 78 74 22 20 22 6d 79 61 63 74 69 6f 6e Text" "myaction
1a40: 22 29 29 29 29 20 22 54 49 54 4c 45 3d 49 75 70 ")))) "TITLE=Iup
1a50: 52 61 64 69 6f 22 29 29 29 29 0a 20 20 20 20 28 Radio")))). (
1a60: 69 75 70 3a 61 74 74 72 69 62 75 74 65 2d 73 65 iup:attribute-se
1a70: 74 21 20 5f 66 72 6d 2d 33 20 22 54 49 54 4c 45 t! _frm-3 "TITLE
1a80: 22 20 22 49 75 70 54 6f 67 67 6c 65 22 29 0a 0a " "IupToggle")..
1a90: 20 20 20 20 28 73 65 74 21 20 5f 74 65 78 74 2d (set! _text-
1aa0: 31 20 28 69 75 70 3a 74 65 78 74 62 6f 78 20 22 1 (iup:textbox "
1ab0: 6d 79 61 63 74 69 6f 6e 22 29 29 0a 20 20 20 20 myaction")).
1ac0: 28 69 75 70 3a 61 74 74 72 69 62 75 74 65 2d 73 (iup:attribute-s
1ad0: 65 74 21 20 5f 74 65 78 74 2d 31 20 22 56 41 4c et! _text-1 "VAL
1ae0: 55 45 22 20 22 49 75 70 54 65 78 74 20 54 65 78 UE" "IupText Tex
1af0: 74 22 29 0a 20 20 20 20 28 69 75 70 3a 61 74 74 t"). (iup:att
1b00: 72 69 62 75 74 65 2d 73 65 74 21 20 5f 74 65 78 ribute-set! _tex
1b10: 74 2d 31 20 22 53 49 5a 45 22 20 22 38 30 78 22 t-1 "SIZE" "80x"
1b20: 29 0a 20 20 20 20 0a 20 20 20 20 28 73 65 74 21 ). . (set!
1b30: 20 5f 6d 31 2d 31 20 28 69 75 70 3a 74 65 78 74 _m1-1 (iup:text
1b40: 62 6f 78 20 22 6d 79 61 63 74 69 6f 6e 22 29 29 box "myaction"))
1b50: 0a 20 20 20 20 28 69 75 70 3a 61 74 74 72 69 62 . (iup:attrib
1b60: 75 74 65 2d 73 65 74 21 20 5f 6d 31 2d 31 20 22 ute-set! _m1-1 "
1b70: 4d 55 4c 54 49 4c 49 4e 45 22 20 22 59 45 53 22 MULTILINE" "YES"
1b80: 29 0a 20 20 20 20 28 69 75 70 3a 61 74 74 72 69 ). (iup:attri
1b90: 62 75 74 65 2d 73 65 74 21 20 5f 6d 31 2d 31 20 bute-set! _m1-1
1ba0: 22 56 41 4c 55 45 22 20 22 49 75 70 4d 75 6c 74 "VALUE" "IupMult
1bb0: 69 6c 69 6e 65 20 54 65 78 74 5c 6e 53 65 63 6f iline Text\nSeco
1bc0: 6e 64 20 4c 69 6e 65 5c 6e 54 68 69 72 64 20 4c nd Line\nThird L
1bd0: 69 6e 65 22 29 0a 20 20 20 20 28 69 75 70 3a 61 ine"). (iup:a
1be0: 74 74 72 69 62 75 74 65 2d 73 65 74 21 20 5f 6d ttribute-set! _m
1bf0: 31 2d 31 20 22 45 58 50 41 4e 44 22 20 22 59 45 1-1 "EXPAND" "YE
1c00: 53 22 29 0a 20 20 20 20 28 69 75 70 3a 61 74 74 S"). (iup:att
1c10: 72 69 62 75 74 65 2d 73 65 74 21 20 5f 6d 31 2d ribute-set! _m1-
1c20: 31 20 22 53 49 5a 45 22 20 22 38 30 78 36 30 22 1 "SIZE" "80x60"
1c30: 29 0a 0a 20 20 20 20 28 73 65 74 21 20 5f 66 72 ).. (set! _fr
1c40: 6d 2d 34 20 28 69 75 70 3a 66 72 61 6d 65 0a 09 m-4 (iup:frame..
1c50: 09 20 20 28 69 75 70 3a 76 62 6f 78 0a 09 09 20 . (iup:vbox...
1c60: 20 20 5f 74 65 78 74 2d 31 0a 09 09 20 20 20 5f _text-1... _
1c70: 6d 31 2d 31 29 29 29 0a 20 20 20 20 28 69 75 70 m1-1))). (iup
1c80: 3a 61 74 74 72 69 62 75 74 65 2d 73 65 74 21 20 :attribute-set!
1c90: 5f 66 72 6d 2d 34 20 22 54 49 54 4c 45 22 20 22 _frm-4 "TITLE" "
1ca0: 49 75 70 54 65 78 74 2f 49 75 70 4d 75 6c 74 69 IupText/IupMulti
1cb0: 6c 69 6e 65 22 29 0a 0a 20 20 20 20 28 73 65 74 line").. (set
1cc0: 21 20 5f 6c 69 73 74 2d 31 20 0a 09 20 20 28 69 ! _list-1 .. (i
1cd0: 75 70 3a 69 74 65 6d 2d 73 65 74 2d 61 74 74 72 up:item-set-attr
1ce0: 69 62 75 74 65 73 21 20 0a 09 20 20 20 28 69 75 ibutes! .. (iu
1cf0: 70 3a 6c 69 73 74 62 6f 78 20 22 6d 79 61 63 74 p:listbox "myact
1d00: 69 6f 6e 22 29 0a 09 20 20 20 22 45 58 50 41 4e ion").. "EXPAN
1d10: 44 3d 59 45 53 22 20 0a 09 20 20 20 22 56 41 4c D=YES" .. "VAL
1d20: 55 45 3d 31 22 0a 09 20 20 20 22 31 3d 49 74 65 UE=1".. "1=Ite
1d30: 6d 20 31 20 54 65 78 74 22 0a 09 20 20 20 22 32 m 1 Text".. "2
1d40: 3d 49 74 65 6d 20 32 20 54 65 78 74 22 0a 09 20 =Item 2 Text"..
1d50: 20 20 22 33 3d 49 74 65 6d 20 33 20 54 65 78 74 "3=Item 3 Text
1d60: 22 29 29 0a 09 20 20 0a 20 20 20 20 28 73 65 74 ")).. . (set
1d70: 21 20 5f 6c 69 73 74 2d 32 0a 09 20 20 28 69 75 ! _list-2.. (iu
1d80: 70 3a 69 74 65 6d 2d 73 65 74 2d 61 74 74 72 69 p:item-set-attri
1d90: 62 75 74 65 73 21 0a 09 20 20 20 28 69 75 70 3a butes!.. (iup:
1da0: 6c 69 73 74 62 6f 78 20 22 6d 79 61 63 74 69 6f listbox "myactio
1db0: 6e 22 29 0a 09 20 20 20 22 44 52 4f 50 44 4f 57 n").. "DROPDOW
1dc0: 4e 3d 59 45 53 22 0a 09 20 20 20 22 45 58 50 41 N=YES".. "EXPA
1dd0: 4e 44 3d 59 45 53 22 0a 09 20 20 20 22 56 41 4c ND=YES".. "VAL
1de0: 55 45 3d 32 22 0a 09 20 20 20 22 31 3d 49 74 65 UE=2".. "1=Ite
1df0: 6d 20 31 20 54 65 78 74 22 0a 09 20 20 20 22 32 m 1 Text".. "2
1e00: 3d 49 74 65 6d 20 32 20 54 65 78 74 22 0a 09 20 =Item 2 Text"..
1e10: 20 20 22 33 3d 49 74 65 6d 20 33 20 54 65 78 74 "3=Item 3 Text
1e20: 22 29 29 0a 0a 20 20 20 20 28 73 65 74 21 20 5f ")).. (set! _
1e30: 6c 69 73 74 2d 33 0a 09 20 20 28 69 75 70 3a 69 list-3.. (iup:i
1e40: 74 65 6d 2d 73 65 74 2d 61 74 74 72 69 62 75 74 tem-set-attribut
1e50: 65 73 21 0a 09 20 20 20 28 69 75 70 3a 6c 69 73 es!.. (iup:lis
1e60: 74 62 6f 78 20 22 6d 79 61 63 74 69 6f 6e 22 29 tbox "myaction")
1e70: 0a 09 20 20 20 22 45 44 49 54 42 4f 58 3d 59 45 .. "EDITBOX=YE
1e80: 53 22 0a 09 20 20 20 22 45 58 50 41 4e 44 3d 59 S".. "EXPAND=Y
1e90: 45 53 22 0a 09 20 20 20 22 56 41 4c 55 45 3d 33 ES".. "VALUE=3
1ea0: 22 0a 09 20 20 20 22 31 3d 49 74 65 6d 20 31 20 ".. "1=Item 1
1eb0: 54 65 78 74 22 0a 09 20 20 20 22 32 3d 49 74 65 Text".. "2=Ite
1ec0: 6d 20 32 20 54 65 78 74 22 0a 09 20 20 20 22 33 m 2 Text".. "3
1ed0: 3d 49 74 65 6d 20 33 20 54 65 78 74 22 29 29 0a =Item 3 Text")).
1ee0: 0a 20 20 20 20 28 73 65 74 21 20 5f 66 72 6d 2d . (set! _frm-
1ef0: 35 20 28 69 75 70 3a 66 72 61 6d 65 0a 09 09 20 5 (iup:frame...
1f00: 20 28 69 75 70 3a 76 62 6f 78 0a 09 09 20 20 20 (iup:vbox...
1f10: 5f 6c 69 73 74 2d 31 0a 09 09 20 20 20 5f 6c 69 _list-1... _li
1f20: 73 74 2d 32 0a 09 09 20 20 20 5f 6c 69 73 74 2d st-2... _list-
1f30: 33 29 29 29 0a 20 20 20 20 28 69 75 70 3a 61 74 3))). (iup:at
1f40: 74 72 69 62 75 74 65 2d 73 65 74 21 20 5f 66 72 tribute-set! _fr
1f50: 6d 2d 35 20 22 54 49 54 4c 45 22 20 22 49 75 70 m-5 "TITLE" "Iup
1f60: 4c 69 73 74 22 29 0a 09 20 20 20 0a 20 20 20 20 List").. .
1f70: 28 73 65 74 21 20 5f 68 62 6f 78 2d 31 20 28 69 (set! _hbox-1 (i
1f80: 75 70 3a 68 62 6f 78 0a 09 09 20 20 20 5f 66 72 up:hbox... _fr
1f90: 6d 2d 31 0a 09 09 20 20 20 5f 66 72 6d 2d 32 0a m-1... _frm-2.
1fa0: 09 09 20 20 20 5f 66 72 6d 2d 33 0a 09 09 20 20 .. _frm-3...
1fb0: 20 5f 66 72 6d 2d 34 0a 09 09 20 20 20 5f 66 72 _frm-4... _fr
1fc0: 6d 2d 35 29 29 0a 0a 20 20 20 20 28 73 65 74 21 m-5)).. (set!
1fd0: 20 5f 63 6e 76 2d 31 20 0a 09 20 20 3b 3b 20 28 _cnv-1 .. ;; (
1fe0: 69 75 70 3a 69 74 65 6d 2d 73 65 74 2d 61 74 74 iup:item-set-att
1ff0: 72 69 62 75 74 65 73 21 0a 09 20 20 3b 3b 28 69 ributes!.. ;;(i
2000: 75 70 3a 63 61 6e 76 61 73 29 0a 09 20 20 3b 3b up:canvas).. ;;
2010: 20 22 42 47 43 4f 4c 4f 52 3d 31 32 38 20 32 35 "BGCOLOR=128 25
2020: 35 20 30 22 20 0a 09 20 20 3b 3b 20 22 53 43 52 5 0" .. ;; "SCR
2030: 4f 4c 4c 42 41 52 3d 79 65 73 22 29 29 0a 09 20 OLLBAR=yes"))..
2040: 20 3b 3b 20 28 69 75 70 3a 68 61 6e 64 6c 65 2d ;; (iup:handle-
2050: 6e 61 6d 65 2d 73 65 74 21 20 5f 63 6e 76 2d 31 name-set! _cnv-1
2060: 20 22 63 6e 76 31 22 29 0a 0a 09 20 20 3b 3b 20 "cnv1")... ;;
2070: 28 75 73 65 20 69 75 70 20 63 61 6e 76 61 73 2d (use iup canvas-
2080: 64 72 61 77 20 63 61 6e 76 61 73 2d 64 72 61 77 draw canvas-draw
2090: 2d 69 75 70 29 0a 09 20 20 3b 3b 20 28 64 65 66 -iup).. ;; (def
20a0: 69 6e 65 20 64 6c 67 0a 09 20 20 3b 3b 20 20 20 ine dlg.. ;;
20b0: 28 64 69 61 6c 6f 67 20 23 3a 74 69 74 6c 65 20 (dialog #:title
20c0: 22 54 65 73 74 22 20 23 3a 6d 69 6e 73 69 7a 65 "Test" #:minsize
20d0: 20 22 33 32 30 78 32 34 30 22 0a 09 20 20 28 69 "320x240".. (i
20e0: 75 70 3a 63 61 6e 76 61 73 20 23 3a 61 63 74 69 up:canvas #:acti
20f0: 6f 6e 20 28 6d 61 6b 65 2d 63 61 6e 76 61 73 2d on (make-canvas-
2100: 61 63 74 69 6f 6e 0a 09 09 09 09 28 6c 61 6d 62 action.....(lamb
2110: 64 61 20 28 63 6e 76 20 78 20 79 29 0a 09 09 09 da (cnv x y)....
2120: 09 20 20 28 63 61 6e 76 61 73 2d 63 6c 65 61 72 . (canvas-clear
2130: 21 20 63 6e 76 29 0a 09 09 09 09 20 20 28 63 61 ! cnv)..... (ca
2140: 6e 76 61 73 2d 74 65 78 74 21 20 63 6e 76 20 34 nvas-text! cnv 4
2150: 30 20 34 30 20 22 48 65 6c 6c 6f 20 77 6f 72 6c 0 40 "Hello worl
2160: 64 21 22 29 0a 09 09 09 09 20 20 28 63 61 6e 76 d!")..... (canv
2170: 61 73 2d 72 65 63 74 61 6e 67 6c 65 21 20 63 6e as-rectangle! cn
2180: 76 20 39 30 20 31 32 30 20 37 30 20 31 30 30 29 v 90 120 70 100)
2190: 29 29 0a 09 09 20 20 20 20 20 20 23 3a 73 69 7a ))... #:siz
21a0: 65 20 22 32 30 30 78 31 30 30 22 29 29 0a 20 20 e "200x100")).
21b0: 20 20 3b 3b 20 29 0a 20 20 20 20 3b 3b 20 28 73 ;; ). ;; (s
21c0: 68 6f 77 20 64 6c 67 29 0a 20 20 20 20 3b 3b 20 how dlg). ;;
21d0: 28 6d 61 69 6e 2d 6c 6f 6f 70 29 0a 20 20 20 20 (main-loop).
21e0: 28 73 65 74 21 20 5f 76 62 6f 78 2d 31 20 28 69 (set! _vbox-1 (i
21f0: 75 70 3a 76 62 6f 78 0a 09 09 20 20 20 5f 68 62 up:vbox... _hb
2200: 6f 78 2d 31 0a 09 09 20 20 20 5f 63 6e 76 2d 31 ox-1... _cnv-1
2210: 0a 09 09 20 20 20 29 29 0a 0a 20 20 20 20 28 69 ... )).. (i
2220: 75 70 3a 61 74 74 72 69 62 75 74 65 2d 73 65 74 up:attribute-set
2230: 21 20 5f 76 62 6f 78 2d 31 20 22 4d 41 52 47 49 ! _vbox-1 "MARGI
2240: 4e 22 20 22 35 78 35 22 29 0a 20 20 20 20 28 69 N" "5x5"). (i
2250: 75 70 3a 61 74 74 72 69 62 75 74 65 2d 73 65 74 up:attribute-set
2260: 21 20 5f 76 62 6f 78 2d 31 20 22 41 4c 49 47 4e ! _vbox-1 "ALIGN
2270: 4d 45 4e 54 22 20 22 41 52 49 47 48 54 22 29 0a MENT" "ARIGHT").
2280: 20 20 20 20 28 69 75 70 3a 61 74 74 72 69 62 75 (iup:attribu
2290: 74 65 2d 73 65 74 21 20 5f 76 62 6f 78 2d 31 20 te-set! _vbox-1
22a0: 22 47 41 50 22 20 22 35 22 29 0a 20 20 20 20 0a "GAP" "5"). .
22b0: 20 20 20 20 28 73 65 74 21 20 64 6c 67 20 28 69 (set! dlg (i
22c0: 75 70 3a 64 69 61 6c 6f 67 20 5f 76 62 6f 78 2d up:dialog _vbox-
22d0: 31 29 29 0a 20 20 20 20 28 69 75 70 3a 68 61 6e 1)). (iup:han
22e0: 64 6c 65 2d 6e 61 6d 65 2d 73 65 74 21 20 64 6c dle-name-set! dl
22f0: 67 20 22 64 6c 67 22 29 0a 20 20 20 20 28 69 75 g "dlg"). (iu
2300: 70 3a 61 74 74 72 69 62 75 74 65 2d 73 65 74 21 p:attribute-set!
2310: 20 64 6c 67 20 22 4d 45 4e 55 22 20 22 6d 6e 75 dlg "MENU" "mnu
2320: 22 29 0a 20 20 20 20 28 69 75 70 3a 61 74 74 72 "). (iup:attr
2330: 69 62 75 74 65 2d 73 65 74 21 20 64 6c 67 20 22 ibute-set! dlg "
2340: 54 49 54 4c 45 22 20 22 49 75 70 20 53 61 6d 70 TITLE" "Iup Samp
2350: 6c 65 22 29 0a 0a 20 20 20 20 3b 3b 20 28 73 65 le").. ;; (se
2360: 74 21 20 63 31 20 28 6d 61 6b 65 2d 63 61 6e 76 t! c1 (make-canv
2370: 61 73 20 63 6f 6e 74 65 78 74 3a 69 75 70 20 22 as context:iup "
2380: 63 6e 76 31 22 29 29 0a 3b 3b 20 28 69 75 70 3a cnv1")).;; (iup:
2390: 68 61 6e 64 6c 65 2d 72 65 66 20 22 63 6e 76 31 handle-ref "cnv1
23a0: 22 29 29 29 0a 3b 3b 20 5f 63 6e 76 2d 31 29 29 "))).;; _cnv-1))
23b0: 0a 20 20 20 20 3b 3b 20 28 63 61 6e 76 61 73 2d . ;; (canvas-
23c0: 72 65 63 74 61 6e 67 6c 65 21 20 63 31 20 31 30 rectangle! c1 10
23d0: 20 31 30 20 34 30 20 34 30 29 0a 20 20 20 20 29 10 40 40). )
23e0: 29 0a 20 20 20 20 0a 28 69 6e 69 74 2d 64 69 61 ). .(init-dia
23f0: 6c 6f 67 29 0a 28 69 75 70 3a 73 68 6f 77 20 28 log).(iup:show (
2400: 69 75 70 3a 68 61 6e 64 6c 65 2d 72 65 66 20 22 iup:handle-ref "
2410: 64 6c 67 22 29 29 0a 28 69 75 70 3a 6d 61 69 6e dlg")).(iup:main
2420: 2d 6c 6f 6f 70 29 0a -loop).