From c1b9901b6a1368b5375d8d40c7ea0a3bf038545c Mon Sep 17 00:00:00 2001 From: jp9000 Date: Sun, 15 Nov 2015 08:38:00 -0800 Subject: [PATCH] UI: Add signal blocker helper class --- obs/qt-wrappers.hpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/obs/qt-wrappers.hpp b/obs/qt-wrappers.hpp index 925ab696e..78ee31591 100644 --- a/obs/qt-wrappers.hpp +++ b/obs/qt-wrappers.hpp @@ -44,3 +44,19 @@ QDataStream &operator<<(QDataStream &out, const OBSScene &scene); QDataStream &operator>>(QDataStream &in, OBSScene &scene); QDataStream &operator<<(QDataStream &out, const OBSSceneItem &si); QDataStream &operator>>(QDataStream &in, OBSSceneItem &si); + +class SignalBlocker { + QWidget *widget; + bool blocked; + +public: + inline explicit SignalBlocker(QWidget *widget_) : widget(widget_) + { + blocked = widget->blockSignals(true); + } + + inline ~SignalBlocker() + { + widget->blockSignals(blocked); + } +};