factor/contrib/slate/slate.factor

31 lines
834 B
Factor
Raw Normal View History

2006-10-04 00:38:54 -04:00
REQUIRES: contrib/vars ; USING: kernel namespaces gadgets vars ; IN: slate
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
TUPLE: slate action ns ;
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
C: slate ( -- slate )
dup delegate>gadget
[ ] over set-slate-action
H{ } clone over set-slate-ns ;
M: slate pref-dim* ( slate -- ) drop { 100 100 0 } ;
M: slate draw-gadget* ( slate -- ) dup slate-ns swap slate-action bind ;
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
VAR: slate
: action> ( -- ) slate> slate-action ;
: >action ( quot -- ) slate> set-slate-action ;
: .slate ( -- ) slate> relayout-1 ;
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
: slate-window ( -- ) <slate> dup >slate "Slate" open-titled-window ;