Refactor code to remove closed windows
This commit is contained in:
parent
bea57e2110
commit
77503b4ffb
12
src/main.rs
12
src/main.rs
@ -126,15 +126,9 @@ impl eframe::App for MyApp {
|
||||
if ui.button("Add").clicked() && self.new_roll_window.is_none() {
|
||||
self.new_roll_window = Some(NewRollWindow::default());
|
||||
}
|
||||
let mut to_close = Vec::new();
|
||||
for (i, roll_view_window) in self.roll_views.iter_mut().enumerate() {
|
||||
if roll_view_window.draw(ctx, &mut self.state) {
|
||||
to_close.push(i);
|
||||
}
|
||||
}
|
||||
for i in to_close {
|
||||
self.roll_views.remove(i);
|
||||
}
|
||||
self.roll_views.retain_mut(|win| {
|
||||
!win.draw(ctx, &mut self.state)
|
||||
});
|
||||
if let Some(new_roll_window) = self.new_roll_window.as_mut() {
|
||||
if new_roll_window.draw(ctx, &mut self.state) {
|
||||
self.new_roll_window = None;
|
||||
|
Loading…
x
Reference in New Issue
Block a user