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
@@ -17,14 +17,21 @@
** not clear to you.
**
**********************************************************************/
-#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.
@@ -65,10 +72,13 @@ QPEDialogListener::~QPEDialogListener() {}
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();
}
}