X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fsignalproxy.cpp;h=7bd87513f801426e11ffd1ce72d1902eb33f4b82;hp=19b9af83e2f36c485947527fb86c609349b530b6;hb=3a3e844f9fcfd12235a0086af75ecd503b621ef4;hpb=ab7ef4d24f62b5848b628482b7762ebfc0b53e1a diff --git a/src/common/signalproxy.cpp b/src/common/signalproxy.cpp index 19b9af83..7bd87513 100644 --- a/src/common/signalproxy.cpp +++ b/src/common/signalproxy.cpp @@ -18,6 +18,8 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ +#include + #include #include #include @@ -59,7 +61,7 @@ public: SignalRelay(SignalProxy *parent) : QObject(parent), _proxy(parent) {} inline SignalProxy *proxy() const { return _proxy; } - int qt_metacall(QMetaObject::Call _c, int _id, void **_a); + int qt_metacall(QMetaObject::Call _c, int _id, void **_a) override; void attachSignal(QObject *sender, int signalId, const QByteArray &funcName); void detachSignal(QObject *sender, int signalId = -1); @@ -69,8 +71,8 @@ private: QObject *sender; int signalId; QByteArray signature; - Signal(QObject *sender, int sigId, const QByteArray &signature) : sender(sender), signalId(sigId), signature(signature) {} - Signal() : sender(0), signalId(-1) {} + Signal(QObject *sender, int sigId, QByteArray signature) : sender(sender), signalId(sigId), signature(std::move(signature)) {} + Signal() : sender(nullptr), signalId(-1) {} }; SignalProxy *_proxy; @@ -166,7 +168,9 @@ int SignalProxy::SignalRelay::qt_metacall(QMetaObject::Call _c, int _id, void ** // SignalProxy // ================================================== -thread_local SignalProxy *SignalProxy::_current{nullptr}; +namespace { +thread_local SignalProxy *_current{nullptr}; +} SignalProxy::SignalProxy(QObject *parent) : QObject(parent) @@ -204,6 +208,12 @@ SignalProxy::~SignalProxy() } +SignalProxy *SignalProxy::current() +{ + return _current; +} + + void SignalProxy::setProxyMode(ProxyMode mode) { if (!_peerMap.empty()) { @@ -332,8 +342,8 @@ void SignalProxy::removePeer(Peer *peer) return; } - disconnect(peer, 0, this, 0); - peer->setSignalProxy(0); + disconnect(peer, nullptr, this, nullptr); + peer->setSignalProxy(nullptr); _peerMap.remove(peer->id()); emit peerRemoved(peer); @@ -390,7 +400,7 @@ SignalProxy::ExtendedMetaObject *SignalProxy::extendedMetaObject(const QMetaObje if (_extendedMetaObjects.contains(meta)) return _extendedMetaObjects[meta]; else - return 0; + return nullptr; } @@ -654,9 +664,9 @@ bool SignalProxy::invokeSlot(QObject *receiver, int methodId, const QVariantList return false; } - void *_a[] = { 0, // return type... - 0, 0, 0, 0, 0, // and 10 args - that's the max size qt can handle with signals and slots - 0, 0, 0, 0, 0 }; + void *_a[] = { nullptr, // return type... + nullptr, nullptr, nullptr, nullptr, nullptr, // and 10 args - that's the max size qt can handle with signals and slots + nullptr, nullptr, nullptr, nullptr, nullptr }; // check for argument compatibility and build params array for (int i = 0; i < numArgs; i++) {