added front-end/finished-complete-program
svn: r11084
This commit is contained in:
parent
4b06568982
commit
7d8d1bc37b
|
@ -49,6 +49,7 @@
|
||||||
|
|
||||||
(define lang%
|
(define lang%
|
||||||
(class* object% (drscheme:language:language<%>)
|
(class* object% (drscheme:language:language<%>)
|
||||||
|
(define/public (front-end/finished-complete-program settings) (void))
|
||||||
(define/public (extra-repl-information settings port) (void))
|
(define/public (extra-repl-information settings port) (void))
|
||||||
(define/public (get-reader-module) #f)
|
(define/public (get-reader-module) #f)
|
||||||
(define/public (get-metadata a b) #f)
|
(define/public (get-metadata a b) #f)
|
||||||
|
|
|
@ -42,6 +42,7 @@
|
||||||
default-settings?
|
default-settings?
|
||||||
|
|
||||||
front-end/complete-program
|
front-end/complete-program
|
||||||
|
front-end/finished-complete-program
|
||||||
front-end/interaction
|
front-end/interaction
|
||||||
config-panel
|
config-panel
|
||||||
on-execute
|
on-execute
|
||||||
|
@ -480,6 +481,9 @@
|
||||||
(inherit get-module get-transformer-module use-namespace-require/copy-from-setting?
|
(inherit get-module get-transformer-module use-namespace-require/copy-from-setting?
|
||||||
get-init-code use-mred-launcher get-reader)
|
get-init-code use-mred-launcher get-reader)
|
||||||
|
|
||||||
|
(define/public (front-end/finished-complete-program settings) (void))
|
||||||
|
(define/public (module-based-language->language-mixin settings) (void))
|
||||||
|
|
||||||
(define/pubment (capability-value s)
|
(define/pubment (capability-value s)
|
||||||
(inner (get-capability-default s) capability-value s))
|
(inner (get-capability-default s) capability-value s))
|
||||||
|
|
||||||
|
|
|
@ -1103,6 +1103,8 @@ TODO
|
||||||
(update-running #f)
|
(update-running #f)
|
||||||
(cleanup)
|
(cleanup)
|
||||||
(flush-output (get-value-port))
|
(flush-output (get-value-port))
|
||||||
|
(when complete-program?
|
||||||
|
(send lang front-end/finished-complete-program settings))
|
||||||
(queue-system-callback/sync
|
(queue-system-callback/sync
|
||||||
(get-user-thread)
|
(get-user-thread)
|
||||||
(λ () ; =Kernel=, =Handler=
|
(λ () ; =Kernel=, =Handler=
|
||||||
|
|
|
@ -430,6 +430,7 @@
|
||||||
(define (java-lang-mixin level name number one-line dyn? manual-dirname)
|
(define (java-lang-mixin level name number one-line dyn? manual-dirname)
|
||||||
(when dyn? (dynamic? #t))
|
(when dyn? (dynamic? #t))
|
||||||
(class* object% (drscheme:language:language<%>)
|
(class* object% (drscheme:language:language<%>)
|
||||||
|
(define/public (front-end/finished-complete-program settings) (void))
|
||||||
(define/public (extra-repl-information settings port) (void))
|
(define/public (extra-repl-information settings port) (void))
|
||||||
(define/public (get-reader-module) #f)
|
(define/public (get-reader-module) #f)
|
||||||
(define/public (get-metadata a b) #f)
|
(define/public (get-metadata a b) #f)
|
||||||
|
|
|
@ -682,19 +682,36 @@ or
|
||||||
and the use of the expanded code dictates which applies.
|
and the use of the expanded code dictates which applies.
|
||||||
|
|
||||||
See also
|
See also
|
||||||
@method[drscheme:language:language<%> front-end/interaction].
|
@method[drscheme:language:language<%> front-end/interaction]
|
||||||
|
and
|
||||||
|
@method[drscheme:language:language<%> front-end/finished-complete-program].
|
||||||
|
}
|
||||||
|
|
||||||
|
@defmethod[(front-end/finished-complete-program [settings settings]) any]{
|
||||||
|
This method is called when @onscreen{Run} is clicked, but only after
|
||||||
|
@method[drscheme:language:language<%> front-end/complete-program]
|
||||||
|
has been called. Specifically,
|
||||||
|
@method[drscheme:language:language<%> front-end/complete-program] is
|
||||||
|
first called to get a thunk that reads from the program. That thunk
|
||||||
|
is called some number of times, eventually returning @scheme[eof-object],
|
||||||
|
or raising an exception. Then, this method is called.
|
||||||
|
|
||||||
|
This method is called on the user's main eventspace thread, and without
|
||||||
|
a prompt or other control delimiter. It must return without raising an
|
||||||
|
error, or else the DrScheme window will be wedged.
|
||||||
}
|
}
|
||||||
|
|
||||||
@defmethod[(front-end/interaction [port input-port]
|
@defmethod[(front-end/interaction [port input-port]
|
||||||
[settings settings])
|
[settings settings])
|
||||||
(-> (or/c sexp/c syntax? eof-object?))]{
|
(-> (or/c sexp/c syntax? eof-object?))]{
|
||||||
This method is just like
|
This method is just like
|
||||||
@method[drscheme:language:language<%> front-end/complete-program] except that it is called with program fragments,
|
@method[drscheme:language:language<%> front-end/complete-program]
|
||||||
for example the expressions entered in the interactions
|
except that it is called with program fragments, for example the
|
||||||
window. It is also used in other contexts by
|
expressions entered in the interactions window. It is also used in
|
||||||
tools to expand single expressions.
|
other contexts by tools to expand single expressions.
|
||||||
|
|
||||||
|
See also
|
||||||
|
@method[drscheme:langauge:language<%> front-end/finished-complete-program].
|
||||||
}
|
}
|
||||||
|
|
||||||
@defmethod[(get-comment-character)
|
@defmethod[(get-comment-character)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user