diff options
author | 2023-01-13 20:33:59 +0100 | |
---|---|---|
committer | 2023-01-13 20:33:59 +0100 | |
commit | 597af315af714f3ecadd195516e80506504dcb26 (patch) | |
tree | 200d0447efc60c9066b762c9f1a00ce55d66def7 /examples/exit | |
parent | d2b66805b350b4bd2ca5cb2818a6c05e3cfb5235 (diff) | |
parent | 507820a8438cec25074f92b72e118e0931fa7f9f (diff) | |
download | iced-597af315af714f3ecadd195516e80506504dcb26.tar.gz iced-597af315af714f3ecadd195516e80506504dcb26.tar.bz2 iced-597af315af714f3ecadd195516e80506504dcb26.zip |
Merge pull request #1647 from iced-rs/feature/widget-request-redraw
Widget-driven animations
Diffstat (limited to 'examples/exit')
-rw-r--r-- | examples/exit/src/main.rs | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/examples/exit/src/main.rs b/examples/exit/src/main.rs index 5d518d2f..6152f627 100644 --- a/examples/exit/src/main.rs +++ b/examples/exit/src/main.rs @@ -1,5 +1,7 @@ +use iced::executor; use iced::widget::{button, column, container}; -use iced::{Alignment, Element, Length, Sandbox, Settings}; +use iced::window; +use iced::{Alignment, Application, Command, Element, Length, Settings, Theme}; pub fn main() -> iced::Result { Exit::run(Settings::default()) @@ -8,7 +10,6 @@ pub fn main() -> iced::Result { #[derive(Default)] struct Exit { show_confirm: bool, - exit: bool, } #[derive(Debug, Clone, Copy)] @@ -17,28 +18,27 @@ enum Message { Exit, } -impl Sandbox for Exit { +impl Application for Exit { + type Executor = executor::Default; type Message = Message; + type Theme = Theme; + type Flags = (); - fn new() -> Self { - Self::default() + fn new(_flags: ()) -> (Self, Command<Message>) { + (Self::default(), Command::none()) } fn title(&self) -> String { String::from("Exit - Iced") } - fn should_exit(&self) -> bool { - self.exit - } - - fn update(&mut self, message: Message) { + fn update(&mut self, message: Message) -> Command<Message> { match message { - Message::Confirm => { - self.exit = true; - } + Message::Confirm => window::close(), Message::Exit => { self.show_confirm = true; + + Command::none() } } } |