コード例 #1
0
ファイル: point_widget.py プロジェクト: persts/DotDotGoose
    def display_count_tree(self):
        self.reset_model()
        for image in self.canvas.points:
            image_item = QtGui.QStandardItem(image)
            image_item.setEditable(False)
            class_item = QtGui.QStandardItem('')
            class_item.setEditable(False)
            self.model.appendRow([image_item, class_item])
            if image == self.canvas.current_image_name:
                font = image_item.font()
                font.setBold(True)
                image_item.setFont(font)
                self.treeView.setExpanded(image_item.index(), True)
                self.current_model_index = image_item.index()

            for class_name in self.canvas.classes:
                class_item = QtGui.QStandardItem(class_name)
                class_item.setEditable(False)
                class_item.setSelectable(False)
                class_count = QtGui.QStandardItem('0')
                if class_name in self.canvas.points[image]:
                    class_count = QtGui.QStandardItem(
                        str(len(self.canvas.points[image][class_name])))
                class_count.setEditable(False)
                class_count.setSelectable(False)
                image_item.appendRow([class_item, class_count])
        self.treeView.scrollTo(self.current_model_index)
コード例 #2
0
 def add_node(self, parent_path, list_elem):
     nodes = []
     for e in list_elem:
         node = QtGui.QStandardItem()
         node.setText(e)
         path = os.path.join(parent_path, e)
         if os.path.isdir(path):
             childrens = os.listdir(path)
             node.appendRows(self.add_node(path, childrens))
         nodes.append(node)
     return nodes
コード例 #3
0
    def update_autocompletion(self, model):
        print("self.target_path = " + self.target_path)
        #reinit the model
        if os.path.isdir(self.target_path):
            #get all element in path
            list_elem = os.listdir(self.target_path)
            list_dir = []
            #filter only folder in this path
            for e in list_elem:
                if os.path.isdir(os.path.join(self.target_path, e)):
                    list_dir.append(e)
            #convert it as items and add it to the model completer
            for d in list_dir:
                model.appendRow(QtGui.QStandardItem(d))

        completer = QtWidgets.QCompleter(model, self)

        return completer
        print("list_dir = " + str(list_dir))