umya_spreadsheet/structs/drawing/
soft_edge.rs

1// a:softEdge
2use super::super::super::Int64Value;
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 SoftEdge {
12    radius: Int64Value,
13}
14impl SoftEdge {
15    #[inline]
16    pub fn get_radius(&self) -> &i64 {
17        self.radius.get_value()
18    }
19
20    #[inline]
21    pub fn set_radius(&mut self, value: i64) -> &mut SoftEdge {
22        self.radius.set_value(value);
23        self
24    }
25
26    #[inline]
27    pub(crate) fn set_attributes<R: std::io::BufRead>(
28        &mut self,
29        _reader: &mut Reader<R>,
30        e: &BytesStart,
31    ) {
32        self.radius
33            .set_value_string(get_attribute(e, b"rad").unwrap());
34    }
35
36    pub(crate) fn write_to(&self, writer: &mut Writer<Cursor<Vec<u8>>>) {
37        // a:softEdge
38        write_start_tag(
39            writer,
40            "a:softEdge",
41            vec![("rad", &self.radius.get_value_string())],
42            true,
43        );
44    }
45}