diff --git a/collects/mred/mred-sig.ss b/collects/mred/mred-sig.ss index 5498a605..daeb6129 100644 --- a/collects/mred/mred-sig.ss +++ b/collects/mred/mred-sig.ss @@ -99,6 +99,7 @@ get-top-level-focus-window get-top-level-windows get-window-text-extent + gl-config% gl-context<%> graphical-read-eval-print-loop group-box-panel% diff --git a/collects/mred/mred.ss b/collects/mred/mred.ss index e2d40a89..5a84fc72 100644 --- a/collects/mred/mred.ss +++ b/collects/mred/mred.ss @@ -1790,7 +1790,7 @@ (stretchable-in-y (not horizontal?)))))))) (define wx-canvas% (make-canvas-glue% - (class100 (make-control% wx:canvas% 0 0 #t #t) (parent x y w h style) + (class100 (make-control% wx:canvas% 0 0 #t #t) (parent x y w h style gl-config) (private-field [tabable? #f]) (public @@ -1803,7 +1803,7 @@ (lambda (code alpha? meta?) (or meta? (not tabable?)))]) (sequence - (super-init style parent x y w h style))))) + (super-init style parent x y w h style "canvas" gl-config))))) ;--------------------- tab group ------------------------- @@ -5007,7 +5007,7 @@ (define canvas% (class100*/kw basic-canvas% () - [(parent [style null] [paint-callback default-paint-cb] [label #f]) + [(parent [style null] [paint-callback default-paint-cb] [label #f] [gl-config #f]) canvas%-keywords] (private-field [paint-cb paint-callback] [has-x? (memq 'hscroll style)] @@ -5118,7 +5118,8 @@ (mred->wx-container parent) -1 -1 (+ ds (if (memq 'combo style) side-combo-width 0)) ds - style))) + style + gl-config))) wx) (lambda () (let ([cwho '(constructor canvas)]) @@ -8140,7 +8141,8 @@ eventspace-shutdown? get-panel-background send-event - gl-context<%>) + gl-context<%> + gl-config%) (define the-color-database (wx:get-the-color-database)) (define the-font-name-directory (wx:get-the-font-name-directory)) diff --git a/collects/mred/private/kernel.ss b/collects/mred/private/kernel.ss index 85c54280..5b02ea3f 100644 --- a/collects/mred/private/kernel.ss +++ b/collects/mred/private/kernel.ss @@ -297,6 +297,8 @@ (define-function set-editor-print-margin) (define-function get-editor-print-margin) (define-class bitmap% object% #f + get-gl-config + set-gl-config set-loaded-mask get-loaded-mask save-file @@ -428,6 +430,33 @@ call-as-current swap-buffers ok?) + (define-class gl-config% object% #f + sizeof-bitfield + sizeof-enum + sizeof-clampd + sizeof-clampf + sizeof-sizei + sizeof-boolean + sizeof-double + sizeof-float + sizeof-uint + sizeof-int + sizeof-ushort + sizeof-short + sizeof-ubyte + sizeof-byte + get-double-buffered + set-double-buffered + get-stereo + set-stereo + get-stencil-size + set-stencil-size + get-accum-size + set-accum-size + get-depth-size + set-depth-size + get-multisample-size + set-multisample-size) (define-class event% object% ([time-stamp 0]) get-time-stamp set-time-stamp)