factor/library/ui/cocoa/callback.factor

32 lines
710 B
Factor
Raw Normal View History

2006-05-24 19:34:30 -04:00
! Copyright (C) 2005, 2006 Kevin Reid.
! See http://factorcode.org/license.txt for BSD license.
IN: objc-classes
DEFER: FactorCallback
IN: cocoa
USING: gadgets hashtables kernel namespaces objc ;
SYMBOL: callbacks
2006-05-22 23:46:36 -04:00
: reset-callbacks ( -- )
H{ } clone callbacks set-global ;
reset-callbacks
"NSObject" "FactorCallback" {
{ "perform:" "void" { "id" "SEL" "id" }
[ 2drop callbacks get hash ui-try ]
}
{ "dealloc" "void" { "id" "SEL" }
[
drop
dup callbacks get remove-hash
SUPER-> dealloc
]
}
} { } define-objc-class
2006-08-15 16:29:35 -04:00
: <FactorCallback> ( quot -- id )
FactorCallback -> alloc -> init
[ callbacks get set-hash ] keep ;