diff --git a/collects/mred/mred-sig.rkt b/collects/mred/mred-sig.rkt index 0b5efef1..dd27c01b 100644 --- a/collects/mred/mred-sig.rkt +++ b/collects/mred/mred-sig.rkt @@ -113,6 +113,7 @@ key-event% keymap% label->plain-label labelled-menu-item<%> +linear-gradient% list-box% list-control<%> make-bitmap @@ -160,6 +161,7 @@ read-bitmap read-editor-global-footer read-editor-global-header read-editor-version +radial-gradient% region% register-collecting-blit scroll-event% diff --git a/collects/tests/gracket/draw.rkt b/collects/tests/gracket/draw.rkt index ae31b0c9..3663cb7a 100644 --- a/collects/tests/gracket/draw.rkt +++ b/collects/tests/gracket/draw.rkt @@ -923,9 +923,40 @@ (let ([p (send dc get-pen)]) (send dc set-pen (make-object color% 0 0 0 0.1) 1 'solid) (send dc set-brush (make-object color% 255 0 200 0.5) 'solid) - (send dc draw-rectangle 250 310 20 20) + (send dc draw-rectangle 250 320 20 20) (send dc set-brush (make-object color% 0 255 200 0.5) 'solid) - (send dc draw-rectangle 260 320 20 20) + (send dc draw-rectangle 260 330 20 20) + (send dc set-pen p)) + + (let ([p (send dc get-pen)]) + (send dc set-pen "white" 1 'transparent) + (send dc set-brush (new brush% + [gradient + (make-object linear-gradient% + 300 0 380 0 + (list (list 0.0 + (make-object color% 255 0 0)) + (list 0.5 + (make-object color% 0 255 0)) + (list 1.0 + (make-object color% 0 0 255 0.0))))])) + (send dc draw-rectangle 300 320 80 20) + (send dc set-pen p)) + + (let ([p (send dc get-pen)]) + (send dc set-pen "white" 1 'transparent) + (send dc set-brush (new brush% + [gradient + (make-object radial-gradient% + 360 250 5 + 365 245 25 + (list (list 0.0 + (make-object color% 255 0 0)) + (list 0.5 + (make-object color% 0 255 0)) + (list 1.0 + (make-object color% 0 0 255 0.0))))])) + (send dc draw-rectangle 338 228 44 44) (send dc set-pen p)) (send dc draw-line 130 310 150 310) diff --git a/doc/release-notes/racket/Draw_and_GUI_5_1.txt b/doc/release-notes/racket/Draw_and_GUI_5_1.txt index 8e3b7069..a899d6a6 100644 --- a/doc/release-notes/racket/Draw_and_GUI_5_1.txt +++ b/doc/release-notes/racket/Draw_and_GUI_5_1.txt @@ -120,6 +120,8 @@ A `region%' can be created as independent of any `dc<%>', in which cases it uses the drawing context's current transformation at the time that it is installed as a clipping region. +Brushes now support linear and radial gradients. + The old 'xor mode for pens and brushes is no longer available (since it is not supported by Cairo).