def silent_qobject(qobject: QObject) -> QObject: """Disable notifying connected callbacks/slots.""" blocked_status: bool = qobject.blockSignals(True) try: yield qobject finally: qobject.blockSignals(blocked_status)
def blockSignals(obj: QtCore.QObject): """Context manager for temporarily blocking signal emission Wraps :py:meth:`QtCore.QObject.blockSignals`. The previous blocking state is restored upon exiting. Parameters ---------- obj The object instance for which signals will be blocked """ try: wasBlocked = obj.blockSignals(True) yield finally: obj.blockSignals(wasBlocked)
def blockedSignals(qObject: QObject): oldState = qObject.blockSignals(True) try: yield finally: qObject.blockSignals(oldState)