Skip to content

KDAB TV – Recent Videos KDAB's YouTube Channel: Qt, C++ and 3D tutorials, news and more

KDAB's YouTube Channel: Qt, C++ and 3D tutorials, news and more

KDAB as the global No.1 software consultancy for Qt, C++ and 3D applications and has been a relevant source for professional software developers for 20 years, offering a good mix of valuable information. As video content has become increasingly relevant, we have decided to offer regular, highly visible videos for professional developers using Qt, C++ and 3D technologies.

The channel offers tutorials for beginners and advanced developers presented by our experienced experts as well as show cases, C++, Qt and 3D related news, insights on events and trends. Click the tabs to explore.

KDAB TV – Latest

At this year’s Qt World Summit, Qt celebrated its 30th birthday. A lot has happened over those 30 years — including plenty you’ve probably never heard of... Like the time Trolltech (the original Qt company) used up a large portion of Norway’s internet, the reasoning behind Trolltech needing an office in Australia so early on, and much, much more.

In this episode, Jesper talks with Troll #4 (now the most senior Troll — by far) for a walk down memory lane.
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.

Link to 'API Design Principles' from Qt documentation: https://wiki.qt.io/API_Design_Principles

All 'Qt World Summit 2025' videos : https://www.youtube.com/playlist?list=PL6CJYn40gN6idH--H9GD_oZIlO2UinYTX

00:00 Intro & Motivation  
00:41 When did you start working for the Qt Company?
01:05 Did you know Qt turned 30 this year on the 20th May 2025?
02:19 Can you tell me the story of tmake and qmake?
03:30 When was Qt first official version released?
04:10 Are you Qt’s longest-serving employee?
04:49 What was the first key milestone in Qt's birth?
07:38 Did KDE adopt Qt early on?
10:30 Why was Qt licensed the way it was early on?
13:48 How did Nokia end up buying Trolltech?
16:00 Why did Qt move to mobile phones?
21:00 Where did Qtopia come from?
25:04 What was the QtScape hack?
28:07 Do you recall the transition from Qt3 to Qt4?
31:38 How was the KDE migration journey to Qt4?

Paul Olav Tvete started working in Trolltech in 1996, and has been working as a Qt developer since then, currently in the Oslo graphics team of the Qt Company. He has recently worked on Qt Quick 3D, Qt Quick Shapes, Qt Wayland, in addition to being the maintainer of Qt VNC Server.

The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/
A Deep-Dive into Qt History with Troll #4 Paul Olav Tvete

At this year’s Qt World Summit, Qt celebrated its 30th birthday. A lot has happened over those 30 years — including plenty you’ve probably never heard of... Like the time Trolltech (the original Qt company) used up a large portion of Norway’s internet, the reasoning behind Trolltech needing an office in Australia so early on, and much, much more.

In this episode, Jesper talks with Troll #4 (now the most senior Troll — by far) for a walk down memory lane.
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.

Link to 'API Design Principles' from Qt documentation: https://wiki.qt.io/API_Design_Principles

All 'Qt World Summit 2025' videos : https://www.youtube.com/playlist?list=PL6CJYn40gN6idH--H9GD_oZIlO2UinYTX

00:00 Intro & Motivation  
00:41 When did you start working for the Qt Company?
01:05 Did you know Qt turned 30 this year on the 20th May 2025?
02:19 Can you tell me the story of tmake and qmake?
03:30 When was Qt first official version released?
04:10 Are you Qt’s longest-serving employee?
04:49 What was the first key milestone in Qt's birth?
07:38 Did KDE adopt Qt early on?
10:30 Why was Qt licensed the way it was early on?
13:48 How did Nokia end up buying Trolltech?
16:00 Why did Qt move to mobile phones?
21:00 Where did Qtopia come from?
25:04 What was the QtScape hack?
28:07 Do you recall the transition from Qt3 to Qt4?
31:38 How was the KDE migration journey to Qt4?

Paul Olav Tvete started working in Trolltech in 1996, and has been working as a Qt developer since then, currently in the Oslo graphics team of the Qt Company. He has recently worked on Qt Quick 3D, Qt Quick Shapes, Qt Wayland, in addition to being the maintainer of Qt VNC Server.

The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/

YouTube Video VVVqc0prVEpTWjVHN2V3SDJ1ZjA4dDBBLnJya0VUaExXNW13

A Deep-Dive into Qt History with Troll #4 Paul Olav Tvete

At Qt World Summit Jesper Pedersen meet Bjarne Stroustrup for a discussion on C++, among a lot of other things they talked about:
 -  Who is C++ for
 -  Static vs. Dynamic reflection
 -  Design principals in C++
 -  Pattern Matching
 -  import Qt

00:00 Welcome and motivation
01:30 Bjarne as a super hero
02:08 How do you keep track of everything in C++?
05:02 The right way to learn stuff
07:06 Things on the web doesn't age well.
08:48 The categories of questions
09:31 What does writing books give you?
15:18 What does teaching give you?
18:00 "When did you realize you developed a new language?"
21:19 Design Principle: Evolution instead of Revolution
22:36 How do you work when developing C++? 
23:10 How do you get inspired from other languages? 
25:15 Which ancient programming language would you recommend to play with just for fun?
27:10 C++'s ancestor and the goto keyword
28:57 Have you never broken C++ and how do you ensure you do not break things?
31:03 Deprecating things in C++
32:38 The C++ Core Guidelines, static checkers and profiles
34:22 Profiles
38:40 Qt, raw pointers and profiles
39:32 Young student's question for Bjarne
39:44 Who is C++ intended for?
43:52 What do you suggest as a first programming language?
47:17 Clang-Tidy
50:45 What kind of tools do you see 10-15 years in the future?
52:15 dynamic vs. static reflection
53:28 functional style pattern matching
56:00 Thoughts on signals/slots and the meta object compiler in Qt
59:13 Qt and C++'s relation
1:01:25 How does Qt gradually migrate to modern C++?
1:02:52 Import Qt

All videos from the Curious Developer series: https://youtu.be/nQPumFkN-Ow?list=PL6CJYn40gN6hJTctPIDqLciH9E_PoIklY

Bjarne Stroustrup is the designer and implementer of the C++ programming language. To make C++ a stable and up-to-date base for real-world software development, Bjarne has stuck with its ISO standards effort for 30+ years (so far). Bjarne is also a professor of Computer Science at Columbia University in New York City.

The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:

Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/
An in-depth interview with Bjarne Stroustrup at Qt World Summit 2025

At Qt World Summit Jesper Pedersen meet Bjarne Stroustrup for a discussion on C++, among a lot of other things they talked about:
- Who is C++ for
- Static vs. Dynamic reflection
- Design principals in C++
- Pattern Matching
- import Qt

00:00 Welcome and motivation
01:30 Bjarne as a super hero
02:08 How do you keep track of everything in C++?
05:02 The right way to learn stuff
07:06 Things on the web doesn't age well.
08:48 The categories of questions
09:31 What does writing books give you?
15:18 What does teaching give you?
18:00 "When did you realize you developed a new language?"
21:19 Design Principle: Evolution instead of Revolution
22:36 How do you work when developing C++?
23:10 How do you get inspired from other languages?
25:15 Which ancient programming language would you recommend to play with just for fun?
27:10 C++'s ancestor and the goto keyword
28:57 Have you never broken C++ and how do you ensure you do not break things?
31:03 Deprecating things in C++
32:38 The C++ Core Guidelines, static checkers and profiles
34:22 Profiles
38:40 Qt, raw pointers and profiles
39:32 Young student's question for Bjarne
39:44 Who is C++ intended for?
43:52 What do you suggest as a first programming language?
47:17 Clang-Tidy
50:45 What kind of tools do you see 10-15 years in the future?
52:15 dynamic vs. static reflection
53:28 functional style pattern matching
56:00 Thoughts on signals/slots and the meta object compiler in Qt
59:13 Qt and C++'s relation
1:01:25 How does Qt gradually migrate to modern C++?
1:02:52 Import Qt

All videos from the Curious Developer series: https://youtu.be/nQPumFkN-Ow?list=PL6CJYn40gN6hJTctPIDqLciH9E_PoIklY

Bjarne Stroustrup is the designer and implementer of the C++ programming language. To make C++ a stable and up-to-date base for real-world software development, Bjarne has stuck with its ISO standards effort for 30+ years (so far). Bjarne is also a professor of Computer Science at Columbia University in New York City.

The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:

Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/

YouTube Video VVVqc0prVEpTWjVHN2V3SDJ1ZjA4dDBBLm5RUHVtRmtOLU93

An in-depth interview with Bjarne Stroustrup at Qt World Summit 2025

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. There are more videos coming out soon, among them an extensive interview with Bjarne Stroustrup. So stay tuned!

Bjarne Stroustrup's interview: https://youtu.be/nQPumFkN-Ow?list=PL6CJYn40gN6idH--H9GD_oZIlO2UinYTX
All 'Qt World Summit 2025' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6idH--H9GD_oZIlO2UinYTX

About the host: The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:

Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/
A walk with Jesper around Qt World Summit 2025

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. There are more videos coming out soon, among them an extensive interview with Bjarne Stroustrup. So stay tuned!

Bjarne Stroustrup's interview: https://youtu.be/nQPumFkN-Ow?list=PL6CJYn40gN6idH--H9GD_oZIlO2UinYTX
All 'Qt World Summit 2025' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6idH--H9GD_oZIlO2UinYTX

About the host: The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:

Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/

YouTube Video VVVqc0prVEpTWjVHN2V3SDJ1ZjA4dDBBLnJsSzN2dDJQZTBj

A walk with Jesper around Qt World Summit 2025

Is u"My String"_s better than QStringLiteral("My String")? How about just "My String"? Is it better?

Learn the answer to that in just 50 seconds.

LInks:
*  Which string class should I use? https://youtu.be/GlP0JHUUP8A?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI

All Qt Widgets and more videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host: 
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/
Is u"..."_s a good idea?

Is u"My String"_s better than QStringLiteral("My String")? How about just "My String"? Is it better?

Learn the answer to that in just 50 seconds.

LInks:
* Which string class should I use? https://youtu.be/GlP0JHUUP8A?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI

All Qt Widgets and more videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/

YouTube Video VVVqc0prVEpTWjVHN2V3SDJ1ZjA4dDBBLk5Rd2JHVWFJX1kw

Is u"..."_s a good idea?

Before I send my files up for code review, I do a self review, where I review my changes.
Qt Creator has a nice feature for this, but for the longest time I thought the "Diff Selected Files" feature was broken, but in this episode I'll show you how it really works.

All QML tips and tricks videos : https://www.youtube.com/playlist?list=PL6CJYn40gN6jWHP5krsQrVGyYtKh3A3be

All Qt Widgets and more videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/
Diff Multiple Files in Qt Creator

Before I send my files up for code review, I do a self review, where I review my changes.
Qt Creator has a nice feature for this, but for the longest time I thought the "Diff Selected Files" feature was broken, but in this episode I'll show you how it really works.

All QML tips and tricks videos : https://www.youtube.com/playlist?list=PL6CJYn40gN6jWHP5krsQrVGyYtKh3A3be

All Qt Widgets and more videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/

YouTube Video VVVqc0prVEpTWjVHN2V3SDJ1ZjA4dDBBLnBKV2pBRFA2YlFR

Diff Multiple Files in Qt Creator

Clang-tidy is a static analysis tool for C/C++ code, warning its users about potential errors, performance problems or code that modern C++ allows to express in a better way. Often, clang-tidy can even apply modernizations automatically. Applying clang-tidy is not exactly intuitive, but successfully applied, it is an invaluable support in migrating large codebases to new C++ standards.

Links: 
* Running clang-tidy and clazy from Qt Creator: https://www.youtube.com/watch?v=gO3KCzdmcrQ
* Sarcasm tips documentation - Compilation database: https://sarcasm.github.io/notes/dev/compilation-database.html
* Command from video: 
```
run-clang-tidy checks='*,modernize-loop-convert' -config="
Unknown macro: {Checks}
" -fix
```

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host: 
This video is presented by Anton Kreuzkamp, software engineer and C++ trainer at KDAB. Through the involvement in many large software projects, he has developed a passion for reconciling comprehensibility, correctness and performance by leveraging the full variety of the C++ language.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/
C++ Applications Architecture Best Practices: Migrating to New C++ Standards with Clang-tidy

Clang-tidy is a static analysis tool for C/C++ code, warning its users about potential errors, performance problems or code that modern C++ allows to express in a better way. Often, clang-tidy can even apply modernizations automatically. Applying clang-tidy is not exactly intuitive, but successfully applied, it is an invaluable support in migrating large codebases to new C++ standards.

Links:
* Running clang-tidy and clazy from Qt Creator: https://www.youtube.com/watch?v=gO3KCzdmcrQ
* Sarcasm tips documentation - Compilation database: https://sarcasm.github.io/notes/dev/compilation-database.html
* Command from video:
```
run-clang-tidy checks='*,modernize-loop-convert' -config="
Unknown macro: {Checks}
" -fix
```

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
This video is presented by Anton Kreuzkamp, software engineer and C++ trainer at KDAB. Through the involvement in many large software projects, he has developed a passion for reconciling comprehensibility, correctness and performance by leveraging the full variety of the C++ language.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/

YouTube Video VVVqc0prVEpTWjVHN2V3SDJ1ZjA4dDBBLkVXcTRtWGplRFY4

C++ Applications Architecture Best Practices: Migrating to New C++ Standards with Clang-tidy

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

The example code showcased in this video is available here: 
https://github.com/KDABLabs/kdabtv/tree/master/Programming-With-Qt-Widgets/modelview

All 'Introduction to Qt Widgets - Module 1' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hgf7zCKF2Rv9Y0WoN8RVGf

All 'Introduction to Qt Widgets - Module 2' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6j_c41CFMprvg9EiWz0WdSy

All 'Introduction to Qt Widgets - Module 3' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6hWZO_viEf1rfjgk4E6SCKd

All 'Introduction to Qt Widgets - Module 4' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6iXUNQMb2GkEjV_oK6Xid9-

All 'Introduction to Qt Widgets - Module 5' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6h1tsLAETdrrFlsVMeYpiHI

All 'Introduction to Qt Widgets - Module 6' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6jIsRYriqN70V83t_mdDZHT

All 'Introduction to Qt Widgets - Module 7' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hHyqD9ZxUqpd14LoHvadN7

All 'Introduction to Qt Widgets - Module 8' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6iCb8g5NSfVqX0JRFzFnxak

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/
Introduction to Qt Widgets (Part 60) - Live Coding of a Tree Model

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

The example code showcased in this video is available here:
https://github.com/KDABLabs/kdabtv/tree/master/Programming-With-Qt-Widgets/modelview

All 'Introduction to Qt Widgets - Module 1' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hgf7zCKF2Rv9Y0WoN8RVGf

All 'Introduction to Qt Widgets - Module 2' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6j_c41CFMprvg9EiWz0WdSy

All 'Introduction to Qt Widgets - Module 3' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6hWZO_viEf1rfjgk4E6SCKd

All 'Introduction to Qt Widgets - Module 4' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6iXUNQMb2GkEjV_oK6Xid9-

All 'Introduction to Qt Widgets - Module 5' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6h1tsLAETdrrFlsVMeYpiHI

All 'Introduction to Qt Widgets - Module 6' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6jIsRYriqN70V83t_mdDZHT

All 'Introduction to Qt Widgets - Module 7' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hHyqD9ZxUqpd14LoHvadN7

All 'Introduction to Qt Widgets - Module 8' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6iCb8g5NSfVqX0JRFzFnxak

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/

YouTube Video VVVqc0prVEpTWjVHN2V3SDJ1ZjA4dDBBLkZLa3NBOGFMMEVv

Introduction to Qt Widgets (Part 60) - Live Coding of a Tree Model

We finally made it here - with all the building blocks in place we now are able to understand what it takes to implement a tree model.

Chapters: 
00:00 Welcome
00:31 What are the classes involved?
01:29 Advertise: Cross platform development
01:58 Overview of the methods needed to create a tree model
05:27 Model indexes
08:26 Understanding the void pointer inside the model index
11:23 Only the model can create its own indexes - createIndex
16:59 What are the next steps?

The example code showcased in this video is available here: 
https://github.com/KDABLabs/kdabtv/tree/master/Programming-With-Qt-Widgets/modelview

All 'Introduction to Qt Widgets - Module 1' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hgf7zCKF2Rv9Y0WoN8RVGf

All 'Introduction to Qt Widgets - Module 2' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6j_c41CFMprvg9EiWz0WdSy

All 'Introduction to Qt Widgets - Module 3' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6hWZO_viEf1rfjgk4E6SCKd

All 'Introduction to Qt Widgets - Module 4' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6iXUNQMb2GkEjV_oK6Xid9-

All 'Introduction to Qt Widgets - Module 5' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6h1tsLAETdrrFlsVMeYpiHI

All 'Introduction to Qt Widgets - Module 6' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6jIsRYriqN70V83t_mdDZHT

All 'Introduction to Qt Widgets - Module 7' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hHyqD9ZxUqpd14LoHvadN7

All 'Introduction to Qt Widgets - Module 8' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6iCb8g5NSfVqX0JRFzFnxak

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/
Introduction to Qt Widgets (Part 59) - Tree Models

We finally made it here - with all the building blocks in place we now are able to understand what it takes to implement a tree model.

Chapters:
00:00 Welcome
00:31 What are the classes involved?
01:29 Advertise: Cross platform development
01:58 Overview of the methods needed to create a tree model
05:27 Model indexes
08:26 Understanding the void pointer inside the model index
11:23 Only the model can create its own indexes - createIndex
16:59 What are the next steps?

The example code showcased in this video is available here:
https://github.com/KDABLabs/kdabtv/tree/master/Programming-With-Qt-Widgets/modelview

All 'Introduction to Qt Widgets - Module 1' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hgf7zCKF2Rv9Y0WoN8RVGf

All 'Introduction to Qt Widgets - Module 2' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6j_c41CFMprvg9EiWz0WdSy

All 'Introduction to Qt Widgets - Module 3' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6hWZO_viEf1rfjgk4E6SCKd

All 'Introduction to Qt Widgets - Module 4' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6iXUNQMb2GkEjV_oK6Xid9-

All 'Introduction to Qt Widgets - Module 5' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6h1tsLAETdrrFlsVMeYpiHI

All 'Introduction to Qt Widgets - Module 6' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6jIsRYriqN70V83t_mdDZHT

All 'Introduction to Qt Widgets - Module 7' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hHyqD9ZxUqpd14LoHvadN7

All 'Introduction to Qt Widgets - Module 8' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6iCb8g5NSfVqX0JRFzFnxak

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/

YouTube Video VVVqc0prVEpTWjVHN2V3SDJ1ZjA4dDBBLnVNb19JRldCVE80

Introduction to Qt Widgets (Part 59) - Tree Models

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.

This episode discusses this in details, and offers you a simple library with all checks needed.

Chapters:
00:00 Welcome
00:26 Why is this important?
02:35 Over to the QWAM episode
03:36 The broken example
05:48 Hint to what is wrong
07:20 What is the cure?
08:05 What can I do to be more safe?
09:10 Qt 5.11 - checkIndex
12:39 CHECK_ macros
14:56 QAbstractProxyModel::headerData calling index for an invalid row

Links: 
* QWAM: Communicating between view and model: https://youtu.be/q6eOEz_UfTI?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI
* Blog post on checkIndex: https://www.kdab.com/new-in-qt-5-11-improvements-to-the-model-view-apis-part-1/
* Categorized logging: https://www.youtube.com/watch?v=f12lUvbdj2U&list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI&index=52&t=639s

The example code showcased in this video is available here: 
https://github.com/KDABLabs/kdabtv/tree/master/Programming-With-Qt-Widgets/modelview

All 'Introduction to Qt Widgets - Module 1' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hgf7zCKF2Rv9Y0WoN8RVGf

All 'Introduction to Qt Widgets - Module 2' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6j_c41CFMprvg9EiWz0WdSy

All 'Introduction to Qt Widgets - Module 3' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6hWZO_viEf1rfjgk4E6SCKd

All 'Introduction to Qt Widgets - Module 4' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6iXUNQMb2GkEjV_oK6Xid9-

All 'Introduction to Qt Widgets - Module 5' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6h1tsLAETdrrFlsVMeYpiHI

All 'Introduction to Qt Widgets - Module 6' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6jIsRYriqN70V83t_mdDZHT

All 'Introduction to Qt Widgets - Module 7' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hHyqD9ZxUqpd14LoHvadN7

All 'Introduction to Qt Widgets - Module 8' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6iCb8g5NSfVqX0JRFzFnxak

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/
Introduction to Qt Widgets (Part 58) - Check Your Indexes

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.

This episode discusses this in details, and offers you a simple library with all checks needed.

Chapters:
00:00 Welcome
00:26 Why is this important?
02:35 Over to the QWAM episode
03:36 The broken example
05:48 Hint to what is wrong
07:20 What is the cure?
08:05 What can I do to be more safe?
09:10 Qt 5.11 - checkIndex
12:39 CHECK_ macros
14:56 QAbstractProxyModel::headerData calling index for an invalid row

Links:
* QWAM: Communicating between view and model: https://youtu.be/q6eOEz_UfTI?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI
* Blog post on checkIndex: https://www.kdab.com/new-in-qt-5-11-improvements-to-the-model-view-apis-part-1/
* Categorized logging: https://www.youtube.com/watch?v=f12lUvbdj2U&list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI&index=52&t=639s

The example code showcased in this video is available here:
https://github.com/KDABLabs/kdabtv/tree/master/Programming-With-Qt-Widgets/modelview

All 'Introduction to Qt Widgets - Module 1' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hgf7zCKF2Rv9Y0WoN8RVGf

All 'Introduction to Qt Widgets - Module 2' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6j_c41CFMprvg9EiWz0WdSy

All 'Introduction to Qt Widgets - Module 3' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6hWZO_viEf1rfjgk4E6SCKd

All 'Introduction to Qt Widgets - Module 4' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6iXUNQMb2GkEjV_oK6Xid9-

All 'Introduction to Qt Widgets - Module 5' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6h1tsLAETdrrFlsVMeYpiHI

All 'Introduction to Qt Widgets - Module 6' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6jIsRYriqN70V83t_mdDZHT

All 'Introduction to Qt Widgets - Module 7' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hHyqD9ZxUqpd14LoHvadN7

All 'Introduction to Qt Widgets - Module 8' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6iCb8g5NSfVqX0JRFzFnxak

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/

YouTube Video VVVqc0prVEpTWjVHN2V3SDJ1ZjA4dDBBLlFHSzZ4aGFkemlZ

Introduction to Qt Widgets (Part 58) - Check Your Indexes

In this episode I will live code a model based on QAbstractTableModel.

Chapters:
00:00 Welcome
00:54 The end result
01:50 The starting point 
03:29 Creating a QTableView in main.cpp
04:57 Setting up the DepecheModel
07:55 The default implementation by Qt Creator
09:45 Implementing headerData
12:20 Implementing rowCount
13:21 Advertise - Braumeister
13:49 Fixing why nothing showed up
16:08 Implementing columnCount and header for columns
20:01 A bit of cleaning up
20:47 Implementing the data method
25:00 Implementing the check boxes
29:50 Alignment
33:40 Turning the column enum into an enum class
36:47 EnumConverrters.h
42:47 What's next?

Links: 
* QWAM episode on flags - https://youtu.be/EGhHlPDeyvg?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI
* QWAM episode on Github Copilot - https://youtu.be/kQzpvHPeBQo?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI
* QWAM episode on favorite shortcuts in Qt Creator: https://youtu.be/7Zn6r9HYy6Y?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI
* Video on Braumeister: https://youtu.be/OFohLXdtCzM?list=PL6CJYn40gN6hWTi9AEI1zSfbmC4Skmokb
* QWAM episode on Clang Format - https://youtu.be/Cz36YveDI2E?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI

The example code showcased in this video is available here: 
https://github.com/KDABLabs/kdabtv/tree/master/Programming-With-Qt-Widgets/modelview

All 'Introduction to Qt Widgets - Module 1' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hgf7zCKF2Rv9Y0WoN8RVGf

All 'Introduction to Qt Widgets - Module 2' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6j_c41CFMprvg9EiWz0WdSy

All 'Introduction to Qt Widgets - Module 3' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6hWZO_viEf1rfjgk4E6SCKd

All 'Introduction to Qt Widgets - Module 4' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6iXUNQMb2GkEjV_oK6Xid9-

All 'Introduction to Qt Widgets - Module 5' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6h1tsLAETdrrFlsVMeYpiHI

All 'Introduction to Qt Widgets - Module 6' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6jIsRYriqN70V83t_mdDZHT

All 'Introduction to Qt Widgets - Module 7' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hHyqD9ZxUqpd14LoHvadN7

All 'Introduction to Qt Widgets - Module 8' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6iCb8g5NSfVqX0JRFzFnxak

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/ 

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/
Introduction to Qt Widgets (Part 57) - Live Coding of a Table Model

In this episode I will live code a model based on QAbstractTableModel.

Chapters:
00:00 Welcome
00:54 The end result
01:50 The starting point
03:29 Creating a QTableView in main.cpp
04:57 Setting up the DepecheModel
07:55 The default implementation by Qt Creator
09:45 Implementing headerData
12:20 Implementing rowCount
13:21 Advertise - Braumeister
13:49 Fixing why nothing showed up
16:08 Implementing columnCount and header for columns
20:01 A bit of cleaning up
20:47 Implementing the data method
25:00 Implementing the check boxes
29:50 Alignment
33:40 Turning the column enum into an enum class
36:47 EnumConverrters.h
42:47 What's next?

Links:
* QWAM episode on flags - https://youtu.be/EGhHlPDeyvg?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI
* QWAM episode on Github Copilot - https://youtu.be/kQzpvHPeBQo?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI
* QWAM episode on favorite shortcuts in Qt Creator: https://youtu.be/7Zn6r9HYy6Y?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI
* Video on Braumeister: https://youtu.be/OFohLXdtCzM?list=PL6CJYn40gN6hWTi9AEI1zSfbmC4Skmokb
* QWAM episode on Clang Format - https://youtu.be/Cz36YveDI2E?list=PL6CJYn40gN6gf-G-o6syFwGrtq3kItEqI

The example code showcased in this video is available here:
https://github.com/KDABLabs/kdabtv/tree/master/Programming-With-Qt-Widgets/modelview

All 'Introduction to Qt Widgets - Module 1' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hgf7zCKF2Rv9Y0WoN8RVGf

All 'Introduction to Qt Widgets - Module 2' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6j_c41CFMprvg9EiWz0WdSy

All 'Introduction to Qt Widgets - Module 3' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6hWZO_viEf1rfjgk4E6SCKd

All 'Introduction to Qt Widgets - Module 4' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6iXUNQMb2GkEjV_oK6Xid9-

All 'Introduction to Qt Widgets - Module 5' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6h1tsLAETdrrFlsVMeYpiHI

All 'Introduction to Qt Widgets - Module 6' videos:
https://www.youtube.com/playlist?list=PL6CJYn40gN6jIsRYriqN70V83t_mdDZHT

All 'Introduction to Qt Widgets - Module 7' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6hHyqD9ZxUqpd14LoHvadN7

All 'Introduction to Qt Widgets - Module 8' videos: https://www.youtube.com/playlist?list=PL6CJYn40gN6iCb8g5NSfVqX0JRFzFnxak

Please note that non-English dubs for all KDAB videos are auto-generated. These translations have not been moderated by us and may contain inaccuracies. We appreciate your understanding and apologize for any confusion this may cause.

About the host:
The video is presented by Jesper Pedersen, who started with Qt back when Qt was widgets only and the version was 1.44, which gives him 21 years of experience with Qt. Since 2000 he has taught almost 100 Qt classes, ranging from Qt Widgets to QML. Heck, Jesper even taught a few classes on QTopia Core — Trolltech's initial attempt at creating a phone stack. Today Jesper holds a fancy business title, but that doesn't prevent him from coding both in his job and in his spare time.

Every month our newsletter is featuring technical blogs on Qt, C++ and 3D topics: https://www.kdab.com/development-resources/sign-up-for-our-newsletter/

About KDAB:
Trusted software excellence across embedded and desktop platforms

The KDAB Group is a globally recognized provider for software consulting, development and training, specializing in embedded devices and complex cross-platform desktop applications. In addition to being leading experts in Qt, C++ and 3D technologies for over two decades, KDAB provides deep expertise across the stack, including Linux, Rust and modern UI frameworks. https://www.kdab.com/software-services.

KDAB experts regularly take time out to deliver KDAB’s world class training, in-house or at open enrollment courses around the world. We are the market leaders for training in Qt/QML, Modern C++, Rust and OpenGL. https://training.kdab.com/

With 100+ employees from 20 countries and offices in Sweden, Germany, USA, France and UK, we serve clients around the world. https://www.kdab.com/about/contact/

YouTube Video VVVqc0prVEpTWjVHN2V3SDJ1ZjA4dDBBLnVuWVd4SUp0cV9J

Introduction to Qt Widgets (Part 57) - Live Coding of a Table Model