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).