added yet one more hook to traces/ps

svn: r13236
This commit is contained in:
Robby Findler 2009-01-20 15:31:02 +00:00
parent fce7b22e64
commit 5d7429c25e
3 changed files with 12 additions and 4 deletions

View File

@ -55,7 +55,8 @@
#:edge-label-font (or/c #f (is-a?/c font%))
#:edge-labels? boolean?
#:filter (-> any/c (or/c #f string?) any/c)
#:graph-pasteboard-mixin (make-mixin-contract graph-pasteboard<%>))
#:graph-pasteboard-mixin (make-mixin-contract graph-pasteboard<%>)
#:post-process (-> (is-a?/c graph-pasteboard<%>) any/c))
any)]
[term-node? (-> any/c boolean?)]

View File

@ -135,7 +135,8 @@
#:edge-label-font [edge-label-font #f]
#:edge-labels? [edge-labels? #t]
#:graph-pasteboard-mixin [extra-graph-pasteboard-mixin values]
#:filter [term-filter (lambda (x y) #t)])
#:filter [term-filter (lambda (x y) #t)]
#:post-process [post-process void])
(let-values ([(graph-pb canvas)
(traces reductions pre-exprs
#:no-show-frame? #t
@ -149,6 +150,7 @@
#:edge-labels? edge-labels?
#:graph-pasteboard-mixin extra-graph-pasteboard-mixin
#:filter term-filter)])
(post-process graph-pb)
(print-to-ps graph-pb canvas filename)))
(define (print-to-ps graph-pb canvas filename)

View File

@ -1267,12 +1267,17 @@ inserted into the editor by this library have a
[#:layout layout (-> (listof term-node?) void) void]
[#:edge-labels? edge-label-font boolean? #t]
[#:edge-label-font edge-label-font (or/c #f (is-a?/c font%)) #f]
[#:graph-pasteboard-mixin graph-pasteboard-mixin (make-mixin-contract graph-pasteboard<%>) values])
[#:graph-pasteboard-mixin graph-pasteboard-mixin (make-mixin-contract graph-pasteboard<%>) values]
[#:post-process post-process (-> (is-a?/c graph-pasteboard<%>) any/c)])
void?]{
The arguments behave just like the function @scheme[traces], but
This function behaves just like the function @scheme[traces], but
instead of opening a window to show the reduction graph, it just saves
the reduction graph to the specified @scheme[file].
All of the arguments behave like the arguments to @scheme[traces],
with the exception of the @scheme[post-process] argument. It is called
just before the PostScript is created with the graph pasteboard.
}
@defproc[(stepper [reductions reduction-relation?]