Does anyone have up-to-date experience with Qt? It's quite clear Symbian is no longer the main target, but did they ever get back to treating C++ as a first-class citizen, or is it still all about QML?
Does anyone have up-to-date experience with Qt? It's quite clear Symbian is no longer the main target, but did they ever get back to treating C++ as a first-class citizen, or is it still all about QML?
I really wanted to like QML. It gets lots of things right, but it's just so unfinished, and a few things are really weird, like ... I'm pretty sure object IDs sit in a global namespace and can be accessed by any component. A child component can access its parent, which just screams spaghetti.
And as far as I know there's still no way to have text in a custom widget. I wanted to make a QML graph widget. The lines are easy... but labels. The API for that is still private.
Another example: I wanted a log window, like a compilation log or something. There's only one QML widget for that and the only operations you can do on it are append(string) and remove(offset, length). You can't remove the first line of text for example. I ended up having to keep a separate array of line lengths, it was a huge hack.
Sure, the main development focus is on QML etc., but that's mostly because desktop is a more mature platform than mobile.
[1] Except for the QtWebkit to QtWebengine transition perhaps. I haven't followed that very closely.
Getting the "feel" of a company's priorities can be hard, if you're not actively using their platform. I was hoping someone on HN had a somewhat realistic picture of where Qt is going these days.
It's still pretty unusable though :/ The default for Qt apps is via Xwayland in Fedora for example.
For embedded and mobile deployments, QML is the only option.
If you try to use a common C++ widget dialog, you will get a tiny desktop like window, regardless of the platform.
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
(to be set before creating the QApplication instance).The above is on an android tablet; but it displays perfectly fine on phones, too. Just see the sources of the above project for implementing such a dialog:
https://gitlab.com/eql/EQL5-Android/blob/master/examples/my/...
https://gitlab.com/eql/EQL5-Android/blob/master/examples/my/...
QML is easier anyway, and gets better with every version...
C++ Widgets should be able to offer a mobile friendly version of themselves.
Which was actually a point that was discussed for the Qt roadmap at Qt World Summit 2017.
The approach of re-doing in QML standard UI components is not appealing.
Never seen any QML, don't know why people think Qt is about QML and javascript.