2 USING: kernel namespaces gadgets vars ;
5 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
7 TUPLE: slate action ns ;
9 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
13 [ ] over set-slate-action
14 H{ } clone over set-slate-ns ;
16 M: slate pref-dim* ( slate -- ) drop { 100 100 0 } ;
18 M: slate draw-gadget* ( slate -- ) dup slate-ns swap slate-action bind ;
20 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
24 : action> ( -- quot ) slate> slate-action ;
26 : >action ( quot -- ) slate> set-slate-action ;
28 : .slate ( -- ) slate> relayout-1 ;
30 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
32 : slate-window ( -- ) <slate> dup >slate "Slate" open-titled-window ;