From 8b8f7563ad33dafeadf6238e377748cdec17d67a Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Tue, 10 Sep 2019 19:41:49 +0200 Subject: Switch to workspace layout --- src/layout.rs | 62 ----------------------------------------------------------- 1 file changed, 62 deletions(-) delete mode 100644 src/layout.rs (limited to 'src/layout.rs') diff --git a/src/layout.rs b/src/layout.rs deleted file mode 100644 index de284a43..00000000 --- a/src/layout.rs +++ /dev/null @@ -1,62 +0,0 @@ -use stretch::result; - -use crate::{Point, Rectangle, Vector}; - -/// The computed bounds of a [`Node`] and its children. -/// -/// This type is provided by the GUI runtime to [`Widget::on_event`] and -/// [`Widget::draw`], describing the layout of the [`Node`] produced by -/// [`Widget::node`]. -/// -/// [`Node`]: struct.Node.html -/// [`Widget::on_event`]: widget/trait.Widget.html#method.on_event -/// [`Widget::draw`]: widget/trait.Widget.html#tymethod.draw -/// [`Widget::node`]: widget/trait.Widget.html#tymethod.node -#[derive(Debug)] -pub struct Layout<'a> { - layout: &'a result::Layout, - position: Point, -} - -impl<'a> Layout<'a> { - pub(crate) fn new(layout: &'a result::Layout) -> Self { - Self::with_parent_position(layout, Point::new(0.0, 0.0)) - } - - fn with_parent_position( - layout: &'a result::Layout, - parent_position: Point, - ) -> Self { - let position = - parent_position + Vector::new(layout.location.x, layout.location.y); - - Layout { layout, position } - } - - /// Gets the bounds of the [`Layout`]. - /// - /// The returned [`Rectangle`] describes the position and size of a - /// [`Node`]. - /// - /// [`Layout`]: struct.Layout.html - /// [`Rectangle`]: struct.Rectangle.html - /// [`Node`]: struct.Node.html - pub fn bounds(&self) -> Rectangle { - Rectangle { - x: self.position.x, - y: self.position.y, - width: self.layout.size.width, - height: self.layout.size.height, - } - } - - /// Returns an iterator over the [`Layout`] of the children of a [`Node`]. - /// - /// [`Layout`]: struct.Layout.html - /// [`Node`]: struct.Node.html - pub fn children(&'a self) -> impl Iterator> { - self.layout.children.iter().map(move |layout| { - Layout::with_parent_position(layout, self.position) - }) - } -} -- cgit From a97401aed2a173260a4abfdb65a77975ce6c0f01 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Sat, 14 Sep 2019 19:16:06 +0200 Subject: Rethink workspace structure --- src/layout.rs | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 src/layout.rs (limited to 'src/layout.rs') diff --git a/src/layout.rs b/src/layout.rs new file mode 100644 index 00000000..de284a43 --- /dev/null +++ b/src/layout.rs @@ -0,0 +1,62 @@ +use stretch::result; + +use crate::{Point, Rectangle, Vector}; + +/// The computed bounds of a [`Node`] and its children. +/// +/// This type is provided by the GUI runtime to [`Widget::on_event`] and +/// [`Widget::draw`], describing the layout of the [`Node`] produced by +/// [`Widget::node`]. +/// +/// [`Node`]: struct.Node.html +/// [`Widget::on_event`]: widget/trait.Widget.html#method.on_event +/// [`Widget::draw`]: widget/trait.Widget.html#tymethod.draw +/// [`Widget::node`]: widget/trait.Widget.html#tymethod.node +#[derive(Debug)] +pub struct Layout<'a> { + layout: &'a result::Layout, + position: Point, +} + +impl<'a> Layout<'a> { + pub(crate) fn new(layout: &'a result::Layout) -> Self { + Self::with_parent_position(layout, Point::new(0.0, 0.0)) + } + + fn with_parent_position( + layout: &'a result::Layout, + parent_position: Point, + ) -> Self { + let position = + parent_position + Vector::new(layout.location.x, layout.location.y); + + Layout { layout, position } + } + + /// Gets the bounds of the [`Layout`]. + /// + /// The returned [`Rectangle`] describes the position and size of a + /// [`Node`]. + /// + /// [`Layout`]: struct.Layout.html + /// [`Rectangle`]: struct.Rectangle.html + /// [`Node`]: struct.Node.html + pub fn bounds(&self) -> Rectangle { + Rectangle { + x: self.position.x, + y: self.position.y, + width: self.layout.size.width, + height: self.layout.size.height, + } + } + + /// Returns an iterator over the [`Layout`] of the children of a [`Node`]. + /// + /// [`Layout`]: struct.Layout.html + /// [`Node`]: struct.Node.html + pub fn children(&'a self) -> impl Iterator> { + self.layout.children.iter().map(move |layout| { + Layout::with_parent_position(layout, self.position) + }) + } +} -- cgit From b9e0f7494881ad7cdfbcbc16878ecc6ef717753f Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Fri, 20 Sep 2019 19:15:31 +0200 Subject: Create `iced_core` and `iced_native` --- src/layout.rs | 62 ----------------------------------------------------------- 1 file changed, 62 deletions(-) delete mode 100644 src/layout.rs (limited to 'src/layout.rs') diff --git a/src/layout.rs b/src/layout.rs deleted file mode 100644 index de284a43..00000000 --- a/src/layout.rs +++ /dev/null @@ -1,62 +0,0 @@ -use stretch::result; - -use crate::{Point, Rectangle, Vector}; - -/// The computed bounds of a [`Node`] and its children. -/// -/// This type is provided by the GUI runtime to [`Widget::on_event`] and -/// [`Widget::draw`], describing the layout of the [`Node`] produced by -/// [`Widget::node`]. -/// -/// [`Node`]: struct.Node.html -/// [`Widget::on_event`]: widget/trait.Widget.html#method.on_event -/// [`Widget::draw`]: widget/trait.Widget.html#tymethod.draw -/// [`Widget::node`]: widget/trait.Widget.html#tymethod.node -#[derive(Debug)] -pub struct Layout<'a> { - layout: &'a result::Layout, - position: Point, -} - -impl<'a> Layout<'a> { - pub(crate) fn new(layout: &'a result::Layout) -> Self { - Self::with_parent_position(layout, Point::new(0.0, 0.0)) - } - - fn with_parent_position( - layout: &'a result::Layout, - parent_position: Point, - ) -> Self { - let position = - parent_position + Vector::new(layout.location.x, layout.location.y); - - Layout { layout, position } - } - - /// Gets the bounds of the [`Layout`]. - /// - /// The returned [`Rectangle`] describes the position and size of a - /// [`Node`]. - /// - /// [`Layout`]: struct.Layout.html - /// [`Rectangle`]: struct.Rectangle.html - /// [`Node`]: struct.Node.html - pub fn bounds(&self) -> Rectangle { - Rectangle { - x: self.position.x, - y: self.position.y, - width: self.layout.size.width, - height: self.layout.size.height, - } - } - - /// Returns an iterator over the [`Layout`] of the children of a [`Node`]. - /// - /// [`Layout`]: struct.Layout.html - /// [`Node`]: struct.Node.html - pub fn children(&'a self) -> impl Iterator> { - self.layout.children.iter().map(move |layout| { - Layout::with_parent_position(layout, self.position) - }) - } -} -- cgit