From 16e6a8156e135805f1278b5009d667b5f0706cf2 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Fri, 29 Jan 2010 21:44:22 +0000 Subject: [PATCH] a few more tweaks to the language dialog svn: r17889 --- collects/drscheme/private/language-configuration.ss | 12 +++++++++--- collects/drscheme/private/module-language.ss | 13 ++++++++----- 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/collects/drscheme/private/language-configuration.ss b/collects/drscheme/private/language-configuration.ss index d37019deeb..68af30ed1b 100644 --- a/collects/drscheme/private/language-configuration.ss +++ b/collects/drscheme/private/language-configuration.ss @@ -385,7 +385,7 @@ (define in-source-discussion-spacer (new horizontal-panel% [parent in-source-discussion-panel] [stretchable-width #f] - [min-width 24])) + [min-width 32])) (define stupid-internal-definition-syntax1 (add-discussion in-source-discussion-panel)) (define use-chosen-language-rb (new radio-box% @@ -394,12 +394,18 @@ [parent languages-choice-panel] [callback (λ (this-rb evt) + (let ([i (send languages-hier-list get-selected)]) + (cond + [(and i (is-a? i hieritem-language<%>)) + (something-selected i)] + [else + (non-language-selected)])) (send use-language-in-source-rb set-selection #f))])) (define languages-hier-list-panel (new horizontal-panel% [parent languages-choice-panel])) (define languages-hier-list-spacer (new horizontal-panel% [parent languages-hier-list-panel] [stretchable-width #f] - [min-width 24])) + [min-width 16])) (define languages-hier-list (new selectable-hierlist% [parent languages-hier-list-panel] @@ -918,7 +924,7 @@ (send t set-styles-sticky #f) (send t set-autowrap-bitmap #f) - (let* ([size-sd (make-object style-delta% 'change-size (send small-control-font get-point-size))] + (let* ([size-sd (make-object style-delta% 'change-size (send normal-control-font get-point-size))] [do-insert (λ (str tt-style?) (let ([before (send t last-position)]) diff --git a/collects/drscheme/private/module-language.ss b/collects/drscheme/private/module-language.ss index 04c1c80799..be1b0ab6da 100644 --- a/collects/drscheme/private/module-language.ss +++ b/collects/drscheme/private/module-language.ss @@ -62,11 +62,14 @@ (inherit get-language-name) (define/public (get-users-language-name defs-text) - (let ([m (regexp-match "#lang (.*)$" - (send defs-text get-text 0 (send defs-text paragraph-end-position 1)))]) - (if m - (list-ref m 1) - (get-language-name)))) + (let* ([i (open-input-text-editor defs-text)] + [l (with-handlers ((exn:fail? (λ (x) '?))) + (read-language i (lambda () '?)))]) + (if (eq? '? l) + (get-language-name) + (regexp-replace #rx".*#(?:!|lang ) *" + (send defs-text get-text 0 (file-position i)) + "")))) (define/override (use-namespace-require/copy?) #f)