use dynamic dispatch in render_in

This commit is contained in:
🪞👃🪞 2024-09-15 15:49:10 +03:00
parent ff6751d393
commit c2e91fb432
2 changed files with 3 additions and 4 deletions

View file

@ -26,7 +26,7 @@ pub trait RenderTarget<E: Engine> {
-> E::Area;
fn area_mut (&mut self)
-> &mut E::Area;
fn render_in (&mut self, area: E::Area, widget: &impl Widget<Engine = E>)
fn render_in (&mut self, area: E::Area, widget: &dyn Widget<Engine = E>)
-> Perhaps<E::Area>;
}

View file

@ -55,10 +55,9 @@ impl RenderTarget<Tui> for Tui {
#[inline] fn area_mut (&mut self) -> &mut <Self as Engine>::Area {
&mut self.area
}
#[inline] fn render_in (
&mut self,
#[inline] fn render_in (&mut self,
area: <Self as Engine>::Area,
widget: &impl Widget<Engine = Self>
widget: &dyn Widget<Engine = Self>
) -> Perhaps<<Self as Engine>::Area> {
let last = self.area();
*self.area_mut() = area;