use egui::Rect;
#[derive(Clone, Debug)]
#[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))]
pub struct SplitNode {
pub rect: Rect,
pub fraction: f32,
pub fully_collapsed: bool,
pub collapsed_leaf_count: i32,
}
impl SplitNode {
pub const fn new(
rect: Rect,
fraction: f32,
fully_collapsed: bool,
collapsed_leaf_count: i32,
) -> Self {
Self {
rect,
fraction,
fully_collapsed,
collapsed_leaf_count,
}
}
#[inline]
pub fn set_rect(&mut self, new_rect: Rect) {
self.rect = new_rect;
}
pub fn rect(&self) -> Rect {
self.rect
}
}