LeechCraft  0.6.70-16373-g319c272718
Modular cross-platform feature rich live environment.
util.h
Go to the documentation of this file.
1 /**********************************************************************
2  * LeechCraft - modular cross-platform feature rich internet client.
3  * Copyright (C) 2006-2014 Georg Rudoy
4  *
5  * Distributed under the Boost Software License, Version 1.0.
6  * (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7  **********************************************************************/
8 
9 #pragma once
10 
11 #include <QThread>
12 
13 namespace LC::Util
14 {
15  template<typename F>
16  void InObjectThread (QObject& object, F&& function)
17  {
18  if (object.thread () == QThread::currentThread ())
19  std::forward<F> (function) ();
20  else
21  QMetaObject::invokeMethod (&object, std::forward<F> (function), Qt::QueuedConnection);
22  }
23 }
void InObjectThread(QObject &object, F &&function)
Definition: util.h:16