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
27
28
29
30
31
use crate::{Style, StyleUpdater};
#[derive(Clone, Debug, Copy, PartialEq, Eq, Display, From)]
pub enum Visibility {
#[display(fmt = "visible")]
Visible,
#[display(fmt = "hidden")]
Hidden,
#[display(fmt = "collapse")]
Collapse,
#[display(fmt = "initial")]
Initial,
#[display(fmt = "inherit")]
Inherit,
}
impl From<bool> for Visibility {
fn from(source: bool) -> Self {
if source {
Visibility::Visible
} else {
Visibility::Hidden
}
}
}
impl StyleUpdater for Visibility {
fn update_style(self, style: Style) -> Style {
style.insert("visibility", self.to_string())
}
}