11877
((3) 0 () 37 ((c (? . 18) q name-message%) (c (? . 2) q hierarchical-list-compound-item<%>) (q lib "mrlib/hierlist.rkt") (c (? . 2) q hierarchical-list%) (q lib "mrlib/plot.rkt") (q lib "mrlib/cache-image-snip.rkt") (q (lib "mrlib/path-dialog.rkt") path-dialog%) (q 27037 . 10) (c (? . 5) q cache-image-snip%) (q 18832 . 9) (q lib "mrlib/aligned-pasteboard.rkt") (q lib "mrlib/graph.rkt") (q 27338 . 20) (c (? . 10) q vertical-pasteboard%) (c (? . 2) q hierarchical-item-snip%) (q (lib "mrlib/switchable-button.rkt") switchable-button%) (c (? . 32) q terminal<%>) (c (? . 11) q graph-pasteboard<%>) (q lib "mrlib/name-message.rkt") (c (? . 11) q graph-snip<%>) (q 21872 . 5) (c (? . 10) q horizontal-pasteboard%) (c (? . 2) q hierarchical-list-item<%>) (q lib "mrlib/gif.rkt") (c (? . 10) q aligned-pasteboard<%>) (c (? . 10) q stretchable-snip<%>) (q (lib "mrlib/close-icon.rkt") close-icon%) (q 20145 . 5) (c (? . 10) q aligned-pasteboard-parent<%>) (q lib "mrlib/interactive-value-port.rkt") (q lib "mrlib/include-bitmap.rkt") (c (? . 2) q hierarchical-list-snip%) (q lib "mrlib/terminal.rkt") (c (? . 11) q graph-pasteboard-mixin) (q lib "mrlib/image-core.rkt") (q lib "mrlib/bitmap-label.rkt") (q 20533 . 6)) () (h ! (equal) ((c def c (c (? . 5) q argb->bitmap)) q (5988 . 3)) ((c meth c (c (? . 13) q after-insert)) q (1971 . 9)) ((c def c (c (? . 23) q write-gif)) q (6744 . 5)) ((c meth c (c (? . 0) q set-message)) q (23567 . 5)) ((c meth c (c (? . 1) q is-open?)) q (22072 . 2)) ((c meth c (c (? . 0) q on-choose-directory)) q (23243 . 3)) ((c meth c (c (? . 1) q open)) c (? . 20)) ((c def c (c (? . 11) q add-links/text-colors)) q (14331 . 23)) ((c def c (? . 6)) q (25214 . 3)) ((c meth c (c (? . 3) q new-list)) q (16901 . 7)) ((c def c (? . 3)) q (15622 . 3)) ((c meth c (c (? . 0) q get-background-color)) q (23991 . 3)) ((c def c (c (? . 4) q plot-setup-x-axis-marking)) c (? . 12)) ((c def c (c (? . 4) q make-data-set)) c (? . 7)) ((c meth c (c (? . 0) q set-allow-shrinking)) q (24087 . 3)) ((c def c (c (? . 5) q overlay-bitmap)) q (5372 . 7)) ((c constructor c (? . 6)) q (25269 . 37)) ((c def c (? . 0)) q (23100 . 3)) ((c def c (c (? . 4) q data-set-connected?)) c (? . 7)) ((c meth c (c (? . 8) q get-argb-proc)) q (4094 . 3)) ((c meth c (c (? . 3) q select-next)) c (? . 9)) ((c meth c (c (? . 15) q get-button-label)) q (29681 . 2)) ((c meth c (c (? . 8) q get-size)) q (4555 . 4)) ((c meth c (c (? . 3) q page-up)) c (? . 9)) ((c meth c (c (? . 3) q on-select)) q (17540 . 3)) ((c meth c (c (? . 21) q after-insert)) q (824 . 9)) ((c def c (? . 16)) q (32177 . 2)) ((c meth c (c (? . 17) q get-arrowhead-params)) q (7761 . 3)) ((c def c (c (? . 4) q plot-setup-x-axis-label)) c (? . 12)) ((c meth c (c (? . 22) q user-data)) q (20308 . 4)) ((c def c (c (? . 4) q plot-setup-axis-number-font)) c (? . 12)) ((c def c (? . 14)) q (22233 . 3)) ((c meth c (c (? . 1) q new-list)) q (21326 . 7)) ((c meth c (c (? . 13) q after-reorder)) q (2328 . 7)) ((c meth c (c (? . 3) q get-selected)) q (16404 . 4)) ((c def c (c (? . 29) q set-interactive-display-handler)) q (22843 . 3)) ((c form c (c (? . 30) q include-bitmap)) q (22653 . 3)) ((c meth c (c (? . 14) q get-item)) q (22304 . 3)) ((c meth c (c (? . 19) q add-parent)) q (11494 . 13)) ((c meth c (c (? . 15) q get-without-label-small-width)) q (29917 . 3)) ((c meth c (c (? . 3) q select-prev)) c (? . 9)) ((c meth c (c (? . 16) q is-closed?)) q (32214 . 2)) ((c meth c (c (? . 17) q on-mouse-over-snips)) q (7846 . 3)) ((c def c (c (? . 18) q calc-button-min-sizes)) q (24190 . 5)) ((c meth c (c (? . 15) q set-label-visible)) q (29525 . 3)) ((c def c (c (? . 4) q plot-setup-grid-pen)) c (? . 12)) ((c def c (? . 28)) q (2938 . 2)) ((c meth c (c (? . 19) q get-parents)) q (12219 . 2)) ((c meth c (c (? . 0) q on-paint)) q (23431 . 2)) ((c meth c (c (? . 24) q set-aligned-min-sizes)) q (443 . 2)) ((c def c (c (? . 4) q plot-setup?)) c (? . 12)) ((c def c (c (? . 4) q plot-setup-grid?)) c (? . 12)) ((c def c (? . 25)) q (3071 . 2)) ((c meth c (c (? . 16) q get-button-panel)) q (32413 . 3)) ((c def c (c (? . 4) q data-set-max-y)) c (? . 7)) ((c meth c (c (? . 1) q close)) c (? . 20)) ((c constructor c (? . 21)) q (619 . 3)) ((c meth c (c (? . 3) q selectable)) q (17405 . 4)) ((c def c (? . 1)) q (20821 . 3)) ((c meth c (c (? . 17) q draw-edges)) q (8461 . 15)) ((c meth c (c (? . 6) q run)) q (26992 . 2)) ((c def c (c (? . 5) q build-bitmap)) q (5569 . 5)) ((c meth c (c (? . 22) q select)) c (? . 27)) ((c def c (c (? . 11) q graph-snip-mixin)) q (12697 . 4)) ((c meth c (c (? . 22) q get-allow-selection?)) c (? . 36)) ((c meth c (c (? . 3) q set-no-sublists)) q (16797 . 3)) ((c def c (c (? . 18) q pad-xywh)) q (25053 . 6)) ((c def c (c (? . 4) q data-set-max-x)) c (? . 7)) ((c meth c (c (? . 15) q get-small-width)) q (29832 . 3)) ((c def c (c (? . 23) q write-animated-gif)) q (6915 . 17)) ((c meth c (c (? . 21) q after-delete)) q (724 . 3)) ((c meth c (c (? . 24) q get-aligned-min-width)) q (119 . 2)) ((c def c (c (? . 4) q plot-setup-axis-label-font)) c (? . 12)) ((c meth c (c (? . 3) q select-last)) c (? . 9)) ((c meth c (c (? . 25) q get-aligned-min-width)) q (3185 . 2)) ((c def c (c (? . 10) q aligned-editor-canvas%)) q (2866 . 3)) ((c constructor c (? . 3)) q (15690 . 13)) ((c meth c (c (? . 13) q resized)) q (2612 . 5)) ((c meth c (c (? . 21) q resized)) q (1479 . 5)) ((c def c (c (? . 5) q make-argb)) q (4924 . 5)) ((c constructor c (? . 26)) q (6133 . 13)) ((c meth c (c (? . 17) q update-arrowhead-polygon)) q (9908 . 18)) ((c meth c (c (? . 25) q stretchable-width)) q (3321 . 2)) ((c def c (c (? . 4) q data-set-min-x)) c (? . 7)) ((c def c (c (? . 11) q remove-links)) q (15314 . 4)) ((c def c (c (? . 5) q argb->cache-image-snip)) q (5852 . 5)) ((c constructor c (? . 33)) q (10782 . 10)) ((c meth c (c (? . 15) q command)) q (29626 . 2)) ((c meth c (c (? . 0) q set-short-title)) q (23763 . 3)) ((c def c (? . 26)) q (6079 . 3)) ((c def c (? . 8)) q (3770 . 3)) ((c constructor c (? . 13)) q (1772 . 3)) ((c meth c (c (? . 22) q is-selected?)) q (20077 . 2)) ((c meth c (c (? . 3) q select-first)) c (? . 9)) ((c meth c (c (? . 1) q new-item)) q (20924 . 7)) ((c meth c (c (? . 1) q get-items)) q (21759 . 3)) ((c meth c (c (? . 3) q on-item-opened)) q (17878 . 3)) ((c meth c (c (? . 24) q get-aligned-min-height)) q (47 . 2)) ((c meth c (c (? . 17) q set-flip-labels?)) q (8357 . 3)) ((c meth c (c (? . 22) q click-select)) c (? . 27)) ((c def c (c (? . 4) q data-set?)) c (? . 7)) ((c def c (c (? . 4) q plot)) q (28300 . 5)) ((c def c (c (? . 4) q data-set)) c (? . 7)) ((c meth c (c (? . 19) q remove-parent)) q (12388 . 3)) ((c meth c (c (? . 3) q select-out)) c (? . 9)) ((c def c (? . 13)) q (1669 . 4)) ((c meth c (c (? . 3) q select)) q (19247 . 3)) ((c meth c (c (? . 16) q close)) q (32266 . 2)) ((c meth c (c (? . 0) q on-event)) q (23335 . 3)) ((c meth c (c (? . 17) q set-draw-arrow-heads?)) q (8237 . 4)) ((c def c (c (? . 10) q aligned-editor-snip%)) q (2798 . 3)) ((c def c (c (? . 4) q plot-setup-y-axis-marking)) c (? . 12)) ((c meth c (c (? . 3) q on-click)) q (17662 . 3)) ((c meth c (c (? . 19) q get-children)) q (12156 . 2)) ((c def c (c (? . 4) q data-set-points)) c (? . 7)) ((c def c (c (? . 4) q plot-setup)) c (? . 12)) ((c def c (? . 19)) q (11359 . 2)) ((c def c (c (? . 5) q flatten-bitmap)) q (5759 . 3)) ((c meth c (c (? . 16) q can-close?)) q (32310 . 2)) ((c def c (c (? . 4) q plot-setup-y-axis-label)) c (? . 12)) ((c def c (c (? . 18) q draw-button-label)) q (24356 . 21)) ((c def c (c (? . 5) q argb-height)) q (5240 . 3)) ((c def c (? . 22)) q (19952 . 2)) ((c def c (? . 31)) q (22397 . 3)) ((c def c (c (? . 11) q add-links)) q (12825 . 39)) ((c meth c (c (? . 8) q other-equal-to?)) q (4663 . 5)) ((c def c (c (? . 4) q make-plot-setup)) c (? . 12)) ((c def c (c (? . 5) q argb-width)) q (5160 . 3)) ((c meth c (c (? . 19) q set-parent-link-label)) q (12490 . 5)) ((c def c (c (? . 35) q make-bitmap-label)) q (3388 . 5)) ((c constructor c (? . 0)) q (23156 . 3)) ((c meth c (c (? . 28) q set-aligned-min-sizes)) q (2992 . 3)) ((c meth c (c (? . 0) q set-hidden?)) q (23482 . 3)) ((c meth c (c (? . 15) q get-large-width)) q (29747 . 3)) ((c meth c (c (? . 25) q stretchable-height)) q (3253 . 2)) ((c def c (c (? . 5) q argb?)) q (5321 . 3)) ((c def c (c (? . 29) q set-interactive-write-handler)) q (22930 . 3)) ((c constructor c (? . 15)) q (28493 . 16)) ((c def c (? . 15)) q (28432 . 3)) ((c meth c (c (? . 24) q realign)) q (190 . 6)) ((c meth c (c (? . 8) q get-argb)) q (4039 . 2)) ((c meth c (c (? . 3) q click-select)) q (19368 . 3)) ((c meth c (c (? . 25) q get-aligned-min-height)) q (3116 . 2)) ((c form c (c (? . 30) q include-bitmap/relative-to)) q (22727 . 3)) ((c meth c (c (? . 3) q new-item)) q (16528 . 7)) ((c def c (c (? . 4) q struct:data-set)) c (? . 7)) ((c meth c (c (? . 31) q get-item)) q (22468 . 3)) ((c def c (c (? . 11) q set-link-label)) q (15444 . 5)) ((c meth c (c (? . 3) q on-click-always)) q (19650 . 4)) ((c meth c (c (? . 17) q set-arrowhead-params)) q (7956 . 8)) ((c meth c (c (? . 1) q get-arrow-snip)) q (22145 . 3)) ((c def c (c (? . 4) q plot-setup-axis-pen)) c (? . 12)) ((q def ((lib "mrlib/matrix-snip.rkt") visible-matrix%)) q (30363 . 3)) ((c meth c (c (? . 3) q page-down)) c (? . 9)) ((c meth c (c (? . 22) q get-clickable-snip)) q (20450 . 3)) ((c def c (c (? . 32) q in-terminal)) q (30774 . 26)) ((c def c (? . 33)) q (10636 . 4)) ((c meth c (c (? . 3) q select-in)) c (? . 9)) ((c meth c (c (? . 3) q delete-item)) q (17197 . 3)) ((c meth c (c (? . 0) q fill-popup)) q (23865 . 4)) ((c meth c (c (? . 3) q allow-deselect)) q (19803 . 4)) ((c meth c (c (? . 1) q set-no-sublists)) q (21207 . 4)) ((c meth c (c (? . 3) q on-item-closed)) q (17997 . 3)) ((c def c (c (? . 34) q image?)) q (30154 . 3)) ((c meth c (c (? . 3) q can-do-edit-operation?)) q (18425 . 6)) ((c meth c (c (? . 16) q can-close-evt)) q (32362 . 2)) ((c def c (c (? . 4) q struct:plot-setup)) c (? . 12)) ((c def c (c (? . 32) q on-terminal-run)) q (32074 . 4)) ((c meth c (c (? . 19) q remove-child)) q (12289 . 3)) ((c def c (c (? . 5) q snip-class)) q (4880 . 2)) ((c meth c (c (? . 8) q equal-to?)) q (3834 . 5)) ((c def c (c (? . 34) q un/cache-image)) q (30206 . 4)) ((c meth c (c (? . 13) q after-delete)) q (1873 . 3)) ((c meth c (c (? . 1) q delete-item)) q (21636 . 3)) ((c meth c (c (? . 17) q draw-single-edge)) q (8989 . 22)) ((c def c (c (? . 29) q set-interactive-print-handler)) q (23015 . 3)) ((c def c (c (? . 35) q bitmap-label-maker)) q (3587 . 5)) ((c meth c (c (? . 22) q get-editor)) q (20003 . 2)) ((c def c (c (? . 4) q data-set-min-y)) c (? . 7)) ((c meth c (c (? . 8) q get-pinhole)) q (4490 . 2)) ((c def c (c (? . 5) q argb-vector)) q (5088 . 3)) ((c meth c (c (? . 3) q get-items)) q (17306 . 3)) ((c def c (c (? . 4) q data-set-pen)) c (? . 7)) ((c meth c (c (? . 22) q set-allow-selection)) c (? . 36)) ((q def ((lib "mrlib/tex-table.rkt") tex-shortcut-table)) q (30431 . 7)) ((c meth c (c (? . 31) q get-content-buffer)) q (22570 . 3)) ((c meth c (c (? . 1) q toggle-open/closed)) c (? . 20)) ((c meth c (c (? . 3) q do-edit-operation)) q (18633 . 5)) ((c def c (c (? . 34) q compute-image-cache)) q (30292 . 3)) ((c def c (? . 24)) q (0 . 2)) ((c meth c (c (? . 3) q on-select-always)) q (19495 . 4)) ((c def c (c (? . 34) q render-image)) q (30016 . 6)) ((c meth c (c (? . 3) q on-double-select)) q (17766 . 3)) ((c meth c (c (? . 19) q add-child)) q (11398 . 3)) ((c meth c (c (? . 8) q get-argb/no-compute)) q (4204 . 3)) ((c meth c (c (? . 22) q get-parent)) q (20705 . 3)) ((c def c (? . 17)) q (7716 . 2)) ((c meth c (c (? . 3) q sort)) q (18116 . 7)) ((c meth c (c (? . 8) q get-bitmap)) q (4288 . 3)) ((c meth c (c (? . 21) q after-reorder)) q (1189 . 7)) ((c meth c (c (? . 8) q get-dc-proc)) q (4376 . 3)) ((c def c (? . 21)) q (514 . 4))))
interface
aligned-pasteboard<%> : interface?
method
(send an-aligned-pasteboard get-aligned-min-height) -> real?
method
(send an-aligned-pasteboard get-aligned-min-width) -> real?
method
(send an-aligned-pasteboard realign width       
                                    height) -> void?
  width : exact-nonnegative-integer?
  height : exact-nonnegative-integer?
(send an-aligned-pasteboard realign) -> void?
method
(send an-aligned-pasteboard set-aligned-min-sizes) -> void?
class
horizontal-pasteboard% : class?
  superclass: pasteboard%
  extends: aligned-pasteboard<%>
constructor
(new horizontal-pasteboard% ...superclass-args...)
 -> (is-a?/c horizontal-pasteboard%)
method
(send a-horizontal-pasteboard after-delete snip) -> void?
  snip : (is-a?/c snip%)
method
(send a-horizontal-pasteboard after-insert snip       
                                           before     
                                           x          
                                           y)     -> void?
  snip : (is-a?/c snip%)
  before : (or/c (is-a?/c snip%) false/c)
  x : real?
  y : real?
method
(send a-horizontal-pasteboard after-reorder snip         
                                            to-snip      
                                            before?) -> boolean?
  snip : (is-a?/c snip%)
  to-snip : (is-a?/c snip%)
  before? : any/c
method
(send a-horizontal-pasteboard resized snip             
                                      redraw-now?) -> void?
  snip : (is-a?/c snip%)
  redraw-now? : any/c
class
vertical-pasteboard% : class?
  superclass: pasteboard%
  extends: aligned-pasteboard<%>
constructor
(new vertical-pasteboard% ...superclass-args...)
 -> (is-a?/c vertical-pasteboard%)
method
(send a-vertical-pasteboard after-delete snip) -> void?
  snip : (is-a?/c snip%)
method
(send a-vertical-pasteboard after-insert snip       
                                         before     
                                         x          
                                         y)     -> void?
  snip : (is-a?/c snip%)
  before : (or/c (is-a?/c snip%) false/c)
  x : real?
  y : real?
method
(send a-vertical-pasteboard after-reorder snip         
                                          to-snip      
                                          before?) -> boolean?
  snip : (is-a?/c snip%)
  to-snip : (is-a?/c snip%)
  before? : any/c
method
(send a-vertical-pasteboard resized snip             
                                    redraw-now?) -> void?
  snip : (is-a?/c snip%)
  redraw-now? : any/c
class
aligned-editor-snip% : class?
  superclass: editor-snip%
class
aligned-editor-canvas% : class?
  superclass: editor-canvas%
interface
aligned-pasteboard-parent<%> : interface?
method
(send an-aligned-pasteboard-parent set-aligned-min-sizes)
 -> void?
interface
stretchable-snip<%> : interface?
method
(send a-stretchable-snip get-aligned-min-height) -> real?
method
(send a-stretchable-snip get-aligned-min-width) -> real?
method
(send a-stretchable-snip stretchable-height) -> boolean?
method
(send a-stretchable-snip stretchable-width) -> boolean?
procedure
(make-bitmap-label str img [font]) -> (is-a?/c bitmap%)
  str : string?
  img : (or/c (is-a?/c bitmap%) path-string?)
  font : (is-a?/c font%) = normal-control-font
procedure
((bitmap-label-maker str img) future-parent) -> (is-a?/c bitmap%)
  str : string?
  img : (or/c (is-a?/c bitmap%) path-string?)
  future-parent : any/c
class
cache-image-snip% : class?
  superclass: image-snip%
method
(send a-cache-image-snip equal-to? snip        
                                   equal?) -> boolean?
  snip : (is-a?/c image-snip%)
  equal? : (any/c any/c . -> . boolean?)
method
(send a-cache-image-snip get-argb) -> argb?
method
(send a-cache-image-snip get-argb-proc)
 -> (argb? exact-integer? exact-integer? . -> . void?)
method
(send a-cache-image-snip get-argb/no-compute)
 -> (or/c false/c argb?)
method
(send a-cache-image-snip get-bitmap)
 -> (or/c false/c (is-a?/c bitmap%))
method
(send a-cache-image-snip get-dc-proc)
 -> (or/c false/c ((is-a?/c dc<%>) real? real? -> void?))
method
(send a-cache-image-snip get-pinhole) -> real? real?
method
(send a-cache-image-snip get-size)
 -> exact-nonnegative-integer?
    exact-nonnegative-integer?
method
(send a-cache-image-snip other-equal-to? snip        
                                         equal?) -> boolean?
  snip : (is-a?/c image-snip%)
  equal? : (any/c any/c . -> . boolean?)
value
snip-class : (is-a?/c snip-class%)
procedure
(make-argb vectorof width height) -> argb?
  vectorof : byte?
  width : exact-nonnegative-integer?
  height : exact-nonnegative-integer?
procedure
(argb-vector argb) -> (vectorof byte?)
  argb : argb?
procedure
(argb-width argb) -> exact-nonnegative-integer?
  argb : argb?
procedure
(argb-height argb) -> exact-nonnegative-integer?
  argb : argb?
procedure
(argb? v) -> boolean?
  v : any/c
procedure
(overlay-bitmap dest dx dy img mask) -> void?
  dest : argb?
  dx : exact-integer?
  dy : exact-integer?
  img : (is-a?/c bitmap%)
  mask : (is-a?/c bitmap%)
procedure
(build-bitmap draw width height) -> (is-a?/c bitmap%)
  draw : ((is-a?/c dc<%>) . -> . any)
  width : (integer-in 1 10000)
  height : (integer-in 1 10000)
procedure
(flatten-bitmap bitmap) -> (is-a?/c bitmap%)
  bitmap : (is-a?/c bitmap%)
procedure
(argb->cache-image-snip argb dx dy) -> (is-a?/c cache-image-snip%)
  argb : argb?
  dx : real?
  dy : real?
procedure
(argb->bitmap argb) -> (or/c false/c (is-a?/c bitmap%))
  argb : argb?
class
close-icon% : class?
  superclass: canvas%
constructor
(new close-icon%                                  
                  [parent parent]                 
                 [[callback callback]             
                  [bg-color bg-color]             
                  [horizontal-pad horizontal-pad] 
                  [vertical-pad vertical-pad]])   
 -> (is-a?/c close-icon%)
  parent : (is-a? area-container<%>)
  callback : (-> any) = void
  bg-color : (or/c #f string (is-a?/c color%)) = #f
  horizontal-pad : positive-integer? = 4
  vertical-pad : positive-integer? = 4
procedure
(write-gif bitmap filename) -> void?
  bitmap : (or/c (is-a?/c bitmap%)
                 (-> (is-a?/c bitmap%)))
  filename : path-string?
procedure
(write-animated-gif  bitmaps                               
                     delay-csec                            
                     filename                              
                    [#:loop? loop?                         
                     #:one-at-a-time? one-at-a-time?       
                     #:last-frame-delay last-frame-delay]) 
 -> void?
  bitmaps : (and/c
              (listof (or/c (is-a?/c bitmap%)
                            (-> (is-a?/c bitmap%))))
              pair?)
  delay-csec : (integer-in 0 4294967295)
  filename : path-string?
  loop? : any/c = (and delay-csec #t)
  one-at-a-time? : any/c = #f
  last-frame-delay : (or/c (integer-in 0 4294967295) #f) = #f
interface
graph-pasteboard<%> : interface?
method
(send a-graph-pasteboard get-arrowhead-params)
 -> number number number
method
(send a-graph-pasteboard on-mouse-over-snips lst) -> void?
  lst : (listof (is-a?/c snip%))
method
(send a-graph-pasteboard set-arrowhead-params angle-width 
                                              short-side  
                                              long-size)  
 -> void?
  angle-width : real?
  short-side : real?
  long-size : real?
method
(send a-graph-pasteboard set-draw-arrow-heads? draw-arrow-heads?)
 -> void?
  draw-arrow-heads? : any/c
method
(send a-graph-pasteboard set-flip-labels? flip-labels?) -> void?
  flip-labels? : any/c
method
(send a-graph-pasteboard draw-edges dc         
                                    left       
                                    top        
                                    right      
                                    bottom     
                                    dx         
                                    dy)    -> void?
  dc : (is-a?/c dc<%>)
  left : real?
  top : real?
  right : real?
  bottom : real?
  dx : real?
  dy : real?
method
(send a-graph-pasteboard draw-single-edge dc               
                                          dx               
                                          dy               
                                          from             
                                          to               
                                          from-x           
                                          from-y           
                                          to-x             
                                          to-y             
                                          arrow-point-ok?) 
 -> void?
  dc : (is-a?/c dc<%>)
  dx : real?
  dy : real?
  from : (is-a?/c graph-snip<%>)
  to : (is-a?/c graph-snip<%>)
  from-x : real?
  from-y : real?
  to-x : real?
  to-y : real?
  arrow-point-ok? : (-> real? real? boolean?)
method
(send a-graph-pasteboard update-arrowhead-polygon from-x  
                                                  from-y  
                                                  to-x    
                                                  to-y    
                                                  point1  
                                                  point2  
                                                  point3  
                                                  point4) 
 -> void?
  from-x : real?
  from-y : real?
  to-x : real?
  to-y : real?
  point1 : (is-a?/c point%)
  point2 : (is-a?/c point%)
  point3 : (is-a?/c point%)
  point4 : (is-a?/c point%)
mixin
graph-pasteboard-mixin : (class? . -> . class?)
  argument extends/implements: pasteboard%
  result implements: graph-pasteboard<%>
constructor
(new graph-pasteboard-mixin                                              
                            [[edge-labels? edge-labels?]                 
                             [edge-label-font edge-label-font]]          
                             [cache-arrow-drawing? cache-arrow-drawing?] 
                             ...superclass-args...)                      
 -> (is-a?/c graph-pasteboard-mixin)
  edge-labels? : boolean? = #t
  edge-label-font : (or/c #f (is-a?/c font%)) = #f
  cache-arrow-drawing? : any
interface
graph-snip<%> : interface?
method
(send a-graph-snip add-child child) -> void?
  child : (is-a?/c graph-snip<%>)
method
(send a-graph-snip add-parent parent) -> void?
  parent : (is-a?/c graph-snip<%>)
(send a-graph-snip add-parent parent               
                              mouse-over-pen       
                              mouse-off-pen        
                              mouse-over-brush     
                              mouse-off-brush) -> void?
  parent : (is-a?/c graph-snip<%>)
  mouse-over-pen : (or/c false/c (is-a?/c pen%))
  mouse-off-pen : (or/c false/c (is-a?/c pen%))
  mouse-over-brush : (or/c false/c (is-a?/c brush%))
  mouse-off-brush : (or/c false/c (is-a?/c brush%))
method
(send a-graph-snip get-children) -> (listof snip%)
method
(send a-graph-snip get-parents) -> (listof graph-snip<%>)
method
(send a-graph-snip remove-child child) -> void?
  child : (is-a?/c graph-snip<%>)
method
(send a-graph-snip remove-parent parent) -> void?
  parent : (is-a?/c graph-snip<%>)
method
(send a-graph-snip set-parent-link-label parent     
                                         label) -> void?
  parent : (is-a?/c graph-snip<%>)
  label : (or/c false/c string/)
mixin
graph-snip-mixin : (class? . -> . class?)
  argument extends/implements: snip%
  result implements: graph-snip<%>
procedure
(add-links parent child) -> void?
  parent : (is-a?/c graph-snip<%>)
  child : (is-a?/c graph-snip<%>)
(add-links parent child) -> void?
  parent : (is-a?/c graph-snip<%>)
  child : (is-a?/c graph-snip<%>)
(add-links  parent          
            child           
            dark-pen        
            light-pen       
            dark-brush      
            light-brush     
           [label])     -> void?
  parent : (is-a?/c graph-snip<%>)
  child : (is-a?/c graph-snip<%>)
  dark-pen : (or/c (is-a?/c pen) false/c)
  light-pen : (or/c (is-a?/c pen) false/c)
  dark-brush : (or/c (is-a?/c brush%) false/c)
  light-brush : (or/c (is-a?/c brush%) false/c)
  label : (or/c string? false/c) = #f
(add-links  parent          
            child           
            dark-pen        
            light-pen       
            dark-brush      
            light-brush     
            dx              
            dy              
           [label])     -> void?
  parent : (is-a?/c graph-snip<%>)
  child : (is-a?/c graph-snip<%>)
  dark-pen : (or/c (is-a?/c pen) false/c)
  light-pen : (or/c (is-a?/c pen) false/c)
  dark-brush : (or/c (is-a?/c brush%) false/c)
  light-brush : (or/c (is-a?/c brush%) false/c)
  dx : real?
  dy : real?
  label : (or/c string? false/c) = #f
procedure
(add-links/text-colors parent          
                       child           
                       dark-pen        
                       light-pen       
                       dark-brush      
                       light-brush     
                       dark-text       
                       light-text      
                       dx              
                       dy              
                       label)      -> void?
  parent : (is-a?/c graph-snip<%>)
  child : (is-a?/c graph-snip<%>)
  dark-pen : (or/c (is-a?/c pen) false/c)
  light-pen : (or/c (is-a?/c pen) false/c)
  dark-brush : (or/c (is-a?/c brush%) false/c)
  light-brush : (or/c (is-a?/c brush%) false/c)
  dark-text : (or/c (is-a?/c color%) false/c)
  light-text : (or/c (is-a?/c color) false/c)
  dx : real?
  dy : real?
  label : (or/c string? false/c)
procedure
(remove-links parent child) -> void?
  parent : (is-a?/c graph-snip<%>)
  child : (is-a?/c graph-snip<%>)
procedure
(set-link-label parent child label) -> void?
  parent : (is-a?/c graph-snip<%>)
  child : (is-a?/c graph-snip<%>)
  label : (or/c string? false/c)
class
hierarchical-list% : class?
  superclass: editor-canvas%
constructor
(new hierarchical-list%                  
                         [parent parent] 
                        [[style style]]) 
 -> (is-a?/c hierarchical-list%)
  parent : (or/c (is-a?/c frame%) (is-a?/c dialog%)
                 (is-a?/c panel%) (is-a?/c pane%))
  style : (listof (one-of/c 'no-border 'control-border 'combo
                            'no-hscroll 'no-vscroll
                            'hide-hscroll 'hide-vscroll
                            'auto-vscroll 'auto-hscroll
                            'resize-corner 'deleted 'transparent))
        = '(no-hscroll)
method
(send a-hierarchical-list get-selected)
 -> (or/c (is-a?/c hierarchical-list-item<%>)
          false/c)
method
(send a-hierarchical-list new-item [mixin])
 -> (is-a?/c hierarchical-list-item<%>)
  mixin : ((implementation?/c hierarchical-list-item<%>)
           . -> .
           (implementation?/c hierarchical-list-item<%>))
        = (lambda (%) %)
method
(send a-hierarchical-list set-no-sublists no-sublists?) -> void?
  no-sublists? : any/c
method
(send a-hierarchical-list new-list [mixin])
 -> (is-a?/c hierarchical-list-compound-item<%>)
  mixin : ((implementation?/c hierarchical-list-compound-item<%>)
           . -> .
           (implementation?/c hierarchical-list-compound-item<%>))
        = (lambda (%) %)
method
(send a-hierarchical-list delete-item i) -> void?
  i : (is-a?/c hierarchical-list-item<%>)
method
(send a-hierarchical-list get-items)
 -> (listof (is-a?/c hierarchical-list-item<%>))
method
(send a-hierarchical-list selectable) -> boolean?
(send a-hierarchical-list selectable on?) -> void?
  on? : any/c
method
(send a-hierarchical-list on-select i) -> any
  i : (or/c (is-a?/c hierarchical-list-item<%>) false/c)
method
(send a-hierarchical-list on-click i) -> any
  i : (is-a?/c hierarchical-list-item<%>)
method
(send a-hierarchical-list on-double-select i) -> any
  i : (is-a?/c hierarchical-list-item<%>)
method
(send a-hierarchical-list on-item-opened i) -> any
  i : (is-a?/c hierarchical-list-compound-item<%>)
method
(send a-hierarchical-list on-item-closed i) -> any
  i : (is-a?/c hierarchical-list-compound-item<%>)
method
(send a-hierarchical-list sort  less-than-proc     
                               [recur?])       -> void?
  less-than-proc : ((is-a?/c hierarchical-list-item<%>)
                    (is-a?/c hierarchical-list-item<%>)
                    . -> . any/c)
  recur? : any/c = #t
method
(send a-hierarchical-list can-do-edit-operation?  op           
                                                 [recursive?]) 
 -> boolean?
  op : symbol?
  recursive? : any/c = #t
method
(send a-hierarchical-list do-edit-operation  op               
                                            [recursive?]) -> void?
  op : symbol?
  recursive? : any/c = #t
method
(send a-hierarchical-list select-prev) -> void?
(send a-hierarchical-list select-next) -> void?
(send a-hierarchical-list select-first) -> void?
(send a-hierarchical-list select-last) -> void?
(send a-hierarchical-list select-in) -> void?
(send a-hierarchical-list select-out) -> void?
(send a-hierarchical-list page-up) -> void?
(send a-hierarchical-list page-down) -> void?
method
(send a-hierarchical-list select i) -> void?
  i : (or/c (is-a?/c hierarchical-list-item<%>) false/c)
method
(send a-hierarchical-list click-select i) -> void?
  i : (or/c (is-a?/c hierarchical-list-item<%>) false/c)
method
(send a-hierarchical-list on-select-always) -> boolean?
(send a-hierarchical-list on-select-always always?) -> void?
  always? : any/c
method
(send a-hierarchical-list on-click-always) -> boolean?
(send a-hierarchical-list on-click-always always?) -> void?
  always? : any/c
method
(send a-hierarchical-list allow-deselect) -> boolean?
(send a-hierarchical-list allow-deselect allow?) -> void?
  allow? : any/c
interface
hierarchical-list-item<%> : interface?
method
(send a-hierarchical-list-item get-editor) -> (is-a?/c text%)
method
(send a-hierarchical-list-item is-selected?) -> boolean?
method
(send a-hierarchical-list-item select on?) -> void?
  on? : any/c
(send a-hierarchical-list-item click-select on?) -> void?
  on? : any/c
method
(send a-hierarchical-list-item user-data) -> any/c
(send a-hierarchical-list-item user-data data) -> void?
  data : any/c
method
(send a-hierarchical-list-item get-clickable-snip)
 -> (is-a?/c snip%)
method
(send a-hierarchical-list-item get-allow-selection?)
 -> boolean?
(send a-hierarchical-list-item set-allow-selection allow?)
 -> void?
  allow? : any/c
method
(send a-hierarchical-list-item get-parent)
 -> (or/c (is-a?/c hierarchical-list-compound-item<%>) #f)
interface
hierarchical-list-compound-item<%> : interface?
  implements: hierarchical-list-item<%>
method
(send a-hierarchical-list-compound-item new-item [mixin])
 -> (is-a?/c hierarchical-list-item<%>)
  mixin : ((implementation?/c hierarchical-list-item<%>)
           . -> .
           (implementation?/c hierarchical-list-item<%>))
        = (lambda (%) %)
method
(send a-hierarchical-list-compound-item set-no-sublists no-sublists?)
 -> void?
  no-sublists? : any/c
method
(send a-hierarchical-list-compound-item new-list [mixin])
 -> (is-a?/c hierarchical-list-compound-item<%>)
  mixin : ((implementation?/c hierarchical-list-compound-item<%>)
           . -> .
           (implementation?/c hierarchical-list-compound-item<%>))
        = (lambda (%) %)
method
(send a-hierarchical-list-compound-item delete-item i) -> void?
  i : (is-a?/c hierarchical-list-item<%>)
method
(send a-hierarchical-list-compound-item get-items)
 -> (listof (is-a?/c hierarchical-list-item<%>))
method
(send a-hierarchical-list-compound-item open) -> void?
(send a-hierarchical-list-compound-item close) -> void?
(send a-hierarchical-list-compound-item toggle-open/closed)
 -> void?
method
(send a-hierarchical-list-compound-item is-open?) -> boolean?
method
(send a-hierarchical-list-compound-item get-arrow-snip)
 -> (is-a?/c snip%)
class
hierarchical-item-snip% : class?
  superclass: editor-snip%
method
(send a-hierarchical-item-snip get-item)
 -> (is-a?/c hierarchical-list-item<%>)
class
hierarchical-list-snip% : class?
  superclass: editor-snip%
method
(send a-hierarchical-list-snip get-item)
 -> (is-a?/c hierarchical-list-compound-item<%>)
method
(send a-hierarchical-list-snip get-content-buffer)
 -> (is-a?/c text%)
syntax
(include-bitmap path-spec)
(include-bitmap path-spec type-expr)
syntax
(include-bitmap/relative-to source path-spec)
(include-bitmap/relative-to source path-spec [type-expr])
procedure
(set-interactive-display-handler port) -> void?
  port : output-port?
procedure
(set-interactive-write-handler port) -> void?
  port : output-port?
procedure
(set-interactive-print-handler port) -> void?
  port : output-port?
class
name-message% : class?
  superclass: canvas%
constructor
(new name-message% ...superclass-args...)
 -> (is-a?/c name-message%)
method
(send a-name-message on-choose-directory dir) -> void?
  dir : path-string?
method
(send a-name-message on-event event) -> void?
  event : (is-a?/c mouse-event%)
method
(send a-name-message on-paint) -> void?
method
(send a-name-message set-hidden? hidden?) -> void?
  hidden? : any/c
method
(send a-name-message set-message file-name?     
                                 msg)       -> void?
  file-name? : any/c
  msg : (if filename? path-string? string?)
method
(send a-name-message set-short-title short-title?) -> void?
  short-title? : boolean?
method
(send a-name-message fill-popup menu reset) -> any
  menu : (is-a?/c popup-menu%)
  reset : (-> void?)
method
(send a-name-message get-background-color)
 -> (or/c #f (is-a/c color%) string?)
method
(send a-name-message set-allow-shrinking width) -> void?
  width : (or/c #f number?)
procedure
(calc-button-min-sizes dc str [font]) -> real? real?
  dc : (is-a?/c dc<%>)
  str : string?
  font : (or/c #f (is-a?/c font%)) = #f
procedure
(draw-button-label dc              
                   str             
                   dx              
                   dy              
                   width           
                   height          
                   mouse-over?     
                   grabbed?        
                   font            
                   background) -> void?
  dc : (is-a?/c dc<%>)
  str : string?
  dx : real?
  dy : real?
  width : real?
  height : real?
  mouse-over? : boolean?
  grabbed? : boolean?
  font : (is-a?/c font%)
  background : (or/c (is-a?/c color%) string? #f)
procedure
(pad-xywh tx ty tw th) -> number? number? (>=/c 0) (>=/c 0)
  tx : number?
  ty : number?
  tw : (>=/c 0)
  th : (>=/c 0)
class
path-dialog% : class?
  superclass: dialog%
constructor
(new path-dialog%                          
                  [[label label]           
                   [message message]       
                   [parent parent]         
                   [directory directory]   
                   [filename filename]     
                   [put? put?]             
                   [dir? dir?]             
                   [existing? existing?]   
                   [new? new?]             
                   [multi? multi?]         
                   [can-mkdir? can-mkdir?] 
                   [filters filters]       
                   [show-file? show-file?] 
                   [show-dir? show-dir?]   
                   [ok? ok?]               
                   [guard guard]])         
 -> (is-a?/c path-dialog%)
  label : (or/c label-string? false/c) = #f
  message : (or/c label-string? false/c) = #f
  parent : (or/c (is-a?/c frame%) (is-a?/c dialog%) false/c)
         = #f
  directory : (or/c path-string? false/c) = #f
  filename : (or/c path-string? false/c) = #f
  put? : any/c = #f
  dir? : any/c = #f
  existing? : any/c = (not put?)
  new? : any/c = #f
  multi? : any/c = #f
  can-mkdir? : any/c = put?
  filters : (or/c (listof (list string? string?)) = #t
                  (one-of/c #f #t))
  show-file? : (or/c (path? . -> . any) false/c) = #f
  show-dir? : (or/c (path? . -> . any) false/c) = #f
  ok? : (or/c (path? . -> . any) false/c) = #f
  guard : (or/c (path? . -> . any) false/c) = #f
method
(send a-path-dialog run) -> any/c
struct
(struct data-set (points connected? pen min-x max-x min-y max-y)
        #:extra-constructor-name make-data-set)
  points : (listof (is-a?/c point%))
  connected? : any/c
  pen : (is-a?/c pen%)
  min-x : real?
  max-x : real?
  min-y : real?
  max-y : real?
struct
(struct plot-setup                                (axis-label-font
                                                  axis-number-font
                                                  axis-pen
                                                  grid?
                                                  grid-pen
                                                  x-axis-marking
                                                  y-axis-marking
                                                  x-axis-label
                                                  y-axis-label)
        #:extra-constructor-name make-plot-setup)
  axis-label-font : (is-a?/c font%)
  axis-number-font : (is-a?/c font%)
  axis-pen : (is-a?/c pen)
  grid? : any/c
  grid-pen : (is-a?/c pen)
  x-axis-marking : (listof real?)
  y-axis-marking : (listof real?)
  x-axis-label : string?
  y-axis-label : string?
procedure
(plot dc data setup) -> void?
  dc : (is-a?/c dc<%>)
  data : (listof data-set?)
  setup : plot-setup?
class
switchable-button% : class?
  superclass: canvas%
constructor
(new switchable-button%                                                         
                         [label label]                                          
                         [bitmap bitmap]                                        
                         [callback callback]                                    
                        [[alternate-bitmap alternate-bitmap]                    
                         [vertical-tight? vertical-tight?]                      
                         [min-width-includes-label? min-width-includes-label?]] 
                         ...superclass-args...)                                 
 -> (is-a?/c switchable-button%)
  label : (or/c string? (is-a?/c bitmap%) #f)
  bitmap : (is-a?/c bitmap%)
  callback : (-> (is-a?/c switchable-button%) any/c)
  alternate-bitmap : (is-a?/c bitmap%) = bitmap
  vertical-tight? : boolean? = #f
  min-width-includes-label? : boolean? = #f
method
(send a-switchable-button set-label-visible visible?) -> void?
  visible? : boolean?
method
(send a-switchable-button command) -> void?
method
(send a-switchable-button get-button-label) -> string?
method
(send a-switchable-button get-large-width)
 -> exact-nonnegative-integer?
method
(send a-switchable-button get-small-width)
 -> exact-nonnegative-integer?
method
(send a-switchable-button get-without-label-small-width)
 -> exact-nonnegative-integer?
procedure
(render-image image dc dx dy) -> void?
  image : image?
  dc : (is-a?/c dc<%>)
  dx : real?
  dy : real?
procedure
(image? v) -> boolean?
  v : any/c
procedure
(un/cache-image image b) -> image?
  image : image?
  b : any/c
procedure
(compute-image-cache image) -> void?
  image : image?
class
visible-matrix% : class?
  superclass: cache-image-snip%
value
tex-shortcut-table : (listof
                       (list/c string?
                               (lambda (x)
                                 (and (string? x)
                                      (= (string-length x)
                                         1)))))
procedure
(in-terminal  doit                                  
             [#:container container                 
              #:cleanup-thunk cleanup-thunk         
              #:title title                         
              #:abort-label abort-label             
              #:aborted-message aborted-message     
              #:canvas-min-width canvas-min-width   
              #:canvas-min-height canvas-min-height 
              #:close-button? close-button?         
              #:close-label close-label])           
 -> (is-a?/c terminal<%>)
  doit : (-> eventspace?
             (or/c (is-a?/c top-level-window<%>) #f)
             void?)
  container : (or/c #f (is-a?/c area-container<%>)) = #f
  cleanup-thunk : (-> void?) = void
  title : string? = "mrlib/terminal"
  abort-label : string?
              = (string-constant plt-installer-abort-installation)
  aborted-message : string?
                  = (string-constant plt-installer-aborted)
  canvas-min-width : (or/c #f (integer-in 0 10000)) = #f
  canvas-min-height : (or/c #f (integer-in 0 10000)) = #f
  close-button? : boolean? = #t
  close-label : string? = (string-constant close)
parameter
(on-terminal-run) -> (-> void?)
(on-terminal-run run) -> void?
  run : (-> void?)
interface
terminal<%> : interface?
method
(send a-terminal is-closed?) -> boolean?
method
(send a-terminal close) -> void?
method
(send a-terminal can-close?) -> boolean?
method
(send a-terminal can-close-evt) -> evt?
method
(send a-terminal get-button-panel)
 -> (is-a?/c horizontal-panel%)
