Convert Renderer::Theme to generic Widget type
This commit is contained in:
parent
545cc909c9
commit
7a50e9e8fb
88 changed files with 1219 additions and 1153 deletions
|
|
@ -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>;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue