umya_spreadsheet/structs/drawing/charts/
editing_language.rs

1// c:lang
2use super::super::super::StringValue;
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 EditingLanguage {
12    val: StringValue,
13}
14impl EditingLanguage {
15    pub fn get_val(&self) -> &str {
16        self.val.get_value_str()
17    }
18
19    pub fn set_val<S: Into<String>>(&mut self, value: S) -> &mut EditingLanguage {
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        // c:lang
34        write_start_tag(
35            writer,
36            "c:lang",
37            vec![("val", self.val.get_value_str())],
38            true,
39        );
40    }
41}