Seite 1 von 1

enum QDialog erweitern

Verfasst: 29. September 2011 02:21
von Gruwe
Hallo,

ist es möglich bei einer aus Qt abgeleitete Klasse enum zu erweitern?

Also was ich jetzt speziell meine:
Wenn man ein QDialog erstellt, so gibt dieses entweder Qt::Accepted oder Qt::Rejected, etc. als Result zurück.
Nun ist es mir zwar möglich, etwas anderes zurückzugeben, jedoch weiss ich nur, dass ich halt einen Integer zurückgeben kann, d.h. ich kann in einen Slot des Dialogs z.B. reinschreiben

Code: Alles auswählen

return ( 2);
weil ich etwa zurückgeben möchte, was in QDialog so nicht vorgesehen ist.
Nun kann ich zwar natürlich das result des Dialogs auf 2 überprüfen, aber ich finde es eben schöner und übersichtlicher, wenn man statt das enum QDialog erweitern könnte zu z.B.

Code: Alles auswählen


enum QDialog { Rejected, Accepted, Save}
und dann entsprechend auch überprüfen könnte mit

Code: Alles auswählen

dialog->result == QDialog::Save
so dass es überall wo ich diesen Dialog einsetze, darauf zugreifen kann.

Ist das möglich und wenn ja, wie?


MfG und Danke

Re: enum QDialog erweitern

Verfasst: 29. September 2011 06:39
von Christian81
Nein - da müsstest du schon die Qt-Sourcen ändern. Es hindert Dich aber niemand daran ein Define oder static const int 'DialogSaved' anzulegen und dieses dann zu verwenden.