freya::prelude

Trait AreaModel

Source
pub trait AreaModel {
    // Required methods
    fn without_gaps(self, gap: &Gaps) -> Rect<f32, Measure>;
    fn move_with_offsets(
        &mut self,
        offset_x: &Length<f32, Measure>,
        offset_y: &Length<f32, Measure>,
    );
    fn adjust_size(&mut self, node: &Node);
    fn expand(&mut self, size: &Size2D<f32, Measure>);
    fn max_area_when_rotated(
        &self,
        center: Point2D<f32, Measure>,
    ) -> Rect<f32, Measure>;
    fn clip(&mut self, other: &Self);
}

Required Methods§

Source

fn without_gaps(self, gap: &Gaps) -> Rect<f32, Measure>

The area without any outer gap (e.g margin)

Source

fn move_with_offsets( &mut self, offset_x: &Length<f32, Measure>, offset_y: &Length<f32, Measure>, )

Adjust the available area with the node offsets (mainly used by scrollviews)

Source

fn adjust_size(&mut self, node: &Node)

Adjust the size given the Node data

Source

fn expand(&mut self, size: &Size2D<f32, Measure>)

Source

fn max_area_when_rotated( &self, center: Point2D<f32, Measure>, ) -> Rect<f32, Measure>

Source

fn clip(&mut self, other: &Self)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§