use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ScrollbarConfig {
#[serde(default = "crate::defaults::scrollbar_autohide_delay")]
pub scrollbar_autohide_delay: u64,
#[serde(default = "crate::defaults::scrollbar_position")]
pub scrollbar_position: String,
#[serde(default = "crate::defaults::scrollbar_width")]
pub scrollbar_width: f32,
#[serde(default = "crate::defaults::scrollbar_thumb_color")]
pub scrollbar_thumb_color: [f32; 4],
#[serde(default = "crate::defaults::scrollbar_track_color")]
pub scrollbar_track_color: [f32; 4],
#[serde(default = "crate::defaults::bool_true")]
pub scrollbar_command_marks: bool,
#[serde(default = "crate::defaults::bool_false")]
pub scrollbar_mark_tooltips: bool,
}
impl Default for ScrollbarConfig {
fn default() -> Self {
Self {
scrollbar_autohide_delay: crate::defaults::scrollbar_autohide_delay(),
scrollbar_position: crate::defaults::scrollbar_position(),
scrollbar_width: crate::defaults::scrollbar_width(),
scrollbar_thumb_color: crate::defaults::scrollbar_thumb_color(),
scrollbar_track_color: crate::defaults::scrollbar_track_color(),
scrollbar_command_marks: crate::defaults::bool_true(),
scrollbar_mark_tooltips: crate::defaults::bool_false(),
}
}
}