On Sat, 17 Sep 2016 21:20:43 +0100, Sérgio Martins wrote:
> Please state your top ones, even if it was already stated by someone
> else, so we have an idea about which ones matter more.
a) C++ ( far beyond everything else )
The 2 language approach is a pain. In our application we have thousands
of totally pointless lines of code only for bridging between C++ libs and
QML. Having a compact syntax - for code, that would be trivial in C++ as
well - IMO simply doesn't justify this extra work.
Beside that QML has bad instantiation times for large projects and its
concept of item composition makes applications heavy. More than 30
QObjects for a button ( Quick Control 1 ) says it all.
My experience with working on C++ controls with an optional QML API shows
how surprisingly easy it would have been to have both APIs. Too sad, that
with Qt Quick Control 2 this chance has been missed.
b) Vector graphics
Qt has no strategy for handling vector graphics - neither Widgets nor Qt
Quick. Not having full featured layout classes ( dynamic constraints etc
) are another problem, when trying to implement user interfaces, that
need to work on different devices.
c) Compatibility policies
The compatibility policy of Qt makes it impossible to fix design problems
of X.0 versions. This leads to adding balconies instead of getting the
F.e. have a look at the font/locale propagation. It obviously has been
identified as being forgotten and has been added to QQuickControl ( Quick
controls 2 ) - instead of QQuickItem.
In consequence Qt Quick Control 2 does not play together with controls of
other libs ( and v.v ).
e) X11 paint engine
Being the maintainer of the Qwt project I'm missing a hardware
accelerated paint engine, that just works.
In general I would like to see Qt being more focused on what it is good
at - for me this is cross platform desktop development ( Qt/Widgets ) and
Qt Embedded projects - not Android/iOS.
A a long term goal I would also like to see desktop and embedded
technologies being reunited. Even if user interfaces on desktop and for
embedded are ( and probably will stay ) different I don't see why writing
them needs to be totally different.
My 2 cents,
Interest mailing list