diff options
Diffstat (limited to 'src/wx/screens_panel.h')
| -rw-r--r-- | src/wx/screens_panel.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/wx/screens_panel.h b/src/wx/screens_panel.h index 7a075bf49..bf68870a6 100644 --- a/src/wx/screens_panel.h +++ b/src/wx/screens_panel.h @@ -28,6 +28,7 @@ DCPOMATIC_ENABLE_WARNINGS #include <boost/signals2.hpp> #include <list> #include <map> +#include <set> namespace dcpomatic { @@ -64,7 +65,7 @@ private: void selection_changed (); void search_changed (); void checkbox_changed (wxTreeListEvent& ev); - boost::optional<std::pair<wxTreeListItem, std::shared_ptr<Cinema>>> cinema_for_operation () const; + std::shared_ptr<Cinema> cinema_for_operation () const; void set_screen_checked (wxTreeListItem item, bool checked); void setup_cinema_checked_state (wxTreeListItem screen); int compare (std::string const& utf8_a, std::string const& utf8_b); @@ -88,16 +89,17 @@ private: Cinemas _cinemas; Screens _screens; + /* We want to be able to search (and so remove selected things from the view) * but not deselect them, so we maintain lists of selected cinemas and screens. */ - Cinemas _selected_cinemas; - Screens _selected_screens; + std::vector<std::shared_ptr<Cinema>> _selected_cinemas; + std::vector<std::shared_ptr<dcpomatic::Screen>> _selected_screens; /* Likewise with checked screens, except that we can work out which cinemas * are checked from which screens are checked, so we don't need to store the * cinemas. */ - Screens _checked_screens; + std::set<std::shared_ptr<dcpomatic::Screen>> _checked_screens; std::map<wxTreeListItem, std::shared_ptr<Cinema>> _item_to_cinema; std::map<wxTreeListItem, std::shared_ptr<dcpomatic::Screen>> _item_to_screen; |
