David Faure gives an overview of the different tools available for debugging C/C++ applications, KDAB's and others that are well known. | Continue reading
How to enable the nlohmann/json library to support more complex datastructures with NLOHMANN_JSONIFY_ALL_THINGS. | Continue reading
C++23 is feature complete and on track to be released next year, with a few very significant changes to C++. | Continue reading
Binding Rust with Qt in a safe and idiomatic way using CXX as bridge, macro expansion, and code generation through CXX-Qt | Continue reading
Now that we have a functional chat application, we can add real world features, like push notifications. Firebase Cloud Messaging will do. | Continue reading
Writing the entire stack for a mobile app can be challenging. Learn how to build a simple mobile chat application with push notifications. | Continue reading
Version 1.3.0 of the KDE Heaptrack project was just released by KDAB's Milian Wolff. Find out what makes this version special. | Continue reading
KDE Frameworks were created by KDE to supplement code in Qt's high-quality, cross-platform APIs. This blog introduces you to KConfig. | Continue reading
Have fun learning more about the Qt Quick Rendering engine, starting with a ground plane, in this Minecraft-esque 3D block building game. | Continue reading
Up until now, Qt 3D was relying on OpenGL for rendering. With the upcoming Qt 6, Qt will come with a rendering abstraction layer (Rendering Hardware Interface or RHI) to target not only OpenGL but also Vulkan, Metal and DirectX. We are in the process of adding RHI support to Qt 3 … | Continue reading
To decode tutorial menu entries on my PC, I used English display language. I still want the rest of the i18l-related stuff to be in Polish, however. | Continue reading
Includes: look at implementation of operator==; prepare for Qt6 (optional); learn how to declare & implement qhash overload & what to avoid. | Continue reading
QStringTokenizer splits strings, with zero memory allocations, universally, and safely. Get it for free right now from KDToolBox | Continue reading
The last blog post showed how to set up a C++ project on Visual Studio Code. I will now complete that with some Qt specific configurations. | Continue reading
Today, KDAB is releasing version 1.2 of the 3D integration workflow Kuesa 3D, built on top of Qt 3D. Kuesa™ 3D is a complete design-to-code workflow solution for 3D in real-time applications, centered around the open glTF™ 2 format, supported by Blender, Maya and 3ds Max. Read th … | Continue reading
The evolution of the C++ programming language and some ways to work with the fact that this doesn't fit so well with the Qt philosophy.. | Continue reading
Looking at some tools, old & new, that investigate what Qt 3D is doing in the back end & get insight into what is going on during the frame. | Continue reading
In this short blog series, I will show you how to get up to speed with a Qt project using Visual Studio Code in more detail. | Continue reading
Access a youtube playlist of KDAB talks, download the slides and see the full program of QtWS19. | Continue reading
KDDockWidgets is an effort by KDAB to provide an advanced docking system for Qt. Throughout the years KDAB has contributed and funded QDockWidget development. Sadly, this wasn’t without pain: each change took many days to implement and an equal amount of time to fix regressions. … | Continue reading
Qt 3D makes heavy use of threads to maximize performance. Though nice on paper, sometimes, there's just one too many threads. | Continue reading
As you already know KDAB is the largest independent contributor to Qt code. Of course we didn’t get lazy and we’ve added a lot of cool stuff to Qt 5.14. In this article I’m going to write about the super cool stuff that we’ve added to Qt 5.14 for Android. Android multi arch build … | Continue reading
At KDAB we invest a significant amount of efforts in research and development. We are always looking for new tooling, libraries and utilities that can make our job easier and improve the C++ and Qt ecosystems. Ultimately, the gained knowledge and skills make our customers happier … | Continue reading
We have released version 2.11.0 of our Qt application monitoring tool GammaRay. GammaRay allows you to observe behavior and data structures of Qt code inside your program live at runtime. GammaRay 2.11 comes with a new inspection tool for Qt’s event handling, providing even more … | Continue reading
In the first blog in this series, I showed how we solved the original problem of how to use mmap() to load a large set of data into RAM all at once, in response to a request for help from a bioinformatics group dealing with massive data sets on a regular basis. The catch in … | Continue reading
Neither KUESA or Qt 3D Studio will give free reflections. If you know about 3D, you know it requires ray tracing software, not OpenGL. So, I wondered if there would be an easy way to create this effect. | Continue reading
KDAB has released a new version of KDSoap. This is version 1.8.0 and comes more than one year since the last release (1.7.0). KDSoap is a tool for creating client applications for web services without the need for any further component such as a dedicated web server. KDSoap lets … | Continue reading
This is a follow-up post to Qt on CMake Workshop Summary – Feb ’19 Intro From May 2nd to May 3rd another Qt on CMake workshop was hosted at the KDAB premises in Berlin, where interested stakeholders from both The Qt Company and KDAB gathered together to drive the CMake build syst … | Continue reading
Android sensors plugin rewritten after performance tests showed that using the NDK API to get sensors data, caused CPU usage to drop to 20% from over 60% before the change. | Continue reading
Clazy 1.5 is now available. This is a small release, mainly focused on bug fixing. Clazy is a clang compiler plugin which emits warnings related to Qt best practices. We’ll be showing Clazy at Embedded World, Nuremberg, Febr 26-28, where we are a main Qt partner. You can read mor … | Continue reading
Question: How do you cast a function pointer to a void*? (You’re trustworthy and wouldn’t dare to do anything evil with it, right?) Answer: Maybe your first thought was, well reinterpret_cast(&f) of course. That was mine, at least. Well, it turns out, C++ wants to support archite … | Continue reading
I’d like to talk about a common problem that we have seen come up in several projects, namely how to plot large datasets over time in an efficient manner using Qt. This seems to be a general issue, especially in embedded situations and is affecting many people. Because of this, I … | Continue reading
Clazy 1.4 has been released and brings 10 new checks. Clazy is a clang compiler plugin which emits warnings related to Qt best practices. We’ll be showing Clazy at Qt World Summit in Boston, Oct 29-30, where we are a main Sponsor. You can read more about it in our previous blog p … | Continue reading
After more than a year of work, I’m pleased to release another version of heaptrack, the Linux memory profiler! The new version 1.1.0 comes with some new features, significant performance improvements and – most importantly – much improved stability and correctness. If you have t … | Continue reading