15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
(dialog
(let ((pause #f)
(mtrx (matrix
#:expand "YES"
#:numlin 30
#:numcol 3
#:numlin-visible 20
#:numcol-visible 3
)))
(set! pause (button "Pause"
#:action (lambda (obj)
(set! *debugger-control* (not *debugger-control*))
(attribute-set! pause "BGCOLOR" (if *debugger-control*
"200 0 0"
"0 0 200")))))
(set! *debugger-matrix* mtrx)
(attribute-set! mtrx "WIDTH1" "200")
(vbox
mtrx
(hbox
pause)))))
(main-loop)))))))
(define (debugger-start #!key (start 1))
(set! *debugger-rownum* start))
(define (debugger-trace-var varname varval)
(let ((oldval (attribute *debugger-matrix* (conc *debugger-rownum* ":1")))
(newval (conc varval)))
(if (not (equal? oldval newval))
(begin
|
|
>
|
|
|
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
(dialog
(let ((pause #f)
(mtrx (matrix
#:expand "YES"
#:numlin 30
#:numcol 3
#:numlin-visible 20
#:numcol-visible 2
#:alignment1 "ALEFT"
)))
(set! pause (button "Pause"
#:action (lambda (obj)
(set! *debugger-control* (not *debugger-control*))
(attribute-set! pause "BGCOLOR" (if *debugger-control*
"200 0 0"
"0 0 200")))))
(set! *debugger-matrix* mtrx)
(attribute-set! mtrx "WIDTH1" "300")
(vbox
mtrx
(hbox
pause)))))
(main-loop)))))))
(define (debugger-start #!key (start 2))
(set! *debugger-rownum* start))
(define (debugger-trace-var varname varval)
(let ((oldval (attribute *debugger-matrix* (conc *debugger-rownum* ":1")))
(newval (conc varval)))
(if (not (equal? oldval newval))
(begin
|
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
(attribute-set! *debugger-matrix* "REDRAW" "ALL")
(let loop ()
(if *debugger-control*
(begin
(print "PAUSED!")
(thread-sleep! 1)
(loop))
(thread-sleep! 0.01))))
;; ;; lets use the debugger eh?
;; (debugger-start)
;; (debugger-trace-var "can-run-more" can-run-more)
;; (debugger-trace-var "hed" hed)
;; (debugger-trace-var "prereqs-not-met" (runs:pretty-string prereqs-not-met))
;; (debugger-pauser)
|
|
>
|
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
(attribute-set! *debugger-matrix* "REDRAW" "ALL")
(let loop ()
(if *debugger-control*
(begin
(print "PAUSED!")
(thread-sleep! 1)
(loop))
;;(thread-sleep! 0.01)
)))
;; ;; lets use the debugger eh?
;; (debugger-start)
;; (debugger-trace-var "can-run-more" can-run-more)
;; (debugger-trace-var "hed" hed)
;; (debugger-trace-var "prereqs-not-met" (runs:pretty-string prereqs-not-met))
;; (debugger-pauser)
|