diff options
| author | Carl Hetherington <cth@carlh.net> | 2023-03-03 01:00:53 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2023-03-03 01:00:53 +0100 |
| commit | 45bc91b9a909035252ee10afe4fed2eef996e4ed (patch) | |
| tree | a77c31afdb97926f7b75fbb601b2f39981fd8441 | |
| parent | 1945455899f23b84a71f4312c8c4080c7c0bcf0e (diff) | |
Un-check screens when they or their cinema are deleted.
| -rw-r--r-- | src/wx/screens_panel.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/wx/screens_panel.cc b/src/wx/screens_panel.cc index 6c5b28b8d..9d322e45e 100644 --- a/src/wx/screens_panel.cc +++ b/src/wx/screens_panel.cc @@ -333,6 +333,9 @@ ScreensPanel::remove_cinema_clicked () for (auto const& cinema: _selected_cinemas) { _ignore_cinemas_changed = true; ScopeGuard sg = [this]() { _ignore_cinemas_changed = false; }; + for (auto screen: cinema->screens()) { + _checked_screens.erase(screen); + } Config::instance()->remove_cinema(cinema); auto item = cinema_to_item(cinema); DCPOMATIC_ASSERT(item); @@ -446,7 +449,8 @@ ScreensPanel::remove_screen_clicked () } } - for (auto const& screen: _selected_screens) { + for (auto screen: _selected_screens) { + _checked_screens.erase(screen); screen->cinema->remove_screen(screen); auto item = screen_to_item(screen); DCPOMATIC_ASSERT(item); |
