/[straw]/straw/src/lib/MainWindow.py
ViewVC logotype

Diff of /straw/src/lib/MainWindow.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.100 by juri, Fri Nov 21 22:48:01 2003 UTC revision 1.101 by juri, Sat Nov 22 00:03:11 2003 UTC
# Line 681  class FeedListView: Line 681  class FeedListView:
681              if model[fc][self.COLUMN_ID] != feed.id:              if model[fc][self.COLUMN_ID] != feed.id:
682                  try:                  try:
683                      feed.signal_disconnect(                      feed.signal_disconnect(
684                          straw.ItemReadSignal, self.item_read)                          straw.ItemReadSignal, straw.main_window.item_read)
685                      feed.signal_disconnect(                      feed.signal_disconnect(
686                          straw.ItemsAddedSignal, self.feed_updated)                          straw.ItemsAddedSignal, straw.main_window.feed_updated)
687                      feed.signal_disconnect(                      feed.signal_disconnect(
688                          straw.AllItemsReadSignal, self.all_items_read)                          straw.AllItemsReadSignal,
689                            straw.main_window.all_items_read)
690                      feed.signal_disconnect(                      feed.signal_disconnect(
691                          straw.FeedPolledSignal, self.feed_updated)                          straw.FeedPolledSignal, straw.main_window.feed_updated)
692                      feed.signal_disconnect(                      feed.signal_disconnect(
693                          straw.FeedStatusChangedSignal, self.feed_updated)                          straw.FeedStatusChangedSignal,
694                            straw.main_window.feed_updated)
695                  except KeyError:                  except KeyError:
696                      log("Key error in display_feeds in MainWindow")                      log("Key error in display_feeds in MainWindow")
697                  feed.signal_connect(straw.ItemReadSignal, self.item_read, fc)                  feed.signal_connect(straw.ItemReadSignal,
698                                        straw.main_window.item_read, fc)
699                  feed.signal_connect(straw.AllItemsReadSignal,                  feed.signal_connect(straw.AllItemsReadSignal,
700                                      self.all_items_read, fc)                                      straw.main_window.all_items_read, fc)
701                  feed.signal_connect(                  feed.signal_connect(
702                      straw.ItemsAddedSignal, self.feed_updated, fc)                      straw.ItemsAddedSignal, straw.main_window.feed_updated, fc)
703                  feed.signal_connect(                  feed.signal_connect(
704                      straw.FeedPolledSignal, self.feed_updated, fc)                      straw.FeedPolledSignal, straw.main_window.feed_updated, fc)
705                  feed.signal_connect(                  feed.signal_connect(
706                      straw.FeedStatusChangedSignal, self.feed_updated, fc)                      straw.FeedStatusChangedSignal,
707                        straw.main_window.feed_updated, fc)
708                  new_string, new = self.number_of_new(feed)                  new_string, new = self.number_of_new(feed)
709                  weight = (pango.WEIGHT_NORMAL, pango.WEIGHT_BOLD)[new > 0]                  weight = (pango.WEIGHT_NORMAL, pango.WEIGHT_BOLD)[new > 0]
710                  model[fc][self.COLUMN_NAME] = feed.title                  model[fc][self.COLUMN_NAME] = feed.title
# Line 731  class FeedListView: Line 735  class FeedListView:
735                  feed = feeds[fc]                  feed = feeds[fc]
736                  iter = model.append(None)                  iter = model.append(None)
737                  new_string, new = self.number_of_new(feed)                  new_string, new = self.number_of_new(feed)
738                  feed.signal_connect(straw.ItemReadSignal, self.item_read, fc)                  feed.signal_connect(straw.ItemReadSignal,
739                                        straw.main_window.item_read, fc)
740                  feed.signal_connect(straw.AllItemsReadSignal,                  feed.signal_connect(straw.AllItemsReadSignal,
741                                      self.all_items_read, fc)                                      straw.main_window.all_items_read, fc)
742                  feed.signal_connect(straw.ItemsAddedSignal,                  feed.signal_connect(straw.ItemsAddedSignal,
743                                      self.feed_updated, fc)                                      straw.main_window.feed_updated, fc)
744                  feed.signal_connect(straw.FeedPolledSignal,                  feed.signal_connect(straw.FeedPolledSignal,
745                                      self.feed_updated, fc)                                      straw.main_window.feed_updated, fc)
746                  feed.signal_connect(straw.FeedStatusChangedSignal,                  feed.signal_connect(straw.FeedStatusChangedSignal,
747                                      self.feed_updated, fc)                                      straw.main_window.feed_updated, fc)
748                  weight = (pango.WEIGHT_NORMAL, pango.WEIGHT_BOLD)[new > 0]                  weight = (pango.WEIGHT_NORMAL, pango.WEIGHT_BOLD)[new > 0]
749                  status, pixbuf = self._select_feed_status_icon(feed)                  status, pixbuf = self._select_feed_status_icon(feed)
750                  model.set(iter, self.COLUMN_NAME, feed.title,                  model.set(iter, self.COLUMN_NAME, feed.title,
# Line 760  class FeedListView: Line 765  class FeedListView:
765          weight = (pango.WEIGHT_NORMAL, pango.WEIGHT_BOLD)[new[1] > 0]          weight = (pango.WEIGHT_NORMAL, pango.WEIGHT_BOLD)[new[1] > 0]
766          model[feed_index][self.COLUMN_UNREAD] = new[0]          model[feed_index][self.COLUMN_UNREAD] = new[0]
767          model[feed_index][self.COLUMN_BOLD] = weight          model[feed_index][self.COLUMN_BOLD] = weight
   
         for index, item in signal.changed:  
             self._item_list_view.mark_item(index)  
768          self._widget.queue_draw()          self._widget.queue_draw()
769    
770      def item_read(self, signal, feed_index):      def item_read(self, signal, feed_index):
# Line 771  class FeedListView: Line 773  class FeedListView:
773          weight = (pango.WEIGHT_NORMAL, pango.WEIGHT_BOLD)[new[1] > 0]          weight = (pango.WEIGHT_NORMAL, pango.WEIGHT_BOLD)[new[1] > 0]
774          model[feed_index][self.COLUMN_UNREAD] = new[0]          model[feed_index][self.COLUMN_UNREAD] = new[0]
775          model[feed_index][self.COLUMN_BOLD] = weight          model[feed_index][self.COLUMN_BOLD] = weight
         self._item_list_view.mark_item(  
             signal.sender.feed.get_item_index(signal.sender))  
776          self._widget.queue_draw()          self._widget.queue_draw()
777    
778      def feed_updated(self, signal, feed_index):      def feed_updated(self, signal, feed_index):
# Line 935  class MainWindow: Line 935  class MainWindow:
935      def on_menu_export_subscriptions_activate(self, *args):      def on_menu_export_subscriptions_activate(self, *args):
936          straw.main.show_export_subscriptions_dialog()          straw.main.show_export_subscriptions_dialog()
937    
938        def on_menu_poll_selected_activate(self, *args):
939            straw.PollManager.get_instance().poll(straw.main.get_visible_feed())
940    
941        def on_menu_mark_all_as_read_activate(self, *args):
942            straw.main.mark_as_read()
943    
944      def on_feed_info_visibility_button_clicked(self, button, *args):      def on_feed_info_visibility_button_clicked(self, button, *args):
945          self._feed_info_view.switch_state()          self._feed_info_view.switch_state()
946    
# Line 1002  class MainWindow: Line 1008  class MainWindow:
1008    
1009      def all_items_read(self, signal, feed_index):      def all_items_read(self, signal, feed_index):
1010          self._feed_list_view.all_items_read(signal, feed_index)          self._feed_list_view.all_items_read(signal, feed_index)
1011            for index, item in signal.changed:
1012                self._item_list_view.mark_item(index)
1013          self.update_total_unread_indicator()          self.update_total_unread_indicator()
1014    
1015      def item_read(self, signal, feed_index):      def item_read(self, signal, feed_index):
1016          self._feed_list_view.item_read(signal, feed_index)          self._feed_list_view.item_read(signal, feed_index)
1017            self._item_list_view.mark_item(
1018                signal.sender.feed.get_item_index(signal.sender))
1019          self.update_total_unread_indicator()          self.update_total_unread_indicator()
1020    
1021      def feed_updated(self, signal, feed_index):      def feed_updated(self, signal, feed_index):

Legend:
Removed from v.1.100  
changed lines
  Added in v.1.101

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26