1 ! Copyright (C) 2005, 2009 Slava Pestov.
2 ! See https://factorcode.org/license.txt for BSD license.
3 USING: accessors kernel ui.baseline-alignment ui.gadgets ;
4 IN: ui.gadgets.wrappers
6 TUPLE: wrapper < gadget ;
8 : new-wrapper ( child class -- wrapper )
9 new swap add-gadget ; inline
11 : <wrapper> ( child -- wrapper ) wrapper new-wrapper ;
13 M: wrapper pref-dim* gadget-child pref-dim ;
15 M: wrapper baseline gadget-child baseline ;
17 M: wrapper cap-height gadget-child cap-height ;
19 M: wrapper layout* [ gadget-child ] [ dim>> ] bi >>dim drop ;
21 M: wrapper focusable-child* gadget-child ;