diff options
author | 2022-02-11 22:07:21 +0700 | |
---|---|---|
committer | 2022-02-11 22:07:21 +0700 | |
commit | 01c5004959c9b11f2580840f4553ad7d706f4564 (patch) | |
tree | d3955f88244005d063d54dbfdb6d4db0cccc7dc7 /src | |
parent | 43a7ad72ef070929278e6d03d98077ac267fe2a6 (diff) | |
download | iced-01c5004959c9b11f2580840f4553ad7d706f4564.tar.gz iced-01c5004959c9b11f2580840f4553ad7d706f4564.tar.bz2 iced-01c5004959c9b11f2580840f4553ad7d706f4564.zip |
Allow pure widgets to borrow from `Application` data :tada:
Diffstat (limited to 'src')
-rw-r--r-- | src/pure.rs | 3 | ||||
-rw-r--r-- | src/pure/application.rs | 4 | ||||
-rw-r--r-- | src/pure/sandbox.rs | 4 |
3 files changed, 6 insertions, 5 deletions
diff --git a/src/pure.rs b/src/pure.rs index 94d0d2a0..7fe2bc59 100644 --- a/src/pure.rs +++ b/src/pure.rs @@ -20,7 +20,8 @@ pub use iced_pure::{Element as _, *}; /// A generic, pure [`Widget`]. -pub type Element<Message> = iced_pure::Element<Message, crate::Renderer>; +pub type Element<'a, Message> = + iced_pure::Element<'a, Message, crate::Renderer>; mod application; mod sandbox; diff --git a/src/pure/application.rs b/src/pure/application.rs index 973af9f7..395eba9a 100644 --- a/src/pure/application.rs +++ b/src/pure/application.rs @@ -66,7 +66,7 @@ pub trait Application: Sized { /// Returns the widgets to display in the [`Application`]. /// /// These widgets can produce __messages__ based on user interaction. - fn view(&self) -> pure::Element<Self::Message>; + fn view(&self) -> pure::Element<'_, Self::Message>; /// Returns the current [`Application`] mode. /// @@ -126,7 +126,7 @@ pub trait Application: Sized { struct Instance<A: Application> { application: A, - state: pure::State<A::Message, crate::Renderer>, + state: pure::State, } impl<A> crate::Application for Instance<A> diff --git a/src/pure/sandbox.rs b/src/pure/sandbox.rs index def90b6b..fbd1d7a8 100644 --- a/src/pure/sandbox.rs +++ b/src/pure/sandbox.rs @@ -32,7 +32,7 @@ pub trait Sandbox { /// Returns the widgets to display in the [`Sandbox`]. /// /// These widgets can produce __messages__ based on user interaction. - fn view(&self) -> pure::Element<Self::Message>; + fn view(&self) -> pure::Element<'_, Self::Message>; /// Returns the background color of the [`Sandbox`]. /// @@ -101,7 +101,7 @@ where Subscription::none() } - fn view(&self) -> pure::Element<T::Message> { + fn view(&self) -> pure::Element<'_, T::Message> { T::view(self) } |