[Development] [Q] Good way to handle QEvent::DeferredDelete
Elvis Lee(KwangWoong Lee)
kwangwoong.lee at lge.com
Fri Dec 27 03:23:39 CET 2013
Hello.
I'm looking for good way to handle objects which have called deleteLater.
According to what I understood until now, there are 2 ways to handle them.
One is making control return to the event loop. Another is calling
QCoreApplication::sendPostedEvents(0, QEvent::DeferredDelete) explicitly.
Actually, for the first way, I couldn't know what to do exactly in code
level. How to return control to event loop?
I feel the control is always on event loop in our module. Does that mean to
exit from event loop in QCoreApplication::exec()?
So I tried the second way, calling sendPostedEvents explicitly. But I
encountered an obstacle to send the event.
It seems that the function should be called with lower or same 'loopLevel'
of posted event.
I couldn't find proper position to call sendPostedEvents except adding glib
function to main event loop. (We are using qeventdispatcher_glib)
Usually where is the good position to call sendPostedEvents with low
loopLevel?
In sum, there are 2 question.
1. What is the natural way to handle deleteLater?
2. Where is a place which is not from QCoreApplication::notifyInternal
so that it has loopLevel '1' to call sendPostedEvents?
Thanks.
Elvis.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20131227/58c90e64/attachment.html>
More information about the Development
mailing list