示例#1
0
    def createTreeItem(self, parent, text, uuid = ""):
        """
        Creates tree items
        parent: parent item
        text: item text
        uuid: complex uuid
        """
        count = parent.childCount()
        children = []
        #making a list of item names
        for i in range(count):
            child = parent.child(i)
            children.append(child.text(0))

        #checking if the text is already in the tree widget
        if text not in children:
            #case not it should be created
            item = QTreeWidgetItem(parent)
            item.setExpanded(True)
            item.setText(0,text)
            #adding the complex uuid to the tree widget
            if uuid != "":
                item.setText(1, str(uuid))
        else:
            #case already exists the correspondind item should be returned
            for i in range(count):
                child = parent.child(i)
                if child.text(0) == text:
                    item = child
        return item
示例#2
0
		def _add_children(item, mod):
			for ref in mod.refs:
				try:
					childMod = self.project.get_module_at_filename(ref)
				except KeyError:
					childMod = self.project.get_module_at_dottedname(ref)

				if childMod in visited: return
				visited.add(childMod)

				child = QTreeWidgetItem(item)
				child.setText(0, ref)
				self._setup_font(child, ref, childMod.owner)
				child.setIcon(0, self._select_icon(childMod.owner))
				child.setData(0, self.TYPE_MODULE, childMod)
				child.setData(0, self.TYPE_NODE, None)
				item.addChild(child)
				_add_children(child, childMod)

			for name, sym in mod.symbols.items():
				if not isinstance(sym, Name): continue
				child = QTreeWidgetItem(item)
				child.setText(0, name)
				self._setup_font(child, name, sym)
				child.setIcon(0, self._select_icon(sym))
				child.setData(0, self.TYPE_MODULE, mod)
				child.setData(0, self.TYPE_NODE, mod.symbols[name])
				item.addChild(child)
示例#3
0
    def loadReclassificationConf(self, reclassificationDict):
        """
        Makes the treewidget using the reclassification dictionary obtained from the configuration file
        """
        index = self.edgvVersion

        self.treeWidget.clear()

        #invisible root item
        rootItem = self.treeWidget.invisibleRootItem()

        for category in reclassificationDict.keys():
            if category == 'version':
                continue
            if category == 'uiParameterJsonDict':
                self.populateFromUiParameterJsonDict(
                    reclassificationDict[category])
                continue
            categoryItem = QTreeWidgetItem(rootItem)
            categoryItem.setText(0, category)
            for edgvClass in reclassificationDict[category].keys():
                classItem = QTreeWidgetItem(categoryItem)
                classItem.setText(0, edgvClass)
                for button in reclassificationDict[category][edgvClass].keys():
                    buttonItem = QTreeWidgetItem(classItem)
                    buttonItem.setText(0, button)
                    for attribute in reclassificationDict[category][edgvClass][
                            button].keys():
                        attributeItem = QTreeWidgetItem(buttonItem)
                        attributeItem.setText(0, attribute)
                        attributeItem.setText(
                            1, reclassificationDict[category][edgvClass]
                            [button][attribute])
示例#4
0
 def add_modify_account(self, add=False):
     dlg = AccountSettingsDialog(self)
     if not add:
         item = self.widgets.accounts.currentItem()
         if not item:
             return
         account = self.account_items.get(item)
         if not account:
             return
         #account = item.data(0, ITEM_PLACEHOLDER_ROLE).toPyObject()
         dlg.fill_from(account)
     else:
         item = QTreeWidgetItem()
     result = dlg.exec_()
     
     if not result == QDialog.Accepted:
         return
     new_a = dlg.values
     
     item.setText(0, new_a["name"])
     #get icon and name...
     name, icon = getProtoIconAndName(getattr(yobotproto, new_a["improto"], -1))
     item.setText(1, name)
     item.setIcon(1, icon)
     if add:
         if self.account_exists(new_a):
             print "account already exists.. not adding"
             return
         item.setData(0, ITEM_PLACEHOLDER_ROLE, new_a)
         self.widgets.accounts.addTopLevelItem(item)
         self.config.accounts.append(new_a)
     else:
         account.update(new_a)
示例#5
0
    def add(self,
            seq,
            text,
            position,
            foreground=False,
            background=False,
            icon=False):
        from PyQt4.QtGui import QTreeWidgetItem

        item = QTreeWidgetItem()

        item.setText(0, text)
        item.setData(0, Qt.UserRole, position)

        if foreground:
            item.setForeground(0, foreground)

        if background:
            item.setBackground(0, background)

        if icon:
            item.setIcon(0, icon)

        seq.append(item)
        return item
    def __init__(self):
        super(LessonSelector, self).__init__()
        self.setupUi(self)

        self.lesson = None

        allLessons = defaultdict(list)
        for lesson in lessons:
            allLessons[lesson.group].append(lesson)

        lessonIcon = QIcon(os.path.dirname(__file__) + '/lesson.gif')
        for group, groupLessons in allLessons.iteritems():
            groupItem = QTreeWidgetItem()
            groupItem.setText(0, group)
            for lesson in groupLessons:
                lessonItem = QTreeWidgetItem()
                lessonItem.lesson = lesson
                lessonItem.setText(0, lesson.name)
                lessonItem.setIcon(0, lessonIcon)
                groupItem.addChild(lessonItem)
            self.lessonsTree.addTopLevelItem(groupItem)

        self.lessonsTree.sortItems(0, 0)

        self.lessonsTree.expandAll()

        self.lessonsTree.currentItemChanged.connect(self.currentItemChanged)
        self.lessonsTree.itemDoubleClicked.connect(self.itemDoubleClicked)

        self.buttonBox.accepted.connect(self.okPressed)
        self.buttonBox.rejected.connect(self.cancelPressed)

        self.buttonBox.button(QDialogButtonBox.Ok).setEnabled(False)
 def __add_themen(self):
     self.ui.TREE_THEMEN.headerItem().setText(0, '')
     #TODO: resize column to contents
     #all of these don't work??
     self.ui.TREE_THEMEN.header().resizeSection(0, 250)
     self.ui.TREE_THEMEN.header().setResizeMode(
         QHeaderView.ResizeToContents)
     self.ui.TREE_THEMEN.header().setStretchLastSection(True)
     themen = self.json_settings.themen()
     for thema_name, thema in themen.iteritems():
         tree_thema = QTreeWidgetItem(self.ui.TREE_THEMEN)
         tree_thema.setText(0, thema_name)
         tree_thema.setData(0, Qt.UserRole, thema)
         tree_thema.setFlags(tree_thema.flags() | Qt.ItemIsUserCheckable)
         if thema_name == 'DKM':
             tree_thema.setCheckState(0, Qt.Checked)
         else:
             tree_thema.setCheckState(0, Qt.Unchecked)
         if not thema.subthemen is None:
             for subthema in thema.subthemen:
                 if VRP_DEBUG is True:
                     QgsMessageLog.logMessage(
                         u'Subthema: {0}'.format(subthema.name),
                         DLG_CAPTION)
                 tree_subthema = QTreeWidgetItem()
                 tree_subthema.setText(0, subthema.name)
                 tree_subthema.setData(0, Qt.UserRole, subthema)
                 tree_subthema.setFlags(tree_subthema.flags()
                                        | Qt.ItemIsUserCheckable)
                 tree_subthema.setCheckState(0, Qt.Unchecked)
                 tree_thema.addChild(tree_subthema)
示例#8
0
 def build_menu_item(action):
     """Return a QTreeWidgetItem with children for all the actions in the submenu."""
     menuitem = QTreeWidgetItem()
     text = qutil.removeAccelelator(action.text())
     menuitem.setText(0, _("Menu {name}").format(name=text))
     add_actions(menuitem, action.menu().actions())
     return menuitem
示例#9
0
 def populate(self):
     """Puts the deleted/changed snippets in the tree."""
     self.deletedItem.takeChildren()
     self.deletedItem.setExpanded(True)
     self.deletedItem.setCheckState(0, Qt.Unchecked)
     self.changedItem.takeChildren()
     self.changedItem.setExpanded(True)
     self.changedItem.setCheckState(0, Qt.Unchecked)
     
     builtins = list(builtin.builtin_snippets)
     builtins.sort(key = snippets.title)
     
     names = frozenset(snippets.names())
     
     for name in builtins:
         if name in names:
             if snippets.isoriginal(name):
                 continue
             parent = self.changedItem
         else:
             parent = self.deletedItem
         
         item = QTreeWidgetItem(parent)
         item.name = name
         item.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
         item.setCheckState(0, Qt.Unchecked)
         item.setText(0, snippets.title(name))
     
     self.deletedItem.setDisabled(self.deletedItem.childCount() == 0)
     self.changedItem.setDisabled(self.changedItem.childCount() == 0)
     self.checkOkButton()
示例#10
0
    def createTreeItem(self, parent, text, uuid=""):
        """
        Creates tree items
        parent: parent item
        text: item text
        uuid: complex uuid
        """
        count = parent.childCount()
        children = []
        #making a list of item names
        for i in range(count):
            child = parent.child(i)
            children.append(child.text(0))

        #checking if the text is already in the tree widget
        if text not in children:
            #case not it should be created
            item = QTreeWidgetItem(parent)
            item.setExpanded(True)
            item.setText(0, text)
            #adding the complex uuid to the tree widget
            if uuid != "":
                item.setText(1, str(uuid))
        else:
            #case already exists the correspondind item should be returned
            for i in range(count):
                child = parent.child(i)
                if child.text(0) == text:
                    item = child
        return item
示例#11
0
 def on_import_case(self):
     query_result = QMessageBox.warning(self, u'警告', u'执行导入操作时,测试标识相同的用例将被覆盖,确认执行导入操作!?',
                         QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
     if query_result == QMessageBox.No:
         return
     case_files = QFileDialog.getOpenFileNames(self, u'选择用例文件', '.', '')
     total_import_count = len(case_files)
     if not total_import_count:
         return
     self.process_progressbar.setMaximum(total_import_count)
     self.process_progressbar.setMinimum(0)
     fail = 0
     import_count = 0
     try:
         for file in case_files:
             test_case = TestCase()
             test_case.load_from_file(str(file))
             ret = self.testcase_tree.findItems(test_case.case_mark, Qt.MatchCaseSensitive | Qt.MatchExactly, 0)
             if ret:
                 ret[0].setText(1, unicode(test_case.case_name))
             else:
                 item = QTreeWidgetItem()
                 item.setText(0, unicode(test_case.case_mark))
                 item.setText(1, unicode(test_case.case_name))
                 item.setText(2, test_case.case_id)
                 item.setCheckState(0, Qt.Checked)
                 self.testcase_tree.addTopLevelItem(item)
             self.test_cases[test_case.case_mark] = test_case
             import_count += 1
             self.process_progressbar.setValue(import_count)
     except Exception as e:
         fail += 1
         QMessageBox.information(self, u'提示', u'导入用例文件异常{0}'.format(str(e)), QMessageBox.Yes, QMessageBox.Yes)
     QMessageBox.information(self, u'提示', u'导入成功{0}个, 失败{1}个'.format(import_count, fail), QMessageBox.Yes, QMessageBox.Yes)
示例#12
0
 def on_add_testcase(self):
     """
     添加用例
     :return:
     """
     test_case_identification = str(self.test_caseidentify_edit.text())
     test_case_name = str(self.test_item_edit.text())
     if test_case_identification and test_case_name:
         if test_case_identification not in self.test_cases:
             #  在树形列表中增加一项
             test_case = self.__generate_test_case(test_case_identification)
             item = QTreeWidgetItem()
             item.setText(0, test_case.case_mark)
             item.setText(1, test_case.case_name)
             item.setText(2, test_case.case_id)
             item.setCheckState(0, Qt.Checked)
             self.testcase_tree.addTopLevelItem(item)
         else:
             test_case = self.__generate_test_case(test_case_identification)
             # 更新树形列表中的用例名称
             for i in range(0, self.testcase_tree.topLevelItemCount()):
                 if self.testcase_tree.topLevelItem(i).text(0) == test_case.case_mark:
                     self.testcase_tree.topLevelItem(i).setText(1, test_case.case_name)
             QMessageBox.information(self, u'提示', u'用例[{0}({1})]已更新'.format(test_case_name, test_case.case_mark), QMessageBox.Yes, QMessageBox.Yes)
     else:
         QMessageBox.information(self, u'提示', u'用例标识和用例名称必填', QMessageBox.Yes, QMessageBox.Yes)
         return
示例#13
0
 def add_server_tree_item(self, label, parent=None, is_leaf=False):
     item = QTreeWidgetItem(parent)
     item.setText(0, unicode(label))
     if is_leaf:
         item.setFlags(Qt.ItemIsEnabled | Qt.ItemIsUserCheckable)
     self.server_tree.addTopLevelItem(item)
     return item      
示例#14
0
    def populateConfigParams(self, dlg):
        """ Populates the dialog with option items and widgets """
        self.items = defaultdict(dict)
        tree = dlg.paramsTreeOL

        configure_export_action = QAction('...', self)
        configure_export_action.triggered.connect(self.configureExporter)

        params = getParams(configure_exporter_action=configure_export_action)
        for group, settings in params.iteritems():
            item = QTreeWidgetItem()
            item.setText(0, group)
            for param, value in settings.iteritems():
                subitem = self.createOptionItem(tree_widget=tree,
                                                parent_item=item,
                                                parameter=param,
                                                default_value=value)
                item.addChild(subitem)
                self.items[group][param] = subitem
            self.paramsTreeOL.addTopLevelItem(item)
            item.sortChildren(0, Qt.AscendingOrder)
        self.paramsTreeOL.expandAll()
        self.paramsTreeOL.resizeColumnToContents(0)
        self.paramsTreeOL.resizeColumnToContents(1)
        self.layer_search_combo.removeItem(1)
示例#15
0
    def setBedToUniform(self):
        try:
            self.dlg.layerInZoneEdit.textChanged.disconnect()
            self.dlg.layerInZoneEdit.textChanged.connect(self.setBedLayerInZone)
        except:
            self.dlg.layerInZoneEdit.textChanged.connect(self.setBedLayerInZone)
        self.dlg.zoneBedSelector.clear()
        self.dlg.zoneBedSelector.addItem('1')
        self.dlg.bedLayerTree.clear()
        try:
            self.dlg.bedLayerTree.itemClicked.disconnect()
        except:
            pass
        self.dlg.bedLayerTree.clear()
        self.dlg.bedLayerTree.setColumnCount(2)
        self.dlg.bedLayerTree.setHeaderLabels(['Layers', 'Status'])
        DomainItem = QTreeWidgetItem()
        DomainItem.setText(0, 'Domain')
        self.dlg.bedLayerTree.addTopLevelItem(DomainItem)
        self.dlg.bedLayerTree.setColumnWidth(0, 150)

        try:
            layerNum = int(self.dlg.layerInZoneEdit.text())
        except:
            layerNum = None
        if layerNum:
            for i in range(0, layerNum):
                layerItem = QTreeWidgetItem(DomainItem)
                layerItem.setText(0, 'Layer '+str(i+1))
        self.dlg.bedLayerTree.itemClicked.connect(self.bedLayerPopUp)
示例#16
0
 def build_menu_item(action):
     """Return a QTreeWidgetItem with children for all the actions in the submenu."""
     menuitem = QTreeWidgetItem()
     text = qutil.removeAccelerator(action.text())
     menuitem.setText(0, _("Menu {name}").format(name=text))
     add_actions(menuitem, action.menu().actions())
     return menuitem
示例#17
0
    def addRecentAlgorithms(self, updating):
        showRecent = ProcessingConfig.getSetting(
            ProcessingConfig.SHOW_RECENT_ALGORITHMS)
        if showRecent:
            recent = ProcessingLog.getRecentAlgorithms()
            if len(recent) != 0:
                found = False
                if updating:
                    recentItem = self.algorithmTree.topLevelItem(0)
                    treeWidget = recentItem.treeWidget()
                    treeWidget.takeTopLevelItem(
                        treeWidget.indexOfTopLevelItem(recentItem))

                recentItem = QTreeWidgetItem()
                recentItem.setText(0, self.tr('Recently used algorithms'))
                for algname in recent:
                    alg = Processing.getAlgorithm(algname)
                    if alg is not None:
                        algItem = TreeAlgorithmItem(alg)
                        recentItem.addChild(algItem)
                        found = True
                if found:
                    self.algorithmTree.insertTopLevelItem(0, recentItem)
                    recentItem.setExpanded(True)

            self.algorithmTree.setWordWrap(True)
示例#18
0
文件: search.py 项目: udgover/modules
    def addResults(self, results):
        tree = QTreeWidget()
        tree.setColumnCount(1)
        header = QString("Offset")
        tree.setHeaderLabel(header)
        tree.setAlternatingRowColors(True)            
        self.connect(tree, SIGNAL("itemDoubleClicked(QTreeWidgetItem *, int)"), self.treeClicked)

        for res in results:
            #            print hex(res)
            item = QTreeWidgetItem(tree)
            off = "0x"
            off += "%.2x" % res
            item.setText(0, str(off))
            self.trees.append(tree)
            
        #Add pattern and offsets to tupple
        key = binascii.hexlify(self.search.search_th.pattern)
        self.search.searchedPatterns[key] = results
        
        if self.search.lastSearchType == 0:
            p = binascii.hexlify(self.search.search_th.pattern)
        elif self.search.lastSearchType == 1:
            p = self.search.search_th.pattern
        else:
            p = "u("
            p += self.search.needle.text()
            p += ")"
        #Add Ascii hex pattern in searched list for syntaxHighliter
        self.insertTab(len(self.trees), tree, p)
示例#19
0
class LoadThings(QUndoCommand):
    def __init__(self, widget, thing):
        super(LoadThings, self).__init__()
        self.widget = widget

        self.createdThing = thing
        self.item = QTreeWidgetItem()
        self.item.setText(0, thing.name)

        typeName = type(thing).__name__
        for i in range(self.widget.ui.treeWidget.topLevelItemCount()):
            group = self.widget.ui.treeWidget.topLevelItem(i)
            if group.text(0) == typeName:
                self.group = group
                break
        else: # group not found
            self.group = QTreeWidgetItem()
            self.group.setText(0, typeName)

    def redo(self):
        if self.widget.ui.treeWidget.indexOfTopLevelItem(self.group) == -1:
            self.widget.ui.treeWidget.addTopLevelItem(self.group)
        self.group.addChild(self.item)
        self.group.setExpanded(True)
        self.widget.ui.treeWidget.setCurrentItem(self.item)

    def undo(self):
        self.group.takeChild(self.group.childCount()-1)
        if self.group.childCount() == 0:
            parentIndex = self.widget.ui.treeWidget.indexOfTopLevelItem(self.group)
            self.widget.ui.treeWidget.takeTopLevelItem(parentIndex)
示例#20
0
    def populate(self):
        """Puts the deleted/changed snippets in the tree."""
        self.deletedItem.takeChildren()
        self.deletedItem.setExpanded(True)
        self.deletedItem.setCheckState(0, Qt.Unchecked)
        self.changedItem.takeChildren()
        self.changedItem.setExpanded(True)
        self.changedItem.setCheckState(0, Qt.Unchecked)

        builtins = list(builtin.builtin_snippets)
        builtins.sort(key=snippets.title)

        names = frozenset(snippets.names())

        for name in builtins:
            if name in names:
                if snippets.isoriginal(name):
                    continue
                parent = self.changedItem
            else:
                parent = self.deletedItem

            item = QTreeWidgetItem(parent)
            item.name = name
            item.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
            item.setCheckState(0, Qt.Unchecked)
            item.setText(0, snippets.title(name))

        self.deletedItem.setDisabled(self.deletedItem.childCount() == 0)
        self.changedItem.setDisabled(self.changedItem.childCount() == 0)
        self.checkOkButton()
示例#21
0
    def fill_fields(self):

        search_word = self.filterEdit.text()
        if search_word.strip() != '':
            search_str = stem_str(search_word)
        else:
            search_str = ''

        query = QSqlQuery(self.local_cn)
        LIMIT = 100
        OFFSET = 0
        query.prepare(show_termins_in_link_selector_query)
        query.bindValue(':search_str', search_str + '%')
        query.bindValue(':linked', 1)
        query.bindValue(':limit', LIMIT.__str__())
        query.bindValue(':offset', OFFSET.__str__())
        if query.exec_():
            self.root.takeChildren()
            while query.next():
                c = QTreeWidgetItem()
                c.setText(0, query.value(0))  # Заглавное слово
                c.setData(1, 0, query.value(1))  # uuid
                self.root.addChild(c)
        else:
            print(query.lastError().text())
            print("not exec")
        self.treeWidget.scrollToTop()
示例#22
0
    def generate_tree_model(self, data_dict):
        """Generate a tree model for specified dictionary

        :param data_dict: A dictionary
        :type data_dict: dict
        :return: list of QTreeWidgetItem
        :rtype list:
        """
        widget_items = []
        font = QFont()
        font.setBold(True)
        for key in data_dict.keys():
            entry = data_dict[key]
            key_item = QTreeWidgetItem()
            key_item.setText(0, str(key))
            key_item.setFont(0, font)
            if isinstance(entry, dict):
                items = self.generate_tree_model(entry)
                key_item.addChildren(items)
            else:
                # value_item = QTreeWidgetItem()
                key_item.setText(1, str(entry))
                key_item.setFlags(key_item.flags() | Qt.ItemIsEditable)
                # key_item.addChild(key_item)
            widget_items.append(key_item)

        return widget_items
示例#23
0
            def _walkCreate(koEntry, lvItem):
                item = QTreeWidgetItem(lvItem)
                id = "path:" + org_code + koEntry.title[:5]

                if koEntry.title[:5] in path_ids:
                    p = kegg_pathways.get_entry(id)
                    if p is None:
                        # In case the genesets still have obsolete entries
                        name = koEntry.title
                    else:
                        name = p.name
                    genes, p_value, ref = self.pathways[id]
                    item.setText(0, name)
                    item.setText(1, "%.5f" % p_value)
                    item.setText(2, "%i of %i" % (len(genes), len(self.genes)))
                    item.setText(3,
                                 "%i of %i" % (ref, len(self.referenceGenes)))
                    item.pathway_id = id if p is not None else None
                else:
                    if id in allPathways:
                        text = kegg_pathways.get_entry(id).name
                    else:
                        text = koEntry.title
                    item.setText(0, text)

                    if id in allPathways:
                        item.pathway_id = id
                    elif "path:map" + koEntry.title[:5] in allRefPathways:
                        item.pathway_id = "path:map" + koEntry.title[:5]
                    else:
                        item.pathway_id = None

                for child in koEntry.entries:
                    if child in allClasses:
                        _walkCreate(child, item)
示例#24
0
    def __init__(self, featureDict, selectedFeatures=None, parent=None):
        QDialog.__init__(self, parent)
        self.featureDict = featureDict
        if selectedFeatures is None or len(selectedFeatures) == 0:
            selectedFeatures = defaultdict(list)
        self.selectedFeatures = selectedFeatures
        self.setWindowTitle("Object Features")
        ui_class, widget_class = uic.loadUiType(os.path.split(__file__)[0] + "/featureSelection.ui")
        self.ui = ui_class()
        self.ui.setupUi(self)
        self.ui.buttonBox.accepted.connect(self.accept)
        self.ui.buttonBox.rejected.connect(self.reject)

        self.ui.allButton.pressed.connect(self.handleAll)
        self.ui.noneButton.pressed.connect(self.handleNone)

        self.ui.treeWidget.setColumnCount(1)
        for pluginName, features in featureDict.iteritems():
            parent = QTreeWidgetItem(self.ui.treeWidget)
            parent.setText(0, pluginName)
            parent.setExpanded(True)
            for name in sorted(features):
                item = QTreeWidgetItem(parent)
                item.setText(0, name)
                item.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
                if pluginName in self.selectedFeatures:
                    if name in self.selectedFeatures[pluginName]:
                        item.setCheckState(0, Qt.Checked)
                    else:
                        item.setCheckState(0, Qt.Unchecked)
示例#25
0
    def addRecentAlgorithms(self, updating):
        showRecent = ProcessingConfig.getSetting(
            ProcessingConfig.SHOW_RECENT_ALGORITHMS)
        if showRecent:
            recent = ProcessingLog.getRecentAlgorithms()
            if len(recent) != 0:
                found = False
                if updating:
                    recentItem = self.algorithmTree.topLevelItem(0)
                    treeWidget = recentItem.treeWidget()
                    treeWidget.takeTopLevelItem(
                        treeWidget.indexOfTopLevelItem(recentItem))

                recentItem = QTreeWidgetItem()
                recentItem.setText(0, self.tr('Recently used algorithms'))
                for algname in recent:
                    alg = Processing.getAlgorithm(algname)
                    if alg is not None:
                        algItem = TreeAlgorithmItem(alg)
                        recentItem.addChild(algItem)
                        found = True
                if found:
                    self.algorithmTree.insertTopLevelItem(0, recentItem)
                    recentItem.setExpanded(True)

            self.algorithmTree.setWordWrap(True)
示例#26
0
def fill_item(item, value):
  item.setExpanded(True)
  if type(value) is dict:
    for key, val in sorted(value.iteritems()):
      child = QTreeWidgetItem()
      child.setText(0, unicode(key))
      item.addChild(child)
      fill_item(child, val)
  elif type(value) is list:
    for val in value:
      child = QTreeWidgetItem()
      item.addChild(child)
      if type(val) is dict:      
        child.setText(0, '[dict]')
        fill_item(child, val)
      elif type(val) is list:
        child.setText(0, '[list]')
        fill_item(child, val)
      else:
        child.setText(0, unicode(val))              
      child.setExpanded(True)
  else:
    child = QTreeWidgetItem()
    child.setText(0, unicode(value))
    item.addChild(child)
    def generate_tree_model(self, data_dict):
        """Generate a tree model for specified dictionary

        :param data_dict: A dictionary
        :type data_dict: dict
        :return: list of QTreeWidgetItem
        :rtype list:
        """
        widget_items = []
        font = QFont()
        font.setBold(True)
        for key in data_dict.keys():
            entry = data_dict[key]
            key_item = QTreeWidgetItem()
            key_item.setText(0, str(key))
            key_item.setFont(0, font)
            if isinstance(entry, dict):
                items = self.generate_tree_model(entry)
                key_item.addChildren(items)
            else:
                # value_item = QTreeWidgetItem()
                key_item.setText(1, str(entry))
                key_item.setFlags(key_item.flags() | Qt.ItemIsEditable)
                # key_item.addChild(key_item)
            widget_items.append(key_item)

        return widget_items
 def __add_themen(self):
     self.ui.TREE_THEMEN.headerItem().setText(0, '')
     #TODO: resize column to contents
     #all of these don't work??
     self.ui.TREE_THEMEN.header().resizeSection(0, 250)
     self.ui.TREE_THEMEN.header().setResizeMode(QHeaderView.ResizeToContents);
     self.ui.TREE_THEMEN.header().setStretchLastSection(True);
     themen = self.json_settings.themen()
     for thema_name, thema in themen.iteritems():
         tree_thema = QTreeWidgetItem(self.ui.TREE_THEMEN)
         tree_thema.setText(0, thema_name)
         tree_thema.setData(0, Qt.UserRole, thema)
         tree_thema.setFlags(tree_thema.flags() | Qt.ItemIsUserCheckable)
         if thema_name == 'DKM':
             tree_thema.setCheckState(0, Qt.Checked)
         else:
             tree_thema.setCheckState(0, Qt.Unchecked)
         if not thema.subthemen is None:
             for subthema in thema.subthemen:
                 if VRP_DEBUG is True: QgsMessageLog.logMessage(u'Subthema: {0}'.format(subthema.name), DLG_CAPTION)
                 tree_subthema = QTreeWidgetItem()
                 tree_subthema.setText(0, subthema.name)
                 tree_subthema.setData(0, Qt.UserRole, subthema)
                 tree_subthema.setFlags(tree_subthema.flags() | Qt.ItemIsUserCheckable)
                 tree_subthema.setCheckState(0, Qt.Unchecked)
                 tree_thema.addChild(tree_subthema)
示例#29
0
    def setBedLayerInZone(self):
        idx = self.dlg.zoneBedSelector.currentIndex()
        self.rockTypeCount()
        totalLayers = int(self.dlg.layerInZoneEdit.text())
        currentRegion = self.dlg.bedLayerTree.topLevelItem(idx)
        currLayers = currentRegion.childCount()

        if currLayers == 0:
            for i in range(0, totalLayers):
                item = QTreeWidgetItem()
                item.setText(0, 'Layer'+str(i+1))
                currentRegion.addChild(item)
        elif currLayers < totalLayers:
            for i in range(currLayers, totalLayers):
                item = QTreeWidgetItem()
                item.setText(0, 'Layer'+str(i+1))
                currentRegion.addChild(item)
        elif currLayers > totalLayers:
            itemList = list()
            for j in range(totalLayers, currLayers):
                itemList.append(currentRegion.child(j))
            for k in range(0, len(itemList)):
                currentRegion.removeChild(itemList[k])
        else:
            pass
示例#30
0
    def fillTreeWidget(self):
        """ Заполняем tree widget записями, на основе разбиения на категории"""
        self._loadingData = True
        self._ui.twEntries.clear()
        for key in self._categories:
            self._categories[key] = sorted(self._categories[key], key=attrgetter('title'))
            item = DateTreeWidgetItem(self._ui.twEntries)
            font = item.font(0)
            font.setPointSize(11)
            font.setBold(True)
            item.setFont(0, font)
            if settings.showEntryCountInCategory():
                item.setText(0, "{} ({})".format(key, len(self._categories[key])))
            else:
                item.setText(0, key)
            item.setData(0, Qt.UserRole, self._keyForCategory[key])
            for e in self._categories[key]:
                entryItem = QTreeWidgetItem(item)
                font = entryItem.font(0)
                font.setPointSize(12)
                entryItem.setCheckState(0, Qt.Checked if e.interesting else Qt.Unchecked)
                entryItem.setText(0, e.title)
                entryItem.setFont(0, font)
                entryItem.setData(0, Qt.UserRole, e.id)
                self._setToolTipForItem(e, entryItem)

        self._ui.twEntries.sortItems(0, Qt.AscendingOrder)
        self._ui.twEntries.expandAll()
        self._loadingData = False
示例#31
0
文件: Util.py 项目: futureer/QSniffer
 def parseIPTree(self, fatherNode, ip):
     IPTree = QTreeWidgetItem(fatherNode)
     IPTree.setText(0, 'IP')
     IPTup = (('v', 'Version: %d' % ip.v),
               ('hl', 'Header Length: %d' % (ip.hl << 4)),
               ('tos', 'Differentiated Services: 0x%.2x' % ip.tos),
               ('len', 'Total Length: %d' % ip.len),
               ('id', 'Identification: 0x%.4x' % ip.id),
               ('flag', 'Flags: 0x%.2x' % (ip.off >> 13)),
               ('off', 'Fragment Offset: %d' % (ip.off & 0x1fff)),
               ('ttl', 'Time To Live: %d' % ip.ttl),
               ('p', 'Protocol: %d' % ip.p),
               ('sum', 'Header Checksum: 0x%.4x' % ip.sum),
               ('src', 'Source: %s' % NetFormat.ntoa_ip(ip.src)),
               ('dst', 'Destination: %s' % NetFormat.ntoa_ip(ip.dst))
               )
     
     self.parseDetail(IPTree, IPTup)
     self.TreeList.append(IPTree)
     
     if ip.p == dpkt.ip.IP_PROTO_TCP:
         self.parseTCPTree(fatherNode, ip.data)
     elif ip.p == dpkt.ip.IP_PROTO_UDP:
         self.parseUDPTree(fatherNode, ip.data)
     elif ip.p == dpkt.ip.IP_PROTO_ICMP:
         self.parseICMPTree(fatherNode, ip.data)
     elif ip.p == dpkt.ip.IP_PROTO_IGMP:
         self.parseIGMPTree(fatherNode, ip.data)
     else:
         self.parseUnknownTree(fatherNode, ip.data)
示例#32
0
    def addResults(self, results):
        tree = QTreeWidget()
        tree.setColumnCount(1)
        header = QString("Offset")
        tree.setHeaderLabel(header)
        tree.setAlternatingRowColors(True)

        self.connect(tree, SIGNAL("itemDoubleClicked(QTreeWidgetItem *, int)"),
                     self.treeClicked)

        for res in results:
            #            print hex(res)
            item = QTreeWidgetItem(tree)
            off = "0x"
            off += "%.2x" % res
            item.setText(0, str(off))
        self.trees.append(tree)

        #Add pattern and offsets to tupple
        key = binascii.hexlify(self.search.search_th.pattern)
        #        print "key: ", key
        self.search.searchedPatterns[key] = results

        if self.search.lastSearchType == 0:
            p = binascii.hexlify(self.search.search_th.pattern)
        else:
            p = self.search.search_th.pattern

        #Add Ascii hex pattern in searched list for syntaxHighliter
        self.insertTab(len(self.trees), tree, p)
示例#33
0
    def setBedToZone(self):
        try:
            self.dlg.layerInZoneEdit.textChanged.disconnect()
            self.dlg.bedLayerTree.itemClicked.disconnect()
            self.dlg.zoneBedSelector.clear()
        except:
            pass
        try:
            physRef = self.physRef
        except:
            physRef = None

        if physRef:
            self.dlg.bedLayerTree.clear()
            self.dlg.bedLayerTree.setColumnCount(2)
            self.dlg.bedLayerTree.setHeaderLabels(['Layers', 'Status'])
            for i in range(0, len(physRef)):
                item = QTreeWidgetItem()
                item.setText(0, str(i+1) + ". " + physRef[i+1])
                self.dlg.bedLayerTree.addTopLevelItem(item)
                self.dlg.zoneBedSelector.addItem(str(i+1))
            self.dlg.bedLayerTree.setColumnWidth(0, 150)
            self.dlg.layerInZoneEdit.textChanged.connect(self.setBedLayerInZone)
            self.dlg.bedLayerTree.itemClicked.connect(self.bedLayerPopUp)
        else:
            onCritical(107)
            def _walkCreate(koEntry, lvItem):
                item = QTreeWidgetItem(lvItem)
                id = "path:" + org_code + koEntry.title[:5]

                if koEntry.title[:5] in path_ids:
                    p = kegg_pathways.get_entry(id)
                    if p is None:
                        # In case the genesets still have obsolete entries
                        name = koEntry.title
                    else:
                        name = p.name
                    genes, p_value, ref = self.pathways[id]
                    item.setText(0, name)
                    item.setText(1, "%.5f" % p_value)
                    item.setText(2, "%i of %i" % (len(genes), len(self.genes)))
                    item.setText(3, "%i of %i" % (ref, len(self.referenceGenes)))
                    item.pathway_id = id if p is not None else None
                else:
                    if id in allPathways:
                        text = kegg_pathways.get_entry(id).name
                    else:
                        text = koEntry.title
                    item.setText(0, text)

                    if id in allPathways:
                        item.pathway_id = id
                    elif "path:map" + koEntry.title[:5] in allRefPathways:
                        item.pathway_id = "path:map" + koEntry.title[:5]
                    else:
                        item.pathway_id = None

                for child in koEntry.entries:
                    if child in allClasses:
                        _walkCreate(child, item)
 def addNode(self, parent, text="", data=""):
     node = QTreeWidgetItem(parent)
     node.setText(0, text)
     node.setCheckState(0, Qt.Unchecked)
     node.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled
                   | Qt.ItemIsSelectable)
     node.setData(0, Qt.UserRole, data)
     return node
示例#36
0
 def fillAttributes(self, node):
   vmap = node.attributes()
   if vmap:
     if len(vmap) > 0:
       itemExtendedAttr = QTreeWidgetItem(self)
       itemExtendedAttr.setText(0, self.attributeText)
       self.fillMap(itemExtendedAttr, vmap)
       self.expandItem(itemExtendedAttr)
 def insertClusterItem(self, tree, text):
     """
     Creates an item for the tree widget for a specific parent item and a specific text (cluster name)
     """
     parent = tree.invisibleRootItem()
     item = QTreeWidgetItem(parent)
     item.setExpanded(True)
     item.setText(0,text)
示例#38
0
 def populateToolTree(self):
     toolTree = QTreeWidgetItem(self.configTreeWidget)
     toolTree.setText(0, "Tools")
     for tool in self.toolDict.values():
         if not tool.name == '## No Tool ##':
             logger.log('Adding tool: ' + tool.name)
             actualTool = QTreeWidgetItem(toolTree)
             actualTool.setText(0, tool.name)
示例#39
0
 def populatePrinterTree(self):
     printerTree = QTreeWidgetItem(self.configTreeWidget)
     printerTree.setText(0, "Printers")
     for printer in self.printerDict.values():
         if not printer.name == '## No Printer ##':
             logger.log('Adding printer: ' + printer.name)
             actualPrinter = QTreeWidgetItem(printerTree)
             actualPrinter.setText(0, printer.name)
示例#40
0
 def __importCSV(self, csvFile):
     self.twMeasurements.clear()
     self.__sourcecsv= InputCSVH5(csvFile, ',')
     self.__sourcecsv.load_csvHeader()
     rootItem= QTreeWidgetItem(self.twMeasurements, [csvFile])
     for value in self.__sourcecsv.measurements:
         childItem = QTreeWidgetItem()
         childItem.setText(0, value)
         rootItem.addChild(childItem)
示例#41
0
 def add_item_to_tree(self, folder, tree, item_type=None, parent=None):
     if item_type is None:
         item = QTreeWidgetItem()
         item.setText(0, self.tr('       LOADING: "%1"').arg(folder))
     else:
         item = item_type(parent, self.tr('       LOADING: "%1"').arg(folder), folder)
     tree.addTopLevelItem(item)
     tree.setItemWidget(item, 0, self)
     return item
示例#42
0
 def fillCompatModule(self, node):
   l = node.compatibleModules()
   if len(l) > 0:
     itemCompat = QTreeWidgetItem(self)
     itemCompat.setText(0, self.relevantText)
     buff = ""
     for i in l:
       buff += str(i) + " " 
     itemCompat.setText(1, buff)
示例#43
0
 def fillCompatModule(self, node):
   l = node.compatibleModules()
   if len(l) > 0:
     itemCompat = QTreeWidgetItem(self)
     itemCompat.setText(0, self.relevantText)
     buff = ""
     for i in l:
       buff += str(i) + " " 
     itemCompat.setText(1, buff)
示例#44
0
    def populate(self):
        groups = {}
        count = 0
        provider = Processing.algs[self.providerName]
        algs = provider.values()

        name = 'ACTIVATE_' + self.providerName.upper().replace(' ', '_')
        active = ProcessingConfig.getSetting(name)

        # Add algorithms
        for alg in algs:
            if not alg.showInToolbox:
                continue
            if alg.group in groups:
                groupItem = groups[alg.group]
            else:
                groupItem = QTreeWidgetItem()
                name = alg.i18n_group or alg.group
                if not active:
                    groupItem.setForeground(0, Qt.darkGray)
                groupItem.setText(0, name)
                groupItem.setToolTip(0, name)
                groups[alg.group] = groupItem
            algItem = TreeAlgorithmItem(alg)
            if not active:
                algItem.setForeground(0, Qt.darkGray)
            groupItem.addChild(algItem)
            count += 1

        actions = Processing.actions[self.providerName]
        for action in actions:
            if action.group in groups:
                groupItem = groups[action.group]
            else:
                groupItem = QTreeWidgetItem()
                groupItem.setText(0, action.group)
                groups[action.group] = groupItem
            algItem = TreeActionItem(action)
            groupItem.addChild(algItem)

        text = self.provider.getDescription()

        if not active:
            def activateProvider():
                self.toolbox.activateProvider(self.providerName)
            label = QLabel(text + "&nbsp;&nbsp;&nbsp;&nbsp;<a href='%s'>Activate</a>")
            label.setStyleSheet("QLabel {background-color: white; color: grey;}")
            label.linkActivated.connect(activateProvider)
            self.tree.setItemWidget(self, 0, label)

        else:
            text += QCoreApplication.translate("TreeProviderItem", " [{0} geoalgorithms]").format(count)
        self.setText(0, text)
        self.setToolTip(0, self.text(0))
        for groupItem in groups.values():
            self.addChild(groupItem)
示例#45
0
    def populate(self):
        groups = {}
        count = 0
        provider = Processing.algs[self.providerName]
        algs = provider.values()

        name = 'ACTIVATE_' + self.providerName.upper().replace(' ', '_')
        active = ProcessingConfig.getSetting(name)

        # Add algorithms
        for alg in algs:
            if not alg.showInToolbox:
                continue
            if alg.group in groups:
                groupItem = groups[alg.group]
            else:
                groupItem = QTreeWidgetItem()
                name = alg.i18n_group or alg.group
                if not active:
                    groupItem.setForeground(0, Qt.darkGray)
                groupItem.setText(0, name)
                groupItem.setToolTip(0, name)
                groups[alg.group] = groupItem
            algItem = TreeAlgorithmItem(alg)
            if not active:
                algItem.setForeground(0, Qt.darkGray)
            groupItem.addChild(algItem)
            count += 1

        actions = Processing.actions[self.providerName]
        for action in actions:
            if action.group in groups:
                groupItem = groups[action.group]
            else:
                groupItem = QTreeWidgetItem()
                groupItem.setText(0, action.group)
                groups[action.group] = groupItem
            algItem = TreeActionItem(action)
            groupItem.addChild(algItem)

        text = self.provider.getDescription()

        if not active:
            def activateProvider():
                self.toolbox.activateProvider(self.providerName)
            label = QLabel(text + "&nbsp;&nbsp;&nbsp;&nbsp;<a href='%s'>Activate</a>")
            label.setStyleSheet("QLabel {background-color: white; color: grey;}")
            label.linkActivated.connect(activateProvider)
            self.tree.setItemWidget(self, 0, label)

        else:
            text += QCoreApplication.translate("TreeProviderItem", " [{0} geoalgorithms]").format(count)
        self.setText(0, text)
        self.setToolTip(0, self.text(0))
        for groupItem in groups.values():
            self.addChild(groupItem)
示例#46
0
 def create_entities_node(self, root_node, entities):
     children = []
     title_node = QTreeWidgetItem(root_node, 0)
     title_node.setText(0, QApplication.translate("EntityDependencies", "Entities"))
     title_node.setFont(0, self.title_font())
     for entity in entities:
         node = QTreeWidgetItem(title_node, 0)
         node.setText(0, entity)
         children.append(node)
     return children
示例#47
0
 def groupYaz(self):
     for option in DOptions:
         if hasattr(option, "getOption"):
             #self.gridLayout_3.addWidget(option.getOption(), 0, 0, 1, 1)
             item = QTreeWidgetItem(self.dialog)
             a = option.getOption()
             if hasattr(a, "name"):
                 item.setText(0, a.name)
             else:
                 item.setText(0, "F**k")
示例#48
0
 def create_views_node(self, root_node, views):
     children = []
     title_node = QTreeWidgetItem(root_node, 0)
     title_node.setText(0, QApplication.translate("EntityDependencies", "Views"))
     title_node.setFont(0, self.title_font())
     for view in views:
         node = QTreeWidgetItem(title_node, 0)
         node.setText(0, view)
         children.append(node)
     return children
示例#49
0
 def add_item_to_tree(self, folder, tree, item_type=None, parent=None):
     if item_type is None:
         item = QTreeWidgetItem()
         item.setText(0, self.tr('       LOADING: "%s"' % folder))
     else:
         item = item_type(parent, self.tr('       LOADING: "%s"' % folder),
                          folder)
     tree.addTopLevelItem(item)
     tree.setItemWidget(item, 0, self)
     return item
示例#50
0
 def fill_hash_treewidget(self, passed_list):
     self.treew_Bestanden.clear()
     for row in reversed(passed_list):
         row_number = 0
         item = QTreeWidgetItem()
         while row_number < 8:
             item.setText(row_number, unicode(row[row_number]))
             self.treew_Bestanden.insertTopLevelItem(row_number, item)
             row_number += 1
         QtGui.qApp.processEvents()
示例#51
0
 def setBedToDistri(self):
     try:
         self.dlg.bedLayerTree.itemClicked.disconnect()
         self.dlg.zoneBedSelector.clear()
     except:
         pass
     item = QTreeWidgetItem()
     item.setText(0, 'File Input')
     self.dlg.bedLayerTree.addTopLevelItem(item)
     self.dlg.bedLayerTree.itemClicked.connect(self.inputSelector)
示例#52
0
文件: Util.py 项目: futureer/QSniffer
 def parseICMPv6Tree(self, fatherNode, icmpv6):
     ICMPv6Tree = QTreeWidgetItem(fatherNode)
     ICMPv6Tree.setText(0, 'ICMPv6')
     ICMPv6Tup = (('type', 'Type: %d' % icmpv6.type),
                  ('code', 'Code: %d' % icmpv6.code),
                  ('sum', 'Checksum: 0x%.4x' % icmpv6.sum)
                   )
     
     self.parseDetail(ICMPv6Tree, ICMPv6Tup)
     self.TreeList.append(ICMPv6Tree)
示例#53
0
 def create_views_node(self, root_node, views):
     children = []
     title_node = QTreeWidgetItem(root_node, 0)
     title_node.setText(
         0, QApplication.translate("EntityDependencies", "Views"))
     title_node.setFont(0, self.title_font())
     for view in views:
         node = QTreeWidgetItem(title_node, 0)
         node.setText(0, view)
         children.append(node)
     return children
示例#54
0
 def create_entities_node(self, root_node, entities):
     children = []
     title_node = QTreeWidgetItem(root_node, 0)
     title_node.setText(
         0, QApplication.translate("EntityDependencies", "Entities"))
     title_node.setFont(0, self.title_font())
     for entity in entities:
         node = QTreeWidgetItem(title_node, 0)
         node.setText(0, entity)
         children.append(node)
     return children
示例#55
0
文件: Util.py 项目: futureer/QSniffer
 def parseIGMPTree(self, fatherNode, igmp):
     IGMPTree = QTreeWidgetItem(fatherNode)
     IGMPTree.setText(0, 'IGMP')
     IGMPTup = (('type', 'Type: 0x%.2x' % igmp.type),
                ('maxresp', 'Max Resp Code: %d' % igmp.maxresp),
                ('sum', 'Checksum: 0x%.4x' % igmp.sum),
                ('group', 'Group Address: %d' % igmp.group)
                 )
     
     self.parseDetail(IGMPTree, IGMPTup)
     self.TreeList.append(IGMPTree)
示例#56
0
def build_tree_widget_item(parent, name, is_checkable=True):
    child = QTreeWidgetItem(parent)
    if is_checkable:
        child.setFlags(child.flags() | QtCore.Qt.ItemIsUserCheckable
                       | QtCore.Qt.ItemIsTristate)
        child.setCheckState(0, QtCore.Qt.Unchecked)
    else:
        child.setFlags(QtCore.Qt.ItemIsEnabled)
    child.setText(0, name)

    return child
示例#57
0
    def recusive_add_group(self, parentTreeWidgetItem, pwGroup):
        treeWidgetItem = QTreeWidgetItem(parentTreeWidgetItem)
        treeWidgetItem.setText(0, pwGroup.Name)
        treeWidgetItem.setData(1, Qt.UserRole, pwGroup)

        for childGroup in pwGroup.Groups:
            self.recusive_add_group(treeWidgetItem, childGroup)

        treeWidgetItem.setExpanded(True)

        return treeWidgetItem
示例#58
0
 def fillAttributes(self, node):
   try:
     vmap = node.attributes()
     if vmap:
       if len(vmap) > 0:
         itemExtendedAttr = QTreeWidgetItem(self)
         itemExtendedAttr.setText(0, self.attributeText)
         self.fillMap(itemExtendedAttr, vmap)
         self.expandItem(itemExtendedAttr)
   except:
     pass
示例#59
0
    def __setup_ui(self):
        #self.setText(0, self.__con_name)
        self.setIcon(0, QIcon(ICON_IDR + 'database.png'))

        self.__db_item = QTreeWidgetItem(self)
        self.__db_item.setIcon(0, QIcon(ICON_IDR + 'dir_close.png'))
        self.__db_item.setText(0, self.__schema_name)

        for table in self.__table_names:
            table_item = QTreeWidgetItem(self.__db_item)
            table_item.setIcon(0, QIcon(ICON_IDR + 'table.png'))
            table_item.setText(0, table)
示例#60
0
    def show_termins_in_list(self, page):
        self.currentPage = page
        # фильтрация списка терминов
        search_word = self.searchLineEdit.text()
        if search_word.strip() != '':
            search_str = search_word
        else:
            search_str = ''

        # показ уже обработанных терминов
        if self.showLinkedCheck.isChecked():
            show_linked = 1
        else:
            show_linked = 0

        query = QSqlQuery(self.local_cn)
        LIMIT = int(self.terminsPerPageComboBos.currentText())
        OFFSET = (page - 1) * LIMIT
        query.prepare(show_termins_in_list_query)
        query.bindValue(':search_str', search_str + '%')
        query.bindValue(':linked', show_linked)
        query.bindValue(':limit', LIMIT.__str__())
        query.bindValue(':offset', OFFSET.__str__())
        if query.exec_():
            self.root.takeChildren()
            i = 1
            f = QFont()
            f.setBold(True)
            while query.next():
                c = QTreeWidgetItem()
                c.setText(0, query.value(0))  # Заглавное слово
                c.setData(1, 0, query.value(1))  # uuid
                c.setData(2, 0, i)  # номерок
                if query.value(2) == 1:
                    c.setFont(0, f)
                self.root.addChild(c)
                i += 1

            pages = 1
            query.prepare(show_termins_in_list_count_query)
            query.bindValue(':search_str', search_str + '%')
            query.bindValue(':linked', show_linked)
            if query.exec_() and query.next():
                try:
                    pages = math.ceil(query.value(0) / LIMIT)
                except:
                    pages = 1

            self.draw_paginator(pages, page)
        else:
            print(query.lastError().text())
            print("not exec")
        self.terminsTreeWidget.scrollToTop()