summaryrefslogtreecommitdiffstats
path: root/graphics/src/widget
diff options
context:
space:
mode:
authorLibravatar shan <shankern@protonmail.com>2022-10-07 11:41:50 -0700
committerLibravatar shan <shankern@protonmail.com>2022-10-07 12:01:07 -0700
commit12a87c54eb68b992676060c80e518ffb29445cfc (patch)
treeb3fba16f2dd95a084cdbc3850f59a049c103c355 /graphics/src/widget
parentf9a6efcaa03728f43aaa105af8936c1ed4778388 (diff)
downloadiced-12a87c54eb68b992676060c80e518ffb29445cfc.tar.gz
iced-12a87c54eb68b992676060c80e518ffb29445cfc.tar.bz2
iced-12a87c54eb68b992676060c80e518ffb29445cfc.zip
Added support for relative positioning of gradient fills. Addressed some PR feedback.
Diffstat (limited to 'graphics/src/widget')
-rw-r--r--graphics/src/widget/canvas.rs2
-rw-r--r--graphics/src/widget/canvas/frame.rs10
2 files changed, 6 insertions, 6 deletions
diff --git a/graphics/src/widget/canvas.rs b/graphics/src/widget/canvas.rs
index fe0f618f..ea8af8c2 100644
--- a/graphics/src/widget/canvas.rs
+++ b/graphics/src/widget/canvas.rs
@@ -28,7 +28,7 @@ pub use stroke::{LineCap, LineDash, LineJoin, Stroke};
pub use text::Text;
use crate::{Backend, Primitive, Renderer};
-pub use crate::gradient::Gradient;
+pub use crate::gradient::{Gradient, Position, Location};
use iced_native::layout::{self, Layout};
use iced_native::mouse;
diff --git a/graphics/src/widget/canvas/frame.rs b/graphics/src/widget/canvas/frame.rs
index ccba840a..6dd0d06a 100644
--- a/graphics/src/widget/canvas/frame.rs
+++ b/graphics/src/widget/canvas/frame.rs
@@ -1,4 +1,4 @@
-use lyon::geom::euclid::Vector2D;
+use lyon::geom::euclid::Point2D;
use std::borrow::Cow;
use iced_native::{Point, Rectangle, Size, Vector};
@@ -38,11 +38,11 @@ pub(crate) struct Transform {
impl Transform {
/// Transforms the given [Point] by the transformation matrix.
- pub(crate) fn apply_to(&self, mut point: Point) -> Point {
+ pub(crate) fn transform_point(&self, mut point: Point) -> Point {
let transformed =
- self.raw.transform_vector(Vector2D::new(point.x, point.y));
- point.x = transformed.x + self.raw.m31;
- point.y = transformed.y + self.raw.m32;
+ self.raw.transform_point(Point2D::new(point.x, point.y));
+ point.x = transformed.x;
+ point.y = transformed.y;
point
}
}