umya_spreadsheet/structs/drawing/charts/
layout_target.rs

1// c:layoutTarget
2use super::super::super::EnumValue;
3use super::LayoutTargetValues;
4use crate::reader::driver::*;
5use crate::writer::driver::*;
6use quick_xml::events::BytesStart;
7use quick_xml::Reader;
8use quick_xml::Writer;
9use std::io::Cursor;
10
11#[derive(Clone, Default, Debug)]
12pub struct LayoutTarget {
13    val: EnumValue<LayoutTargetValues>,
14}
15impl LayoutTarget {
16    pub fn get_val(&self) -> &LayoutTargetValues {
17        self.val.get_value()
18    }
19
20    pub fn set_val(&mut self, value: LayoutTargetValues) -> &mut LayoutTarget {
21        self.val.set_value(value);
22        self
23    }
24
25    pub(crate) fn set_attributes<R: std::io::BufRead>(
26        &mut self,
27        _reader: &mut Reader<R>,
28        e: &BytesStart,
29    ) {
30        self.val.set_value_string(get_attribute(e, b"val").unwrap());
31    }
32
33    pub(crate) fn write_to(&self, writer: &mut Writer<Cursor<Vec<u8>>>) {
34        // c:layoutTarget
35        write_start_tag(
36            writer,
37            "c:layoutTarget",
38            vec![("val", self.val.get_value_string())],
39            true,
40        );
41    }
42}