use crate::{
buffer::Buffer,
prelude::Vec2,
widgets::{Element, LayoutNode, Widget},
};
#[derive(Debug, Default)]
pub struct Spacer;
impl Spacer {
#[must_use]
pub fn new() -> Self {
Self {}
}
}
impl<M: Clone + 'static> Widget<M> for Spacer {
fn render(&self, _buffer: &mut Buffer, _l: &LayoutNode) {}
fn height(&self, _size: &Vec2) -> usize {
0
}
fn width(&self, _size: &Vec2) -> usize {
0
}
}
impl<M: Clone + 'static> From<Spacer> for Box<dyn Widget<M>> {
fn from(value: Spacer) -> Self {
Box::new(value)
}
}
impl<M: Clone + 'static> From<Spacer> for Element<M> {
fn from(value: Spacer) -> Self {
Element::new(value)
}
}