workaround for duplicate text-field% events
svn: r12640
This commit is contained in:
parent
333e0702c9
commit
1e67e2fda7
|
@ -1,7 +1,6 @@
|
||||||
(module mixin-macros frtime
|
(module mixin-macros frtime
|
||||||
(require mzlib/class)
|
(require mzlib/class)
|
||||||
|
|
||||||
|
|
||||||
(define-syntax events->callbacks
|
(define-syntax events->callbacks
|
||||||
(lambda (stx)
|
(lambda (stx)
|
||||||
(syntax-case stx (carries-args-for)
|
(syntax-case stx (carries-args-for)
|
||||||
|
@ -47,10 +46,14 @@
|
||||||
(define name-e (event-receiver))
|
(define name-e (event-receiver))
|
||||||
(define processed-events (processor name-e))
|
(define processed-events (processor name-e))
|
||||||
(super-new)
|
(super-new)
|
||||||
|
(define ft-last-evt #f)
|
||||||
;what about when the super call returns an error?
|
;what about when the super call returns an error?
|
||||||
(define/override method-name
|
(define/override method-name
|
||||||
(lambda args
|
(lambda args
|
||||||
(send-event name-e args)
|
(when (or (< (length args) 2)
|
||||||
|
(and (not (eq? (cadr args) ft-last-evt))
|
||||||
|
(set! ft-last-evt (cadr args))))
|
||||||
|
(send-event name-e args))
|
||||||
(super method-name . args)))
|
(super method-name . args)))
|
||||||
(define/public (g-name) processed-events))))])))
|
(define/public (g-name) processed-events))))])))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user