コード例 #1
0
ファイル: mikitree.py プロジェクト: gitter-badger/mikidown
 def updateToc(self, root, entries):
     self.clear()
     item = QTreeWidgetItem(self, [root, '0'])
     curLevel = 0
     for (level, h, p, a) in entries:
         val = [h, str(p), a]
         if level == curLevel:
             item = QTreeWidgetItem(item.parent(), val)
         elif level < curLevel:
             item = QTreeWidgetItem(item.parent().parent(), val)
             curLevel = level
         else:
             item = QTreeWidgetItem(item, val)
             curLevel = level
     self.expandAll()
コード例 #2
0
    def _loadDir(self, base_path, tree):
        for element in os.listdir(base_path):
            path = os.path.join(base_path, element)
            if (not os.path.isdir(path)) and (not path.endswith(".csv")):
                continue

            if os.path.isdir(path):
                parent_itm = QTreeWidgetItem(tree, [element])
                self._loadDir(path, parent_itm)
                if parent_itm.childCount() == 0:
                    parent = parent_itm.parent()
                    root = parent_itm.treeWidget().invisibleRootItem()
                    (parent or root).removeChild(parent_itm)
                else:
                    parent_itm.setIcon(
                        0,
                        QIcon(
                            "/usr/share/icons/ubuntu-mono-light/places/16/folder-home.svg"
                        ))
                    # parent_itm.setExpanded(True)
            else:
                if Graph.getGraphDesc(path) is None:
                    continue
                # item = GraphFileTreeWidgetItem(tree, element)
                item = QTreeWidgetItem(tree, [element])
                item.setData(0, Qt.UserRole, path)
                item.setCheckState(0, Qt.Unchecked)
コード例 #3
0
ファイル: mikiwindow.py プロジェクト: kissthink/mikidown
 def updateToc(self):
     ''' TOC is updated in `updateView`
         tocTree fields: [hdrText, hdrPosition, hdrAnchor]
     '''
     root = self.notesTree.currentPage()
     self.tocTree.clear()
     item = QTreeWidgetItem(self.tocTree, [root, '0'])
     curLevel = 0
     for (level, h, p, a) in parseHeaders(self.notesEdit.toPlainText()):
         val = [h, str(p), a]
         if level == curLevel:
             item = QTreeWidgetItem(item.parent(), val)
         elif level < curLevel:
             item = QTreeWidgetItem(item.parent().parent(), val)
             curLevel = level
         else:
             item = QTreeWidgetItem(item, val)
             curLevel = level
     self.tocTree.expandAll()
コード例 #4
0
 def updateToc(self):
     ''' TOC is updated in `updateView`
         tocTree fields: [hdrText, hdrPosition, hdrAnchor]
     '''
     root = self.notesTree.currentPage()
     self.tocTree.clear()
     item = QTreeWidgetItem(self.tocTree, [root, '0'])
     curLevel = 0
     for (level, h, p, a) in parseHeaders(self.notesEdit.toPlainText()):
         val = [h, str(p), a]
         if level == curLevel:
             item = QTreeWidgetItem(item.parent(), val)
         elif level < curLevel:
             item = QTreeWidgetItem(item.parent().parent(), val)
             curLevel = level
         else:
             item = QTreeWidgetItem(item, val)
             curLevel = level
     self.tocTree.expandAll()
コード例 #5
0
    def getTreePath(self, item: QtGui.QTreeWidgetItem):
        """ Return the list of ancestors of the item passed in parameters
            (itself included) sorted in ascending order.

        Keyword arguments:
            item -- The item to get the path.
        """
        path = [item.data]
        parent = item.parent()
        if parent != None:
            path.insert(0, parent.data)
        while parent != None:
            parent = parent.parent()
            if parent != None:
                path.insert(0, parent.data)
        path.pop(0)
        return path