Exemple #1
0
    def search_entries_in_context(self, context, what):
        """
        Search for entries that match `what` in a QTreeWidget. `context`
        refers to any class that inherits AbstractContext in the Caerus view.
        """

        index = context.search_by.currentIndex()

        items = context.entries.findItems(what, Qt.MatchStartsWith, index)

        # This workaround is due to a PySide specific issue that has been
        # unresolved. See https://bugreports.qt-project.org/browse/PYSIDE-74.
        #
        # The Python Way would be to just simply do `if item not in items`, but
        # as in that bug report, NotImplementedError will be raised if that is
        # done.
        items_set = set(items)

        it = QTreeWidgetItemIterator(context.entries)

        while (it.value()):
            item = it.value()

            item.setHidden(True if item not in items_set else False)
            it += 1
Exemple #2
0
    def testCase(self):
        treeWidget = QTreeWidget()
        treeWidget.setColumnCount(1)
        items = []
        for i in range(10):
            items.append(QTreeWidgetItem(None, ["item: %i" % i]))

        treeWidget.insertTopLevelItems(0, items);
        _iter = QTreeWidgetItemIterator(treeWidget)
        index = 0
        while(_iter.value()):
            item = _iter.value()
            self.assert_(item is items[index])
            index += 1
            _iter += 1
Exemple #3
0
    def testWidgetIterator(self):
        treeWidget = QTreeWidget()
        treeWidget.setColumnCount(1)
        items = []
        for i in range(10):
            items.append(QTreeWidgetItem(None, ['item: %d' % i]))
        treeWidget.insertTopLevelItems(0, items)

        index = 0
        for it in QTreeWidgetItemIterator(treeWidget):
            self.assertEqual(it.value().text(0), 'item: %d' % index)
            index += 1
Exemple #4
0
    def _expand_all_fired(self):

        ctrl = self.control
        ctrl.expandAll()

        for item in QTreeWidgetItemIterator(ctrl):
            item = item.value()
            try:
                self._expand_node(item)
                self._update_icon(item)
            except AttributeError:
                pass