You may have already faced the challenge of showing website content within your Qt application. However, Qt doesn't excel in this - it's often slow and securely connecting to external web sources is also a valid concern. Watch this video to discover how seamlessly integrating Rust into your Qt application logic can address these issues and enhance performance.
Recently I was tasked to come up with an architecture for remote real time instantiation and updating of arbitrary QML components. This entry shows how you can use a simple variation of the factory method pattern in QML for instantiating arbitrary components. I’ve split my findings into 3 blog entries, each one covering a slightly […]
As a consulting company, we've gotten to work on lots of different circuit boards and computer chips. In this video, you'll see some examples and Christoph will point out what makes each one special.
With the iDig Touch and Connect Guidance Systems, operators can dig with confidence. Thanks to a set of sensors, an operator can figure out how close he is to the target and visualize it on a 3D application. iDig easy-to-customize interface uses C++ and Qt as well as Qt3D. KDAB assisted iDig in setting up the 3D features, such as loading CAD files, mesh data structure and algorithms as well as rendering.
With the Qt WebEngine module, Qt makes it possible to embed a webview component inside an otherwise native application. Under the hood, Qt WebEngine uses the Chromium browser engine, currently the de facto standard engine for such use cases. While the task of writing a brand new standard-compliant browser engine is infamous as being almost […]
Developing embedded software is notoriously difficult – how can we simplify the process? Fortunately, there are lots of techniques you can use daily to help streamline your development. Embracing Automation The specialized nature of embedded systems extends the ramp-up time for developers and necessitates a higher level of expertise. Automating hardware-specific tasks, such as deploying […]
When developing for embedded devices, turnaround times are often long and slow down the development experience. In this video I showcase some of the most useful features I like about GammaRay:
In April 2022, we put out an April's Fools where we demonstrated the AI integration in Qt creator. Fortunately within the same year reality surpassed us, and now we are all much more productive thanks to ChatGPT. You may ask, how does it know all the stuff it knows? Well, it obviously watched Qt Widgets and More! I did, however, find that it had a few glitches, so this episode will be fixing those, but telling it about all the best practices around Qt Widgets development
When developing for embedded devices, turnaround times are often long and slow down the development experience. GammaRay - an open-source tool developed by KDAB - might help finding issues without even recompiling. In this video, I explain how to install GammaRay and its -probe on an embedded target.
Managing the timing and context of signals and slots in multithreaded applications, especially those with a GUI, can be a complex task. The concept of deferred connection evaluation offers a nice and easy API, allowing for controlled and efficient signal-slot connections. This approach is particularly useful when dealing with worker threads and GUI threads. A […]
Welcome to KDAB News, the monthly update for developers working with Qt, C++ and 3D technologies.
In today’s pervasively digital landscape, building software for a single platform is a 1990s approach. Modern applications, even those designed for specific embedded targets, must be adaptable enough to run seamlessly across various platforms without sacrificing efficiency or reliability. This is often easier said than done. Here are some key points to consider when developing […]
If you ship resources (say icons, translations etc) with your application, then you risk that your user deletes them. And then, what do you do? The alternative is to compile those resources into your binary, which fortunately is super easy with Qt.
As a user, there is nothing more annoying than a dialog saying "192.168.0.256 is not a valid IP address". Instead of allowing your user to type in invalid data, help them instead. There are three tools in your toolbox for that, namely input masks, validators and completers.
Adding a new widget to your toolbox might be as simple as subclassing from QWidget and add two child widgets plus a layout, or it might
be a multi-month job where you need to polish every single pixel. In any case there are a few things to think about, and that is exactly what we will discuss in this episode.
In this second episode on layout managers, we will discuss how to make widgets stretch, and how to get spaces into your layout. We will discuss that both when you code it in C++, and when you do it in Qt Designer.
In this first of two episodes on layout managers, we will introduce the layout manager. In addition to that we will show an example where you can NOT use a layout manager. Finally, Jesper will tell a story about ones he had to implement a motif compatible layout manager in Qt.
If you work on C++ projects on Windows that need to be built with multiple Visual Studio C++ compiler versions, you need some way to manage the installations of all these build environments. Either you have multiple IDEs installed, or you know about build tools (https://aka.ms/vs/17/release/vs_BuildTools.exe) and maybe keep only the latest full VS IDE […]
In this fourth episode in the tour of common widgets in Qt, we will talk about item widgets - more specifically QComboBox and QListWidget.
KDAB’s newest open-source library is now publicly available: KDSPDSetup! KDSPDSetup is a small library written in modern C++ (≥ 20) that initializes objects from the spdlog library by reading a toml configuration file. This makes setting up loggers more convenient and results in cleaner-looking code. Let's take a look at an example to see how […]