From de551e63e47a66033e80da675b509984ca8bd64b Mon Sep 17 00:00:00 2001 From: Julio Biason Date: Sun, 24 Jan 2010 20:13:31 -0200 Subject: [PATCH] Mark all messages as read option. fixes #205 --- mitterlib/ui/ui_pygtk.py | 50 ++++++++++++++++++++++++++++++++------- pixmaps/reply.png | Bin 47144 -> 0 bytes 2 files changed, 42 insertions(+), 8 deletions(-) delete mode 100644 pixmaps/reply.png diff --git a/mitterlib/ui/ui_pygtk.py b/mitterlib/ui/ui_pygtk.py index 9c8807f..4611a91 100644 --- a/mitterlib/ui/ui_pygtk.py +++ b/mitterlib/ui/ui_pygtk.py @@ -337,6 +337,7 @@ class Interface(object): + @@ -353,6 +354,7 @@ class Interface(object): + @@ -410,6 +412,16 @@ class Interface(object): refresh_action.connect('activate', self._refresh) action_group.add_action_with_accel(refresh_action, None) + clear_action = gtk.Action('Clear', _('_Clear'), + _('Clear the message list'), gtk.STOCK_CLEAR) + clear_action.connect('activate', self._clear_posts) + action_group.add_action_with_accel(clear_action, 'l') + + all_read_action = gtk.Action('AllRead', _('_Mark All Read'), + _('Mark all messages as read'), gtk.STOCK_APPLY) + all_read_action.connect('activate', self._mark_all_read) + action_group.add_action(all_read_action) + self._update_action = gtk.Action('Update', _('_Update'), _('Update your status'), gtk.STOCK_ADD) self._update_action.set_property('sensitive', False) @@ -423,11 +435,6 @@ class Interface(object): action_group.add_action_with_accel(self._cancel_action, 'Escape') - clear_action = gtk.Action('Clear', _('_Clear'), - _('Clear the message list'), gtk.STOCK_CLEAR) - clear_action.connect('activate', self._clear_posts) - action_group.add_action_with_accel(clear_action, 'l') - settings_action = gtk.Action('Settings', _('_Settings'), _('Settings'), gtk.STOCK_PREFERENCES) settings_action.connect('activate', self._show_settings) @@ -956,6 +963,31 @@ class Interface(object): self._message_count_updated() return + def _mark_all_read(self, widget, user_data=None): + """Mark all messages as read.""" + grid = self._get_current_grid() + model = grid.get_model() + if len(model) == 0: + # no messages, so we don't worry (if I recall correctly, + # get_iter_first will fail if the model is empty) + return + + iter = model.get_iter_first() + while iter: + message = model.get_value(iter, 0) + message.read = True + iter = model.iter_next(iter) + + # update the counters + page = self._main_tabs.get_current_page() + if page == 0: + self._new_message_count = 0 + else: + self._new_replies_count = 0 + self._message_count_updated() + + return + def _delete_message(self, widget, user_data=None): """Delete a message.""" grid = self._get_current_grid() @@ -1426,15 +1458,17 @@ class Interface(object): has_alpha=False, bits_per_sample=8, width=48, height=48) self._images = {} - self._images['icon'] = gtk.gdk.pixbuf_new_from_file( - find_image('mitter.png')) + self._images['avatar'] = default_pixmap self._images['logo'] = gtk.gdk.pixbuf_new_from_file( find_image('mitter-big.png')) + + # icons (app and statusicon) + self._images['icon'] = gtk.gdk.pixbuf_new_from_file( + find_image('mitter.png')) self._images['new-messages'] = gtk.gdk.pixbuf_new_from_file( find_image('mitter-new.png')) self._images['icon-error'] = gtk.gdk.pixbuf_new_from_file( find_image('mitter-error.png')) - self._images['avatar'] = default_pixmap # This is the ugly bit for speeding up things and making # interthread communication. diff --git a/pixmaps/reply.png b/pixmaps/reply.png deleted file mode 100644 index 37b120b0acdf92e5c3cf033e92e8b4498c2ce46d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47144 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