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

From Qt Wiki
Jump to: navigation, search
(Add "cleanup" tag)
(Decode HTML entity names)
Line 3: Line 3:
 
- We agree that we focus on C++11 and new<br /> features requires it
 
- 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);
+
- We want to add the overload<br /> connect(ob1, &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;)
+
- 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<><br /> QTimer::singleShot(int, QSlot<void()>)
  
- 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
+
- implement<br /> template<typename …Args><br /> QMetaObject::queuedInvoke(QObject, Ret(T::*)(Args…), Args…)<br /> template<typename …Args><br /> 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
 
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 17:40, 12 March 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