QDialog - Change exec() and open() to virtual functions
QDialog is meant for inheritance (it contains other virtual functions) ... The main reason for this is that we inside the dialog could have a (datadepened) precondition that should prevent the dialog from being shown at all - instead we might just want to show a messagebox. That is not easy solvable in Qt right now. It is possible to reimplement setVisible - but calling reject from setVisible does not work. There seems only to be clumsy solutions to that problem - unless these functions are made virtual Beside it also creates a nice symmetry to done. Change-Id: I51c29e1f7a4a5522f5c0f71bcf98c943580790b9 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
This commit is contained in:
parent
c614bf25fe
commit
dbab994b2c
@ -91,8 +91,8 @@ Q_SIGNALS:
|
||||
void rejected();
|
||||
|
||||
public Q_SLOTS:
|
||||
void open();
|
||||
int exec();
|
||||
virtual void open();
|
||||
virtual int exec();
|
||||
virtual void done(int);
|
||||
virtual void accept();
|
||||
virtual void reject();
|
||||
|
Loading…
Reference in New Issue
Block a user