aboutsummaryrefslogtreecommitdiffstats
path: root/PySide/QtUiTools/typesystem_uitools.xml
diff options
context:
space:
mode:
Diffstat (limited to 'PySide/QtUiTools/typesystem_uitools.xml')
-rw-r--r--PySide/QtUiTools/typesystem_uitools.xml23
1 files changed, 17 insertions, 6 deletions
diff --git a/PySide/QtUiTools/typesystem_uitools.xml b/PySide/QtUiTools/typesystem_uitools.xml
index 7ea988b3d..a188aa34b 100644
--- a/PySide/QtUiTools/typesystem_uitools.xml
+++ b/PySide/QtUiTools/typesystem_uitools.xml
@@ -48,13 +48,27 @@
</modify-function>
<modify-function signature="load(QIODevice*, QWidget*)">
+ <extra-includes>
+ <include file-name="glue/uitools_loadui.h" location="local"/>
+ </extra-includes>
+ <modify-argument index="2">
+ <replace-default-expression with="0" />
+ <rename to="parentWidget" />
+ </modify-argument>
<modify-argument index="return">
<parent index="2" action="add"/>
</modify-argument>
- </modify-function>
+ <inject-code>
+ //Avoid calling the original function: %CPPSELF.load
+ %PYARG_0 = quiloader_load_ui_from_device(%CPPSELF, %1, %2);
+ </inject-code>
+ </modify-function>
<!-- Syntax sugar -->
<add-function signature="load(const char*, QWidget*)" return-type="QWidget*">
+ <extra-includes>
+ <include file-name="glue/uitools_loadui.h" location="local"/>
+ </extra-includes>
<modify-argument index="2">
<replace-default-expression with="0" />
<rename to="parentWidget" />
@@ -63,11 +77,8 @@
<parent index="2" action="add"/>
</modify-argument>
<inject-code>
- QFile f(%1);
- if (f.open(QIODevice::ReadOnly | QIODevice::Text))
- %PYARG_0 = %CONVERTTOPYTHON[QWidget*](%CPPSELF.load(&amp;f, %2));
- else
- PyErr_SetString(PyExc_RuntimeError, "Unable to open ui file");
+ //Avoid calling the original function: %CPPSELF.load
+ %PYARG_0 = quiloader_load_ui(%CPPSELF, %1, %2);
</inject-code>
</add-function>
</object-type>