aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sources/pyside6/libpyside/pysidesignal.cpp9
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)},