diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2022-01-19 13:24:39 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2022-01-19 14:11:07 +0100 |
commit | 6f41e03f7f733e6a0f79d85a92166a9dab563069 (patch) | |
tree | 7103c1e158993cc9aad3269632c46201ec39ebb2 | |
parent | d7dcd28764ab0a52f82a6ab09dd9e5337a915148 (diff) |
libpyside: Move helper isCompiledMethod() to pysideutils.h
It appears to be a general use helper function which could be useful
outside signalmanager as well.
Amends 56f66f128566bd08f027fee46bb42a6c4f57a26e.
Task-number: PYSIDE-1755
Change-Id: I449243bb5d800ba4d271b3079ad394810d468312
Reviewed-by: Christian Tismer <tismer@stackless.com>
-rw-r--r-- | sources/pyside6/libpyside/globalreceiverv2.cpp | 1 | ||||
-rw-r--r-- | sources/pyside6/libpyside/pyside.cpp | 7 | ||||
-rw-r--r-- | sources/pyside6/libpyside/pysidesignal.cpp | 1 | ||||
-rw-r--r-- | sources/pyside6/libpyside/pysideutils.h | 2 | ||||
-rw-r--r-- | sources/pyside6/libpyside/qobjectconnect.cpp | 1 | ||||
-rw-r--r-- | sources/pyside6/libpyside/signalmanager.cpp | 7 | ||||
-rw-r--r-- | sources/pyside6/libpyside/signalmanager.h | 2 |
7 files changed, 12 insertions, 9 deletions
diff --git a/sources/pyside6/libpyside/globalreceiverv2.cpp b/sources/pyside6/libpyside/globalreceiverv2.cpp index cf2508a97..fadea41c3 100644 --- a/sources/pyside6/libpyside/globalreceiverv2.cpp +++ b/sources/pyside6/libpyside/globalreceiverv2.cpp @@ -40,6 +40,7 @@ #include "globalreceiverv2.h" #include "pysideweakref.h" #include "pysidestaticstrings.h" +#include "pysideutils.h" #include "signalmanager.h" #include <autodecref.h> diff --git a/sources/pyside6/libpyside/pyside.cpp b/sources/pyside6/libpyside/pyside.cpp index b2bf0ed69..292293512 100644 --- a/sources/pyside6/libpyside/pyside.cpp +++ b/sources/pyside6/libpyside/pyside.cpp @@ -525,6 +525,13 @@ QString pyPathToQString(PyObject *path) return QDir::fromNativeSeparators(pyStringToQString(strPath)); } +bool isCompiledMethod(PyObject *callback) +{ + return PyObject_HasAttr(callback, PySide::PyName::im_func()) + && PyObject_HasAttr(callback, PySide::PyName::im_self()) + && PyObject_HasAttr(callback, PySide::PyMagicName::code()); +} + static const unsigned char qt_resource_name[] = { // qt 0x0,0x2, diff --git a/sources/pyside6/libpyside/pysidesignal.cpp b/sources/pyside6/libpyside/pysidesignal.cpp index dfe96427d..62ff1f00c 100644 --- a/sources/pyside6/libpyside/pysidesignal.cpp +++ b/sources/pyside6/libpyside/pysidesignal.cpp @@ -40,6 +40,7 @@ #include <sbkpython.h> #include "pysidesignal.h" #include "pysidesignal_p.h" +#include "pysideutils.h" #include "pysidestaticstrings.h" #include "signalmanager.h" diff --git a/sources/pyside6/libpyside/pysideutils.h b/sources/pyside6/libpyside/pysideutils.h index 570fbe952..6f5d373ec 100644 --- a/sources/pyside6/libpyside/pysideutils.h +++ b/sources/pyside6/libpyside/pysideutils.h @@ -63,6 +63,8 @@ PYSIDE_API QString pyStringToQString(PyObject *str); /// Provide an efficient, correct PathLike interface. PYSIDE_API QString pyPathToQString(PyObject *path); +PYSIDE_API bool isCompiledMethod(PyObject *callback); + } //namespace PySide #endif // PYSIDESTRING_H diff --git a/sources/pyside6/libpyside/qobjectconnect.cpp b/sources/pyside6/libpyside/qobjectconnect.cpp index fda174cdc..e8a2b84dd 100644 --- a/sources/pyside6/libpyside/qobjectconnect.cpp +++ b/sources/pyside6/libpyside/qobjectconnect.cpp @@ -40,6 +40,7 @@ #include "qobjectconnect.h" #include "pysideqobject.h" #include "pysidesignal.h" +#include "pysideutils.h" #include "signalmanager.h" #include "shiboken.h" diff --git a/sources/pyside6/libpyside/signalmanager.cpp b/sources/pyside6/libpyside/signalmanager.cpp index a996d1e6c..845088367 100644 --- a/sources/pyside6/libpyside/signalmanager.cpp +++ b/sources/pyside6/libpyside/signalmanager.cpp @@ -89,13 +89,6 @@ namespace { namespace PySide { -bool isCompiledMethod(PyObject *callback) -{ - return PyObject_HasAttr(callback, PySide::PyName::im_func()) - && PyObject_HasAttr(callback, PySide::PyName::im_self()) - && PyObject_HasAttr(callback, PySide::PyMagicName::code()); -} - PyObjectWrapper::PyObjectWrapper() :m_me(Py_None) { diff --git a/sources/pyside6/libpyside/signalmanager.h b/sources/pyside6/libpyside/signalmanager.h index e32349a36..c066aacdf 100644 --- a/sources/pyside6/libpyside/signalmanager.h +++ b/sources/pyside6/libpyside/signalmanager.h @@ -54,8 +54,6 @@ QT_FORWARD_DECLARE_CLASS(QDataStream) namespace PySide { -PYSIDE_API bool isCompiledMethod(PyObject *callback); - /// Thin wrapper for PyObject which increases the reference count at the constructor but *NOT* at destructor. class PYSIDE_API PyObjectWrapper { |