aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6/libpyside/pyside.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sources/pyside6/libpyside/pyside.cpp')
-rw-r--r--sources/pyside6/libpyside/pyside.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/sources/pyside6/libpyside/pyside.cpp b/sources/pyside6/libpyside/pyside.cpp
index 14b86f322..990b45694 100644
--- a/sources/pyside6/libpyside/pyside.cpp
+++ b/sources/pyside6/libpyside/pyside.cpp
@@ -656,6 +656,17 @@ bool registerInternalQtConf()
return isRegistered;
}
+bool isQObjectDerived(PyTypeObject *pyType, bool raiseError) {
+ static PyTypeObject *qobjectType = Shiboken::Conversions::getPythonTypeObject("QObject*");
+
+ if (!PyType_IsSubtype(pyType, qobjectType)) {
+ if (raiseError)
+ PyErr_Format(PyExc_TypeError, "A type inherited from %s expected, got %s.",
+ qobjectType->tp_name, pyType->tp_name);
+ return false;
+ }
+ return true;
+}
} //namespace PySide