summaryrefslogtreecommitdiffstats
path: root/widget
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector@hecrj.dev>2024-03-22 01:35:14 +0100
committerLibravatar Héctor Ramón Jiménez <hector@hecrj.dev>2024-03-22 01:35:14 +0100
commit53a183fe0d6aed460fbb8155ac9541757277aab3 (patch)
tree449574ac4d2d14a146db74a1fd96e8075a394db4 /widget
parentb972ebca8f8c23d2df1b45bb26038789766a5a65 (diff)
downloadiced-53a183fe0d6aed460fbb8155ac9541757277aab3.tar.gz
iced-53a183fe0d6aed460fbb8155ac9541757277aab3.tar.bz2
iced-53a183fe0d6aed460fbb8155ac9541757277aab3.zip
Restore `canvas::Frame` API
Diffstat (limited to 'widget')
-rw-r--r--widget/src/canvas.rs14
-rw-r--r--widget/src/qr_code.rs2
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();