On Wed, Apr 21, 2021 at 05:42:50PM +0200, Jason H wrote: > You probably won't -- it's too new. Unless you call automotive > Infotainment consoles success stories. > The lack of proper QtQuick Controls (v2) held it back for a while. > > Personally, I think the exsting QtQuick element should be scrapped and > just focus on QML versions of the existing Widget functionality. I love > the QML syntax, hate that it's not just a layer on top of widgets. > That said, I still really like both.
If it is *just* the appearance and you don't insist on matching QML syntax exactly you can throw a few hundred lines of syntactic sugar on top of QWidgets and make something like CommonOptionsPageWidget() { Settings &s = ...; using namespace Layouting; Column col1 { s.useAlternatingRowColors, s.useAnnotationsInMainEditor, s.useToolTipsInMainEditor, s.closeSourceBuffersOnExit, s.closeMemoryBuffersOnExit, s.raiseOnInterrupt, s.breakpointsFullPathByDefault, s.warnOnReleaseBuilds, Row { s.maximalStackDepth, Stretch() } }; Column col2 { s.fontSizeFollowsEditor, s.switchModeOnExit, s.showQmlObjectTree, s.stationaryEditorWhileStepping, s.forceLoggingToConsole, s.registerForPostMortem, Stretch() }; Column { Group { Title("Behavior"), Row { col1, col2, Stretch() } }, s.sourcePathMap, Stretch() }.attachTo(this); } compile in plain C++, without any background engine interpreting this at runtime or similar. Modulo some namespacing hassle it would also be possible to use something like PushButton { text = "Press me!", onPressed = [] { qDebug() << "Ouch"; }, ... }; if you really wanted. On the other hand, there's also a point where things get too fancy syntax-wise. Andre' _______________________________________________ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest