merged changes from branches/ryanc/ms-v4
svn: r7741 original commit: 60fe499e4ee6a8a064de4ace1c2f6bfffe16e742
This commit is contained in:
parent
de592f3eea
commit
d36b4b6015
|
@ -42,11 +42,11 @@
|
|||
(datum->syntax-object #'name (join "listen-" #'name))])
|
||||
#'(begin (field [name (init-name)])
|
||||
(define/public (init-name) value)
|
||||
(define/public (get-name)
|
||||
(define/public-final (get-name)
|
||||
(send name get))
|
||||
(define/public (set-name new-value)
|
||||
(define/public-final (set-name new-value)
|
||||
(send name set new-value))
|
||||
(define/public (listen-name listener)
|
||||
(define/public-final (listen-name listener)
|
||||
(send name listen listener))))]))
|
||||
|
||||
(define-syntax (notify-methods stx)
|
||||
|
@ -63,11 +63,11 @@
|
|||
#'(begin (field [name (init-name)])
|
||||
(define/public (init-name)
|
||||
(new notify-box% (value #f)))
|
||||
(define/public (get-name)
|
||||
(define/public-final (get-name)
|
||||
(send name get))
|
||||
(define/public (set-name new-value)
|
||||
(define/public-final (set-name new-value)
|
||||
(send name set new-value))
|
||||
(define/public (listen-name listener)
|
||||
(define/public-final (listen-name listener)
|
||||
(send name listen listener))))]))
|
||||
|
||||
(define-syntax (connect-to-pref stx)
|
||||
|
@ -98,11 +98,11 @@
|
|||
#'(begin
|
||||
(define name value)
|
||||
(define listeners null)
|
||||
(define/public (get-name) name)
|
||||
(define/public (set-name new-value)
|
||||
(define/public-final (get-name) name)
|
||||
(define/public-final (set-name new-value)
|
||||
(set! name new-value)
|
||||
(for-each (lambda (listener) (listener new-value)) listeners))
|
||||
(define/public (listen-name listener)
|
||||
(define/public-final (listen-name listener)
|
||||
(set! listeners (cons listener listeners)))))]))
|
||||
|
||||
(define notify-box%
|
||||
|
|
Loading…
Reference in New Issue
Block a user