docx_rust/formatting/
widow_control.rs

1use hard_xml::{XmlRead, XmlWrite};
2
3use crate::__xml_test_suites;
4
5/// WidowControl
6///
7/// ```rust
8/// use docx_rust::formatting::*;
9///
10/// let WidowControl = WidowControl::from(false);
11/// let WidowControl = WidowControl::from(true);
12/// ```
13#[derive(Debug, Default, XmlRead, XmlWrite, Clone)]
14#[cfg_attr(test, derive(PartialEq))]
15#[xml(tag = "w:widowControl")]
16pub struct WidowControl {
17    #[xml(attr = "w:val")]
18    pub value: Option<bool>,
19}
20
21impl<T: Into<Option<bool>>> From<T> for WidowControl {
22    fn from(val: T) -> Self {
23        WidowControl { value: val.into() }
24    }
25}
26
27__xml_test_suites!(
28    WidowControl,
29    WidowControl::default(),
30    r#"<w:widowControl/>"#,
31    WidowControl::from(false),
32    r#"<w:widowControl w:val="false"/>"#,
33    WidowControl::from(true),
34    r#"<w:widowControl w:val="true"/>"#,
35);