-rw-r--r-- | library/qpedialog.cpp | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/library/qpedialog.cpp b/library/qpedialog.cpp index da461b7..87d61e3 100644 --- a/library/qpedialog.cpp +++ b/library/qpedialog.cpp @@ -19,15 +19,22 @@ **********************************************************************/ -#define protected public +#include "qpedialog.h" + #include <qdialog.h> -#undef protected -#include "qpedialog.h" -#include <qpe/qpeapplication.h> +#include "qpeapplication.h" + + +// Allow access to nornally protected accept and reject functions +class HackedPrivateQDialog : public QDialog{ +public: + void accept() { QDialog::accept();} + void reject() { QDialog::reject();} +}; /** - * \brief This is the only c'tor. - * + * \brief This is the only c'tor. + * * The parent of this Listener is the Dialog you pass. This means once * the dialog is deleted this listener will be deleted too. @@ -42,5 +49,5 @@ } delete dialog; - + * \endcode * @@ -67,8 +74,11 @@ void QPEDialogListener::appMessage( const QCString &msg, const QByteArray & ) if (!dialog) return; + + HackedPrivateQDialog *hackedDialog = static_cast<HackedPrivateQDialog*>(dialog); + if (msg == "accept()") { - dialog->accept(); + hackedDialog->accept(); } else if (msg == "reject()") { - dialog->reject(); + hackedDialog->reject(); } } |