pub type LayoutFn<S, T> = dyn FnMut(&mut S, &mut LayoutCtx<'_, '_>, &BoxConstraints, &T, &Env) -> Size + 'static;