pub fn view<P: 'static>(
screen: &WorkspaceScreen,
ui: &mut View<'_, P>,
wrap: fn(Msg) -> P,
above: impl FnOnce(&mut View<'_, P>),
below: impl FnOnce(&mut View<'_, P>),
under: impl FnOnce(&mut View<'_, P>),
)Expand description
Draws the workspace screen for an application whose messages are P: wrap turns the screen’s
own messages into the application’s, above draws what the application puts over the tabs
(its header) and below what it puts under the terminal (its footer).
The rail runs down the whole left edge and the widget panel down the whole right edge, from
the very first row to the very last; the application’s header and footer belong to the middle
column only, with the tabs and the terminal. That is why the application hands its parts in
here instead of drawing them around this screen. under is what the application puts at the
foot of the rail, under the workspaces: the ways out of this screen, which stand there rather
than over and under the terminal so that every row of the middle belongs to the work.