[Qt5-feedback] Scope of QtQuick features?

Stephen Kelly steveire at gmail.com
Wed May 18 13:50:36 CEST 2011


Hi,

QtQuick is designed to cater to mobile use-cases. While the language and 
some core concepts like bindings, animations, states, transitions etc can be 
used on the desktop too, all of the compromises made in QtQuick so far have 
leaned towards optimizing for mobile. 

For example, only vertical gradient is supported in the Gradient element 
because anything else is slow apparently (presumably on some particular 
target hardware). NQDF Developers creating such elements said they didn't 
want us consumers of QtQuick to be able to shoot ourselves in the foot too 
easily. 

Similarly, NQDF developers told me that consistent styling is not in scope 
for QML because on mobile you want to design your ui from scratch each time. 
I don't think that's true on desktop. I see work towards styling in various 
places now, but it still seems cumbersome. I don't think the QML primitives 
are designed to make it easy/possible.

Finally, 'traditional' user interactions with a mouse seem hard with QML 
because QML has always targetted touch devices. I don't know how to do 
things like drag and drop, rubber-banding etc in nice ways as encapsulated, 
reuable components. I've also tried dragging items out of a QML ListView. It 
can work if dragging is only allowed horizontally not vertically, and 
flicking is vertical. Otherwise dragging conflicts with flicking. Flicking 
is a touch UI concept, not a desktop/mouse concept.

I've seen some efforts and research in the direction of dealing with these 
kinds of issues, but is it the intention to go back to the drawing board of 
QML/QtQuick to deal with this stuff properly and at the right abstraction 
level, or to try to shoehorn 'traditional' concepts into QML as it currently 
exists and implementing stuff like the QML TableView does? If the scope of 
QML changes, the design and tradeoffs probably should too.

Thanks,

Steve.




More information about the Qt5-feedback mailing list