From 0240c3981b716c82ecb3364945815335b420a63e Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Sun, 10 Nov 2019 06:05:20 +0100 Subject: Draft custom layout engine based on `druid` --- native/src/size.rs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 native/src/size.rs (limited to 'native/src/size.rs') diff --git a/native/src/size.rs b/native/src/size.rs new file mode 100644 index 00000000..bd909292 --- /dev/null +++ b/native/src/size.rs @@ -0,0 +1,25 @@ +use std::f32; + +#[derive(Debug, Clone, Copy, PartialEq)] +pub struct Size { + /// The width. + pub width: f32, + /// The height. + pub height: f32, +} + +impl Size { + pub const ZERO: Size = Size::new(0., 0.); + pub const INFINITY: Size = Size::new(f32::INFINITY, f32::INFINITY); + + pub const fn new(width: f32, height: f32) -> Self { + Size { width, height } + } + + pub fn pad(&self, padding: f32) -> Self { + Size { + width: self.width + padding * 2.0, + height: self.height + padding * 2.0, + } + } +} -- cgit