summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--library/qpedialog.cpp22
1 files changed, 16 insertions, 6 deletions
diff --git a/library/qpedialog.cpp b/library/qpedialog.cpp
index da461b7..87d61e3 100644
--- a/library/qpedialog.cpp
+++ b/library/qpedialog.cpp
@@ -18,12 +18,19 @@
**
**********************************************************************/
-#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();}
+};
/**
@@ -66,9 +73,12 @@ 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();
}
}