electron_sys/interface/
scrubber_item.rs

1use crate::class::NativeImage;
2use js_sys::JsString;
3use wasm_bindgen::prelude::*;
4
5#[wasm_bindgen]
6#[derive(Clone, Debug, PartialEq)]
7pub struct ScrubberItem {
8    icon: Option<NativeImage>,
9    label: Option<JsString>,
10}
11
12#[wasm_bindgen]
13impl ScrubberItem {
14    #[wasm_bindgen(constructor)]
15    pub fn new(icon: Option<NativeImage>, label: Option<JsString>) -> ScrubberItem {
16        ScrubberItem { icon, label }
17    }
18
19    #[wasm_bindgen(getter)]
20    pub fn icon(&self) -> Option<NativeImage> {
21        self.icon.clone()
22    }
23
24    #[wasm_bindgen(setter)]
25    pub fn set_icon(&mut self, value: Option<NativeImage>) {
26        self.icon = value;
27    }
28
29    #[wasm_bindgen(getter)]
30    pub fn label(&self) -> Option<JsString> {
31        self.label.clone()
32    }
33
34    #[wasm_bindgen(setter)]
35    pub fn set_label(&mut self, value: Option<JsString>) {
36        self.label = value;
37    }
38}