예제 #1
0
 def fresh_category(self, item):
     node = self.sharewin.get_node(item)
     cate_id = node['data']['id']
     mc = Casing.MultiCasing()
     for i in self.cate_items[cate_id]:
         d = self.get_casting(self.feeds[i])
         mc.append(d)
     mc.start_sync_thread()
예제 #2
0
 def startup(self, item):
     sharewin = self.parent
     RssDb.init(Globals.rss_dbfile)
     categories = RssDb.Category.select()
     sharewin.tree.Freeze()
     for i in categories:
         data = {
             'type': 'rss',
             'level': 'category',
             'caption': i.title,
             'data': {
                 'save': False,
                 'id': i.id
             }
         }
         root = sharewin.addnode(item, data=data)
         self.add_category_ids(i.id, root)
         for f in RssDb.Feed.select(RssDb.Feed.c.category_id == i.id,
                                    order_by=[RssDb.Feed.c.title]):
             number = RssDb.Data.un_read_count(f.id)
             if number:
                 caption = u"(%d)%s" % (number, f.title)
             else:
                 caption = f.title
             data = {
                 'type': 'rss',
                 'level': 'feed',
                 'caption': caption,
                 'data': {
                     'url': f.link,
                     'homeurl': f.homelink,
                     'save': False,
                     'id': f.id
                 }
             }
             obj = sharewin.addnode(root, data=data)
             self.add_feed_ids(i.id, f.id, obj)
             if number:
                 sharewin.tree.SetItemBold(obj, True)
         sharewin.tree.Expand(root)
     sharewin.tree.Thaw()
     if categories:
         wx.CallAfter(sharewin.tree.Expand, item)
         if Globals.mainframe.pref.rss_start:
             mc = Casing.MultiCasing()
             for item in self.feeds.values():
                 d = self.get_casting(item)
                 mc.append(d)
             mc.start_sync_thread()