[demo] Window options window: add checkbox to toggle close button
This commit is contained in:
parent
e079ac5b46
commit
d895285482
1 changed files with 11 additions and 4 deletions
|
@ -5,6 +5,7 @@ use crate::__egui_github_link_file;
|
||||||
pub struct WindowOptions {
|
pub struct WindowOptions {
|
||||||
title: String,
|
title: String,
|
||||||
title_bar: bool,
|
title_bar: bool,
|
||||||
|
closable: bool,
|
||||||
collapsible: bool,
|
collapsible: bool,
|
||||||
resizable: bool,
|
resizable: bool,
|
||||||
scroll: bool,
|
scroll: bool,
|
||||||
|
@ -15,6 +16,7 @@ impl Default for WindowOptions {
|
||||||
Self {
|
Self {
|
||||||
title: "🗖 Window Options".to_owned(),
|
title: "🗖 Window Options".to_owned(),
|
||||||
title_bar: true,
|
title_bar: true,
|
||||||
|
closable: true,
|
||||||
collapsible: true,
|
collapsible: true,
|
||||||
resizable: true,
|
resizable: true,
|
||||||
scroll: false,
|
scroll: false,
|
||||||
|
@ -32,20 +34,23 @@ impl super::Demo for WindowOptions {
|
||||||
let Self {
|
let Self {
|
||||||
title,
|
title,
|
||||||
title_bar,
|
title_bar,
|
||||||
|
closable,
|
||||||
collapsible,
|
collapsible,
|
||||||
resizable,
|
resizable,
|
||||||
scroll,
|
scroll,
|
||||||
} = self.clone();
|
} = self.clone();
|
||||||
|
|
||||||
use super::View;
|
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
|
.id(egui::Id::new("demo_window_options")) // required since we change the title
|
||||||
.open(open)
|
|
||||||
.resizable(resizable)
|
.resizable(resizable)
|
||||||
.collapsible(collapsible)
|
.collapsible(collapsible)
|
||||||
.title_bar(title_bar)
|
.title_bar(title_bar)
|
||||||
.scroll(scroll)
|
.scroll(scroll);
|
||||||
.show(ctx, |ui| self.ui(ui));
|
if closable {
|
||||||
|
window = window.open(open);
|
||||||
|
}
|
||||||
|
window.show(ctx, |ui| self.ui(ui));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -56,6 +61,7 @@ impl super::View for WindowOptions {
|
||||||
let Self {
|
let Self {
|
||||||
title,
|
title,
|
||||||
title_bar,
|
title_bar,
|
||||||
|
closable,
|
||||||
collapsible,
|
collapsible,
|
||||||
resizable,
|
resizable,
|
||||||
scroll,
|
scroll,
|
||||||
|
@ -66,6 +72,7 @@ impl super::View for WindowOptions {
|
||||||
ui.text_edit_singleline(title);
|
ui.text_edit_singleline(title);
|
||||||
});
|
});
|
||||||
ui.checkbox(title_bar, "title_bar");
|
ui.checkbox(title_bar, "title_bar");
|
||||||
|
ui.checkbox(closable, "closable");
|
||||||
ui.checkbox(collapsible, "collapsible");
|
ui.checkbox(collapsible, "collapsible");
|
||||||
ui.checkbox(resizable, "resizable");
|
ui.checkbox(resizable, "resizable");
|
||||||
ui.checkbox(scroll, "scroll");
|
ui.checkbox(scroll, "scroll");
|
||||||
|
|
Loading…
Reference in a new issue