From 8afd1e8a80df0a2263a5c4b83f9c917f4cfd8413 Mon Sep 17 00:00:00 2001 From: DYefremov Date: Thu, 12 Jul 2018 19:44:27 +0300 Subject: [PATCH] select all, including the filter --- app/ui/satellites_dialog.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/app/ui/satellites_dialog.py b/app/ui/satellites_dialog.py index a7abed08..4be69111 100644 --- a/app/ui/satellites_dialog.py +++ b/app/ui/satellites_dialog.py @@ -595,9 +595,8 @@ class SatellitesUpdateDialog: self._download_task = False def on_selected_toggled(self, toggle, path): - s_model = self._sat_view.get_model() - itr = self._filter_model.convert_iter_to_child_iter(s_model.convert_iter_to_child_iter(s_model.get_iter(path))) - self._filter_model.get_model().set_value(itr, 4, not toggle.get_active()) + model = self._sat_view.get_model() + self.update_state(model, path, not toggle.get_active()) self.update_receive_button_state(self._filter_model) @run_idle @@ -658,10 +657,15 @@ class SatellitesUpdateDialog: self.update_selection(view, False) def update_selection(self, view, select): - model = get_base_model(view.get_model()) - view.get_model().foreach(lambda mod, path, itr: model.set_value(model.get_iter(path), 4, select)) + model = view.get_model() + view.get_model().foreach(lambda mod, path, itr: self.update_state(model, path, select)) self.update_receive_button_state(self._filter_model) + def update_state(self, model, path, select): + """ Updates checkbox state by given path in the list """ + itr = self._filter_model.convert_iter_to_child_iter(model.convert_iter_to_child_iter(model.get_iter(path))) + self._filter_model.get_model().set_value(itr, 4, select) + def on_popup_menu(self, menu, event): """ Shows popup menu for the view """ if event.get_event_type() == Gdk.EventType.BUTTON_PRESS and event.button == Gdk.BUTTON_SECONDARY: