added a separate debugger callback, instead of overriding execute-callback
svn: r10695
This commit is contained in:
parent
e957b25ff1
commit
f65e0ffeb1
|
@ -1055,20 +1055,31 @@
|
|||
(when (not (string=? msg (send mouse-over-message get-label)))
|
||||
(send mouse-over-message set-label msg)))
|
||||
|
||||
(define/override execute-callback
|
||||
(lambda ()
|
||||
(let* ([tab (get-current-tab)])
|
||||
(define/public (debug-callback)
|
||||
(let ([tab (get-current-tab)])
|
||||
(cond
|
||||
[(eq? tab (send tab get-master))
|
||||
(set! debug? #t)
|
||||
(send (get-current-tab) prepare-execution debug?)
|
||||
(set! debug? #f)
|
||||
(execute-callback)]
|
||||
[else
|
||||
(already-debugging tab)])))
|
||||
|
||||
(define/override (execute-callback)
|
||||
(let ([tab (get-current-tab)])
|
||||
(cond
|
||||
[(eq? tab (send tab get-master))
|
||||
(super execute-callback)]
|
||||
[else
|
||||
(already-debugging tab)])))
|
||||
|
||||
(define/private (already-debugging tab)
|
||||
(message-box
|
||||
"Message from Debugger"
|
||||
"Debugger"
|
||||
(format "This file is involved in a debugging session. To run/debug this file, finish the session for ~a and close or re-run it."
|
||||
(send (send (send tab get-master) get-defs) get-filename/untitled-name))
|
||||
this '(ok))]))))
|
||||
this '(ok)))
|
||||
|
||||
(define expr-positions empty)
|
||||
(define expr-lengths empty)
|
||||
|
@ -1263,7 +1274,7 @@
|
|||
(label (string-constant debug-tool-button-name))
|
||||
(bitmap debug-bitmap)
|
||||
(parent (make-object vertical-pane% (get-button-panel)))
|
||||
(callback (λ (button) (set! debug? #t) (execute-callback)))))
|
||||
(callback (λ (button) (debug-callback)))))
|
||||
(inherit register-toolbar-button)
|
||||
(register-toolbar-button debug-button)
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user