From 3927329583786cc6a9197b2f9a8ca5b73c9a9c15 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Thu, 7 Feb 2002 21:59:45 +0000 Subject: [PATCH] . original commit: 1827497b5fbdb815355065c19e1c95d1c4afdca2 --- collects/mred/mred.ss | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/collects/mred/mred.ss b/collects/mred/mred.ss index 09d69a2d..69d96666 100644 --- a/collects/mred/mred.ss +++ b/collects/mred/mred.ss @@ -2870,19 +2870,15 @@ (f x y) (values (unbox x) (unbox y))))) -(define widget-table (make-hash-table 'weak)) + +(declare-local-member-name private-wx) (define mred% - (class100 object% (wx) - (sequence - ; (unless (eq? monitor-owner (current-thread)) (error 'init-mred% "not in monitored area")) - (hash-table-put! widget-table this (make-weak-box wx)) - (super-init)))) + (class object% + (init-field private-wx) + (super-make-object))) -(define (mred->wx w) - ; (unless (eq? monitor-owner (current-thread)) (error 'mred->wx "not in monitored area")) - (let ([v (hash-table-get widget-table w (lambda () #f))]) - (and v (weak-box-value v)))) +(define mred->wx (class-field-accessor mred% private-wx)) (define (mred->wx-container w) (send (mred->wx w) get-container))