From bea54536e0dab4be78626df459beb4cda16ee98d Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Sun, 20 Sep 1998 21:21:45 +0000 Subject: [PATCH] ... original commit: 71a526e26e42529d25f7d71334c8fc6fc7cd9d78 --- collects/framework/editor.ss | 38 +++++++++++++++++++--------------- collects/framework/frame.ss | 2 +- collects/framework/guiutils.ss | 2 +- collects/framework/text.ss | 14 ++++++------- 4 files changed, 30 insertions(+), 26 deletions(-) diff --git a/collects/framework/editor.ss b/collects/framework/editor.ss index 1d4891f6..fd642d4d 100644 --- a/collects/framework/editor.ss +++ b/collects/framework/editor.ss @@ -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)] diff --git a/collects/framework/frame.ss b/collects/framework/frame.ss index 863ab6b6..0b7774fa 100644 --- a/collects/framework/frame.ss +++ b/collects/framework/frame.ss @@ -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) diff --git a/collects/framework/guiutils.ss b/collects/framework/guiutils.ss index 3771a2f4..838f499e 100644 --- a/collects/framework/guiutils.ss +++ b/collects/framework/guiutils.ss @@ -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 diff --git a/collects/framework/text.ss b/collects/framework/text.ss index dec74634..28a1e469 100644 --- a/collects/framework/text.ss +++ b/collects/framework/text.ss @@ -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