veloren_voxygen/ui/ice/renderer/widget/
background_container.rs

1use super::super::{super::widget::background_container, IcedRenderer, Primitive};
2use iced::{Element, Layout, Point, Rectangle};
3
4impl background_container::Renderer for IcedRenderer {
5    fn draw<M, B>(
6        &mut self,
7        defaults: &Self::Defaults,
8        background: &B,
9        background_layout: Layout<'_>,
10        viewport: &Rectangle,
11        content: &Element<'_, M, Self>,
12        content_layout: Layout<'_>,
13        cursor_position: Point,
14    ) -> Self::Output
15    where
16        B: background_container::Background<Self>,
17    {
18        let back_primitive = background
19            .draw(self, defaults, background_layout, cursor_position, viewport)
20            .0;
21        let (content_primitive, mouse_interaction) =
22            content.draw(self, defaults, content_layout, cursor_position, viewport);
23        (
24            Primitive::Group {
25                primitives: vec![back_primitive, content_primitive],
26            },
27            mouse_interaction,
28        )
29    }
30}