diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2022-05-02 14:49:01 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2022-05-03 00:32:10 +0200 |
commit | bdfb36b880cecc40fa4b15ed963ee3e1c033d469 (patch) | |
tree | ccb022e9ac102af1374e1027db5ab762735f3d62 | |
parent | 868d8197e326fc9228b980617116076a7af8b374 (diff) |
libpyside: Add a __repr__ for PySideSignalInstance
PySideSignal already has a str operator, which takes precedence.
Pick-to: 6.2 6.3
Fixes: PYSIDE-1911
Change-Id: I98365e75068ce4db661b3293d1336b43a94807a0
Reviewed-by: Christian Tismer <tismer@stackless.com>
-rw-r--r-- | sources/pyside6/libpyside/pysidesignal.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sources/pyside6/libpyside/pysidesignal.cpp b/sources/pyside6/libpyside/pysidesignal.cpp index 08fbd667d..65ee650f3 100644 --- a/sources/pyside6/libpyside/pysidesignal.cpp +++ b/sources/pyside6/libpyside/pysidesignal.cpp @@ -170,6 +170,14 @@ PyTypeObject *PySideSignal_TypeF(void) return type; } +static PyObject *signalInstanceRepr(PyObject *self) +{ + auto *data = reinterpret_cast<PySideSignalInstance *>(self); + auto *typeName = Py_TYPE(self)->tp_name; + return Shiboken::String::fromFormat("<%s %s at %p>", typeName, + data->d->signature.constData(), self); +} + static PyMethodDef SignalInstance_methods[] = { {"connect", reinterpret_cast<PyCFunction>(signalInstanceConnect), METH_VARARGS|METH_KEYWORDS, nullptr}, @@ -182,6 +190,7 @@ static PyType_Slot PySideSignalInstanceType_slots[] = { {Py_mp_subscript, reinterpret_cast<void *>(signalInstanceGetItem)}, {Py_tp_call, reinterpret_cast<void *>(signalInstanceCall)}, {Py_tp_methods, reinterpret_cast<void *>(SignalInstance_methods)}, + {Py_tp_repr, reinterpret_cast<void *>(signalInstanceRepr)}, {Py_tp_new, reinterpret_cast<void *>(PyType_GenericNew)}, {Py_tp_free, reinterpret_cast<void *>(signalInstanceFree)}, {Py_tp_dealloc, reinterpret_cast<void *>(Sbk_object_dealloc)}, |