aboutsummaryrefslogtreecommitdiffstats
path: root/PySide/QtCore/typesystem_core.xml
diff options
context:
space:
mode:
Diffstat (limited to 'PySide/QtCore/typesystem_core.xml')
-rw-r--r--PySide/QtCore/typesystem_core.xml34
1 files changed, 28 insertions, 6 deletions
diff --git a/PySide/QtCore/typesystem_core.xml b/PySide/QtCore/typesystem_core.xml
index 5a53261b7..37c246b93 100644
--- a/PySide/QtCore/typesystem_core.xml
+++ b/PySide/QtCore/typesystem_core.xml
@@ -140,6 +140,7 @@
<conversion-rule file="qstringlist_conversions.h" />
</container-type>
<primitive-type name="QStringRef">
+ <include file-name="datetime.h" location="global"/>
<conversion-rule file="qstringref_conversions.h" />
</primitive-type>
<primitive-type name="QChar">
@@ -559,7 +560,7 @@
<value-type name="QBasicTimer"/>
<value-type name="QByteArrayMatcher"/>
<value-type name="QDate" hash-function="PySide::hash" >
- <conversion-rule class="target" file="qdate_conversions.h"/>
+ <conversion-rule file="qdate_conversions.h"/>
<extra-includes>
<include file-name="datetime.h" location="global"/>
</extra-includes>
@@ -581,6 +582,12 @@
</insert-template>
</inject-code>
</add-function>
+ <add-function signature="toPython()" return-type="PyObject">
+ <inject-code class="target" position="beginning">
+ if (!PyDateTimeAPI) PyDateTime_IMPORT;
+ %PYARG_0 = PyDate_FromDate(%CPPSELF.year(), %CPPSELF.month(), %CPPSELF.day());
+ </inject-code>
+ </add-function>
<modify-function signature="getDate(int*,int*,int*)" >
<modify-argument index="1">
<remove-argument/>
@@ -617,7 +624,7 @@
<modify-function signature="julianToGregorian(uint,int&amp;,int&amp;,int&amp;)" remove="all"/>
</value-type>
<value-type name="QDateTime" hash-function="PySide::hash">
- <conversion-rule class="target" file="qdatetime_conversions.h"/>
+ <conversion-rule file="qdatetime_conversions.h"/>
<extra-includes>
<include file-name="datetime.h" location="global"/>
</extra-includes>
@@ -648,6 +655,14 @@
</insert-template>
</inject-code>
</add-function>
+ <add-function signature="toPython()" return-type="PyObject">
+ <inject-code class="target" position="beginning">
+ QDate date = %CPPSELF.date();
+ QTime time = %CPPSELF.time();
+ if (!PyDateTimeAPI) PyDateTime_IMPORT;
+ %PYARG_0 = PyDateTime_FromDateAndTime(date.year(), date.month(), date.day(), time.hour(), time.minute(), time.second(), time.msec());
+ </inject-code>
+ </add-function>
</value-type>
<value-type name="QDir">
<enum-type name="Filter" flags="Filters"/>
@@ -946,6 +961,11 @@
</value-type>
<value-type name="QTime" hash-function="PySide::hash">
+ <conversion-rule file="qtime_conversions.h"/>
+ <extra-includes>
+ <include file-name="datetime.h" location="global"/>
+ </extra-includes>
+
<add-function signature="__repr__" return-type="PyObject*">
<inject-code class="target" position="beginning">
<insert-template name="repr_code">
@@ -962,10 +982,12 @@
</insert-template>
</inject-code>
</add-function>
- <conversion-rule class="target" file="qtime_conversions.h"/>
- <extra-includes>
- <include file-name="datetime.h" location="global"/>
- </extra-includes>
+ <add-function signature="toPython()" return-type="PyObject">
+ <inject-code class="target" position="beginning">
+ if (!PyDateTimeAPI) PyDateTime_IMPORT;
+ %PYARG_0 = PyTime_FromTime(%CPPSELF.hour(), %CPPSELF.minute(), %CPPSELF.second(), %CPPSELF.msec());
+ </inject-code>
+ </add-function>
</value-type>
<value-type name="QPersistentModelIndex">
<modify-function signature="internalPointer()const">