diff options
Diffstat (limited to 'sources/pyside6/libpyside/pyside.cpp')
| -rw-r--r-- | sources/pyside6/libpyside/pyside.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/sources/pyside6/libpyside/pyside.cpp b/sources/pyside6/libpyside/pyside.cpp index 39b20120d..4abb2da98 100644 --- a/sources/pyside6/libpyside/pyside.cpp +++ b/sources/pyside6/libpyside/pyside.cpp @@ -40,6 +40,7 @@ #include "pyside.h" #include "pysideinit.h" #include "pysidecleanup.h" +#include "pysidemetatype.h" #include "pysideqapp.h" #include "pysideqobject.h" #include "pysideutils.h" @@ -932,5 +933,18 @@ QObject *convertToQObject(PyObject *object, bool raiseError) return reinterpret_cast<QObject*>(ptr); } +QMetaType qMetaTypeFromPyType(PyTypeObject *pyType) +{ + if (Shiboken::String::checkType(pyType)) + return QMetaType(QMetaType::QString); + if (pyType == &PyFloat_Type) + return QMetaType(QMetaType::Double); + if (pyType == &PyLong_Type) + return QMetaType(QMetaType::Int); + if (pyType == SbkObjectType_TypeF()) + return QMetaType::fromName(Shiboken::ObjectType::getOriginalName(pyType)); + return QMetaType::fromName(pyType->tp_name); +} + } //namespace PySide |
