KDAB_Tree_Header_Mobile KDAB_Tree_Header_Web

Trusted Software Excellence since 1999

Jesper K. Pedersen

278 results

At Qt World Summit 2025, Jesper met with Volker Hilsheimer (Chief Maintainer of the Qt Project) and Maurice Kalinowski (Product Director at The Qt Group) for a talk about what's new in Qt and what direction it is taking.

An excerpt from Jesper Pedersen's interview with Bjarne Stroustrup, the originator of C++.

Qt celebrated its 30th birthday in 2025 and Jesper spoke to Troll #4, Paul-Olav Tvete, one of the earliest members of Trolltech - the original Qt company - about much that has happened along the way. You won’t learn about new graphics APIs or how to use coroutines with Qt, but hopefully, it will give you a good laugh. So grab a cup of your favorite beverage and enjoy.

The Curious Developer gets to ask the legendary Bjarne Stroustrup all the questions he's wanted to ask the originator of C++.

Join Jesper as he takes you on a tour of Qt World Summit 2025. The KDAB Team had an amazing time despite the weather, and if you couldn’t make it, this is your chance to catch a glimpse of the event.

A 50 second video with more to demystify the u"..."_s in your C++ code - from Jesper and Giuseppe D'Angelo.

Before sending his files up for code review, Jesper does a self review, where he reviews his changes. Qt Creator has a nice feature for this, but for the longest time he thought the "Diff Selected Files" feature was broken. In this episode he shows you how it really works.

One thing is being told, yet another is to see for yourself. Which is why in this episode we will see the implementation of a tree model coded from scratch.

We finally made it here - with all the building blocks in place, watch this video to understand what it takes to implement a tree model.

When you implement a model, it is worthwhile remembering that one day an intern, with far less experience than you, might implement a proxy model which sits on top of your model and acts as the view. This proxy model might be broken in ways you couldn't even imagine, so better check that the index provided are actually referring to valid data in your model.

As the title suggests, here Jesper live codes a model based on QAbstractTableModel.

Finally, it is time to learn how to implement our own models. We will start with lists and tables in this episode, and later move on to tree models.

In the previous episode we saw the very high level view of model/view. Here, the descent towards actual code begins. On the way there we will discuss how to address the individual items in the views (while simple for a table, not so straightforward for a tree), and the properties we can get for each cell.

After two episodes talking about the item versions of lists, tables, and trees, we now turn our attention to the model/view version of that story. Using model/view offers a great opportunity to do a separation between business logic and presentation. In this episode we will learn how each of the parts fits together.

In this episode, we will continue looking at the item based widgets for lists, tables, and trees. We will cover "the current item", selection, sorting and event handling.

Qt has two kinds of lists, tables, and trees. One kind uses a model/view setup which gives a great separation between data and presentation. The other one is item based, meaning your data is stored in the items, just like the checked value is stored inside the checkbox.

On the fly translations are doable, but as we will show during the demonstration, they can also be rather difficult to get right.

What does tr() really do? Is it a function, a macro, or what is it, and where is it located? How about QT_TRANSLATE_NOOP, and when do I need that? Find the answers to all these questions and more in this episode.

As the title of this presentation indicates, this episode is a bit of odds and ends. Nevertheless, we will talk about some rather important things, among which is: How to avoid forgetting to translate some strings?

In this video Jesper demonstrates how to set up CMake for translating your Qt application.

JesperKjaerPedersen

Jesper K. Pedersen

HR Director / COO