Qt Releases Version 5.7 of Its C++ UI Development Framework Adding 3D Module
|Richard Harris in iOS Friday, June 17, 2016|
The Qt Company announces the release of Qt 5.7, the latest version of its cross-platform application and user interface (UI) development framework. Qt 5.7 offers new UI creation opportunities including a new Qt 3D module, as well as new ways to create modern touch-based UIs with Qt Quick Controls 2 and Qt Quick Designer. Qt 5.7 follows the evolution of modern C++, leveraging C++11 in Qt APIs.
3D integration of Qt has been possible in the past with direct OpenGL programming however with the release of Qt 5.7 and the new Qt 3D module it is easier to create 3D UIs and interact with 3D objects using high-level Qt C++ and QML APIs. In addition to 3D rendering, Qt 3D is a fully extensible 3D framework for near-realtime simulations such as physics engine, artificial intelligence, collision detection.
Qt 5.7 also introduces Qt Quick Controls 2, a new library of UI controls (buttons, sliders, dials, etc). It has been built from the ground up with performance and memory consumption in mind for modern touch-based user interfaces for embedded and mobile devices. Quick Controls 2 comes with a flexible styling system that allows developers to create custom styles for their user interfaces. In addition, the library also comes with three predefined styles that let users immediately achieve a desired look-and-feel for instance on Android devices.
Together with the Qt Quick Designer visual UI layout tool, the Qt Quick Controls facilitates the developer-designer workflow to accomplish rapid prototyping of UIs including for embedded platforms.
Qt is the framework for all C++ development and allows developers to harness the power of C++ with the convenience of high-level Qt libraries. As C++ is moving forward with the C++11, C++14 and upcoming C++17 standards, Qt is following the progress closely. It has been possible to use modern C++ already with Qt but with the latest release, Qt 5.7 also leverages C++11 directly within the Qt libraries. This allows Qt developers to better harness the modern C++ features but also improves the quality and performance of the Qt libraries.
With the improvements, Qt 5.7 requires compilers to support C++11 and no longer supports the older C++98 compilers. However, as the previous version Qt 5.6 is a Long-Term Supported release, it offers a valid, parallel product offering for the platforms with legacy compilers.
In addition to an improved user interface offering, Qt 5.7 also provides additional solutions for embedded device creation. With Qt 5.7 for Device Creation, it’s now possible to use Microsoft Windows for embedded Linux development allowing Windows users to directly develop, deploy, debug and analyze their applications on real embedded hardware.
For Device Creation, Qt 5.7 comes with technology previews of multi-process support for embedded UIs through Qt Wayland Compositor, and Over-the-Air (OTA) update technology for device vendors to update their software stacks online – facilitating connected Internet of Things systems.
In addition to embedded Linux, Qt 5.7 for device creation continues to fully support QNX with pre-built binaries for the convenience of developers.
In January the Qt Company announced changes to the open source licensing and product structure of the Qt cross-platform application development framework that are now applied with the release of 5.7. New versions of Qt will be licensed under a commercial license, GPLv2, GPLv3, and LGPLv3, but no longer under LGPLv2.1.
The updated open source licenses will further ensure end user freedom when using open source licensed versions of Qt. For instance, LGPLv3 explicitly forbids the distribution of closed consumer devices. Commercial Qt licensing removes these requirements and includes professional technical support from The Qt Company. Also, a new ‘start-up’ license has also been announced that will help support small businesses who are seeking to utilize Qt in commercial desktop and mobile applications.
Read more: http://www.qt.io/qt5-7/