Re: [Development] Request qtquickdesigner-components as Qt 6 addon

2022-05-05 Thread Shawn Rutledge

On 2022 May 5, at 16:23, Thomas Hartmann 
mailto:thomas.hartm...@qt.io>> wrote:

Hi,

I would like to request the inclusion of a new module to Qt 6 as an add-on:

Name of the repository: qt-labs/qtquickdesigner-components
Description: Module for Qt Design Studio specific QML items
Responsible person: Thomas Hartmann
Gerrit user/email: thomas.hartm...@qt.io

The module is already on gerrit and is in a mature state by now.
The qtquickdesigner-components are part of Qt Design Studio and are typically
used by projects created in Qt Design Studio.

I request adding the module to Qt 6 releases as an addon.

The module provides components that make it easier to create QML using tooling. 
This includes
easy-to-use geometrical shapes like Arc, Triangle, and Hexagon and a more 
powerful
rectangle. The module also contains the FlowView which makes it easy to define 
screen
transitions and it contains building blocks to define logic in declarative QML
and compatibilities items for Qt for MCU and Qt for Automotive.

Currently, developers have to build the module manually, if they want to build 
a Qt Design
Studio project against Qt. Having the qtquickdesigner-components as an add-on 
as part of Qt 6
would make their life easier.

I’ve always hoped these are just a stopgap until we get around to improving Qt 
Quick enough that you no longer need them. E.g. yes we know that Rectangle 
needs to support different radii on different corners: 
QTBUG-48774, and yes I still want 
to do that ASAP: same status for quite a few years now (which is embarrassing). 
I suspect it won’t be too hard, but nobody got around to it yet.  And Shapes 
are very general, you could do almost anything with them; but they don’t have 
vertex antialiasing like Rectangle does, because we don’t have a version of 
qTriangulate() that generates “feathered edges” for any arbitrary QPainterPath, 
because that’s hard to get 100% right all the time.  So with Shapes, you get AA 
via MSAA (by setting layer.samples), and that’s not particularly cheap 
(reputedly pretty bad on some GPU architectures).

If you use QPainter, it’s slow.  If you use custom shaders, OpenGL shaders are 
not portable; but maybe you ported to RHI? And custom shaders break batching in 
the batched scene graph renderer, which is why plain Qt Quick uses so few types 
of shaders, to get as many nodes into each batch as possible, to have bigger 
batches and fewer draw calls.  But that limitation has always bothered me too; 
computers and cell phones have had fairly powerful GPUs for so long now, and we 
are holding ourselves back for the sake of supporting low-end embedded devices. 
 Even so… there’s something to be said for keeping this basic 2D stuff as 
efficient as humanly possible, because it saves battery life and keeps your GPU 
available for the visualizations that really need it.

Anyway yes please, let's make the source code more readily available; +1 from 
me.  This sounds like typical Qt.labs material.

___
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development


[Development] Request qtquickdesigner-components as Qt 6 addon

2022-05-05 Thread Thomas Hartmann
Hi,

I would like to request the inclusion of a new module to Qt 6 as an add-on:

Name of the repository: qt-labs/qtquickdesigner-components
Description: Module for Qt Design Studio specific QML items
Responsible person: Thomas Hartmann
Gerrit user/email: thomas.hartm...@qt.io

The module is already on gerrit and is in a mature state by now.
The qtquickdesigner-components are part of Qt Design Studio and are typically
used by projects created in Qt Design Studio.

I request adding the module to Qt 6 releases as an addon.

The module provides components that make it easier to create QML using tooling. 
This includes
easy-to-use geometrical shapes like Arc, Triangle, and Hexagon and a more 
powerful
rectangle. The module also contains the FlowView which makes it easy to define 
screen
transitions and it contains building blocks to define logic in declarative QML
and compatibilities items for Qt for MCU and Qt for Automotive.

Currently, developers have to build the module manually, if they want to build 
a Qt Design
Studio project against Qt. Having the qtquickdesigner-components as an add-on 
as part of Qt 6
would make their life easier.

Best Regards,
Thomas Hartmann

___
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development