1use crate::{Style, StyleUpdater};
2
3#[derive(Clone, Debug, Copy, PartialEq, Eq, Display, From)]
4pub enum Visibility {
5 #[display(fmt = "visible")]
6 Visible,
7 #[display(fmt = "hidden")]
8 Hidden,
9 #[display(fmt = "collapse")]
10 Collapse,
11 #[display(fmt = "initial")]
12 Initial,
13 #[display(fmt = "inherit")]
14 Inherit,
15}
16
17impl From<bool> for Visibility {
18 fn from(source: bool) -> Self {
19 if source {
20 Visibility::Visible
21 } else {
22 Visibility::Hidden
23 }
24 }
25}
26
27impl StyleUpdater for Visibility {
28 fn update_style(self, style: Style) -> Style {
29 style.insert("visibility", self.to_string())
30 }
31}