Functions and classes to use a progress dialog in combination with a model thread
A Progress Dialog to be used in combination with a post to the model thread:
to display a progress dialog until my_function has finished:
d = ProgressDialog()
post(my_function, d.finished, d.exception)
d.exec_()