Originally Posted by kovidgoyal
why not just return a QLabel as the widget with the error message
You are going to get a fairly "large" message box though, aren't you? As the dialog size will have been restored from when last used "successfully" with it's big grid etc on it. No major, just saying...
Also you will still need to detect your "error" situation in validate and return False from that to prevent save_settings from being invoked.