use crate::math::{BoundingBox, Vector2};
use cotis::utils::ElementId;
pub trait ElementsList {
fn get_element_ids(&self) -> Vec<ElementId>;
fn get_parent_id(&self, id: ElementId) -> Option<ElementId>;
}
pub trait ElementDebugName {
fn debug_name(&self, id: ElementId) -> Option<&str>;
}
pub trait ElementBoundingBox {
fn bounding_box(&self, id: ElementId) -> Option<BoundingBox>;
}
pub trait ElementClipOffset {
fn clip_offset(&self, id: ElementId) -> Option<Vector2>;
}
pub trait ElementClipInternalSize {
fn clip_internal_size(&self, id: ElementId) -> Option<Vector2>;
}