diff options
author | 2024-03-22 01:35:14 +0100 | |
---|---|---|
committer | 2024-03-22 01:35:14 +0100 | |
commit | 53a183fe0d6aed460fbb8155ac9541757277aab3 (patch) | |
tree | 449574ac4d2d14a146db74a1fd96e8075a394db4 /widget | |
parent | b972ebca8f8c23d2df1b45bb26038789766a5a65 (diff) | |
download | iced-53a183fe0d6aed460fbb8155ac9541757277aab3.tar.gz iced-53a183fe0d6aed460fbb8155ac9541757277aab3.tar.bz2 iced-53a183fe0d6aed460fbb8155ac9541757277aab3.zip |
Restore `canvas::Frame` API
Diffstat (limited to 'widget')
-rw-r--r-- | widget/src/canvas.rs | 14 | ||||
-rw-r--r-- | widget/src/qr_code.rs | 2 |
2 files changed, 10 insertions, 6 deletions
diff --git a/widget/src/canvas.rs b/widget/src/canvas.rs index 81067491..7a21895a 100644 --- a/widget/src/canvas.rs +++ b/widget/src/canvas.rs @@ -6,7 +6,10 @@ mod program; pub use event::Event; pub use program::Program; -pub use crate::graphics::geometry::*; +pub use crate::graphics::geometry::{ + fill, gradient, path, stroke, Fill, Gradient, LineCap, LineDash, LineJoin, + Path, Stroke, Style, Text, +}; use crate::core; use crate::core::layout::{self, Layout}; @@ -30,13 +33,16 @@ pub type Cache<Renderer = crate::Renderer> = geometry::Cache<Renderer>; pub type Geometry<Renderer = crate::Renderer> = <Renderer as geometry::Renderer>::Geometry; +/// The frame supported by a renderer. +pub type Frame<Renderer = crate::Renderer> = geometry::Frame<Renderer>; + /// A widget capable of drawing 2D graphics. /// /// ## Drawing a simple circle /// If you want to get a quick overview, here's how we can draw a simple circle: /// /// ```no_run -/// # use iced_widget::canvas::{self, frame, Canvas, Fill, Frame, Geometry, Path, Program}; +/// # use iced_widget::canvas::{self, Canvas, Fill, Frame, Geometry, Path, Program}; /// # use iced_widget::core::{Color, Rectangle}; /// # use iced_widget::core::mouse; /// # use iced_widget::{Renderer, Theme}; @@ -53,7 +59,7 @@ pub type Geometry<Renderer = crate::Renderer> = /// /// fn draw(&self, _state: &(), renderer: &Renderer, _theme: &Theme, bounds: Rectangle, _cursor: mouse::Cursor) -> Vec<Geometry> { /// // We prepare a new `Frame` -/// let mut frame = frame(renderer, bounds.size()); +/// let mut frame = Frame::new(renderer, bounds.size()); /// /// // We create a `Path` representing a simple circle /// let circle = Path::circle(frame.center(), self.radius); @@ -62,7 +68,7 @@ pub type Geometry<Renderer = crate::Renderer> = /// frame.fill(&circle, Color::BLACK); /// /// // Finally, we produce the geometry -/// vec![frame.into()] +/// vec![frame.into_geometry()] /// } /// } /// diff --git a/widget/src/qr_code.rs b/widget/src/qr_code.rs index bc46aaaa..84898dc0 100644 --- a/widget/src/qr_code.rs +++ b/widget/src/qr_code.rs @@ -91,8 +91,6 @@ impl<'a, Message, Theme> Widget<Message, Theme, Renderer> _cursor: mouse::Cursor, _viewport: &Rectangle, ) { - use canvas::Frame; - let state = tree.state.downcast_ref::<State>(); let bounds = layout.bounds(); |