diff options
Diffstat (limited to 'sources/pyside6/libpyside/pysidesignal.h')
-rw-r--r-- | sources/pyside6/libpyside/pysidesignal.h | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/sources/pyside6/libpyside/pysidesignal.h b/sources/pyside6/libpyside/pysidesignal.h index c38371d81..589fc2c92 100644 --- a/sources/pyside6/libpyside/pysidesignal.h +++ b/sources/pyside6/libpyside/pysidesignal.h @@ -30,11 +30,11 @@ extern "C" { PyObject_HEAD PySideSignalInstancePrivate *d; + bool deleted; }; }; // extern "C" -namespace PySide { -namespace Signal { +namespace PySide::Signal { /** * This function checks for the PySideSignal type. @@ -92,6 +92,18 @@ PYSIDE_API PyObject *getObject(PySideSignalInstance *signal); **/ PYSIDE_API const char *getSignature(PySideSignalInstance *signal); +struct EmitterData +{ + QObject *emitter = nullptr; + int methodIndex = -1; +}; + +/// A convenience to retrieve the emitter data from a signal instance +/// +/// @param signal The Signal object +/// @return Data structure +PYSIDE_API EmitterData getEmitterData(PySideSignalInstance *signal); + /** * This function is used to retrieve the signal signature * @@ -123,7 +135,8 @@ PYSIDE_API bool checkQtSignal(const char *signature); * @param encodeName Used to specify if the returned signature will be encoded with Qt signal/slot style * @return Return the callback signature **/ -PYSIDE_API QString getCallbackSignature(const char *signal, QObject *receiver, PyObject *callback, bool encodeName); +PYSIDE_API QByteArray getCallbackSignature(const char *signal, QObject *receiver, + PyObject *callback, bool encodeName); /** * This function parses the signature and then returns a list of argument types. @@ -133,10 +146,9 @@ PYSIDE_API QString getCallbackSignature(const char *signal, QObject *receiver, P * @return Return true if this is a Qt Signal, otherwise return false * @todo replace return type by QList<QByteArray> **/ -QStringList getArgsFromSignature(const char *signature, - bool *isShortCircuit = nullptr); +QByteArrayList getArgsFromSignature(const char *signature, + bool *isShortCircuit = nullptr); -} // namespace Signal -} // namespace PySide +} // namespace PySide::Signal #endif |