In the last episode of this series we discussed QAbstractItemModel::checkIndex(). QAbstractItemModel::checkIndex() is a function added in Qt 5.11 that allows developers of model classes to perform some validity checks on the QModelIndex objects passed to the model; specifically, on the indices passed to the APIs that model classes need to implement (rowCount(), columnCount(), data, setData(), […]
QML Get the RSS Feed
Efficient custom shapes in Qt Quick Because rectangles, even rounded ones, can only get you so far.
QtQuick includes basic visual item to construct many common user-interface components, but people often ask how to create different visual appearances, beyond rectangles, round-rectangles and images. There’s various solutions to this problem, and with Qt 5.10, there’s the new Shapes module which makes it easy to define paths, ellipses and other standard SVG drawing elements. […]
Declarative Widgets adding Qt Widgets support to QML
Declarative Widgets is a QML plugin that adds Qt Widgets support to QML. This means we can now easily mix the power of QML with the comfort of a Widgets UI on desktop. Background Declarative Widgets was born out of a breakfast discussion about how awesome it would be to use QML to describe […]
Qt Quick without a GPU: i.MX6 ULL on small embedded devices
With the introduction of the Qt Quick software renderer it became possible to use Qt Quick on devices without a GPU. We investigated how viable this option is on a lower end device, particularly the NXP i.MX6 ULL. It turns out that with some (partially not yet integrated) patches developed by KDAB and The […]
GammaRay 2.9.0 Release
We have released version 2.9.0 of our Qt application introspection tool GammaRay. GammaRay allows you to observe behavior and data structures of Qt code inside your program live at runtime. GammaRay 2.9 introduces a number of new features interesting to Qt Quick, QWidgets, Qt 3D and non-graphical Qt users alike. Qt Quick One focus area of […]
Writing a Custom Qt 3D Aspect – part 2 Setting up the backend and communications
Introduction In the previous article we gave an overview of the process for creating a custom aspect and showed how to create (most of) the front end functionality. In this article we shall continue building our custom aspect by implementing the corresponding backend types, registering the types and setting up communication from the frontend to […]
Writing a Custom Qt 3D Aspect – part 1 Extending Qt 3D via Aspects
Introduction Qt 3D has a flexible and extensible architecture that allows us to easily add our own new functionality to it without disrupting the existing features. The functionality of Qt 3D is divided among so-called aspects, each of which encapsulates a particular subject domain such as rendering, input, or animation. This short series of articles […]
Qi (Quantitive Imaging Systems) case study Solving Cancer with Qt 3D
Solving cancer is probably the biggest mystery that we see unravel in our life. This is a complex one because cancer is not a single disease, there are a myriad of aspects that need to be uncovered. Qi (Quantitive Imaging Systems) images biopsies from patients and then labels individual cells with over a hundred biomarkers. […]
GammaRay 2.8.1 Release
We have released version 2.8.1 of our Qt application introspection tool GammaRay. This release contains a number of important bugfixes as well as support for Qt 5.9.2. Especially if you are experiencing corrupt views or crashes when searching in the object tree, or having trouble attaching to a process on Windows, you want to upgrade […]
Profiling QtQuick HMI Performance on Embedded Linux Demo of a QtQuick speedometer running on an i.MX6 board
QtQuick is a popular choice for creating HMIs for embedded devices. The hardware on these devices is often constrained and less performant than their desktop equivalents, this requires extra care from software developers in delivering a fluid user experience. KDAB is regularly involved in improving the performance of QtQuick HMIs on such devices for their […]