tui-lipan 0.1.0

Opinionated, component-based TUI framework for Rust - declarative components, reconciliation, layout engine, focus, overlays, and rich widgets on top of ratatui.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use crate::layout::measure::min_size_constrained;

pub(crate) fn measure_zstack(
    zstack: &super::ZStack,
    max_w: Option<u16>,
    max_h: Option<u16>,
) -> (u16, u16) {
    let mut w = 0u16;
    let mut h = 0u16;
    for child in &zstack.children {
        let (cw, ch) = min_size_constrained(child, max_w, max_h);
        w = w.max(cw);
        h = h.max(ch);
    }
    (w, h)
}