umya_spreadsheet/structs/drawing/charts/
size.rs

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