16482
((3) 0 () 25 ((c (? . 1) q font%) (q lib "racket/draw.rkt") (c (? . 1) q bitmap%) (c (? . 1) q dc-path%) (c (? . 1) q pen%) (c (? . 1) q dc<%>) (c (? . 1) q record-dc%) (c (? . 1) q region%) (c (? . 1) q ps-setup%) (c (? . 1) q gl-config%) (c (? . 1) q point%) (c (? . 1) q brush%) (c (? . 1) q color%) (c (? . 1) q font-name-directory<%>) (c (? . 1) q pen-list%) (c (? . 1) q bitmap-dc%) (c (? . 1) q gl-context<%>) (c (? . 1) q radial-gradient%) (c (? . 1) q linear-gradient%) (c (? . 1) q pdf-dc%) (c (? . 1) q post-script-dc%) (c (? . 1) q font-list%) (c (? . 1) q color-database<%>) (c (? . 1) q brush-list%) (c (? . 1) q svg-dc%)) () (h ! (equal) ((c meth c (c (? . 0) q get-font-id)) q (28519 . 2)) ((c meth c (c (? . 0) q get-face)) q (28409 . 2)) ((c meth c (c (? . 8) q set-command)) q (43364 . 3)) ((c meth c (c (? . 3) q reset)) q (25579 . 2)) ((c meth c (c (? . 2) q get-handle)) q (2046 . 2)) ((c meth c (c (? . 5) q draw-point)) q (15371 . 4)) ((c def c (c (? . 1) q the-pen-list)) q (54977 . 2)) ((c meth c (c (? . 2) q load-file)) q (2410 . 14)) ((c meth c (c (? . 4) q set-color)) q (38349 . 9)) ((c meth c (c (? . 3) q transform)) q (26652 . 3)) ((c meth c (c (? . 9) q set-multisample-size)) q (34773 . 3)) ((c def c (c (? . 1) q make-pen)) q (52912 . 18)) ((c meth c (c (? . 4) q is-immutable?)) q (38213 . 2)) ((c constructor c (? . 17)) q (44585 . 17)) ((c meth c (c (? . 5) q suspend-flush)) q (23285 . 2)) ((c constructor c (? . 6)) q (45421 . 6)) ((c meth c (c (? . 7) q set-rectangle)) q (47799 . 9)) ((c meth c (c (? . 5) q draw-arc)) q (12417 . 13)) ((c meth c (c (? . 6) q get-recorded-datum)) q (45659 . 2)) ((c meth c (c (? . 12) q ok?)) q (11789 . 2)) ((c meth c (c (? . 5) q set-text-foreground)) q (22709 . 5)) ((c def c (c (? . 1) q the-brush-list)) q (54757 . 2)) ((c meth c (c (? . 3) q get-bounding-box)) q (24788 . 2)) ((c meth c (c (? . 5) q get-gl-context)) q (17866 . 2)) ((c constructor c (? . 7)) q (45858 . 3)) ((c meth c (c (? . 7) q union)) q (48675 . 3)) ((q def ((lib "racket/draw/unsafe/brush.rkt") make-handle-brush)) q (55430 . 13)) ((c meth c (c (? . 2) q has-alpha-channel?)) q (2303 . 2)) ((c meth c (c (? . 0) q screen-glyph-exists?)) q (28965 . 5)) ((c meth c (c (? . 5) q set-pen)) q (21501 . 17)) ((c meth c (c (? . 8) q copy-from)) q (41924 . 5)) ((c constructor c (? . 10)) q (40501 . 5)) ((c constructor c (? . 23)) q (10031 . 2)) ((c meth c (c (? . 9) q get-stencil-size)) q (34383 . 2)) ((c def c (? . 21)) q (29144 . 3)) ((c meth c (c (? . 4) q get-stipple)) q (38039 . 2)) ((c meth c (c (? . 8) q get-preview-command)) q (42972 . 2)) ((c def c (c (? . 1) q read-bitmap)) q (53976 . 15)) ((c meth c (c (? . 10) q set-x)) q (40723 . 3)) ((c meth c (c (? . 8) q get-paper-name)) q (42917 . 2)) ((c meth c (c (? . 11) q get-handle)) q (8721 . 2)) ((c meth c (c (? . 5) q transform)) q (23331 . 3)) ((c meth c (c (? . 4) q get-width)) q (38158 . 2)) ((c meth c (c (? . 5) q start-page)) q (23242 . 2)) ((c meth c (c (? . 2) q get-backing-scale)) q (1920 . 2)) ((c meth c (c (? . 11) q set-style)) q (9897 . 3)) ((c meth c (c (? . 9) q set-depth-size)) q (34599 . 3)) ((c meth c (c (? . 0) q get-smoothing)) q (28750 . 2)) ((c meth c (c (? . 5) q resume-flush)) q (19565 . 2)) ((c def c (? . 18)) q (35650 . 3)) ((c meth c (c (? . 9) q set-double-buffered)) q (34691 . 3)) ((c meth c (c (? . 5) q get-alpha)) q (17274 . 2)) ((c constructor c (? . 12)) q (11005 . 9)) ((c def c (c (? . 1) q get-face-list)) q (49596 . 6)) ((c meth c (c (? . 5) q draw-path)) q (15027 . 9)) ((c def c (c (? . 1) q make-brush)) q (50165 . 22)) ((c meth c (c (? . 12) q red)) q (11313 . 2)) ((c meth c (c (? . 2) q set-loaded-mask)) q (4072 . 3)) ((c meth c (c (? . 13) q find-family-default-font-id)) q (31334 . 5)) ((c meth c (c (? . 8) q get-command)) q (42118 . 2)) ((c meth c (c (? . 3) q text-outline)) q (26270 . 11)) ((c def c (c (? . 1) q font-family/c)) q (55021 . 2)) ((c meth c (c (? . 2) q get-width)) q (2239 . 2)) ((c meth c (c (? . 16) q get-handle)) q (35495 . 2)) ((c meth c (c (? . 5) q set-scale)) q (22324 . 4)) ((c meth c (c (? . 7) q set-ellipse)) q (46801 . 6)) ((c meth c (c (? . 5) q get-char-height)) q (17439 . 2)) ((c def c (c (? . 1) q make-font)) q (51596 . 21)) ((c meth c (c (? . 5) q draw-bitmap)) q (12882 . 14)) ((c def c (? . 2)) q (0 . 3)) ((c def c (c (? . 1) q get-family-builtin-face)) q (49811 . 4)) ((c meth c (c (? . 5) q end-doc)) q (17117 . 2)) ((c meth c (c (? . 5) q draw-line)) q (14596 . 6)) ((c meth c (c (? . 2) q get-height)) q (2097 . 2)) ((c meth c (c (? . 5) q get-smoothing)) q (18530 . 3)) ((c meth c (c (? . 5) q set-smoothing)) q (22428 . 3)) ((c meth c (c (? . 5) q draw-bitmap-section)) q (13423 . 22)) ((c meth c (c (? . 14) q find-or-create-pen)) q (39071 . 28)) ((c def c (? . 20)) q (40843 . 4)) ((c def c (c (? . 1) q the-color-database)) q (54805 . 2)) ((c meth c (c (? . 8) q set-paper-name)) q (44117 . 3)) ((c meth c (c (? . 13) q get-face-name)) q (31843 . 4)) ((c meth c (c (? . 2) q get-depth)) q (1979 . 2)) ((c meth c (c (? . 13) q set-post-script-name)) q (33093 . 10)) ((c def c (? . 8)) q (41817 . 3)) ((c constructor c (? . 15)) q (4235 . 3)) ((c meth c (c (? . 8) q get-editor-margin)) q (42170 . 5)) ((c meth c (c (? . 5) q get-text-foreground)) q (19156 . 2)) ((c constructor c (? . 19)) q (36404 . 17)) ((c meth c (c (? . 12) q alpha)) q (11433 . 2)) ((c meth c (c (? . 4) q get-cap)) q (37880 . 2)) ((c meth c (c (? . 11) q set-stipple)) q (9436 . 8)) ((c def c (? . 11)) q (7449 . 3)) ((c meth c (c (? . 8) q set-file)) q (43583 . 3)) ((c meth c (c (? . 0) q get-weight)) q (28912 . 2)) ((c meth c (c (? . 11) q set-color)) q (9162 . 9)) ((c constructor c (? . 3)) q (23692 . 2)) ((c def c (? . 14)) q (38964 . 3)) ((c constructor c (? . 2)) q (50 . 26)) ((c meth c (c (? . 15) q draw-bitmap-section-smooth)) q (4356 . 27)) ((c meth c (c (? . 15) q set-pixel)) q (7323 . 5)) ((c meth c (c (? . 2) q set-argb-pixels)) q (3428 . 15)) ((c meth c (c (? . 5) q set-background)) q (19859 . 5)) ((c meth c (c (? . 13) q get-font-id)) q (32153 . 7)) ((c constructor c (? . 11)) q (7498 . 18)) ((c meth c (c (? . 9) q set-accum-size)) q (34507 . 3)) ((c meth c (c (? . 3) q append)) q (23745 . 3)) ((c meth c (c (? . 7) q set-arc)) q (46318 . 13)) ((c meth c (c (? . 8) q get-margin)) q (42533 . 5)) ((c constructor c (? . 0)) q (26898 . 36)) ((c meth c (c (? . 10) q set-y)) q (40783 . 3)) ((c meth c (c (? . 22) q get-names)) q (11987 . 2)) ((c def c (? . 16)) q (35157 . 2)) ((c constructor c (? . 4)) q (37275 . 14)) ((c meth c (c (? . 16) q swap-buffers)) q (35597 . 2)) ((c meth c (c (? . 3) q line-to)) q (24863 . 4)) ((c meth c (c (? . 5) q draw-rectangle)) q (15882 . 6)) ((c meth c (c (? . 5) q set-origin)) q (21420 . 4)) ((c meth c (c (? . 12) q copy-from)) q (11645 . 3)) ((c def c (? . 5)) q (12053 . 2)) ((c meth c (c (? . 0) q get-hinting)) q (28574 . 2)) ((c meth c (c (? . 10) q get-x)) q (40641 . 2)) ((c constructor c (? . 8)) q (41869 . 2)) ((c meth c (c (? . 9) q set-share-context)) q (34871 . 3)) ((c def c (c (? . 1) q font-weight/c)) q (55098 . 2)) ((c meth c (c (? . 7) q intersect)) q (46187 . 3)) ((c meth c (c (? . 17) q get-circles)) q (45150 . 3)) ((c meth c (c (? . 16) q call-as-current)) q (35196 . 7)) ((c meth c (c (? . 13) q get-post-script-name)) q (32426 . 8)) ((q def ((lib "racket/draw/unsafe/cairo-lib.rkt") cairo-lib)) q (56091 . 2)) ((c meth c (c (? . 2) q ok?)) q (3170 . 2)) ((c meth c (c (? . 5) q start-doc)) q (23167 . 3)) ((c meth c (c (? . 18) q get-line)) q (36152 . 2)) ((q form ((lib "racket/draw/draw-sig.rkt") draw^)) q (55400 . 2)) ((q def ((lib "racket/draw/draw-unit.rkt") draw@)) q (55378 . 2)) ((c meth c (c (? . 0) q get-size-in-pixels)) q (28694 . 2)) ((c meth c (c (? . 15) q set-argb-pixels)) q (6554 . 15)) ((c meth c (c (? . 4) q set-cap)) q (38263 . 3)) ((c meth c (c (? . 5) q set-rotation)) q (22252 . 3)) ((c def c (c (? . 1) q make-platform-bitmap)) q (53827 . 4)) ((c meth c (c (? . 11) q get-gradient)) q (8526 . 4)) ((c meth c (c (? . 3) q reverse)) q (25622 . 2)) ((c meth c (c (? . 3) q scale)) q (26189 . 4)) ((c meth c (c (? . 11) q get-style)) q (8855 . 2)) ((c meth c (c (? . 8) q get-file)) q (42414 . 2)) ((c def c (? . 0)) q (26850 . 3)) ((c meth c (c (? . 3) q lines)) q (24946 . 8)) ((c def c (c (? . 1) q font-hinting/c)) q (55179 . 2)) ((c def c (? . 19)) q (36334 . 4)) ((c meth c (c (? . 13) q get-family)) q (31961 . 5)) ((c meth c (c (? . 5) q set-text-mode)) q (22884 . 3)) ((c meth c (c (? . 5) q translate)) q (23439 . 4)) ((c meth c (c (? . 5) q set-initial-matrix)) q (21303 . 3)) ((c constructor c (? . 9)) q (33962 . 2)) ((c meth c (c (? . 8) q get-mode)) q (42763 . 2)) ((c meth c (c (? . 0) q get-style)) q (28809 . 2)) ((c meth c (c (? . 5) q draw-ellipse)) q (14399 . 6)) ((c meth c (c (? . 7) q xor)) q (48753 . 3)) ((c meth c (c (? . 3) q rotate)) q (25667 . 3)) ((c meth c (c (? . 3) q close)) q (24376 . 2)) ((c meth c (c (? . 5) q set-text-background)) q (22534 . 5)) ((c constructor c (? . 20)) q (40921 . 17)) ((c meth c (c (? . 7) q set-polygon)) q (47357 . 10)) ((c meth c (c (? . 5) q set-alpha)) q (19776 . 3)) ((c meth c (c (? . 5) q get-initial-matrix)) q (17944 . 3)) ((c meth c (c (? . 4) q set-width)) q (38882 . 3)) ((c meth c (c (? . 9) q set-stencil-size)) q (34990 . 3)) ((c meth c (c (? . 13) q find-or-create-font-id)) q (31548 . 7)) ((c meth c (c (? . 5) q get-clipping-region)) q (17592 . 2)) ((c meth c (c (? . 13) q get-screen-name)) q (32767 . 8)) ((c meth c (c (? . 3) q rounded-rectangle)) q (25742 . 11)) ((c meth c (c (? . 5) q get-size)) q (18401 . 3)) ((c meth c (c (? . 5) q copy)) q (12186 . 8)) ((c meth c (c (? . 5) q draw-rounded-rectangle)) q (16081 . 11)) ((c meth c (c (? . 5) q get-path-bounding-box)) q (18143 . 5)) ((c meth c (c (? . 8) q set-level-2)) q (43682 . 3)) ((c meth c (c (? . 5) q get-scale)) q (18352 . 2)) ((c def c (? . 9)) q (33909 . 3)) ((c meth c (c (? . 21) q find-or-create-font)) q (29254 . 41)) ((c meth c (c (? . 4) q get-color)) q (37931 . 2)) ((c meth c (c (? . 8) q set-mode)) q (43900 . 3)) ((c meth c (c (? . 0) q get-point-size)) q (28629 . 2)) ((c meth c (c (? . 5) q get-pen)) q (18093 . 2)) ((c meth c (c (? . 9) q set-stereo)) q (35084 . 3)) ((c meth c (c (? . 3) q open?)) q (25334 . 2)) ((c meth c (c (? . 5) q draw-lines)) q (14722 . 8)) ((c meth c (c (? . 4) q get-join)) q (37986 . 2)) ((c meth c (c (? . 5) q get-font)) q (17814 . 2)) ((c meth c (c (? . 13) q set-screen-name)) q (33502 . 9)) ((c constructor c (? . 14)) q (39016 . 2)) ((c meth c (c (? . 8) q set-scaling)) q (44288 . 4)) ((c def c (c (? . 1) q pen-join-style/c)) q (55297 . 2)) ((c def c (c (? . 1) q the-font-name-directory)) q (54909 . 2)) ((c meth c (c (? . 4) q set-join)) q (38617 . 3)) ((c meth c (c (? . 5) q flush)) q (17236 . 2)) ((c meth c (c (? . 9) q get-multisample-size)) q (34219 . 2)) ((c meth c (c (? . 0) q get-family)) q (28466 . 2)) ((c def c (c (? . 1) q make-bitmap)) q (49987 . 5)) ((c def c (c (? . 1) q make-color)) q (51428 . 6)) ((c constructor c (? . 18)) q (35709 . 13)) ((c meth c (c (? . 5) q get-text-extent)) q (18676 . 13)) ((c meth c (c (? . 5) q draw-polygon)) q (15452 . 10)) ((c meth c (c (? . 7) q subtract)) q (48594 . 3)) ((c meth c (c (? . 5) q draw-text)) q (16698 . 13)) ((c meth c (c (? . 2) q get-loaded-mask)) q (2162 . 2)) ((c meth c (c (? . 5) q glyph-exists?)) q (19458 . 3)) ((c constructor c (? . 24)) q (48899 . 12)) ((c meth c (c (? . 8) q set-editor-margin)) q (43447 . 4)) ((c meth c (c (? . 5) q get-rotation)) q (18307 . 2)) ((c meth c (c (? . 4) q set-style)) q (38806 . 3)) ((c meth c (c (? . 3) q rectangle)) q (25380 . 6)) ((c meth c (c (? . 3) q move-to)) q (25251 . 4)) ((c meth c (c (? . 2) q make-dc)) q (3110 . 2)) ((c meth c (c (? . 8) q set-preview-command)) q (44197 . 3)) ((c def c (c (? . 1) q font-smoothing/c)) q (55137 . 2)) ((c constructor c (? . 21)) q (29197 . 2)) ((c meth c (c (? . 22) q find-color)) q (11868 . 4)) ((c meth c (c (? . 5) q set-font)) q (21226 . 3)) ((c meth c (c (? . 12) q green)) q (11352 . 2)) ((c meth c (c (? . 8) q get-translation)) q (43196 . 4)) ((c meth c (c (? . 15) q set-bitmap)) q (7219 . 3)) ((c def c (? . 22)) q (11825 . 2)) ((c meth c (c (? . 5) q set-clipping-rect)) q (20793 . 9)) ((c meth c (c (? . 8) q get-orientation)) q (42838 . 3)) ((c meth c (c (? . 11) q get-stipple)) q (8783 . 2)) ((c meth c (c (? . 2) q is-color?)) q (2361 . 2)) ((c def c (c (? . 1) q make-monochrome-bitmap)) q (52714 . 5)) ((c meth c (c (? . 5) q get-text-background)) q (18612 . 2)) ((c meth c (c (? . 9) q get-accum-size)) q (34019 . 2)) ((c meth c (c (? . 8) q set-margin)) q (43755 . 4)) ((c meth c (c (? . 3) q translate)) q (26765 . 4)) ((c meth c (c (? . 12) q blue)) q (11393 . 2)) ((c meth c (c (? . 5) q get-background)) q (17326 . 2)) ((c meth c (c (? . 8) q get-scaling)) q (43032 . 4)) ((c def c (? . 6)) q (45348 . 4)) ((c meth c (c (? . 5) q draw-spline)) q (16528 . 8)) ((c def c (? . 4)) q (37228 . 3)) ((c meth c (c (? . 5) q rotate)) q (19610 . 3)) ((c meth c (c (? . 5) q cache-font-metrics-key)) q (12084 . 2)) ((c def c (? . 13)) q (31286 . 2)) ((c meth c (c (? . 15) q get-bitmap)) q (6350 . 2)) ((c meth c (c (? . 5) q scale)) q (19676 . 4)) ((c meth c (c (? . 8) q set-translation)) q (44434 . 4)) ((c meth c (c (? . 9) q get-depth-size)) q (34088 . 2)) ((c meth c (c (? . 5) q get-brush)) q (17385 . 2)) ((c meth c (c (? . 17) q get-stops)) q (45243 . 3)) ((c def c (? . 3)) q (23641 . 3)) ((c def c (c (? . 1) q brush-style/c)) q (55339 . 2)) ((c def c (c (? . 1) q pen-style/c)) q (55219 . 2)) ((c meth c (c (? . 5) q get-text-mode)) q (19220 . 2)) ((c def c (? . 15)) q (4162 . 4)) ((c meth c (c (? . 23) q find-or-create-brush)) q (10090 . 19)) ((c meth c (c (? . 12) q is-immutable?)) q (11737 . 2)) ((c def c (? . 24)) q (48829 . 4)) ((c meth c (c (? . 11) q is-immutable?)) q (9110 . 2)) ((c meth c (c (? . 9) q get-double-buffered)) q (34157 . 2)) ((c meth c (c (? . 7) q is-empty?)) q (46269 . 2)) ((c meth c (c (? . 5) q ok?)) q (19526 . 2)) ((c meth c (c (? . 4) q set-stipple)) q (38707 . 3)) ((c meth c (c (? . 12) q set)) q (11484 . 6)) ((c meth c (c (? . 5) q end-page)) q (17157 . 2)) ((c meth c (c (? . 11) q get-color)) q (8469 . 2)) ((c meth c (c (? . 5) q set-brush)) q (20024 . 17)) ((c def c (? . 17)) q (44526 . 3)) ((c meth c (c (? . 7) q get-dc)) q (46033 . 2)) ((c meth c (c (? . 5) q try-color)) q (23523 . 4)) ((c def c (c (? . 1) q the-font-list)) q (54863 . 2)) ((c meth c (c (? . 3) q ellipse)) q (24591 . 6)) ((c meth c (c (? . 2) q save-file)) q (3213 . 5)) ((c meth c (c (? . 5) q clear)) q (12148 . 2)) ((c meth c (c (? . 5) q get-device-scale)) q (17669 . 3)) ((c meth c (c (? . 3) q arc)) q (23828 . 15)) ((c meth c (c (? . 4) q get-style)) q (38109 . 2)) ((c meth c (c (? . 15) q get-pixel)) q (6425 . 5)) ((c meth c (c (? . 7) q set-path)) q (47001 . 9)) ((c meth c (c (? . 18) q get-stops)) q (36227 . 3)) ((c meth c (c (? . 16) q ok?)) q (35550 . 2)) ((c meth c (c (? . 7) q set-rounded-rectangle)) q (48132 . 11)) ((c meth c (c (? . 3) q curve-to)) q (24419 . 8)) ((c meth c (c (? . 5) q set-clipping-region)) q (21126 . 3)) ((c meth c (c (? . 7) q get-bounding-box)) q (45959 . 2)) ((c meth c (c (? . 2) q get-argb-pixels)) q (1246 . 15)) ((c meth c (c (? . 7) q in-region?)) q (46099 . 4)) ((c meth c (c (? . 5) q get-transformation)) q (19289 . 4)) ((c meth c (c (? . 9) q get-share-context)) q (34294 . 3)) ((c def c (c (? . 1) q font-style/c)) q (55060 . 2)) ((c meth c (c (? . 9) q get-stereo)) q (34454 . 2)) ((c def c (? . 23)) q (9977 . 3)) ((c meth c (c (? . 5) q get-origin)) q (18043 . 2)) ((c def c (c (? . 1) q current-ps-setup)) q (49473 . 4)) ((c def c (? . 12)) q (10956 . 3)) ((c meth c (c (? . 10) q get-y)) q (40682 . 2)) ((c def c (c (? . 1) q pen-cap-style/c)) q (55256 . 2)) ((c meth c (c (? . 5) q erase)) q (17198 . 2)) ((c meth c (c (? . 5) q get-char-width)) q (17516 . 2)) ((c meth c (c (? . 5) q set-transformation)) q (22978 . 4)) ((c def c (? . 7)) q (45808 . 3)) ((c meth c (c (? . 8) q set-orientation)) q (44000 . 3)) ((c meth c (c (? . 8) q get-level-2)) q (42480 . 2)) ((c meth c (c (? . 15) q get-argb-pixels)) q (5655 . 15)) ((c meth c (c (? . 6) q get-recorded-procedure)) q (45717 . 3)) ((c def c (? . 10)) q (40452 . 3)) ((c meth c (c (? . 11) q get-transformation)) q (8908 . 4)) ((c meth c (c (? . 0) q get-underlined)) q (28860 . 2)) ((c def c (c (? . 1) q recorded-datum->procedure)) q (54652 . 4))))
class
bitmap% : class?
  superclass: object%
constructor
(make-object bitmap%  width           
                      height          
                     [monochrome?     
                      alpha?])    -> (is-a?/c bitmap%)
  width : exact-positive-integer?
  height : exact-positive-integer?
  monochrome? : any/c = #f
  alpha? : any/c = #f
(make-object bitmap%  in                         
                     [kind                       
                      bg-color                   
                      complain-on-failure?]) -> (is-a?/c bitmap%)
  in : (or/c path-string? input-port?)
  kind : (or/c 'unknown 'unknown/mask 'unknown/alpha = 'unknown
               'gif 'gif/mask 'gif/alpha
               'jpeg 'jpeg/alpha
               'png 'png/mask 'png/alpha
               'xbm 'xbm/alpha 'xpm 'xpm/alpha
               'bmp 'bmp/alpha)
  bg-color : (or/c (is-a?/c color%) #f) = #f
  complain-on-failure? : any/c = #f
(make-object bitmap% bits width height) -> (is-a?/c bitmap%)
  bits : bytes?
  width : exact-positive-integer?
  height : exact-positive-integer?
method
(send a-bitmap get-argb-pixels  x                     
                                y                     
                                width                 
                                height                
                                pixels                
                               [just-alpha?           
                                pre-multiplied?]) -> void?
  x : real?
  y : real?
  width : exact-nonnegative-integer?
  height : exact-nonnegative-integer?
  pixels : (and/c bytes? (not/c immutable?))
  just-alpha? : any/c = #f
  pre-multiplied? : any/c = #f
method
(send a-bitmap get-backing-scale) -> (>/c 0.0)
method
(send a-bitmap get-depth) -> exact-nonnegative-integer?
method
(send a-bitmap get-handle) -> cpointer?
method
(send a-bitmap get-height) -> exact-positive-integer?
method
(send a-bitmap get-loaded-mask) -> (or/c (is-a?/c bitmap%) #f)
method
(send a-bitmap get-width) -> exact-positive-integer?
method
(send a-bitmap has-alpha-channel?) -> boolean?
method
(send a-bitmap is-color?) -> boolean?
method
(send a-bitmap load-file  in                         
                         [kind                       
                          bg-color                   
                          complain-on-failure?]) -> boolean?
  in : (or/c path-string? input-port?)
  kind : (or/c 'unknown 'unknown/mask 'unknown/alpha = 'unknown
               'gif 'gif/mask 'gif/alpha
               'jpeg 'jpeg/alpha
               'png 'png/mask 'png/alpha
               'xbm 'xbm/alpha 'xpm 'xpm/alpha
               'bmp 'bmp/alpha)
  bg-color : (or/c (is-a?/c color%) #f) = #f
  complain-on-failure? : any/c = #f
method
(send a-bitmap make-dc) -> (is-a?/c bitmap-dc%)
method
(send a-bitmap ok?) -> boolean?
method
(send a-bitmap save-file name kind [quality]) -> boolean?
  name : (or/c path-string? output-port?)
  kind : (or/c 'png 'jpeg 'xbm 'xpm 'bmp)
  quality : (integer-in 0 100) = 75
method
(send a-bitmap set-argb-pixels  x                     
                                y                     
                                width                 
                                height                
                                pixels                
                               [just-alpha?           
                                pre-multiplied?]) -> void?
  x : real?
  y : real?
  width : exact-nonnegative-integer?
  height : exact-nonnegative-integer?
  pixels : bytes?
  just-alpha? : any/c = #f
  pre-multiplied? : any/c = #f
method
(send a-bitmap set-loaded-mask mask) -> void?
  mask : (is-a?/c bitmap%)
class
bitmap-dc% : class?
  superclass: object%
  extends: dc<%>
constructor
(new bitmap-dc% [bitmap bitmap]) -> (is-a?/c bitmap-dc%)
  bitmap : (or/c (is-a?/c bitmap%) #f)
method
(send a-bitmap-dc draw-bitmap-section-smooth  source      
                                              dest-x      
                                              dest-y      
                                              dest-width  
                                              dest-height 
                                              src-x       
                                              src-y       
                                              src-width   
                                              src-height  
                                             [style       
                                              color       
                                              mask])      
 -> boolean?
  source : (is-a?/c bitmap%)
  dest-x : real?
  dest-y : real?
  dest-width : (and/c real? (not/c negative?))
  dest-height : (and/c real? (not/c negative?))
  src-x : real?
  src-y : real?
  src-width : (and/c real? (not/c negative?))
  src-height : (and/c real? (not/c negative?))
  style : (or/c 'solid 'opaque 'xor) = 'solid
  color : (is-a?/c color%)
        = (send the-color-database find-color "black")
  mask : (or/c (is-a?/c bitmap%) #f) = #f
method
(send a-bitmap-dc get-argb-pixels  x                     
                                   y                     
                                   width                 
                                   height                
                                   pixels                
                                  [just-alpha?           
                                   pre-multiplied?]) -> void?
  x : real?
  y : real?
  width : exact-nonnegative-integer?
  height : exact-nonnegative-integer?
  pixels : (and/c bytes? (not/c immutable?))
  just-alpha? : any/c = #f
  pre-multiplied? : any/c = #f
method
(send a-bitmap-dc get-bitmap) -> (or/c (is-a?/c bitmap%) #f)
method
(send a-bitmap-dc get-pixel x y color) -> boolean?
  x : real?
  y : real?
  color : (is-a?/c color%)
method
(send a-bitmap-dc set-argb-pixels  x                     
                                   y                     
                                   width                 
                                   height                
                                   pixels                
                                  [just-alpha?           
                                   pre-multiplied?]) -> void?
  x : real?
  y : real?
  width : exact-nonnegative-integer?
  height : exact-nonnegative-integer?
  pixels : bytes?
  just-alpha? : any/c = #f
  pre-multiplied? : any/c = #f
method
(send a-bitmap-dc set-bitmap bitmap) -> void?
  bitmap : (or/c (is-a?/c bitmap%) #f)
method
(send a-bitmap-dc set-pixel x y color) -> void?
  x : real?
  y : real?
  color : (is-a?/c color%)
class
brush% : class?
  superclass: object%
constructor
(new brush%                                    
            [[color color]                     
             [style style]                     
             [stipple stipple]                 
             [gradient gradient]               
             [transformation transformation]]) 
 -> (is-a?/c brush%)
  color : (or/c string? (is-a?/c color%)) = "black"
  style : brush-style/c = 'solid
  stipple : (or/c #f (is-a?/c bitmap%)) = #f
  gradient : (or/c #f                          = #f
                   (is-a?/c linear-gradient%)
                   (is-a?/c radial-gradient%))
  transformation : (or/c #f (vector/c (vector/c real? real? real?
                                                real? real? real?)
                                       real? real? real? real? real?))
                 = #f
method
(send a-brush get-color) -> (is-a?/c color%)
method
(send a-brush get-gradient) -> (or/c (is-a?/c linear-gradient%)
                                     (is-a?/c radial-gradient%)
                                     #f)
method
(send a-brush get-handle) -> (or/c cpointer? #f)
method
(send a-brush get-stipple) -> (or/c (is-a?/c bitmap%) #f)
method
(send a-brush get-style) -> brush-style/c
method
(send a-brush get-transformation)
 -> (or/c #f (vector/c (vector/c real? real? real? real? real? real?)
                       real? real? real? real? real?))
method
(send a-brush is-immutable?) -> boolean?
method
(send a-brush set-color color) -> void?
  color : (is-a?/c color%)
(send a-brush set-color color-name) -> void?
  color-name : string?
(send a-brush set-color red green blue) -> void?
  red : byte?
  green : byte?
  blue : byte?
method
(send a-brush set-stipple  bitmap               
                          [transformation]) -> void?
  bitmap : (or/c (is-a?/c bitmap%) #f)
  transformation : (or/c #f (vector/c (vector/c real? real? real?
                                                real? real? real?)
                                       real? real? real? real? real?))
                 = #f
method
(send a-brush set-style style) -> void?
  style : brush-style/c
class
brush-list% : class?
  superclass: object%
constructor
(new brush-list%) -> (is-a?/c brush-list%)
method
(send a-brush-list find-or-create-brush color  
                                        style) 
 -> (is-a?/c brush%)
  color : (is-a?/c color%)
  style : (or/c 'transparent 'solid 'opaque
                'xor 'hilite 'panel
                'bdiagonal-hatch 'crossdiag-hatch
                'fdiagonal-hatch 'cross-hatch
                'horizontal-hatch 'vertical-hatch)
(send a-brush-list find-or-create-brush color-name 
                                        style)     
 -> (or/c (is-a?/c brush%) #f)
  color-name : string?
  style : (or/c 'transparent 'solid 'opaque
                'xor 'hilite 'panel
                'bdiagonal-hatch 'crossdiag-hatch
                'fdiagonal-hatch 'cross-hatch
                'horizontal-hatch 'vertical-hatch)
class
color% : class?
  superclass: object%
constructor
(make-object color%) -> (is-a?/c color%)
(make-object color% red green blue [alpha]) -> (is-a?/c color%)
  red : byte?
  green : byte?
  blue : byte?
  alpha : (real-in 0 1) = 1.0
(make-object color% color-name) -> (is-a?/c color%)
  color-name : string?
method
(send a-color red) -> byte?
method
(send a-color green) -> byte?
method
(send a-color blue) -> byte?
method
(send a-color alpha) -> (real-in 0 1)
method
(send a-color set red green blue [alpha]) -> void?
  red : byte?
  green : byte?
  blue : byte?
  alpha : (real-in 0 1) = 1.0
method
(send a-color copy-from src) -> (is-a?/c color%)
  src : (is-a?/c color%)
method
(send a-color is-immutable?) -> boolean?
method
(send a-color ok?) -> #t
interface
color-database<%> : interface?
method
(send a-color-database find-color color-name)
 -> (or/c (is-a?/c color%) #f)
  color-name : string?
method
(send a-color-database get-names) -> (listof string?)
interface
dc<%> : interface?
method
(send a-dc cache-font-metrics-key) -> exact-integer?
method
(send a-dc clear) -> void?
method
(send a-dc copy x y width height x2 y2) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  x2 : real?
  y2 : real?
method
(send a-dc draw-arc x                 
                    y                 
                    width             
                    height            
                    start-radians     
                    end-radians)  -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  start-radians : real?
  end-radians : real?
method
(send a-dc draw-bitmap  source     
                        dest-x     
                        dest-y     
                       [style      
                        color      
                        mask]) -> boolean?
  source : (is-a?/c bitmap%)
  dest-x : real?
  dest-y : real?
  style : (or/c 'solid 'opaque 'xor) = 'solid
  color : (is-a?/c color%)
        = (send the-color-database find-color "black")
  mask : (or/c (is-a?/c bitmap%) #f) = #f
method
(send a-dc draw-bitmap-section  source         
                                dest-x         
                                dest-y         
                                src-x          
                                src-y          
                                src-width      
                                src-height     
                               [style          
                                color          
                                mask])     -> boolean?
  source : (is-a?/c bitmap%)
  dest-x : real?
  dest-y : real?
  src-x : real?
  src-y : real?
  src-width : (and/c real? (not/c negative?))
  src-height : (and/c real? (not/c negative?))
  style : (or/c 'solid 'opaque 'xor) = 'solid
  color : (is-a?/c color%)
        = (send the-color-database find-color "black")
  mask : (or/c (is-a?/c bitmap%) #f) = #f
method
(send a-dc draw-ellipse x y width height) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
method
(send a-dc draw-line x1 y1 x2 y2) -> void?
  x1 : real?
  y1 : real?
  x2 : real?
  y2 : real?
method
(send a-dc draw-lines  points        
                      [xoffset       
                       yoffset]) -> void?
  points : (or/c (listof (is-a?/c point%))
                 (listof (cons/c real? real?)))
  xoffset : real? = 0
  yoffset : real? = 0
method
(send a-dc draw-path  path             
                     [xoffset          
                      yoffset          
                      fill-style]) -> void?
  path : (is-a?/c dc-path%)
  xoffset : real? = 0
  yoffset : real? = 0
  fill-style : (or/c 'odd-even 'winding) = 'odd-even
method
(send a-dc draw-point x y) -> void?
  x : real?
  y : real?
method
(send a-dc draw-polygon  points           
                        [xoffset          
                         yoffset          
                         fill-style]) -> void?
  points : (or/c (listof (is-a?/c point%))
                 (listof (cons/c real? real?)))
  xoffset : real? = 0
  yoffset : real? = 0
  fill-style : (or/c 'odd-even 'winding) = 'odd-even
method
(send a-dc draw-rectangle x y width height) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
method
(send a-dc draw-rounded-rectangle  x            
                                   y            
                                   width        
                                   height       
                                  [radius]) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  radius : real? = -0.25
method
(send a-dc draw-spline x1 y1 x2 y2 x3 y3) -> void?
  x1 : real?
  y1 : real?
  x2 : real?
  y2 : real?
  x3 : real?
  y3 : real?
method
(send a-dc draw-text  text         
                      x            
                      y            
                     [combine?     
                      offset       
                      angle])  -> void?
  text : string?
  x : real?
  y : real?
  combine? : any/c = #f
  offset : exact-nonnegative-integer? = 0
  angle : real? = 0
method
(send a-dc end-doc) -> void?
method
(send a-dc end-page) -> void?
method
(send a-dc erase) -> void?
method
(send a-dc flush) -> void?
method
(send a-dc get-alpha) -> (real-in 0 1)
method
(send a-dc get-background) -> (is-a?/c color%)
method
(send a-dc get-brush) -> (is-a?/c brush%)
method
(send a-dc get-char-height) -> (and/c real? (not/c negative?))
method
(send a-dc get-char-width) -> (and/c real? (not/c negative?))
method
(send a-dc get-clipping-region) -> (or/c (is-a?/c region%) #f)
method
(send a-dc get-device-scale) -> (and/c real? (not/c negative?))
                                (and/c real? (not/c negative?))
method
(send a-dc get-font) -> (is-a?/c font%)
method
(send a-dc get-gl-context) -> (or/c (is-a?/c gl-context<%>) #f)
method
(send a-dc get-initial-matrix)
 -> (vector/c real? real? real? real? real? real?)
method
(send a-dc get-origin) -> real? real?
method
(send a-dc get-pen) -> (is-a?/c pen%)
method
(send a-dc get-path-bounding-box path type)
 -> real? real? real? real?
  path : (is-a?/c dc-path%)
  type : (or/c 'path 'stroke 'fill)
method
(send a-dc get-rotation) -> real?
method
(send a-dc get-scale) -> real? real?
method
(send a-dc get-size) -> (and/c real? (not/c negative?))
                        (and/c real? (not/c negative?))
method
(send a-dc get-smoothing)
 -> (or/c 'unsmoothed 'smoothed 'aligned)
method
(send a-dc get-text-background) -> (is-a?/c color%)
method
(send a-dc get-text-extent  string   
                           [font     
                            combine? 
                            offset]) 
 -> (and/c real? (not/c negative?))
    (and/c real? (not/c negative?))
    (and/c real? (not/c negative?))
    (and/c real? (not/c negative?))
  string : string?
  font : (or/c (is-a?/c font%) #f) = #f
  combine? : any/c = #f
  offset : exact-nonnegative-integer? = 0
method
(send a-dc get-text-foreground) -> (is-a?/c color%)
method
(send a-dc get-text-mode) -> (or/c 'solid 'transparent)
method
(send a-dc get-transformation)
 -> (vector/c (vector/c real? real? real? real? real? real?)
              real? real? real? real? real?)
method
(send a-dc glyph-exists? c) -> boolean?
  c : char?
method
(send a-dc ok?) -> boolean?
method
(send a-dc resume-flush) -> void?
method
(send a-dc rotate angle) -> void?
  angle : real?
method
(send a-dc scale x-scale y-scale) -> void?
  x-scale : real?
  y-scale : real?
method
(send a-dc set-alpha opacity) -> void?
  opacity : (real-in 0 1)
method
(send a-dc set-background color) -> void?
  color : (is-a?/c color%)
(send a-dc set-background color-name) -> void?
  color-name : string?
method
(send a-dc set-brush brush) -> void?
  brush : (is-a?/c brush%)
(send a-dc set-brush color style) -> void?
  color : (is-a?/c color%)
  style : (or/c 'transparent 'solid 'opaque
                'xor 'hilite 'panel
                'bdiagonal-hatch 'crossdiag-hatch
                'fdiagonal-hatch 'cross-hatch
                'horizontal-hatch 'vertical-hatch)
(send a-dc set-brush color-name style) -> void?
  color-name : string?
  style : (or/c 'transparent 'solid 'opaque
                'xor 'hilite 'panel
                'bdiagonal-hatch 'crossdiag-hatch
                'fdiagonal-hatch 'cross-hatch
                'horizontal-hatch 'vertical-hatch)
method
(send a-dc set-clipping-rect x           
                             y           
                             width       
                             height) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
method
(send a-dc set-clipping-region rgn) -> void?
  rgn : (or/c (is-a?/c region%) #f)
method
(send a-dc set-font font) -> void?
  font : (is-a?/c font%)
method
(send a-dc set-initial-matrix m) -> void?
  m : (vector/c real? real? real? real? real? real?)
method
(send a-dc set-origin x y) -> void?
  x : real?
  y : real?
method
(send a-dc set-pen pen) -> void?
  pen : (is-a?/c pen%)
(send a-dc set-pen color width style) -> void?
  color : (is-a?/c color%)
  width : (real-in 0 255)
  style : (or/c 'transparent 'solid 'xor 'hilite
                'dot 'long-dash 'short-dash 'dot-dash
                'xor-dot 'xor-long-dash 'xor-short-dash
                'xor-dot-dash)
(send a-dc set-pen color-name width style) -> void?
  color-name : string?
  width : (real-in 0 255)
  style : (or/c 'transparent 'solid 'xor 'hilite
                'dot 'long-dash 'short-dash 'dot-dash
                'xor-dot 'xor-long-dash 'xor-short-dash
                'xor-dot-dash)
method
(send a-dc set-rotation angle) -> void?
  angle : real?
method
(send a-dc set-scale x-scale y-scale) -> void?
  x-scale : real?
  y-scale : real?
method
(send a-dc set-smoothing mode) -> void?
  mode : (or/c 'unsmoothed 'smoothed 'aligned)
method
(send a-dc set-text-background color) -> void?
  color : (is-a?/c color%)
(send a-dc set-text-background color-name) -> void?
  color-name : string?
method
(send a-dc set-text-foreground color) -> void?
  color : (is-a?/c color%)
(send a-dc set-text-foreground color-name) -> void?
  color-name : string?
method
(send a-dc set-text-mode mode) -> void?
  mode : (or/c 'solid 'transparent)
method
(send a-dc set-transformation t) -> void?
  t : (vector/c (vector/c real? real? real? real? real? real?)
                real? real? real? real? real?)
method
(send a-dc start-doc message) -> void?
  message : string?
method
(send a-dc start-page) -> void?
method
(send a-dc suspend-flush) -> void?
method
(send a-dc transform m) -> void?
  m : (vector/c real? real? real? real? real? real?)
method
(send a-dc translate dx dy) -> void?
  dx : real?
  dy : real?
method
(send a-dc try-color try result) -> void?
  try : (is-a?/c color%)
  result : (is-a?/c color%)
class
dc-path% : class?
  superclass: object%
constructor
(new dc-path%) -> (is-a?/c dc-path%)
method
(send a-dc-path append path) -> void?
  path : (is-a?/c dc-path%)
method
(send a-dc-path arc  x                        
                     y                        
                     width                    
                     height                   
                     start-radians            
                     end-radians              
                    [counter-clockwise?]) -> void?
  x : real?
  y : real?
  width : real?
  height : real?
  start-radians : real?
  end-radians : real?
  counter-clockwise? : any/c = #t
method
(send a-dc-path close) -> void?
method
(send a-dc-path curve-to x1 y1 x2 y2 x3 y3) -> void?
  x1 : real?
  y1 : real?
  x2 : real?
  y2 : real?
  x3 : real?
  y3 : real?
method
(send a-dc-path ellipse x y width height) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
method
(send a-dc-path get-bounding-box) -> real? real? real? real?
method
(send a-dc-path line-to x y) -> void?
  x : real?
  y : real?
method
(send a-dc-path lines  points        
                      [xoffset       
                       yoffset]) -> void?
  points : (or/c (listof (is-a?/c point%))
                 (listof (cons/c real? real?)))
  xoffset : real? = 0
  yoffset : real? = 0
method
(send a-dc-path move-to x y) -> void?
  x : real?
  y : real?
method
(send a-dc-path open?) -> boolean?
method
(send a-dc-path rectangle x y width height) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
method
(send a-dc-path reset) -> void?
method
(send a-dc-path reverse) -> void?
method
(send a-dc-path rotate radians) -> void?
  radians : real?
method
(send a-dc-path rounded-rectangle  x            
                                   y            
                                   width        
                                   height       
                                  [radius]) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  radius : real? = -0.25
method
(send a-dc-path scale x y) -> void?
  x : real?
  y : real?
method
(send a-dc-path text-outline  font           
                              str            
                              x              
                              y              
                             [combine?]) -> void?
  font : (is-a?/c font%)
  str : string?
  x : real?
  y : real?
  combine? : any/c = #f
method
(send a-dc-path transform m) -> void?
  m : (vector/c real? real? real? real? real? real?)
method
(send a-dc-path translate x y) -> void?
  x : real?
  y : real?
class
font% : class?
  superclass: object%
constructor
(make-object font%) -> (is-a?/c font%)
(make-object font%  size                
                    family              
                   [style               
                    weight              
                    underline?          
                    smoothing           
                    size-in-pixels?     
                    hinting])       -> (is-a?/c font%)
  size : (integer-in 1 1024)
  family : font-family/c
  style : font-style/c = 'normal
  weight : font-weight/c = 'normal
  underline? : any/c = #f
  smoothing : font-smoothing/c = 'default
  size-in-pixels? : any/c = #f
  hinting : font-hinting/c = 'aligned
(make-object font%  size                
                    face                
                    family              
                   [style               
                    weight              
                    underline?          
                    smoothing           
                    size-in-pixels?     
                    hinting])       -> (is-a?/c font%)
  size : (integer-in 1 1024)
  face : string?
  family : font-family/c
  style : font-style/c = 'normal
  weight : font-weight/c = 'normal
  underline? : any/c = #f
  smoothing : font-smoothing/c = 'default
  size-in-pixels? : any/c = #f
  hinting : font-hinting/c = 'aligned
method
(send a-font get-face) -> (or/c string? #f)
method
(send a-font get-family) -> font-family/c
method
(send a-font get-font-id) -> exact-integer?
method
(send a-font get-hinting) -> font-hinting/c
method
(send a-font get-point-size) -> (integer-in 1 1024)
method
(send a-font get-size-in-pixels) -> boolean?
method
(send a-font get-smoothing) -> font-smoothing/c
method
(send a-font get-style) -> font-style/c
method
(send a-font get-underlined) -> boolean?
method
(send a-font get-weight) -> font-weight/c
method
(send a-font screen-glyph-exists?  c                
                                  [for-label?]) -> boolean?
  c : char?
  for-label? : any/c = #f
class
font-list% : class?
  superclass: object%
constructor
(new font-list%) -> (is-a?/c font-list%)
method
(send a-font-list find-or-create-font  size            
                                       family          
                                       style           
                                       weight          
                                      [underline?      
                                       smoothing       
                                       size-in-pixels? 
                                       hinting])       
 -> (is-a?/c font%)
  size : (integer-in 1 255)
  family : (or/c 'default 'decorative 'roman 'script
                 'swiss 'modern 'symbol 'system)
  style : (or/c 'normal 'italic 'slant)
  weight : (or/c 'normal 'bold 'light)
  underline? : any/c = #f
  smoothing : (or/c 'default 'partly-smoothed 'smoothed 'unsmoothed)
            = 'default
  size-in-pixels? : any/c = #f
  hinting : (or/c 'aligned 'unaligned) = 'aligned
(send a-font-list find-or-create-font  size            
                                       face            
                                       family          
                                       style           
                                       weight          
                                      [underline       
                                       smoothing       
                                       size-in-pixels? 
                                       hinting])       
 -> (is-a?/c font%)
  size : (integer-in 1 255)
  face : string?
  family : (or/c 'default 'decorative 'roman 'script
                 'swiss 'modern 'symbol 'system)
  style : (or/c 'normal 'italic 'slant)
  weight : (or/c 'normal 'bold 'light)
  underline : any/c = #f
  smoothing : (or/c 'default 'partly-smoothed 'smoothed 'unsmoothed)
            = 'default
  size-in-pixels? : any/c = #f
  hinting : (or/c 'aligned 'unaligned) = 'aligned
interface
font-name-directory<%> : interface?
method
(send a-font-name-directory find-family-default-font-id family)
 -> exact-integer?
  family : (or/c 'default 'decorative 'roman 'script
                 'swiss 'modern 'symbol 'system)
method
(send a-font-name-directory find-or-create-font-id name    
                                                   family) 
 -> exact-integer?
  name : string?
  family : (or/c 'default 'decorative 'roman 'script
                 'swiss 'modern 'symbol 'system)
method
(send a-font-name-directory get-face-name font-id)
 -> (or/c string? #f)
  font-id : exact-integer?
method
(send a-font-name-directory get-family font-id)
 -> (or/c 'default 'decorative 'roman 'script
          'swiss 'modern 'symbol 'system)
  font-id : exact-integer?
method
(send a-font-name-directory get-font-id name    
                                        family) 
 -> exact-integer?
  name : string?
  family : (or/c 'default 'decorative 'roman 'script
                 'swiss 'modern 'symbol 'system)
method
(send a-font-name-directory get-post-script-name font-id 
                                                 weight  
                                                 style)  
 -> (or/c string? #f)
  font-id : exact-integer?
  weight : (or/c 'normal 'bold 'light)
  style : (or/c 'normal 'italic 'slant)
method
(send a-font-name-directory get-screen-name font-id 
                                            weight  
                                            style)  
 -> (or/c string? #f)
  font-id : exact-integer?
  weight : (or/c 'normal 'bold 'light)
  style : (or/c 'normal 'italic 'slant)
method
(send a-font-name-directory set-post-script-name font-id 
                                                 weight  
                                                 style   
                                                 name)   
 -> void?
  font-id : exact-integer?
  weight : (or/c 'normal 'bold 'light)
  style : (or/c 'normal 'italic 'slant)
  name : string?
method
(send a-font-name-directory set-screen-name font-id     
                                            weight      
                                            style       
                                            name)   -> void?
  font-id : exact-integer?
  weight : (or/c 'normal 'bold 'light)
  style : (or/c 'normal 'italic 'slant)
  name : string?
class
gl-config% : class?
  superclass: object%
constructor
(new gl-config%) -> (is-a?/c gl-config%)
method
(send a-gl-config get-accum-size) -> (integer-in 0 256)
method
(send a-gl-config get-depth-size) -> (integer-in 0 256)
method
(send a-gl-config get-double-buffered) -> boolean?
method
(send a-gl-config get-multisample-size) -> (integer-in 0 256)
method
(send a-gl-config get-share-context)
 -> (or/c #f (is-a?/c gl-context<%>))
method
(send a-gl-config get-stencil-size) -> (integer-in 0 256)
method
(send a-gl-config get-stereo) -> boolean?
method
(send a-gl-config set-accum-size on?) -> void?
  on? : (integer-in 0 256)
method
(send a-gl-config set-depth-size on?) -> void?
  on? : (integer-in 0 256)
method
(send a-gl-config set-double-buffered on?) -> void?
  on? : any/c
method
(send a-gl-config set-multisample-size on?) -> void?
  on? : (integer-in 0 256)
method
(send a-gl-config set-share-context context) -> void?
  context : (or/c #f (is-a?/c gl-context<%>))
method
(send a-gl-config set-stencil-size on?) -> void?
  on? : (integer-in 0 256)
method
(send a-gl-config set-stereo on?) -> void?
  on? : any/c
interface
gl-context<%> : interface?
method
(send a-gl-context call-as-current  thunk                
                                   [alternate            
                                    enable-breaks?]) -> any/c
  thunk : (-> any)
  alternate : evt? = never-evt
  enable-breaks? : any/c = #f
method
(send a-gl-context get-handle) -> cpointer?
method
(send a-gl-context ok?) -> boolean?
method
(send a-gl-context swap-buffers) -> void?
class
linear-gradient% : class?
  superclass: object%
constructor
(new linear-gradient%                
                      [x0 x0]        
                      [y0 y0]        
                      [x1 x1]        
                      [y1 y1]        
                      [stops stops]) 
 -> (is-a?/c linear-gradient%)
  x0 : real?
  y0 : real?
  x1 : real?
  y1 : real?
  stops : (listof (list/c (real-in 0 1) (is-a?/c color%)))
method
(send a-linear-gradient get-line) -> real? real? real? real?
method
(send a-linear-gradient get-stops)
 -> (listof (list/c (real-in/c 0 1) (is-a?/c color%)))
class
pdf-dc% : class?
  superclass: object%
  extends: dc<%>
constructor
(new pdf-dc%                                  
             [[interactive interactive]       
              [parent parent]                 
              [use-paper-bbox use-paper-bbox] 
              [as-eps as-eps]                 
              [width width]                   
              [height height]                 
              [output output]])               
 -> (is-a?/c pdf-dc%)
  interactive : any/c = #t
  parent : (or/c (is-a?/c frame%) (is-a?/c dialog%) #f) = #f
  use-paper-bbox : any/c = #f
  as-eps : any/c = #t
  width : (or/c (and/c real? (not/c negative?)) #f) = #f
  height : (or/c (and/c real? (not/c negative?)) #f) = #f
  output : (or/c path-string? output-port? #f) = #f
class
pen% : class?
  superclass: object%
constructor
(new pen%                          
          [[color color]           
           [width width]           
           [style style]           
           [cap cap]               
           [join join]             
           [stipple stipple]]) -> (is-a?/c pen%)
  color : (or/c string? (is-a?/c color%)) = "black"
  width : (real-in 0 255) = 0
  style : pen-style/c = 'solid
  cap : pen-cap-style/c = 'round
  join : pen-join-style/c = 'round
  stipple : (or/c #f (is-a?/c bitmap%)) = #f
method
(send a-pen get-cap) -> pen-cap-style/c
method
(send a-pen get-color) -> (is-a?/c color%)
method
(send a-pen get-join) -> pen-join-style/c
method
(send a-pen get-stipple) -> (or/c (is-a?/c bitmap%) #f)
method
(send a-pen get-style) -> pen-style/c
method
(send a-pen get-width) -> (real-in 0 255)
method
(send a-pen is-immutable?) -> boolean?
method
(send a-pen set-cap cap-style) -> void?
  cap-style : pen-cap-style/c
method
(send a-pen set-color color) -> void?
  color : (is-a?/c color%)
(send a-pen set-color color-name) -> void?
  color-name : string?
(send a-pen set-color red green blue) -> void?
  red : byte?
  green : byte?
  blue : byte?
method
(send a-pen set-join join-style) -> void?
  join-style : pen-join-style/c
method
(send a-pen set-stipple bitmap) -> void?
  bitmap : (or/c (is-a?/c bitmap%) #f)
method
(send a-pen set-style style) -> void?
  style : pen-style/c
method
(send a-pen set-width width) -> void?
  width : (real-in 0 255)
class
pen-list% : class?
  superclass: object%
constructor
(new pen-list%) -> (is-a?/c pen-list%)
method
(send a-pen-list find-or-create-pen  color      
                                     width      
                                     style      
                                    [cap        
                                     join]) -> (is-a?/c pen%)
  color : (is-a?/c color%)
  width : (real-in 0 255)
  style : (or/c 'transparent 'solid 'xor 'hilite
                'dot 'long-dash 'short-dash 'dot-dash
                'xor-dot 'xor-long-dash 'xor-short-dash
                'xor-dot-dash)
  cap : (or/c 'round 'projecting 'butt) = 'round
  join : (or/c 'round 'bevel 'miter) = 'round
(send a-pen-list find-or-create-pen  color-name 
                                     width      
                                     style      
                                    [cap        
                                     join])     
 -> (or/c (is-a?/c pen%) #f)
  color-name : string?
  width : (real-in 0 255)
  style : (or/c 'transparent 'solid 'xor 'hilite
                'dot 'long-dash 'short-dash 'dot-dash
                'xor-dot 'xor-long-dash 'xor-short-dash
                'xor-dot-dash)
  cap : (or/c 'round 'projecting 'butt) = 'round
  join : (or/c 'round 'bevel 'miter) = 'round
class
point% : class?
  superclass: object%
constructor
(make-object point%) -> (is-a?/c point%)
(make-object point% x y) -> (is-a?/c point%)
  x : real?
  y : real?
method
(send a-point get-x) -> real?
method
(send a-point get-y) -> real?
method
(send a-point set-x x) -> void?
  x : real?
method
(send a-point set-y y) -> void?
  y : real?
class
post-script-dc% : class?
  superclass: object%
  extends: dc<%>
constructor
(new post-script-dc%                                  
                     [[interactive interactive]       
                      [parent parent]                 
                      [use-paper-bbox use-paper-bbox] 
                      [as-eps as-eps]                 
                      [width width]                   
                      [height height]                 
                      [output output]])               
 -> (is-a?/c post-script-dc%)
  interactive : any/c = #t
  parent : (or/c (is-a?/c frame%) (is-a?/c dialog%) #f) = #f
  use-paper-bbox : any/c = #f
  as-eps : any/c = #t
  width : (or/c (and/c real? (not/c negative?)) #f) = #f
  height : (or/c (and/c real? (not/c negative?)) #f) = #f
  output : (or/c path-string? output-port? #f) = #f
class
ps-setup% : class?
  superclass: object%
constructor
(new ps-setup%) -> (is-a?/c ps-setup%)
method
(send a-ps-setup copy-from  source               
                           [copy-filename?]) -> void?
  source : (is-a?/c ps-setup%)
  copy-filename? : any/c = #f
method
(send a-ps-setup get-command) -> string?
method
(send a-ps-setup get-editor-margin h-margin      
                                   v-margin) -> void?
  h-margin : (box/c (and/c real? (not/c negative?)))
  v-margin : (box/c (and/c real? (not/c negative?)))
method
(send a-ps-setup get-file) -> (or/c path-string? #f)
method
(send a-ps-setup get-level-2) -> boolean?
method
(send a-ps-setup get-margin h-margin      
                            v-margin) -> void?
  h-margin : (box/c (and/c real? (not/c negative?)))
  v-margin : (box/c (and/c real? (not/c negative?)))
method
(send a-ps-setup get-mode) -> (or/c 'preview 'file 'printer)
method
(send a-ps-setup get-orientation)
 -> (or/c 'portrait 'landscape)
method
(send a-ps-setup get-paper-name) -> string?
method
(send a-ps-setup get-preview-command) -> string?
method
(send a-ps-setup get-scaling x y) -> void?
  x : (box/c (and/c real? (not/c negative?)))
  y : (box/c (and/c real? (not/c negative?)))
method
(send a-ps-setup get-translation x y) -> void?
  x : (box/c (and/c real? (not/c negative?)))
  y : (box/c (and/c real? (not/c negative?)))
method
(send a-ps-setup set-command command) -> void?
  command : string?
method
(send a-ps-setup set-editor-margin h v) -> void?
  h : exact-nonnegative-integer?
  v : exact-nonnegative-integer?
method
(send a-ps-setup set-file filename) -> void?
  filename : (or/c path-string? #f)
method
(send a-ps-setup set-level-2 on?) -> void?
  on? : any/c
method
(send a-ps-setup set-margin h v) -> void?
  h : (and/c real? (not/c negative?))
  v : (and/c real? (not/c negative?))
method
(send a-ps-setup set-mode mode) -> void?
  mode : (or/c 'preview 'file 'printer)
method
(send a-ps-setup set-orientation orientation) -> void?
  orientation : (or/c 'portrait 'landscape)
method
(send a-ps-setup set-paper-name type) -> void?
  type : string?
method
(send a-ps-setup set-preview-command command) -> void?
  command : string?
method
(send a-ps-setup set-scaling x y) -> void?
  x : (and/c real? (not/c negative?))
  y : (and/c real? (not/c negative?))
method
(send a-ps-setup set-translation x y) -> void?
  x : real?
  y : real?
class
radial-gradient% : class?
  superclass: object%
constructor
(new radial-gradient%                
                      [x0 x0]        
                      [y0 y0]        
                      [r0 r0]        
                      [x1 x1]        
                      [y1 y1]        
                      [r1 r1]        
                      [stops stops]) 
 -> (is-a?/c radial-gradient%)
  x0 : real?
  y0 : real?
  r0 : real?
  x1 : real?
  y1 : real?
  r1 : real?
  stops : (listof (list/c (real-in 0 1) (is-a?/c color%)))
method
(send a-radial-gradient get-circles)
 -> real? real? real? real? real? real?
method
(send a-radial-gradient get-stops)
 -> (listof (list/c (real-in 0 1) (is-a?/c color%)))
class
record-dc% : class?
  superclass: object%
  extends: dc<%>
constructor
(new record-dc%                        
                [[width width]         
                 [height height]]) -> (is-a?/c record-dc%)
  width : (>=/c 0) = 640
  height : (>=/c 0) = 480
method
(send a-record-dc get-recorded-datum) -> any/c
method
(send a-record-dc get-recorded-procedure)
 -> ((is-a?/c dc<%>) . -> . void?)
class
region% : class?
  superclass: object%
constructor
(new region% [dc dc]) -> (is-a?/c region%)
  dc : (or/c (is-a?/c dc<%>) #f)
method
(send a-region get-bounding-box) -> real? real? real? real?
method
(send a-region get-dc) -> (or/c (is-a?/c dc<%>) #f)
method
(send a-region in-region? x y) -> boolean?
  x : real?
  y : real?
method
(send a-region intersect rgn) -> void?
  rgn : (is-a?/c region%)
method
(send a-region is-empty?) -> boolean?
method
(send a-region set-arc x                 
                       y                 
                       width             
                       height            
                       start-radians     
                       end-radians)  -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  start-radians : real?
  end-radians : real?
method
(send a-region set-ellipse x y width height) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
method
(send a-region set-path  path             
                        [xoffset          
                         yoffset          
                         fill-style]) -> void?
  path : (is-a?/c dc-path%)
  xoffset : real? = 0
  yoffset : real? = 0
  fill-style : (or/c 'odd-even 'winding) = 'odd-even
method
(send a-region set-polygon  points           
                           [xoffset          
                            yoffset          
                            fill-style]) -> void?
  points : (or/c (listof (is-a?/c point%))
                 (listof (cons/c real? real?)))
  xoffset : real? = 0
  yoffset : real? = 0
  fill-style : (or/c 'odd-even 'winding) = 'odd-even
method
(send a-region set-rectangle x           
                             y           
                             width       
                             height) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
method
(send a-region set-rounded-rectangle  x            
                                      y            
                                      width        
                                      height       
                                     [radius]) -> void?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  radius : real? = -0.25
method
(send a-region subtract rgn) -> void?
  rgn : (is-a?/c region%)
method
(send a-region union rgn) -> void?
  rgn : (is-a?/c region%)
method
(send a-region xor rgn) -> void?
  rgn : (is-a?/c region%)
class
svg-dc% : class?
  superclass: object%
  extends: dc<%>
constructor
(new svg-dc%                        
              [width width]         
              [height height]       
              [output output]       
             [[exists exists]]) -> (is-a?/c svg-dc%)
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  output : (or/c path-string? output-port?)
  exists : (or/c 'error 'append 'update 'can-update = 'error
                 'replace 'truncate
                 'must-truncate 'truncate/replace)
parameter
(current-ps-setup) -> (is-a?/c ps-setup%)
(current-ps-setup pss) -> void?
  pss : (is-a?/c ps-setup%)
procedure
(get-face-list [kind                            
                #:all-variants? all-variants?]) 
 -> (listof string?)
  kind : (or/c 'mono 'all) = 'all
  all-variants? : any/c = #f
procedure
(get-family-builtin-face family) -> string?
  family : (or/c 'default 'decorative 'roman 'script
                 'swiss 'modern 'symbol 'system)
procedure
(make-bitmap width height [alpha?]) -> (is-a?/c bitmap%)
  width : exact-positive-integer?
  height : exact-positive-integer?
  alpha? : any/c = #t
procedure
(make-brush [#:color color                       
             #:style style                       
             #:stipple stipple                   
             #:gradient gradient                 
             #:transformation transformation     
             #:immutable? immutable?])       -> (is-a?/c brush%)
  color : (or/c string? (is-a?/c color%)) = (make-color 0 0 0)
  style : (or/c 'transparent 'solid 'opaque        = 'solid
                'xor 'hilite 'panel
                'bdiagonal-hatch 'crossdiag-hatch
                'fdiagonal-hatch 'cross-hatch
                'horizontal-hatch 'vertical-hatch)
  stipple : (or/c #f (is-a?/c bitmap%)) = #f
  gradient : (or/c #f                         = #f
                  (is-a?/c linear-gradient%)
                  (is-a?/c radial-gradient%))
  transformation : (or/c #f (vector/c (vector/c real? real? real?
                                                real? real? real?)
                                       real? real? real? real? real?))
                 = #f
  immutable? : any/c = #t
procedure
(make-color red green blue [alpha]) -> (is-a?/c color%)
  red : byte?
  green : byte?
  blue : byte?
  alpha : (real-in 0 1) = 1.0
procedure
(make-font [#:size size                           
            #:face face                           
            #:family family                       
            #:style style                         
            #:weight weight                       
            #:underlined? underlined?             
            #:smoothing smoothing                 
            #:size-in-pixels? size-in-pixels?     
            #:hinting hinting])               -> (is-a?/c font%)
  size : (integer-in 1 1024) = 12
  face : (or/c string? #f) = #f
  family : (or/c 'default 'decorative 'roman 'script = 'default
                 'swiss 'modern 'symbol 'system)
  style : (or/c 'normal 'italic 'slant) = 'normal
  weight : (or/c 'normal 'bold 'light) = 'normal
  underlined? : any/c = #f
  smoothing : (or/c 'default 'partly-smoothed = 'default
                    'smoothed 'unsmoothed)
  size-in-pixels? : any/c = #f
  hinting : (or/c 'aligned 'unaligned) = 'aligned
procedure
(make-monochrome-bitmap width height [bits]) -> (is-a?/c bitmap%)
  width : exact-positive-integer?
  height : exact-positive-integer?
  bits : (or/c bytes? #f) = #f
procedure
(make-pen [#:color color                 
           #:width width                 
           #:style style                 
           #:cap cap                     
           #:join join                   
           #:stipple stipple             
           #:immutable? immutable?]) -> (is-a?/c pen%)
  color : (or/c string? (is-a?/c color%)) = (make-color 0 0 0)
  width : (real-in 0 255) = 0
  style : (or/c 'transparent 'solid 'xor 'hilite        = 'solid
                'dot 'long-dash 'short-dash 'dot-dash
                'xor-dot 'xor-long-dash 'xor-short-dash
                'xor-dot-dash)
  cap : (or/c 'round 'projecting 'butt) = 'round
  join : (or/c 'round 'bevel 'miter) = 'round
  stipple : (or/c #f (is-a?/c bitmap%)) = #f
  immutable? : any/c = #t
procedure
(make-platform-bitmap width height) -> (is-a?/c bitmap%)
  width : exact-positive-integer?
  height : exact-positive-integer?
procedure
(read-bitmap  in                         
             [kind                       
              bg-color                   
              complain-on-failure?]) -> (is-a?/c bitmap%)
  in : (or path-string? input-port?)
  kind : (or/c 'unknown 'unknown/mask 'unknown/alpha
               'gif 'gif/mask 'gif/alpha
               'jpeg 'jpeg/alpha
               'png 'png/mask 'png/alpha
               'xbm 'xbm/alpha 'xpm 'xpm/alpha
               'bmp 'bmp/alpha)
       = 'unknown/alpha
  bg-color : (or/c (is-a?/c color%) #f) = #f
  complain-on-failure? : any/c = #t
procedure
(recorded-datum->procedure datum)
 -> ((is-a?/c dc<%>) . -> . void?)
  datum : any/c
value
the-brush-list : (is-a?/c brush-list%)
value
the-color-database : (is-a?/c color-database<%>)
value
the-font-list : (is-a?/c font-list%)
value
the-font-name-directory : (is-a?/c font-name-directory<%>)
value
the-pen-list : (is-a?/c pen-list%)
value
font-family/c : flat-contract?
value
font-style/c : flat-contract?
value
font-weight/c : flat-contract?
value
font-smoothing/c : flat-contract?
value
font-hinting/c : flat-contract?
value
pen-style/c : flat-contract?
value
pen-cap-style/c : flat-contract?
value
pen-join-style/c : flat-contract?
value
brush-style/c : flat-contract?
value
draw@ : unit?
signature
draw^ : signature
procedure
(make-handle-brush  handle              
                    width               
                    height              
                    transformation      
                   [#:copy? copy?]) -> (is-a?/c brush%)
  handle : cpointer?
  width : exact-nonnegative-integer?
  height : exact-nonnegative-integer?
  transformation : (or/c #f (vector/c (vector/c real? real? real?
                                                real? real? real?)
                                      real? real? real? real? real?))
  copy? : any/c = #t
value
cairo-lib : (or/c ffi-lib? #f)
