[Qt-qml] QML model handling

Jason H scorp1us at yahoo.com
Wed Oct 20 19:36:25 CEST 2010


Well, there are three things on my list:
1. More Effects: Reflection, wipe (think eraser). 
2. Native widgets (buttons, combos, etc)
3. Abstract Engines
4. Flash

For #3, we observe that you have a visual representation and an abstract data 
model. However we don't really have a controller... I was thinking we should be 
able to plug in a physics engine (2D or 3D), and have it use Element properties 
of mass, direction and velocity. Which would cause corresponding visual updates 
for a simulator.

Also for #3, if we change the visual model to an abstract one, say text, you can 
get something that prints out item IDs and coordinates.
Or, you could dynamically render web pages using data in the model. QML itself 
is abstract enough to define items, and Signals/slots provide a fundamental 
dynamic interaction. 


For #4, we (the interweb) needs a completely open ource Flash replacement. We 
need sand-boxed QML as a browser plug-in.





----- Original Message ----
From: "michael.brasser at nokia.com" <michael.brasser at nokia.com>
To: qt-qml at trolltech.com
Sent: Wed, October 13, 2010 2:08:31 AM
Subject: [Qt-qml] QML model handling

Hi all,

One of the things we're researching now that 4.7 is out the door is how we work 
with data sets in QML. Part of that is researching "next generation" model 
classes for QML (internally, XmlListModel and and ListModel are already using a 
modified version of the list model from 
http://qt.gitorious.org/qt-labs/itemviews-ng, rather than QAbstractListModel).

Here are some of the things we are planning to look at (not meant to be 
exhaustive, but rather to describe the general direction of research):

* Allowing models to be aware of the data being viewed so they need only monitor 
that data for changes
    * Allowing views to cancel an incomplete request if the data isn't needed 
any more (e.g. quickly flicked list with threaded retrieval from a slow source)
    * Possibly allowing other hints as well, such as direction of movement
* Allowing optimal retrieval of data from storage and optimal exposure to QML
    * Allowing threaded retrieval of data
    * Allowing the "roles" exposed by a model to have type information (rather 
than wrapping everything in QVariant)
    * Allowing some data to be provided immediately, while other data is 
provided as it becomes available.
* Allowing rows in a list model to provide different sets of data or have a type 
(allowing a view to select a different delegate based on the data)
* Allowing easy creation of custom models, and providing a good set of 
convenience models
* Researching hierarchical models
* Researching model sorting, filtering, proxying, etc

In addition to the above, we'd love to get feedback on your experiences (both 
good and bad) with QML's current model handling, as well as any ideas you might 
have, additional features you'd like to see, etc.

Thanks,
Michael
_______________________________________________
Qt-qml mailing list
Qt-qml at trolltech.com
http://lists.trolltech.com/mailman/listinfo/qt-qml



      



More information about the Qt-qml mailing list