original commit: 71a526e26e42529d25f7d71334c8fc6fc7cd9d78
This commit is contained in:
Robby Findler 1998-09-20 21:21:45 +00:00
parent c79e459f7b
commit bea54536e0
4 changed files with 30 additions and 26 deletions

View File

@ -19,9 +19,9 @@
(define make-basic%
(mixin (editor<%>) (basic<%>) args
(inherit modified? get-filename save-file
(inherit get-filename save-file
refresh-delayed?
get-frame
get-canvas
get-keymap
get-max-width get-admin set-filename)
(rename [super-set-modified set-modified]
@ -39,8 +39,9 @@
[show-dialog? #t])
(let ([filename (or filename
(parameterize ([finder:dialog-parent-parameter
(or (get-frame)
#f)])
(let ([canvas (get-canvas)])
(and canvas
(send canvas get-top-level-window)))])
(finder:get-file)))])
(and filename
(if (file-exists? filename)
@ -142,15 +143,15 @@
(public
[get-file (lambda (d)
(let ([v (parameterize ([finder:dialog-parent-parameter
(or (get-frame)
null)])
(and (get-canvas)
(send (get-canvas) get-top-level-window))])
(finder:get-file d))])
(if v
v
null)))]
[put-file (lambda (d f) (let ([v (parameterize ([finder:dialog-parent-parameter
(or (get-frame)
null)])
(and (get-canvas)
(send (get-canvas) get-top-level-window))])
(finder:put-file f d))])
(if v
v
@ -167,9 +168,9 @@
(define file<%> (interface (basic<%>)))
(define make-file%
(mixin (basic<%>) (file<%>) args
(inherit get-keymap find-snip
(inherit get-keymap
get-filename lock get-style-list
modified? change-style set-modified
is-modified? change-style set-modified
get-frame)
(rename [super-after-save-file after-save-file]
[super-after-load-file after-load-file])
@ -217,7 +218,7 @@
; opened?
(define make-backup-autosave%
(mixin (basic<%>) (backup-autosave<%>) args
(inherit modified? get-filename save-file)
(inherit is-modified? get-filename save-file)
(rename [super-on-save-file on-save-file]
[super-on-change on-change]
[super-do-close do-close]
@ -271,7 +272,7 @@
(lambda ()
(when (and auto-save?
(not auto-save-error?)
(modified?)
(is-modified?)
(or (not auto-saved-name)
auto-save-out-of-date?))
(let* ([orig-name (get-filename)]
@ -320,7 +321,8 @@
(define make-clever-file-format%
(mixin (editor<%>) (editor<%>) args
(inherit get-file-format set-file-format find-snip)
(inherit get-file-format set-file-format ;find-first-snip wx:
)
(rename [super-on-save-file on-save-file]
[super-after-save-file after-save-file])
@ -332,12 +334,14 @@
(restore-file-format)
(super-after-save-file success))]
[on-save-file
(let ([has-non-text-snips
(let ([has-non-string-snips
(lambda ()
(let loop ([s (find-snip 0 'after)])
(let loop ([s (if (is-a? this pasteboard%)
(send this find-first-snip)
(send this find-snip 0 'after))]) ;; wx:
(cond
[(null? s) #f]
[(is-a? s text-snip%)
[(is-a? s string-snip%)
(loop (send s next))]
[else #t])))])
(lambda (name format)
@ -353,7 +357,7 @@
(set! restore-file-format void)
(set-file-format f))))
(set-file-format 'std)]
[(and (has-non-text-snips)
[(and (has-non-string-snips)
(or (not (preferences:get 'framework:verify-change-format))
(gui-utils:get-choice "Save this file as plain text?" "No" "Yes")))
(set-file-format 'std)]

View File

@ -1222,7 +1222,7 @@
(lambda ()
(let* ([edit (get-editor)]
[user-allowed-or-not-modified
(or (not (send edit modified?))
(or (not (send edit is-modified?))
(case (gui-utils:unsaved-warning
(let ([fn (send edit get-filename)])
(if (string? fn)

View File

@ -156,7 +156,7 @@
(cond
[(<= end pos) eof]
[(not snip) eof]
[(is-a? snip text-snip%)
[(is-a? snip string-snip%)
(let ([t (send snip get-text (- pos (unbox box)) 1)])
(unless (= (string-length t) 1)
(error 'read-snips/chars-from-buffer

View File

@ -24,8 +24,8 @@
(inherit canvases get-max-width get-admin split-snip get-snip-position
delete find-snip invalidate-bitmap-cache
set-autowrap-bitmap get-keymap mode set-mode-direct
set-file-format get-file-format get-frame
get-style-list modified? change-style set-modified
set-file-format get-file-format
get-style-list is-modified? change-style set-modified
position-location get-extent)
(private
@ -262,7 +262,7 @@
[on-change-style
(lambda (start len)
(when styles-fixed?
(set! styles-fixed-edit-modified? (modified?)))
(set! styles-fixed-edit-modified? (is-modified?)))
(super-on-change-style start len))]
[after-insert
(lambda (start len)
@ -423,7 +423,7 @@
(define make-info%
(mixin (editor:basic<%> text<%>) (editor:basic<%> text<%>) args
(inherit get-frame get-start-position get-end-position
(inherit get-start-position get-end-position get-canvas
run-after-edit-sequence)
(rename [super-after-set-position after-set-position]
[super-after-edit-sequence after-edit-sequence]
@ -438,9 +438,9 @@
(run-after-edit-sequence
(rec from-enqueue-for-frame
(lambda ()
(let ([frame (get-frame)])
(when frame
((ivar/proc frame ivar-sym))))))
(let ([canvas (get-canvas)])
(when canvas
((ivar/proc (send canvas get-top-level-window) ivar-sym))))))
tag))])
(override
[set-anchor