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()
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()