PR 9471
svn: r10199
This commit is contained in:
parent
dc47e25c44
commit
9120268b36
|
@ -645,12 +645,41 @@ profile todo:
|
||||||
(values text
|
(values text
|
||||||
(λ () (send text on-close)))
|
(λ () (send text on-close)))
|
||||||
(values #f (λ () (void)))))]
|
(values #f (λ () (void)))))]
|
||||||
|
[(path? file)
|
||||||
|
(let ([file (with-handlers ((exn:fail? (λ (x) #f)))
|
||||||
|
(normal-case-path (normalize-path file)))])
|
||||||
|
(if file
|
||||||
|
(cond
|
||||||
|
[(send (group:get-the-frame-group)
|
||||||
|
locate-file
|
||||||
|
file)
|
||||||
|
=>
|
||||||
|
(λ (frame)
|
||||||
|
(cond
|
||||||
|
[(is-a? frame drscheme:unit:frame%)
|
||||||
|
(let loop ([tabs (send frame get-tabs)])
|
||||||
|
(cond
|
||||||
|
[(null? tabs) (values #f void)]
|
||||||
|
[else
|
||||||
|
(let* ([tab (car tabs)]
|
||||||
|
[defs (send tab get-defs)])
|
||||||
|
(if (with-handlers ((exn:fail? (λ (x) #f)))
|
||||||
|
(equal? (normalize-path (normal-case-path (send defs get-filename)))
|
||||||
|
file))
|
||||||
|
(values defs void)
|
||||||
|
(loop (cdr tabs))))]))]
|
||||||
|
[(is-a? frame frame:editor<%>)
|
||||||
|
(values (send frame get-editor) void)]
|
||||||
|
[else (values #f void)]))]
|
||||||
[(path? file)
|
[(path? file)
|
||||||
(let ([text (new text:basic%)])
|
(let ([text (new text:basic%)])
|
||||||
(if (send text load-file file)
|
(if (send text load-file file)
|
||||||
(values text
|
(values text
|
||||||
(λ () (send text on-close)))
|
(λ () (send text on-close)))
|
||||||
(values #f (λ () (void)))))]
|
(values #f (λ () (void)))))]
|
||||||
|
[else
|
||||||
|
(values #f void)])
|
||||||
|
(values #f void)))]
|
||||||
[(is-a? file editor<%>)
|
[(is-a? file editor<%>)
|
||||||
(values file void)]
|
(values file void)]
|
||||||
[else (error 'insert-context "unknown file spec ~e" file)])])
|
[else (error 'insert-context "unknown file spec ~e" file)])])
|
||||||
|
|
|
@ -1173,7 +1173,8 @@ module browser threading seems wrong.
|
||||||
ensure-defs-shown
|
ensure-defs-shown
|
||||||
|
|
||||||
get-language-menu
|
get-language-menu
|
||||||
register-toolbar-button))
|
register-toolbar-button
|
||||||
|
get-tabs))
|
||||||
|
|
||||||
(define frame-mixin
|
(define frame-mixin
|
||||||
(mixin (drscheme:frame:<%> frame:searchable-text<%> frame:delegate<%> frame:open-here<%>)
|
(mixin (drscheme:frame:<%> frame:searchable-text<%> frame:delegate<%> frame:open-here<%>)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user