If you can live without using the native file dialog (that's what happens when you use static versions of the dialog), you can create a QFileDialog subclass where you will reimplement accept() to make the checks and modifications yourself "inside" the dialog. If they are successful, call the base class implementation (QDialog::accept() would probably be better than QFileDialog::accept() here). Otherwise don't call the base class accept(), so the dialog doesn't get closed (or something like that). You can also create a helper method that will act in a fashion similar to what QFileDialog's static methods do (like return the list of files).
Bookmarks