diff options
Diffstat (limited to '')
| -rw-r--r-- | runtime/src/multi_window/program.rs | 5 | ||||
| -rw-r--r-- | runtime/src/multi_window/state.rs | 6 | 
2 files changed, 7 insertions, 4 deletions
| diff --git a/runtime/src/multi_window/program.rs b/runtime/src/multi_window/program.rs index 591b3e9a..963a09d7 100644 --- a/runtime/src/multi_window/program.rs +++ b/runtime/src/multi_window/program.rs @@ -12,6 +12,9 @@ pub trait Program: Sized {      /// The type of __messages__ your [`Program`] will produce.      type Message: std::fmt::Debug + Send; +    /// The theme used to draw the [`Program`]. +    type Theme; +      /// Handles a __message__ and updates the state of the [`Program`].      ///      /// This is where you define your __update logic__. All the __messages__, @@ -28,5 +31,5 @@ pub trait Program: Sized {      fn view(          &self,          window: window::Id, -    ) -> Element<'_, Self::Message, Self::Renderer>; +    ) -> Element<'_, Self::Message, Self::Theme, Self::Renderer>;  } diff --git a/runtime/src/multi_window/state.rs b/runtime/src/multi_window/state.rs index 49f72c39..afd04519 100644 --- a/runtime/src/multi_window/state.rs +++ b/runtime/src/multi_window/state.rs @@ -92,7 +92,7 @@ where          bounds: Size,          cursor: mouse::Cursor,          renderer: &mut P::Renderer, -        theme: &<P::Renderer as iced_core::Renderer>::Theme, +        theme: &P::Theme,          style: &renderer::Style,          clipboard: &mut dyn Clipboard,          debug: &mut Debug, @@ -252,7 +252,7 @@ fn build_user_interfaces<'a, P: Program>(      renderer: &mut P::Renderer,      size: Size,      debug: &mut Debug, -) -> Vec<UserInterface<'a, P::Message, P::Renderer>> { +) -> Vec<UserInterface<'a, P::Message, P::Theme, P::Renderer>> {      caches          .drain(..)          .map(|cache| { @@ -267,7 +267,7 @@ fn build_user_interface<'a, P: Program>(      renderer: &mut P::Renderer,      size: Size,      debug: &mut Debug, -) -> UserInterface<'a, P::Message, P::Renderer> { +) -> UserInterface<'a, P::Message, P::Theme, P::Renderer> {      debug.view_started();      let view = program.view();      debug.view_finished(); | 
