electron_sys/interface/
data.rs

1use crate::class::NativeImage;
2use js_sys::JsString;
3use wasm_bindgen::prelude::*;
4
5#[wasm_bindgen]
6#[derive(Clone, Debug, Default, Eq, PartialEq)]
7pub struct Data {
8    bookmark: Option<JsString>,
9    html: Option<JsString>,
10    image: Option<NativeImage>,
11    rtf: Option<JsString>,
12    text: Option<JsString>,
13}
14
15#[wasm_bindgen]
16impl Data {
17    #[wasm_bindgen(constructor)]
18    pub fn new(
19        bookmark: Option<JsString>,
20        html: Option<JsString>,
21        image: Option<NativeImage>,
22        rtf: Option<JsString>,
23        text: Option<JsString>,
24    ) -> Data {
25        Data {
26            bookmark,
27            html,
28            image,
29            rtf,
30            text,
31        }
32    }
33
34    #[wasm_bindgen(getter)]
35    pub fn bookmark(&self) -> Option<JsString> {
36        self.bookmark.clone()
37    }
38
39    #[wasm_bindgen(setter)]
40    pub fn set_bookmark(&mut self, value: Option<JsString>) {
41        self.bookmark = value;
42    }
43
44    #[wasm_bindgen(getter)]
45    pub fn html(&self) -> Option<JsString> {
46        self.html.clone()
47    }
48
49    #[wasm_bindgen(setter)]
50    pub fn set_html(&mut self, value: Option<JsString>) {
51        self.html = value;
52    }
53
54    #[wasm_bindgen(getter)]
55    pub fn image(&self) -> Option<NativeImage> {
56        self.image.clone()
57    }
58
59    #[wasm_bindgen(setter)]
60    pub fn set_image(&mut self, value: Option<NativeImage>) {
61        self.image = value;
62    }
63
64    #[wasm_bindgen(getter)]
65    pub fn rtf(&self) -> Option<JsString> {
66        self.rtf.clone()
67    }
68
69    #[wasm_bindgen(setter)]
70    pub fn set_rtf(&mut self, value: Option<JsString>) {
71        self.rtf = value;
72    }
73
74    #[wasm_bindgen(getter)]
75    pub fn text(&self) -> Option<JsString> {
76        self.text.clone()
77    }
78
79    #[wasm_bindgen(setter)]
80    pub fn set_text(&mut self, value: Option<JsString>) {
81        self.text = value;
82    }
83}