Difference between revisions of "Qt-contributors-summit-2013-QObject"

From Qt Wiki
Jump to: navigation, search
Line 1: Line 1:
 +
- We agree that we focus on C++11 and new<br /> features requires it
  
 +
- We want to add the overload<br /> connect(ob1, &amp;ddd::fff, receiver, []{}, Qt::QueuedConnection);
 +
 +
- For function such as QTimer::singleShot, we can add the<br /> two template overload and some helper code in (private?) <span class="caps">API</span><br /> to share the complicated template code. Or just use QSlot&lt;…&gt;<br /> QTimer::singleShot(int, QSlot&lt;void()&gt;)
 +
 +
- implement<br /> template&lt;typename …Args&gt;<br /> QMetaObject::queuedInvoke(QObject, Ret(T::*)(Args…), Args…)<br /> template&lt;typename …Args&gt;<br /> QMetaObject::blockingQueuedInvoke(QObject, Ret(T::*)(Args…), Args…) -&gt; Ret
 +
 +
Templateed QObject: – investigate what are the use case to see what kind of features we want to support or not. (Not to open too many cans of worms

Revision as of 14:07, 25 February 2015

- We agree that we focus on C++11 and new
features requires it

- We want to add the overload
connect(ob1, &ddd::fff, receiver, []{}, Qt::QueuedConnection);

- For function such as QTimer::singleShot, we can add the
two template overload and some helper code in (private?) API
to share the complicated template code. Or just use QSlot<…>
QTimer::singleShot(int, QSlot<void()>)

- implement
template<typename …Args>
QMetaObject::queuedInvoke(QObject, Ret(T::*)(Args…), Args…)
template<typename …Args>
QMetaObject::blockingQueuedInvoke(QObject, Ret(T::*)(Args…), Args…) -> Ret

Templateed QObject: – investigate what are the use case to see what kind of features we want to support or not. (Not to open too many cans of worms