Functions

conan::priv Namespace Reference

Qt version specific code. More...

Functions

void BuildSignalData (const QObject *inObject, QVector< ConnectionData > &outConnections)
 Builds a list of all signals and their connections for the given object.
void BuildSlotData (const QObject *inObject, QVector< ConnectionData > &outConnections)
 Builds a list of all slots and their connections for the given object.

Detailed Description

Qt version specific code.

Contains functions that use the private API of Qt to access information about an object's signals, slots and active connections. Note that since Qt 4.6.0, it is required to lock a specific mutex before accessing the connection data of an object using: QMutexLocker locker(signalSlotLock(const QObject*)); Unfortunately the signalSlotLock method and the mutex it returns are all defined in qobject.cpp at file level scope and are thus unaccessible. As a result these methods and Conan in general are not thread safe. To be fair, this is not such a big deal during normal use. Connections are usually made during or after Object construction, and for the large part this is done on the gui thread (where Conan lives).


Function Documentation

void conan::priv::BuildSignalData ( const QObject *  inObject,
QVector< ConnectionData > &  outConnections 
)

Builds a list of all signals and their connections for the given object.

Parameters:
[in] inObject The object
[out] outConnections Contains all the object's signals and their connections
void conan::priv::BuildSlotData ( const QObject *  inObject,
QVector< ConnectionData > &  outConnections 
)

Builds a list of all slots and their connections for the given object.

Parameters:
[in] inObject The object
[out] outConnections Contains all the object's slots and their connections