Discussion:
Status of QtDeclarative and QtWidgets
Иван Комиссаров
2011-09-18 18:36:21 UTC
Permalink
I asked some people and it appears that nobody exactly knows what will happen with this two gui modules in Qt5.

It is only clear that 2d widgets are moved to separate module.

But what will happen to QtDeclarative? Will it be moved to QtGui instead of current widgets or it will be separate module?

In my opinion, both modules should be separated in Qt5 and be on the same "level" - if people wants to use qml, they use it, if they want to use widgets, they use qtwidgets module. I hope you won't merge QtDeclarative into QtGui, because it will cause a lot of dependencies for those, who still use 2d widgets, as long as QtGui module contains lot of classes that are used both by declarative and qtwidgets - icons, images, desktop services… and they need this features.

I see only one solution - to have three modules - QtDeclarative (contains all qml stuff; depends on v8, gui, network, etc.), "deprecated" QtWidgets (contains old widgets; depends on QtGui) and QtGui (small module; contains all stuff used by both qml and widgets).

Making qml mandatory is good in qt6 as it is really great techonology, but now it still has very poor codebase (basic components are not finished; not properly tested; almost no custom components in web)

Ivan.
Stefan Majewsky
2011-09-18 21:19:04 UTC
Permalink
Post by Иван Комиссаров
QtGui (small module; contains all stuff used by both qml and widgets)
Should be called QtGuiBase then, or QtPainting. I'm all for it, if
only to create equality between QML and QWidgets, unless there's a
true C++ interface available for the QML widgets.

Greetings
Stefan
l***@nokia.com
2011-09-19 07:55:10 UTC
Permalink
Post by Иван Комиссаров
I asked some people and it appears that nobody exactly knows what will
happen with this two gui modules in Qt5.
It is only clear that 2d widgets are moved to separate module.
But what will happen to QtDeclarative? Will it be moved to QtGui instead
of current widgets or it will be separate module?
In my opinion, both modules should be separated in Qt5 and be on the same
"level" - if people wants to use qml, they use it, if they want to use
widgets, they use qtwidgets module. I hope you won't merge QtDeclarative
into QtGui, because it will cause a lot of dependencies for those, who
still use 2d widgets, as long as QtGui module contains lot of classes
that are used both by declarative and qtwidgets - icons, images, desktop
services… and they need this features.
I don't see larger changes happening to the current structure we now have
in Qt 5 anymore.
QtGui has the basic graphics integration. QtWidgets depends on QtGui.
QtQuick2 does the same, so these two modules live side by side. QtQuick1
(the QtDeclarative module in Qt 4.x) depends on graphicsview and thus on
QtWigets in Qt 5.
Post by Иван Комиссаров
I see only one solution - to have three modules - QtDeclarative (contains
all qml stuff; depends on v8, gui, network, etc.), "deprecated" QtWidgets
(contains old widgets; depends on QtGui) and QtGui (small module;
contains all stuff used by both qml and widgets).
Please check the code. That's exactly what we have. Except that QtWidgets
is not deprecated.
Post by Иван Комиссаров
Making qml mandatory is good in qt6 as it is really great techonology,
but now it still has very poor codebase (basic components are not
finished; not properly tested; almost no custom components in web)
It's not a poor code base, IMO it's actually very good. But it does not
yet have a set of desktop components.

Cheers,
Lars

Loading...