From 5750e2f03e00754b2eae28b20cfbed23f736d1b7 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Wed, 20 Feb 2002 22:34:19 +0000 Subject: [PATCH] ... original commit: 1e27c30b095db83eb8d8a5c0a8e1644967bfc0c1 --- collects/framework/private/editor.ss | 28 +++++++++++++++++++--------- collects/framework/private/frame.ss | 2 +- collects/framework/private/group.ss | 3 ++- 3 files changed, 22 insertions(+), 11 deletions(-) diff --git a/collects/framework/private/editor.ss b/collects/framework/private/editor.ss index ecadb338..8769206c 100644 --- a/collects/framework/private/editor.ss +++ b/collects/framework/private/editor.ss @@ -45,17 +45,27 @@ (inherit get-filename save-file) (define/public save-file/gui-error - (opt-lambda ([filename #f] + (opt-lambda ([input-filename #f] [fmt 'same] [show-errors? #t]) - (let ([result (save-file filename fmt #f)]) - (unless result - (when show-errors? - (message-box - (string-constant error-saving) - (format (string-constant error-saving-file/name) - (get-filename))))) - result))) + (let ([filename (if (or (not input-filename) + (equal? input-filename "")) + (let ([internal-filename (get-filename)]) + (if (or (not internal-filename) + (equal? internal-filename "")) + (get-file) + internal-filename)) + input-filename)]) + (if filename + (let ([result (save-file filename fmt #f)]) + (unless result + (when show-errors? + (message-box + (string-constant error-saving) + (format (string-constant error-saving-file/name) + filename)))) + result) + #f)))) (inherit refresh-delayed? get-canvas diff --git a/collects/framework/private/frame.ss b/collects/framework/private/frame.ss index 2f6b33d6..0759eab4 100644 --- a/collects/framework/private/frame.ss +++ b/collects/framework/private/frame.ss @@ -154,7 +154,7 @@ (super-instantiate ()) (accept-drop-files #t) - (make-object menu% (string-constant windows-menu-label) + (make-object menu:can-restore-underscore-menu% (string-constant windows-menu-label) (make-object (get-menu-bar%) this)) (reorder-menus this) (send (group:get-the-frame-group) insert-frame this) diff --git a/collects/framework/private/group.ss b/collects/framework/private/group.ss index df1acb90..9d4afb16 100644 --- a/collects/framework/private/group.ss +++ b/collects/framework/private/group.ss @@ -43,7 +43,8 @@ (and menu-bar (let ([menus (send menu-bar get-items)]) (ormap (lambda (x) - (if (string=? (string-constant windows-menu-label) (send x get-label)) + (if (string=? (string-constant windows-menu) + (send x get-plain-label)) x #f)) menus)))))]