summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpedialog.cpp28
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
@@ -20,8 +20,15 @@
-#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();}
+};
@@ -29,4 +36,4 @@
/**
- * \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
@@ -43,3 +50,3 @@
delete dialog;
-
+
* \endcode
@@ -68,6 +75,9 @@ void QPEDialogListener::appMessage( const QCString &msg, const QByteArray & )
return;
+
+ HackedPrivateQDialog *hackedDialog = static_cast<HackedPrivateQDialog*>(dialog);
+
if (msg == "accept()") {
- dialog->accept();
+ hackedDialog->accept();
} else if (msg == "reject()") {
- dialog->reject();
+ hackedDialog->reject();
}