But how to set the dialog's parent?
Why do you need a parent? What's wrong with the no-argument constructor?
If a dialog doesn't have a parent, it's not friendly to the user in some way.
I don't understand what this means. How is it not user-friendly? Why would the user care about this?