aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2022-05-02 14:49:01 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2022-05-03 00:32:10 +0200
commitbdfb36b880cecc40fa4b15ed963ee3e1c033d469 (patch)
treeccb022e9ac102af1374e1027db5ab762735f3d62
parent868d8197e326fc9228b980617116076a7af8b374 (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.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)},