Nucleus Add-on for the Qt Framework
The Nucleus Add-on for the Qt® application framework provides an open source solution to create rich user interfaces based on the open source Qt Project. The Nucleus port of the Qt framework provides access to widely deployed technology, cross-platform support, and access to a large development community of more than 450,000 developers in over 70 countries.
The Nucleus Add-on for the Qt framework includes:
- An integrated UI development tool
- Support for key Qt library modules
- Host based UI development and simulation
- A footprint management tool
- System Level Trace and Analysis Visualization
Integrated UI Development Tool
The Qt Designer UI development tool provides a footprint management wizard that allows developers to easily configure which Qt Widget UI library modules are included in the target image thereby facilitating a significant reduction in the Qt library memory footprint.
Qt Library Module Support
The Qt project has a number of library modules that comprise the UI framework. The Nucleus Add-on for the Qt framework supports many of these modules including the Core module and the GUI module. The Qt Core module forms the foundation of all Qt-based applications with core non-graphical classes used by other modules. It provides key functions such as file IO, event and object handling, multi-threading and concurrency, plugins, settings management and inter-object communications.
Qt GUI Module
The Qt GUI module contains the functionality needed to develop advanced graphical user interface applications. The Qt application framework uses the native graphics API of each supported platform, taking full advantage of system resources. The module provides key functions such as a complete set of customizable widgets, 2D graphics canvas and OpenGL® integration, a powerful font and layout engine, style engine and widget stylesheets, anti-aliasing, vector deformation, SVG support, advanced graphics effects and support for ARGB top-level widgets. These functions help developers build user interfaces in less lines of code with a rich set of building blocks that provide complete control over the look and feel of UI applications.
Host Based UI Development and Simulation
The Nucleus Add-on for the Qt framework provides PC host-based simulation of UI designs via QEMU with host hardware graphics acceleration support enabling effective desk top UI development. This allows UI developers to iterate and be productive in parallel with the other development team members bringing up the target hardware.
Footprint Management Tool
The Qt framework has around 140 optional features. The Nucleus Add-on for the Qt framework provides a Footprint Management Tool to assist with configuring the features your application requires in order to minimize the application footprint on your target device. Checkboxes consistent with the Nucleus configuration allow base options to be turned on/off via the IDE. The “Build Compacted” build option automatically strips out unused options. This process produces a minimized application-specific library instance. The Footprint Management Tool can produce an absolute minimum embedded library footprint of about 3MB. The footprint for the Washing Machine demonstration was reduced from ~13MB to ~4MB by using this tool.
System Level Trace and Analysis Visualization
The Nucleus Add-on for the Qt framework includes Qt library instrumentation and Qt specific Sourcery Analyzer agents. Find and fix common and complex GUI problems faster with these Qt specific analysis agents:
- Qt QML Activity - Events happening within the QML system.
- Qt Resource Loading - Tracks when resources are being loaded.
- Qt UI Core Events - Events from Qt's core library.
- Qt UI Latency - Agent to determine where the Qt system has latency issues.
- Qt UI Smoothness - Highlight times when animations become jerky, or framerates decrease.
- Qt UI Startup - Shows the startup phase of the application.
Sourcery Analyzer combines UI specific problem analysis with system level trace and visualization that is time-correlated with Nucleus RTOS, middleware and device driver events.