logo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub enum StackFit {
    // The constraints passed to the stack from its parent are loosened.
    // For example, if the stack has constraints that force it to 350x600, then this would allow the 
    // non-positioned children of the stack to have any width from zero to 350 and any height from zero to 600.
    // See also:
    //     Center, which loosens the constraints passed to its child and then centers the child in itself.
    //     BoxConstraints.loosen, which implements the loosening of box constraints.
    Loose = 0,
    // The constraints passed to the stack from its parent are tightened to the biggest size allowed.
    // For example, if the stack has loose constraints with a width in the range 10 to 100 and a 
    // height in the range 0 to 600, then the non-positioned children of the stack 
    // would all be sized as 100 pixels wide and 600 high.
    Expand = 1,
    // The constraints passed to the stack from its parent are passed 
    // unmodified to the non-positioned children.
    // For example, if a Stack is an Expanded child of a Row, the horizontal 
    // constraints will be tight and the vertical constraints will be loose.
    Passthrough = 2,
}

impl Default for StackFit {
    fn default() -> Self {
        Self::Loose
    }
}