From d75bd8367d26e4049b6748cc001ec7482fbda832 Mon Sep 17 00:00:00 2001 From: renatofilho Date: Fri, 15 Oct 2010 17:04:30 -0300 Subject: Created function value to class QTreeWidgetItemIterator using the operator *. Fixes bug #400. Reviewer: Hugo Parente Lima Luciano Wolf --- PySide/QtGui/typesystem_gui_common.xml | 13 +++++++++++-- tests/QtGui/CMakeLists.txt | 1 + tests/QtGui/bug_400.py | 26 ++++++++++++++++++++++++++ 3 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 tests/QtGui/bug_400.py diff --git a/PySide/QtGui/typesystem_gui_common.xml b/PySide/QtGui/typesystem_gui_common.xml index 4ebef94c7..09f66d939 100644 --- a/PySide/QtGui/typesystem_gui_common.xml +++ b/PySide/QtGui/typesystem_gui_common.xml @@ -518,11 +518,20 @@ + + + Shiboken::setParent(%PYARG_1, (PyObject*)sbkSelf); + + + + + %PYARG_0 = %CONVERTTOPYTHON[QTreeWidgetItem*](%CPPSELF.operator*()); + SbkBaseWrapper_setOwnership(%PYARG_0, false); + + - - diff --git a/tests/QtGui/CMakeLists.txt b/tests/QtGui/CMakeLists.txt index f40ebfd70..4a293f2dd 100644 --- a/tests/QtGui/CMakeLists.txt +++ b/tests/QtGui/CMakeLists.txt @@ -11,6 +11,7 @@ PYSIDE_TEST(bug_338.py) PYSIDE_TEST(bug_363.py) PYSIDE_TEST(bug_367.py) PYSIDE_TEST(bug_389.py) +PYSIDE_TEST(bug_400.py) PYSIDE_TEST(customproxywidget_test.py) PYSIDE_TEST(deepcopy_test.py) PYSIDE_TEST(float_to_int_implicit_conversion_test.py) diff --git a/tests/QtGui/bug_400.py b/tests/QtGui/bug_400.py new file mode 100644 index 000000000..0038a3e62 --- /dev/null +++ b/tests/QtGui/bug_400.py @@ -0,0 +1,26 @@ +''' Test bug 389: http://bugs.openbossa.org/show_bug.cgi?id=389''' + +import unittest +from helper import UsesQApplication +from PySide.QtGui import QTreeWidgetItemIterator, QTreeWidgetItem, QTreeWidget + +class BugTest(UsesQApplication): + 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 + + +if __name__ == '__main__': + unittest.main() -- cgit v1.2.3