summaryrefslogtreecommitdiffstats
path: root/graphics/src/widget/svg.rs
blob: 5817a5529699ba3664c46a24a85549b41e3b0ae2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//! Display vector graphics in your application.
use crate::backend::{self, Backend};
use crate::{Primitive, Rectangle, Renderer};
use iced_native::svg;

pub use iced_native::widget::svg::Svg;
pub use svg::Handle;

impl<B> svg::Renderer for Renderer<B>
where
    B: Backend + backend::Svg,
{
    fn dimensions(&self, handle: &svg::Handle) -> (u32, u32) {
        self.backend().viewport_dimensions(handle)
    }

    fn draw(&mut self, handle: svg::Handle, bounds: Rectangle) {
        self.draw_primitive(Primitive::Svg { handle, bounds })
    }
}