In this third video of the series on developing document templates for Qt Creator, we will see how we can ask the user for additional input in the "new file" dialog, and use that in the templates.
This video introduces the Kuesa MeshInstantiator API. It aims at making it easier for developers to leverage Qt 3D's instanced drawing. This is a feature that Qt 3D has supported for years but is often overlooked.
In the previous blog post about qHash, we explained: how to declare an overload of qHash for your own datatypes, how to hash Qt datatypes for which Qt does not provide a qHash overload, and why you can't use a type from the Standard Library (or just another library) as a key in QHash (newsflash: […]
Giuseppe D'Angelo shares 6 tips for getting started with Qt 6. Whether you're switching immediately or later, this video provides best practices for early adopters and helps Qt 5 users understand Qt 6's impact on their applications.
Learn how to create custom document templates in Qt Creator through these four videos. This episode shows how to add a new .ui file to the generated file set, providing deeper insight into Qt Creator's macro system.
Learn how to create custom document templates in Qt Creator through these four videos. This first episode creates a simple class template based on the "C++ class" template, explains macro usage, and shows how macros expand into class names from the "new file" dialog.
I use many custom classes like Money, PercentageValue, and TimeValue with model/view. For years I've written `return QVariant::fromValue(cost);` in my QAbstractItemModel data methods. This short video shows a simple trick to avoid this.
A long time ago, I wrote a post about creating custom shapes in Qt Quick, via the scene-graph APIs. That post covered defining suitable geometry to draw a part of a circle, known also as a 'sector', efficiently, since such sectors occur commonly in instrument and vehicle interfaces. I started writing the second part, about […]
In this video, we talk about QSortFilterProxyModel, a proxy model class that sorts and filters a given source model. QSortFilterProxyModel is a concrete class and can either be used as-is, or subclassed in order to fine tune some of its behaviors.
In this video, we discuss the basics of model/view programming with Qt/QML. How do we expose a set of data (a list, a table, etc.) from the business logic to C++? How much flexibility do we have before the data actually reaches QML?
Proxy models allow sorting, filtering, modifying, transforming, and augmenting existing models without changing the original model. Instead of building complicated model classes with many options, you can simplify implementation and separate concerns using proxy models.
In this edition: Interview with Cornelius Schumacher from KDE on why forking Qt serves no one's interest, Qt 6.1 Alpha release, Kuesa 3D Studio 1.3, KDDockWidgets 1.3.0, Qt Embedded Days, and Tool of the month: KD Reports.
This video gives you my top seven shortcuts in Qt Creator that help me save hours (OK, maybe just minutes) every single day, but, much more importantly, ensures I stay focused on whatever problem I'm solving right now.
Here, at KDAB, we get to spend 10% of our time on learning what we don't know or practicing and improving what we already know. Recently, I decided to use that time to learn more about the Qt Quick Rendering Engine. The best way to do so, I found, is to use it in a […]
We've released KDDockWidgets 1.3.0! KDDockWidgets is a framework for custom-tailored docking systems in Qt. The main highlights for this release are PySide6 and experimental QtQuick support. The QtQuick backend isn't production ready, but you can already build with -DKDDockWidgets_QTQUICK=ON, run the examples under examples/qtquick/dockwidgets/ and start reporting issues. Here's the full list of changes: Experimental […]
Another day, another blog about some of KDAB's utility classes. Now it's the turn of KDSingleApplication, a class that helps implement applications that follow the single-instance policy. What is a single-instance policy? Single-instance policy refers to those applications that want to spawn a unique instance for a given user session. Even when launched multiple times, […]
In this module we'll use the knowledge that we gained in module 7, QObject, signals, slots, properties, variants, in order to make C++ and QML talk to each other. In this first video, we are going to show how we can export objects of value classes (numbers, strings, etc.) from C++ to QML.
This video shows how to export QObject subclasses to QML. While similar to the previous video, QObjects aren't value classes and add features like properties, signals, and slots via the meta-object system. We get all these features when exporting QObjects to QML!
When QObjects in C++ are exposed to QML, who manages their lifetime? Can QML's garbage collector reclaim them if they're still needed in C++? What happens if C++ doesn't delete them, expecting QML to handle it? This video explores object ownership between C++ and QML.
This video discusses how to create GUI elements in C++, and make them available to QML. It's just as simple as creating non-GUI elements, with a very small twist.