New slate implementation

wayo.cavazos 2006-10-04 04:38:54 +00:00
parent c768db090b
commit ca36912b5a
1 changed files with 30 additions and 0 deletions

View File

@ -0,0 +1,30 @@
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 ;