diff --git a/gui-lib/framework/private/color.rkt b/gui-lib/framework/private/color.rkt index 49701a54..4c87c78e 100644 --- a/gui-lib/framework/private/color.rkt +++ b/gui-lib/framework/private/color.rkt @@ -27,7 +27,8 @@ added get-regions [prefix mode: framework:mode^] [prefix text: framework:text^] [prefix color-prefs: framework:color-prefs^] - [prefix racket: framework:racket^]) + [prefix racket: framework:racket^] + [prefix number-snip: framework:number-snip/int^]) (export (rename framework:color^ (-text<%> text<%>) @@ -337,7 +338,11 @@ added get-regions (open-input-text-editor this (lexer-state-current-pos ls) (lexer-state-end-pos ls) - (λ (x) #f))) + (λ (x) + (cond + [(number-snip:is-number-snip? x) + x] + [else #f])))) (port-count-lines! in) (continue-re-tokenize start-time ok-to-stop? ls in (lexer-state-current-pos ls) diff --git a/gui-lib/framework/private/number-snip.rkt b/gui-lib/framework/private/number-snip.rkt index 56edc4c1..1a8a1bf8 100644 --- a/gui-lib/framework/private/number-snip.rkt +++ b/gui-lib/framework/private/number-snip.rkt @@ -8,7 +8,7 @@ file/convertible) (import mred^) - (export (rename framework:number-snip^ + (export (rename framework:number-snip/int^ [-snip-class% snip-class%])) (init-depend mred^) @@ -91,7 +91,8 @@ [(text) (send number-snip get-text 0 1)] [else default]))]))) - + + (define (is-number-snip? x) (is-a? x number-snip%)) (define number-snip% (class* snip% (readable-snip<%> number-snip-convertible<%>) ;; number : number diff --git a/gui-lib/framework/private/sig.rkt b/gui-lib/framework/private/sig.rkt index a82e8e33..ea60b966 100644 --- a/gui-lib/framework/private/sig.rkt +++ b/gui-lib/framework/private/sig.rkt @@ -10,6 +10,8 @@ (define-signature number-snip^ extends number-snip-class^ (make-repeating-decimal-snip make-fraction-snip)) + (define-signature number-snip/int^ extends number-snip^ + (is-number-snip?)) (define-signature comment-box-class^ (snip%))