maxcountryman_web_sys/features/
gen_ScrollIntoViewOptions.rs

1#![allow(unused_imports)]
2use super::*;
3use wasm_bindgen::prelude::*;
4#[wasm_bindgen]
5extern "C" {
6    # [wasm_bindgen (extends = :: js_sys :: Object , js_name = ScrollIntoViewOptions)]
7    #[derive(Debug, Clone, PartialEq, Eq)]
8    #[doc = "The `ScrollIntoViewOptions` dictionary."]
9    #[doc = ""]
10    #[doc = "*This API requires the following crate features to be activated: `ScrollIntoViewOptions`*"]
11    pub type ScrollIntoViewOptions;
12}
13impl ScrollIntoViewOptions {
14    #[doc = "Construct a new `ScrollIntoViewOptions`."]
15    #[doc = ""]
16    #[doc = "*This API requires the following crate features to be activated: `ScrollIntoViewOptions`*"]
17    pub fn new() -> Self {
18        #[allow(unused_mut)]
19        let mut ret: Self = ::wasm_bindgen::JsCast::unchecked_into(::js_sys::Object::new());
20        ret
21    }
22    #[cfg(feature = "ScrollBehavior")]
23    #[doc = "Change the `behavior` field of this object."]
24    #[doc = ""]
25    #[doc = "*This API requires the following crate features to be activated: `ScrollBehavior`, `ScrollIntoViewOptions`*"]
26    pub fn behavior(&mut self, val: ScrollBehavior) -> &mut Self {
27        use wasm_bindgen::JsValue;
28        let r = ::js_sys::Reflect::set(
29            self.as_ref(),
30            &JsValue::from("behavior"),
31            &JsValue::from(val),
32        );
33        debug_assert!(
34            r.is_ok(),
35            "setting properties should never fail on our dictionary objects"
36        );
37        let _ = r;
38        self
39    }
40    #[cfg(feature = "ScrollLogicalPosition")]
41    #[doc = "Change the `block` field of this object."]
42    #[doc = ""]
43    #[doc = "*This API requires the following crate features to be activated: `ScrollIntoViewOptions`, `ScrollLogicalPosition`*"]
44    pub fn block(&mut self, val: ScrollLogicalPosition) -> &mut Self {
45        use wasm_bindgen::JsValue;
46        let r = ::js_sys::Reflect::set(self.as_ref(), &JsValue::from("block"), &JsValue::from(val));
47        debug_assert!(
48            r.is_ok(),
49            "setting properties should never fail on our dictionary objects"
50        );
51        let _ = r;
52        self
53    }
54    #[cfg(feature = "ScrollLogicalPosition")]
55    #[doc = "Change the `inline` field of this object."]
56    #[doc = ""]
57    #[doc = "*This API requires the following crate features to be activated: `ScrollIntoViewOptions`, `ScrollLogicalPosition`*"]
58    pub fn inline(&mut self, val: ScrollLogicalPosition) -> &mut Self {
59        use wasm_bindgen::JsValue;
60        let r =
61            ::js_sys::Reflect::set(self.as_ref(), &JsValue::from("inline"), &JsValue::from(val));
62        debug_assert!(
63            r.is_ok(),
64            "setting properties should never fail on our dictionary objects"
65        );
66        let _ = r;
67        self
68    }
69}
70impl Default for ScrollIntoViewOptions {
71    fn default() -> Self {
72        Self::new()
73    }
74}