From 7e7bcce2d992c6fd53fdc4d9eb40f21c951d5347 Mon Sep 17 00:00:00 2001 From: "Wladimir J. van der Laan" Date: Sat, 24 Mar 2012 17:07:29 +0100 Subject: Code deduplication: make function in GUIUtil to get connection type to call object slot in GUI thread with invokeMethod. --- src/qt/bitcoin.cpp | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) (limited to 'src/qt/bitcoin.cpp') diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp index 738464668..0f7c96e6a 100644 --- a/src/qt/bitcoin.cpp +++ b/src/qt/bitcoin.cpp @@ -5,6 +5,7 @@ #include "clientmodel.h" #include "walletmodel.h" #include "optionsmodel.h" +#include "guiutil.h" #include "headers.h" #include "init.h" @@ -12,7 +13,6 @@ #include #include -#include #include #include #include @@ -70,15 +70,7 @@ bool ThreadSafeAskFee(int64 nFeeRequired, const std::string& strCaption, wxWindo return true; bool payFee = false; - // Call slot on GUI thread. - // If called from another thread, use a blocking QueuedConnection. - Qt::ConnectionType connectionType = Qt::DirectConnection; - if(QThread::currentThread() != QCoreApplication::instance()->thread()) - { - connectionType = Qt::BlockingQueuedConnection; - } - - QMetaObject::invokeMethod(guiref, "askFee", connectionType, + QMetaObject::invokeMethod(guiref, "askFee", GUIUtil::blockingGUIThreadConnection(), Q_ARG(qint64, nFeeRequired), Q_ARG(bool*, &payFee)); @@ -90,14 +82,7 @@ void ThreadSafeHandleURL(const std::string& strURL) if(!guiref) return; - // Call slot on GUI thread. - // If called from another thread, use a blocking QueuedConnection. - Qt::ConnectionType connectionType = Qt::DirectConnection; - if(QThread::currentThread() != QCoreApplication::instance()->thread()) - { - connectionType = Qt::BlockingQueuedConnection; - } - QMetaObject::invokeMethod(guiref, "handleURL", connectionType, + QMetaObject::invokeMethod(guiref, "handleURL", GUIUtil::blockingGUIThreadConnection(), Q_ARG(QString, QString::fromStdString(strURL))); } -- cgit v1.2.3