umya_spreadsheet/structs/drawing/charts/
left.rs1use std::io::Cursor;
3
4use quick_xml::{
5 Reader,
6 Writer,
7 events::BytesStart,
8};
9
10use super::super::super::DoubleValue;
11use crate::{
12 reader::driver::get_attribute,
13 writer::driver::write_start_tag,
14};
15
16#[derive(Clone, Default, Debug)]
17pub struct Left {
18 val: DoubleValue,
19}
20impl Left {
21 #[must_use]
22 pub fn val(&self) -> f64 {
23 self.val.value()
24 }
25
26 #[must_use]
27 #[deprecated(since = "3.0.0", note = "Use val()")]
28 pub fn get_val(&self) -> f64 {
29 self.val()
30 }
31
32 pub fn set_val(&mut self, value: f64) -> &mut Left {
33 self.val.set_value(value);
34 self
35 }
36
37 pub(crate) fn set_attributes<R: std::io::BufRead>(
38 &mut self,
39 _reader: &mut Reader<R>,
40 e: &BytesStart,
41 ) {
42 self.val.set_value_string(get_attribute(e, b"val").unwrap());
43 }
44
45 pub(crate) fn write_to(&self, writer: &mut Writer<Cursor<Vec<u8>>>) {
46 write_start_tag(
48 writer,
49 "c:x",
50 vec![("val", &self.val.value_string()).into()],
51 true,
52 );
53 }
54}