Skip to main content

dioxus_maplibre/handle/
layer_events.rs

1//! Layer event registration MapHandle methods.
2
3use super::MapHandle;
4
5impl MapHandle {
6    /// Register a click handler on a layer (events dispatched via `on_layer_click`).
7    pub fn on_layer_click(&self, layer_id: &str) {
8        self.fire_and_forget(|| crate::interop::register_layer_click_js(&self.map_id, layer_id));
9    }
10
11    /// Unregister a click handler on a layer.
12    pub fn off_layer_click(&self, layer_id: &str) {
13        self.fire_and_forget(|| crate::interop::unregister_layer_click_js(&self.map_id, layer_id));
14    }
15
16    /// Register hover handlers on a layer (events dispatched via `on_layer_hover`).
17    pub fn on_layer_hover(&self, layer_id: &str) {
18        self.fire_and_forget(|| crate::interop::register_layer_hover_js(&self.map_id, layer_id));
19    }
20
21    /// Unregister hover handlers on a layer.
22    pub fn off_layer_hover(&self, layer_id: &str) {
23        self.fire_and_forget(|| crate::interop::unregister_layer_hover_js(&self.map_id, layer_id));
24    }
25}