The previous chapter was a firework of threads, sockets, and workers. We hope that your minions have been working hard. In this chapter, we will turn our attention to the serialization with Qt. You will learn how to serialize data in multiple formats with a flexible system. The example project will be a virtual drum machine, in which you can compose you own drum beat, record it, play it, save it, and load it back. Your drum beat will be probably so awesome that you will want to share it: you will now be able to do it in various formats.
This chapter will cover the following topics:
How to architecture an application that plays and records sounds
The
QVariant
class and its inner mechanicsA flexible serialization system
JSON serialization
XML serialization
Binary serialization
The Qt Multimedia framework
Drag and drop handling with Qt
Triggering a button from your keyboard