ed827acc27
I don't think I ever worked on a project of non-trivial size that didn't at some point add a QSignalBlocker. This commit adds code, tests and documentation. Later commits will convert naked blockSignals() calls to use QSignalBlocker. The implementation is purely inline to avoid the heavy overhead of cross-dll function calls for this miniscule task. This should not be a problem because QSignalBlocker only uses public API and a pattern that we anyway need to keep working until Qt 6, at least, so even changing the implementation later will be no problem as the old implementation lurking in non-recompiled code will be acceptable, too. This implementation is an evolution from KDTools' KDSignalBlocker, with the following changes: - Implements unblock() and reblock() - Uses the return value of blockSignals() instead of a separate signalsBlocked() call. Change-Id: I1933dfd72a0f5190324be377cfca3c54cf3d6828 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> |
||
---|---|---|
.. | ||
qcoreapplication | ||
qeventdispatcher | ||
qeventloop | ||
qmath | ||
qmetamethod | ||
qmetaobject | ||
qmetaobjectbuilder | ||
qmetaproperty | ||
qmetatype | ||
qmimedata | ||
qobject | ||
qpointer | ||
qsharedmemory | ||
qsignalmapper | ||
qsocketnotifier | ||
qsystemsemaphore | ||
qtimer | ||
qtranslator | ||
qvariant | ||
qwineventnotifier | ||
kernel.pro |