From 97c76cde32d563d93c72a707d8b9f635c67f8542 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Sat, 22 Nov 2003 15:54:06 +0000 Subject: [PATCH] .. original commit: a0d2a999339aa78d03d9ecb190b4ddc2cd67706b --- collects/framework/private/editor.ss | 9 ++++++--- collects/framework/private/preferences.ss | 7 +++++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/collects/framework/private/editor.ss b/collects/framework/private/editor.ss index 2df16339..98350929 100644 --- a/collects/framework/private/editor.ss +++ b/collects/framework/private/editor.ss @@ -9,7 +9,8 @@ "../macro.ss" (lib "etc.ss") (lib "mred-sig.ss" "mred") - (lib "file.ss")) + (lib "file.ss") + (lib "list.ss")) (provide editor@) @@ -375,7 +376,7 @@ [(eq? (system-type) 'unix) (lambda () (get-face-list))] [else - (let ([compute-ans + (let ([compute-fixed-faces (lambda () (let* ([canvas (make-object canvas% (make-object frame% "bogus"))] [dc (send canvas get-dc)]) @@ -393,7 +394,9 @@ [ans #f]) (lambda () (unless ans - (set! ans (compute-ans))) + (set! ans (compute-fixed-faces)) + (set! ans (cons (get-family-builtin-face 'modern) + (remove (get-family-builtin-face 'modern) ans)))) ans))])) (define -keymap<%> (interface (basic<%>) get-keymaps)) diff --git a/collects/framework/private/preferences.ss b/collects/framework/private/preferences.ss index 52c64d2b..04e0ccb9 100644 --- a/collects/framework/private/preferences.ss +++ b/collects/framework/private/preferences.ss @@ -140,7 +140,14 @@ (hash-table-get defaults p (lambda () (k #f))) #t)) + ;; set : symbol any -> void + ;; updates the preference `p' and records it as changed (define (set p value) + (raw-set p value)) + + ;; raw-set : symbol any -> void + ;; updates the preference, but without recording it as changed + (define (raw-set p value) (let* ([pref (hash-table-get preferences p (lambda () #f))]) (unless (default-set? p) (error 'preferences:set "tried to set a preference but no default set for ~e, with ~e"