diff options
Diffstat (limited to 'PySide/QtCore/typesystem_core.xml')
-rw-r--r-- | PySide/QtCore/typesystem_core.xml | 34 |
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&,int&,int&)" 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"> |