I think I don't get it. The `$view` is defined inside the layout (which I think is correct because it has to work on all the components. 

Probably components have to override the layout but at least now can do it with `JLayout`.