Digia and Qt-Project.org have released version 5.1 of their Linux-ready cross-platform development framework. Qt 5.1 offers new Qt Quick declarative UI language controls and layouts, improved OpenGL support, sensor and serial port support, an updated Qt Creator 2.7.2, and preliminary versions of Qt for Android and iOS.
Digia acquired Qt (pronounced “cute”) from Nokia almost a year ago, continuing the latter’s support for the open source Qt-Project.org. Qt 5.1 was announced by both Digia and the project in commercial and open source versions, respectively.
The release is late, but is nonetheless welcome to those who wondered if the cross-platform framework had a future after Nokia’s abandonment and the decision by Tizen.org to shed much of MeeGo, including its Qt foundation. More recently, however, Canonical’s Ubuntu has adopted Qt, and last week Qt gained additional support when the lightweight LXDE desktop Linux environment announced a port of LXDE to Qt, as well as plans to migrate the platform entirely from GTK+ to Qt.
Qt’s modular class library
Qt 5.1 is compatible with Linux, Mac, and Windows desktops, and embedded OSes including Linux, Windows Embedded, VxWorks, Neutrino, and Integrity. Qt also supports Jolla’s MeeGo-based Sailfish OS, as well as BlackBerry mobile platforms.
Qt for Android and iOS
Qt 5.1 introduces preliminary versions of the previously promised Qt for Android and Qt for iOS, which are due in final form by the time Qt 5.2 rolls around later this year. Despite the preview status, both are “already very usable for a large number of use cases,” says the Qt project. As with the many other OS-specific versions of Qt, the goal is to minimize coding required to port applications between platforms.
Qt for Android appears to be a bit more developed than the iOS version, which still lacks the Android version’s support for Qt Quick 2, the latest version of the platform’s declarative scripting language. Qt for Android supports all Qt 5.1 modules, with the exception of Qt WebKit, parts of Qt Multimedia, and the new Qt Serialport module, says the project. Qt for Android is said to offer significant integration with Qt Creator, enabling all but the final stages of development.
Heading up the 3,000-plus enhancements to Qt 5.1 are major improvements to the Qt Quick 2 declarative user interface language. Qt Quick gains new Controls and Layouts modules, which provide the UI language with widgets. The changes are particularly well-suited for customers that use animations or require rapid prototyping tools, says Digia.
Qt Quick Controls screenshots
(click image to enlarge)
Qt 5.1 adds a Qt Sensors module that provides APIs for sensors including accelerometer, rotation, and gyroscope devices. The module initially supports the Android and iOS versions, as well as BlackBerry.
A new Qt SerialPort module helps to control serial connections, said to be of primary benefit to desktop versions of Qt. Qt also gains improved OpenGL ES support, including new QOpenGLTimerQuery, QOpenGLTimeMonitor, and QOpenGLDebugLogger classes, and better geometry support, says the project.
Finally, Qt 5 includes an updated Qt Creator 2.7.2 IDE (integrated development environment). Version 2.7.2 offers improved C++11 code editing support, an enhanced Qt Quick Designer, and the first Android development target.
Qt Creator screenshot
(click image to enlarge)
In May, Digia released a technology preview of Boot to Qt, a commercial lightweight UI stack based on Android.