aboutsummaryrefslogtreecommitdiffstats
path: root/PySide/QtGui
diff options
context:
space:
mode:
authorRenato Filho <renato.filho@openbossa.org>2010-07-09 10:31:37 -0300
committerRenato Filho <renato.filho@openbossa.org>2010-07-09 11:06:03 -0300
commit4090ef81efcada5bd6f882e1c91cd3a699c9c034 (patch)
treed366d403d4680ced9221834a86a257124924f435 /PySide/QtGui
parentf1bbc25546b688e8a0766212a24f2d1eacc826c7 (diff)
Restore missing function on QStandardItemModel.
Created unit test. Fixes bug: #257. Reviewer: Marcelo Lira <marcelo.lira@openbossa.org> Luciano Wolf <luciano.wolf@openbossa.org>
Diffstat (limited to 'PySide/QtGui')
-rw-r--r--PySide/QtGui/typesystem_gui_common.xml63
1 files changed, 53 insertions, 10 deletions
diff --git a/PySide/QtGui/typesystem_gui_common.xml b/PySide/QtGui/typesystem_gui_common.xml
index 36493e301..7308f009f 100644
--- a/PySide/QtGui/typesystem_gui_common.xml
+++ b/PySide/QtGui/typesystem_gui_common.xml
@@ -3617,7 +3617,6 @@
</extra-includes>
</object-type>
<object-type name="QStandardItemModel" polymorphic-id-expression="qobject_cast&lt;QStandardItemModel*&gt;(%1)">
- <modify-function signature="parent()const" remove="all"/>
<extra-includes>
<include file-name="QStringList" location="global"/>
<include file-name="QSize" location="global"/>
@@ -3703,15 +3702,59 @@
</modify-argument>
</modify-function>
- <!-- Inject code -->
- <modify-function signature="takeColumn(int)" remove="all"/>
- <modify-function signature="takeRow(int)" remove="all"/>
- <modify-function signature="findItems(const QString&amp;, QFlags&lt;Qt::MatchFlag&gt;, int) const" remove="all"/>
- <modify-function signature="insertColumn(int, const QList&lt;QStandardItem *&gt;&amp;)" remove="all"/>
- <modify-function signature="insertRow(int, const QList&lt;QStandardItem *&gt;&amp;)" remove="all"/>
- <modify-function signature="appendRow(const QList&lt;QStandardItem *&gt;&amp;)" remove="all"/>
- <modify-function signature="appendColumn(const QList&lt;QStandardItem *&gt;&amp;)" remove="all"/>
- <modify-function signature="clear()" remove="all"/>
+ <modify-function signature="takeColumn(int)">
+ <modify-argument index="return">
+ <parent index="this" action="remove" />
+ </modify-argument>
+ </modify-function>
+
+ <modify-function signature="takeRow(int)">
+ <modify-argument index="return">
+ <parent index="this" action="remove" />
+ </modify-argument>
+ </modify-function>
+
+ <modify-function signature="findItems(const QString&amp;, QFlags&lt;Qt::MatchFlag&gt;, int) const">
+ <modify-argument index="return">
+ <parent index="this" action="add" />
+ </modify-argument>
+ </modify-function>
+
+ <modify-function signature="insertColumn(int, const QList&lt;QStandardItem *&gt;&amp;)">
+ <modify-argument index="2">
+ <parent index="this" action="add" />
+ </modify-argument>
+ </modify-function>
+
+ <modify-function signature="insertRow(int, const QList&lt;QStandardItem *&gt;&amp;)">
+ <modify-argument index="2">
+ <parent index="this" action="add" />
+ </modify-argument>
+ </modify-function>
+
+ <modify-function signature="appendRow(const QList&lt;QStandardItem *&gt;&amp;)">
+ <modify-argument index="1">
+ <parent index="this" action="add" />
+ </modify-argument>
+ </modify-function>
+
+ <modify-function signature="appendColumn(const QList&lt;QStandardItem *&gt;&amp;)">
+ <modify-argument index="1">
+ <parent index="this" action="add" />
+ </modify-argument>
+ </modify-function>
+
+ <modify-function signature="clear()">
+ <inject-code class="target" position="beginning">
+ for(int r=0, r_max = %CPPSELF.rowCount(); r &lt; r_max; r++) {
+ QList&lt;QStandardItem *&gt; ri = %CPPSELF.takeRow(0);
+
+ PyObject *pyResult = %CONVERTTOPYTHON[QList&lt;QStandardItem * &gt;](ri);
+ Shiboken::setParent(Py_None, pyResult);
+ Py_XDECREF(pyResult);
+ }
+ </inject-code>
+ </modify-function>
</object-type>
<object-type name="QRadioButton" />
<object-type name="QScrollBar" />