docx_rust/formatting/
table_header.rs1use hard_xml::{XmlRead, XmlWrite};
2
3use crate::{__string_enum, __xml_test_suites};
4
5#[derive(Debug, Default, XmlRead, XmlWrite, Clone)]
13#[cfg_attr(test, derive(PartialEq))]
14#[xml(tag = "w:tblHeader")]
15pub struct TableHeader {
16 #[xml(attr = "w:val")]
17 pub value: Option<OnOffOnlyType>,
18}
19
20impl From<OnOffOnlyType> for TableHeader {
21 fn from(val: OnOffOnlyType) -> Self {
22 TableHeader { value: Some(val) }
23 }
24}
25
26#[derive(Debug, Clone)]
27#[cfg_attr(test, derive(PartialEq))]
28pub enum OnOffOnlyType {
29 On,
30 Off,
31}
32
33__string_enum! {
34 OnOffOnlyType {
35 On = "on",
36 Off = "off",
37 }
38}
39
40__xml_test_suites!(
41 TableHeader,
42 TableHeader::default(),
43 "<w:tblHeader/>",
44 TableHeader::from(OnOffOnlyType::On),
45 r#"<w:tblHeader w:val="on"/>"#,
46 TableHeader::from(OnOffOnlyType::Off),
47 r#"<w:tblHeader w:val="off"/>"#,
48);