diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2023-08-21 21:41:23 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2023-08-22 10:41:31 +0000 |
commit | fa61e6bf40244f11105505298cd9094eff7aa447 (patch) | |
tree | 4de55bdb102a8637f624e680d097429cfaa23ae2 | |
parent | f45bccb0e97ede83206fd8d36fa0e9cb89d50aa7 (diff) |
Brush up code related to pre-Jira bug 1019
Add explanatory comments; fix up the debug operator of
GetReceiverResult.
Task-number: PYSIDE-2418
Change-Id: I77b9ad2d38a5bba1b78ffaf8835f20fbb93636d0
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
(cherry picked from commit 7b83f501c5e8dd0af7d09e739d395dcfaaad2f74)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | sources/pyside6/libpyside/qobjectconnect.cpp | 7 | ||||
-rw-r--r-- | sources/pyside6/tests/QtCore/bug_1019.py | 1 |
2 files changed, 6 insertions, 2 deletions
diff --git a/sources/pyside6/libpyside/qobjectconnect.cpp b/sources/pyside6/libpyside/qobjectconnect.cpp index 608eae170..72c80645f 100644 --- a/sources/pyside6/libpyside/qobjectconnect.cpp +++ b/sources/pyside6/libpyside/qobjectconnect.cpp @@ -63,7 +63,7 @@ QDebug operator<<(QDebug d, const GetReceiverResult &r) d.noquote(); d.nospace(); d << "GetReceiverResult(receiver=" << r.receiver << ", self=" << r.self - << ", sig=" << r.callbackSig << "slotIndex=" << r.slotIndex + << ", sig=\"" << r.callbackSig << "\", slotIndex=" << r.slotIndex << ", usingGlobalReceiver=" << r.usingGlobalReceiver << ')'; return d; } @@ -101,7 +101,10 @@ static GetReceiverResult getReceiver(QObject *source, const char *signal, result.usingGlobalReceiver = !result.receiver || forceGlobalReceiver; - // Check if this callback is a overwrite of a non-virtual Qt slot. + // Check if this callback is a overwrite of a non-virtual Qt slot (pre-Jira bug 1019). + // Make it possible to connect to a MyWidget.show() although QWidget.show() + // is a non-virtual slot which would be found by QMetaObject search. + // FIXME PYSIDE7: This is arguably a bit of a misguided "feature", remove? if (!result.usingGlobalReceiver && result.receiver && result.self) { result.callbackSig = PySide::Signal::getCallbackSignature(signal, result.receiver, callback, diff --git a/sources/pyside6/tests/QtCore/bug_1019.py b/sources/pyside6/tests/QtCore/bug_1019.py index 89e400428..4a35956b1 100644 --- a/sources/pyside6/tests/QtCore/bug_1019.py +++ b/sources/pyside6/tests/QtCore/bug_1019.py @@ -30,6 +30,7 @@ class MyTimer2 (MyTimer): pass def start(self): + """ 'Overrides' non-virtual slot QTimer.start().""" self.startCalled = True QCoreApplication.instance().quit() |