M: track layout* ( track -- ) dup track-layout pack-layout ;
: track-pref-dims-1 ( track -- dim )
- children>> pref-dims max-dim ;
+ [ children>> pref-dims max-dim ]
+ [ pref-dim>> { 0 0 } or ] bi vmax ;
: track-pref-dims-2 ( track -- dim )
[
status
gadgets
{ pixel-format-attributes initial: $ default-world-pixel-format-attributes }
- { window-controls initial: $ default-world-window-controls } ;
+ { window-controls initial: $ default-world-window-controls }
+ pref-dim ;
: <world-attributes> ( -- world-attributes )
world-attributes new ; inline
[ initial-background-color >>background-color ]
[ grab-input?>> >>grab-input? ]
[ gadgets>> [ 1 track-add ] each ]
+ [ pref-dim>> >>pref-dim ]
} cleave ;
: <world> ( world-attributes -- world )