summaryrefslogtreecommitdiffstats
path: root/renderer
diff options
context:
space:
mode:
Diffstat (limited to 'renderer')
-rw-r--r--renderer/src/fallback.rs56
1 files changed, 18 insertions, 38 deletions
diff --git a/renderer/src/fallback.rs b/renderer/src/fallback.rs
index 6a169692..fbd285db 100644
--- a/renderer/src/fallback.rs
+++ b/renderer/src/fallback.rs
@@ -3,7 +3,7 @@ use crate::core::image;
use crate::core::renderer;
use crate::core::svg;
use crate::core::{
- self, Background, Color, Point, Radians, Rectangle, Size, Transformation,
+ self, Background, Color, Image, Point, Rectangle, Size, Svg, Transformation,
};
use crate::graphics;
use crate::graphics::compositor;
@@ -149,25 +149,8 @@ where
delegate!(self, renderer, renderer.measure_image(handle))
}
- fn draw_image(
- &mut self,
- handle: Self::Handle,
- filter_method: image::FilterMethod,
- bounds: Rectangle,
- rotation: Radians,
- opacity: f32,
- ) {
- delegate!(
- self,
- renderer,
- renderer.draw_image(
- handle,
- filter_method,
- bounds,
- rotation,
- opacity
- )
- );
+ fn draw_image(&mut self, image: Image<A::Handle>, bounds: Rectangle) {
+ delegate!(self, renderer, renderer.draw_image(image, bounds));
}
}
@@ -180,19 +163,8 @@ where
delegate!(self, renderer, renderer.measure_svg(handle))
}
- fn draw_svg(
- &mut self,
- handle: svg::Handle,
- color: Option<Color>,
- bounds: Rectangle,
- rotation: Radians,
- opacity: f32,
- ) {
- delegate!(
- self,
- renderer,
- renderer.draw_svg(handle, color, bounds, rotation, opacity)
- );
+ fn draw_svg(&mut self, svg: Svg, bounds: Rectangle) {
+ delegate!(self, renderer, renderer.draw_svg(svg, bounds));
}
}
@@ -441,9 +413,9 @@ where
#[cfg(feature = "geometry")]
mod geometry {
use super::Renderer;
- use crate::core::{Point, Radians, Rectangle, Size, Vector};
+ use crate::core::{Point, Radians, Rectangle, Size, Svg, Vector};
use crate::graphics::cache::{self, Cached};
- use crate::graphics::geometry::{self, Fill, Path, Stroke, Text};
+ use crate::graphics::geometry::{self, Fill, Image, Path, Stroke, Text};
impl<A, B> geometry::Renderer for Renderer<A, B>
where
@@ -572,6 +544,14 @@ mod geometry {
delegate!(self, frame, frame.fill_text(text));
}
+ fn draw_image(&mut self, bounds: Rectangle, image: impl Into<Image>) {
+ delegate!(self, frame, frame.draw_image(bounds, image));
+ }
+
+ fn draw_svg(&mut self, bounds: Rectangle, svg: impl Into<Svg>) {
+ delegate!(self, frame, frame.draw_svg(bounds, svg));
+ }
+
fn push_transform(&mut self) {
delegate!(self, frame, frame.push_transform());
}
@@ -587,13 +567,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!(),
}