[Interest] Best practice for properties, QAbstractListModel with a QList<QObject*> and a Quick2 view
Jan Kundrát
jkt at flaska.net
Wed Dec 18 17:19:04 CET 2013
(No need to Cc me, I read the list.)
> The delegate is alive for a short period after this, it seems. I guess
> maybe just another event loop cycle? I didn't investigate it further yet
> though.
Interesting. If that is indeed the case, perhaps you could use distinct
delegates based on the value of myObject, but I suspect one cannot do this
after the delegate was already instantiated.
Anyway, what is rather interesting is to find out how exactly the delegate
learns that the actual value of "myObject" has changed. Perhaps it does not
actually learns this via the usual MVC channels and this only happens by
chance due to the fact that you are using property bindings on top of the
returned object. I.e. the delegate previously set up a binding to a
property of myObject, the referenced QObject ceases to exist, the binding
gets invalidated (?) and the delegate reacts to that by re-evaluating the
expression, only to find out that the myObject is now null.
What happens if you change the deleteLater() to an immediate delete (and
move it between the beginRemoveRows and endRemoveRows)? Are you deleting
your items in the middle of the list, or always at the end?
Cheers,
Jan
--
Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/
More information about the Interest
mailing list