widgets: refactor the ProgressDialog to avoid overriding Qt methods