Пример #1
0
    def draw_file(self, filel, filei):
        filel.clear()
        filei.clear()
        filel.border(0)
        filei.border(0)

        if not self.cookie or not self.tokens:
            filel.refresh()
            filei.refresh()
            return

        content = pcs.list_dir(self.cookie, self.tokens, self.path, self.page_num)
        if not content:
            filel.addstr(2,2, "Network Error - content empty")
        elif content.get('errno', -1) != 0:
            filel.addstr(2,2, "Network Error - error")
        elif content['list']:
            # process here
            self.files = content['list']
            self.draw_current_list(filel, filei)
        else:
            filel.addstr(2,2, "Already last page")
            self.has_next = False

        filel.refresh()
        filei.refresh()
Пример #2
0
    def draw_file(self, filel, filei):
        filel.clear()
        filei.clear()
        filel.border(0)
        filei.border(0)

        if not self.cookie or not self.tokens:
            filel.refresh()
            filei.refresh()
            return

        content = pcs.list_dir(self.cookie, self.tokens, self.path,
                               self.page_num)
        if not content:
            filel.addstr(2, 2, "Network Error - content empty")
        elif content.get('errno', -1) != 0:
            filel.addstr(2, 2, "Network Error - error")
        elif content['list']:
            # process here
            self.files = content['list']
            self.draw_current_list(filel, filei)
        else:
            filel.addstr(2, 2, "Already last page")
            self.has_next = False

        filel.refresh()
        filei.refresh()
 def list_dir(self, parent_iter):
     if self.treestore[parent_iter][LOADED_COL]:
         return
     tree_path = self.treestore.get_path(parent_iter)
     path = self.treestore[tree_path][PATH_COL]
     first_child_iter = self.treestore.iter_nth_child(parent_iter, 0)
     if (first_child_iter
             and not self.treestore[first_child_iter][NAME_COL]):
         self.treestore.remove(first_child_iter)
     has_next = True
     page_num = 1
     while has_next:
         infos = pcs.list_dir(self.app.cookie,
                              self.app.tokens,
                              path,
                              page=page_num,
                              num=NUM)
         page_num = page_num + 1
         if not infos or infos.get('errno', -1) != 0:
             has_next = False
             return
         if len(infos['list']) < NUM:
             has_next = False
         for pcs_file in infos['list']:
             if not pcs_file['isdir']:
                 continue
             if pcs_file['dir_empty']:
                 empty = True
             else:
                 empty = False
             item = self.treestore.append(parent_iter, [
                 pcs_file['server_filename'],
                 pcs_file['path'],
                 empty,
                 False,
             ])
             # 加入一个临时的占位点.
             if not empty:
                 self.treestore.append(item,
                                       ['', pcs_file['path'], True, False])
     self.treestore[parent_iter][LOADED_COL] = True
Пример #4
0
 def list_dir(self, parent_iter):
     if self.treestore[parent_iter][LOADED_COL]:
         return
     tree_path = self.treestore.get_path(parent_iter)
     path = self.treestore[tree_path][PATH_COL]
     first_child_iter = self.treestore.iter_nth_child(parent_iter, 0)
     if (first_child_iter and
             not self.treestore[first_child_iter][NAME_COL]):
         self.treestore.remove(first_child_iter)
     has_next = True
     page_num = 1
     while has_next:
         infos = pcs.list_dir(
                 self.app.cookie, self.app.tokens, path,
                 page=page_num, num=NUM)
         page_num = page_num + 1
         if not infos or infos['errno'] != 0:
             has_next = False
             return
         if len(infos['list']) < NUM:
             has_next = False
         for pcs_file in infos['list']:
             if not pcs_file['isdir']:
                 continue
             if pcs_file['dir_empty']:
                 empty = True
             else:
                 empty = False
             item = self.treestore.append(parent_iter, [
                 pcs_file['server_filename'],
                 pcs_file['path'],
                 empty,
                 False,
                 ])
             # 加入一个临时的占位点.
             if not empty:
                 self.treestore.append(item, [
                     '', pcs_file['path'], True, False])
     self.treestore[parent_iter][LOADED_COL] = True