Mapper  0.9.0
API documentation
Classes | Public Member Functions | List of all members
OpenOrienteering::ScopedMultiSignalsBlocker Class Reference

A safe and scoped wrapper around QObject::blockSignals() of multiple objects. More...

#include <scoped_signals_blocker.h>

Public Member Functions

 ScopedMultiSignalsBlocker ()=default
 
template<typename ... QObjectPointers>
 ScopedMultiSignalsBlocker (QObjectPointers ... objects)
 
 ~ScopedMultiSignalsBlocker ()
 
void add (QObject *object)
 
ScopedMultiSignalsBlockeroperator<< (QObject *object)
 

Detailed Description

A safe and scoped wrapper around QObject::blockSignals() of multiple objects.

A ScopedMultiSignalsBlocker allows to disable the signals of multiple QObjects for the scope of a particular block. It sets the QObject's signalsBlocked property to true when they are added (by operator <<), and resets its to its previous state during destruction.

Synopsis:

{
    ScopedMultiSignalsBlocker block(my_widget, my_other_widget);
    my_widget->setSomeProperty("Hello World");
}

{
    ScopedMultiSignalsBlocker block;
    block << my_widget << my_other_widget;
    my_widget->setSomeProperty("Hello World");
}

Constructor & Destructor Documentation

◆ ScopedMultiSignalsBlocker() [1/2]

OpenOrienteering::ScopedMultiSignalsBlocker::ScopedMultiSignalsBlocker ( )
default

◆ ScopedMultiSignalsBlocker() [2/2]

template<typename ... QObjectPointers>
OpenOrienteering::ScopedMultiSignalsBlocker::ScopedMultiSignalsBlocker ( QObjectPointers ...  objects)

◆ ~ScopedMultiSignalsBlocker()

OpenOrienteering::ScopedMultiSignalsBlocker::~ScopedMultiSignalsBlocker ( )

Member Function Documentation

◆ add()

void OpenOrienteering::ScopedMultiSignalsBlocker::add ( QObject object)

◆ operator<<()

ScopedMultiSignalsBlocker & OpenOrienteering::ScopedMultiSignalsBlocker::operator<< ( QObject object)
inline

The documentation for this class was generated from the following files: