jellyflow_runtime/io/tuning/
auto_pan.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
5pub struct NodeGraphAutoPanTuning {
6 #[serde(default)]
7 pub on_node_drag: bool,
8 #[serde(default)]
9 pub on_connect: bool,
10 #[serde(default)]
11 pub on_node_focus: bool,
12
13 #[serde(default = "default_auto_pan_speed")]
15 pub speed: f32,
16
17 #[serde(default = "default_auto_pan_margin")]
19 pub margin: f32,
20}
21
22fn default_auto_pan_speed() -> f32 {
23 900.0
24}
25
26fn default_auto_pan_margin() -> f32 {
27 40.0
28}
29
30impl Default for NodeGraphAutoPanTuning {
31 fn default() -> Self {
32 Self {
33 on_node_drag: true,
34 on_connect: true,
35 on_node_focus: true,
36 speed: default_auto_pan_speed(),
37 margin: default_auto_pan_margin(),
38 }
39 }
40}