Async printing
Printing is a potentially heavy operation.
Currently we do the printing synchronously in the GUI thread, which can block the UI for several seconds.
This adds a new virtual to Generator, printAsync. It returns a PrintJob that encapsulates an async print operation.
The UI code is adjusted to use the async job.
For generators that don't implement printAsync there is a fallback job that just executes the old print() method.
Add async printing support to the PDF generator
psConverter->convert() is the heavy part here, put that in a separate thread
Show a busy indicator while generating the print preview
Edited by Nicolas Fella