From d89528548268fd43af1710f7fd53daf9692818ad Mon Sep 17 00:00:00 2001 From: Emil Ernerfeldt Date: Sun, 10 Jan 2021 10:41:46 +0100 Subject: [PATCH] [demo] Window options window: add checkbox to toggle close button --- egui_demo_lib/src/apps/demo/window_options.rs | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/egui_demo_lib/src/apps/demo/window_options.rs b/egui_demo_lib/src/apps/demo/window_options.rs index b62b3bb4..74947aa3 100644 --- a/egui_demo_lib/src/apps/demo/window_options.rs +++ b/egui_demo_lib/src/apps/demo/window_options.rs @@ -5,6 +5,7 @@ use crate::__egui_github_link_file; pub struct WindowOptions { title: String, title_bar: bool, + closable: bool, collapsible: bool, resizable: bool, scroll: bool, @@ -15,6 +16,7 @@ impl Default for WindowOptions { Self { title: "🗖 Window Options".to_owned(), title_bar: true, + closable: true, collapsible: true, resizable: true, scroll: false, @@ -32,20 +34,23 @@ impl super::Demo for WindowOptions { let Self { title, title_bar, + closable, collapsible, resizable, scroll, } = self.clone(); use super::View; - egui::Window::new(title) + let mut window = egui::Window::new(title) .id(egui::Id::new("demo_window_options")) // required since we change the title - .open(open) .resizable(resizable) .collapsible(collapsible) .title_bar(title_bar) - .scroll(scroll) - .show(ctx, |ui| self.ui(ui)); + .scroll(scroll); + if closable { + window = window.open(open); + } + window.show(ctx, |ui| self.ui(ui)); } } @@ -56,6 +61,7 @@ impl super::View for WindowOptions { let Self { title, title_bar, + closable, collapsible, resizable, scroll, @@ -66,6 +72,7 @@ impl super::View for WindowOptions { ui.text_edit_singleline(title); }); ui.checkbox(title_bar, "title_bar"); + ui.checkbox(closable, "closable"); ui.checkbox(collapsible, "collapsible"); ui.checkbox(resizable, "resizable"); ui.checkbox(scroll, "scroll");