Exemplo n.º 1
0
 def xdid_load(self, favcat_titles, favcat_selected, favnote, is_favorited):
     self.background_color = '#efeff4'
     l = ui.ListDataSource([])
     l.items = [
         {'title': list(i.values())[0],
         'image': get_diamond(get_color_from_favcat(list(i.keys())[0])),
         'accessory_type':'none'}
         for i in favcat_titles
         ]
     if is_favorited:
         l.items.append({
             'title': '取消收藏',
             'image': 'iob:close_32',
             'accessory_type':'none'
         })
     self['tableview1'].height = 32*len(l.items)
     l.delete_enabled = False
     l.action = self.set_new_favcat_selected
     if is_favorited and favcat_selected:
         self['tableview1'].selected_row = (0, int(favcat_selected[6]))
         self.new_favcat_selected = favcat_selected
     self['tableview1'].scroll_enabled = False
     self['tableview1'].data_source = l
     self['tableview1'].delegate = l
     self['textview1'].text = favnote
     self['button_close'].action = self.close_view
Exemplo n.º 2
0
 def xdid_load(self, item):
     self.border_color = '#c3c3c3'
     self.border_width = 1
     self.url = item['url']
     self['label_category'].text, self[
         'label_category'].background_color = get_color(
             item["category"].lower())
     self['label_length'].text = str(item["length"]) + '页'
     self['label_posted'].text = item["posted"]
     if item["visible"] == 'Yes':
         self['delete_line_view'].hidden = True
     else:
         self['delete_line_view'].hidden = False
     self['label_uploader'].text = item["uploader"]
     self['label_title'].text = item.get("title") or item.get(
         'japanese_title') or item.get('english_title')
     x, y, w, h = self['rating_location_view'].frame
     if item['is_personal_rating']:
         rating = item['display_rating']
         personal = True
     else:
         rating = item['rating']
         personal = False
     rating_stars_view = render_rating_stars_view(rating,
                                                  personal=personal,
                                                  width=w,
                                                  height=h,
                                                  name='rating_stars_view')
     rating_stars_view.x = x
     rating_stars_view.y = y
     self.add_subview(rating_stars_view)
     favcat = item.get('favcat')
     if favcat:
         self['label_posted'].border_color = get_color_from_favcat(favcat)
     if type(item['taglist']) == str:
         taglist = json.loads(item['taglist'])
     else:
         taglist = item['taglist']
     self['textview_taglist'].text = render_taglist_to_text(
         translate_taglist(taglist))
     self['button_open_gallery'].action = self.open_gallery
     self.add_subview(
         ui.ActivityIndicator(name='indicator', center=(56, 80)))
     thumbnail_url = item['thumbnail_url']
     self.img_path = os.path.join(
         CACHEPATH,
         os.path.split(urllib.parse.urlparse(thumbnail_url).path)[1])
     glv.PARSER.start_download_pic_normal([(self.img_path, thumbnail_url)],
                                          CACHEPATH)
     self.refresh()
Exemplo n.º 3
0
    def refresh(self):
        if self['rating_stars_view']:
            self.remove_subview(self['rating_stars_view'])
        self['label_japanese_title'].text = self.info.get('japanese_title')
        self['label_english_title'].text = self.info.get('english_title')
        self['label_url'].text = self.info.get('url')
        self['label_category'].text, self[
            'label_category'].background_color = get_color(
                self.info['category'].lower())
        self['label_length'].text = self.info["length"] + ' pages'
        self['label_posted'].text = self.info["posted"]
        if self.info["visible"] == 'Yes':
            self['delete_line_view'].hidden = True
        else:
            self['delete_line_view'].hidden = False
        self['label_uploader'].text = 'uploader: ' + self.info["uploader"]
        self[
            'label_favorite_num'].text = 'favorited: ' + self.info['favorited']
        self['label_language'].text = self.info['language']
        self['label_filesize'].text = self.info['file size']
        self.set_download_progress()
        x, y, w, h = self['rating_location_view'].frame
        if self.info['is_personal_rating']:
            rating = self.info['display_rating']
            personal = True
        else:
            rating = self.info['rating']
            personal = False
        rating_stars_view = render_rating_stars_view(rating,
                                                     personal=personal,
                                                     width=w,
                                                     height=h,
                                                     name='rating_stars_view')
        rating_stars_view.x = x
        rating_stars_view.y = y
        self.add_subview(rating_stars_view)
        self['button_rate_gallery'].bring_to_front()

        self['label_review'].text = self.info['rating'] + ' on ' + self.info[
            'number of reviews'] + ' reviews'
        if self.info.get('favcat'):
            self[
                'label_favorite_title'].background_color = get_color_from_favcat(
                    self.info['favcat'])
            self['label_favorite_title'].text = self.info['favcat_title']
            self['label_favorite_title'].text_color = 'white'
        self._load_slide()
Exemplo n.º 4
0
 def __init__(self, favcat, num, title, action):
     self.chosen = False
     self.width = 180
     self.height = 38
     self.favcat = favcat
     self.add_subview(
         ui.Label(frame=(3, 3, 50, 32),
                  text=num,
                  alignment=ui.ALIGN_RIGHT,
                  font=('<system>', 16)))
     self.add_subview(
         ui.ImageView(frame=(53, 3, 24, 32),
                      image=get_diamond(get_color_from_favcat(favcat))))
     self.add_subview(
         ui.Label(frame=(77, 3, 100, 32),
                  text=title,
                  alignment=ui.ALIGN_LEFT,
                  font=('<system>', 16)))
     self.add_subview(ui.Button(frame=(0, 0, 180, 38), action=action))
Exemplo n.º 5
0
 def confirm_favorite(self, sender):
     if len(sender.superview['textview1'].text.encode('utf-8')) > 200:
         console.hud_alert('Favorite Notes超字数限制', 'error')
     else:
         t = sender.superview.new_favcat_selected
         try:
             glv.PARSER.add_fav(self.info['url'],
                                favcat=t,
                                favnote=sender.superview['textview1'].text,
                                old_is_favorited=self.old_is_favorited)
         except:
             console.hud_alert('失败', 'error')
         else:
             if t != 'favdel':
                 self.info['favcat'] = t
                 self.info['favcat_title'] = sender.superview[
                     'tableview1'].data_source.items[sender.superview[
                         'tableview1'].selected_row[1]]['title']
                 self['gallery_info_view'][
                     'label_favorite_title'].background_color = get_color_from_favcat(
                         self.info['favcat'])
                 self['gallery_info_view'][
                     'label_favorite_title'].text = self.info[
                         'favcat_title']
                 self['gallery_info_view'][
                     'label_favorite_title'].text_color = 'white'
             else:
                 self.info['favcat'] = None
                 self.info['favcat_title'] = None
                 self['gallery_info_view'][
                     'label_favorite_title'].background_color = 'white'
                 self['gallery_info_view'][
                     'label_favorite_title'].text = '未收藏'
                 self['gallery_info_view'][
                     'label_favorite_title'].text_color = 'black'
             glv.PARSER.save_mangainfo(
                 self.info,
                 os.path.join(glv.PARSER.storage_path,
                              verify_url(self.info['url'])))
             sender.superview.close()