From 0ceee1cf3ae49f5bd0e3f2b346a4b34076e4523a Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Sun, 4 Aug 2024 03:28:43 +0200 Subject: Implement image support for `canvas` widget --- renderer/src/fallback.rs | 42 +++++++++++++++++++++++++++++++++++++++--- 1 file changed, 39 insertions(+), 3 deletions(-) (limited to 'renderer') diff --git a/renderer/src/fallback.rs b/renderer/src/fallback.rs index 6a169692..ddf7fd95 100644 --- a/renderer/src/fallback.rs +++ b/renderer/src/fallback.rs @@ -572,6 +572,42 @@ mod geometry { delegate!(self, frame, frame.fill_text(text)); } + fn draw_image( + &mut self, + handle: &iced_wgpu::core::image::Handle, + bounds: Rectangle, + filter_method: iced_wgpu::core::image::FilterMethod, + rotation: Radians, + opacity: f32, + ) { + delegate!( + self, + frame, + frame.draw_image( + handle, + bounds, + filter_method, + rotation, + opacity + ) + ); + } + + fn draw_svg( + &mut self, + handle: &iced_wgpu::core::svg::Handle, + bounds: Rectangle, + color: Option, + rotation: Radians, + opacity: f32, + ) { + delegate!( + self, + frame, + frame.draw_svg(handle, bounds, color, rotation, opacity) + ); + } + fn push_transform(&mut self) { delegate!(self, frame, frame.push_transform()); } @@ -587,13 +623,13 @@ mod geometry { } } - fn paste(&mut self, frame: Self, at: Point) { + fn paste(&mut self, frame: Self) { match (self, frame) { (Self::Primary(target), Self::Primary(source)) => { - target.paste(source, at); + target.paste(source); } (Self::Secondary(target), Self::Secondary(source)) => { - target.paste(source, at); + target.paste(source); } _ => unreachable!(), } -- cgit