summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpedialog.cpp28
-rw-r--r--library/qpedialog.h8
2 files changed, 36 insertions, 0 deletions
diff --git a/library/qpedialog.cpp b/library/qpedialog.cpp
index b98e42e..ac42972 100644
--- a/library/qpedialog.cpp
+++ b/library/qpedialog.cpp
@@ -4,43 +4,71 @@
4** This file is part of the Qtopia Environment. 4** This file is part of the Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20 20
21#define protected public 21#define protected public
22#include <qdialog.h> 22#include <qdialog.h>
23#undef protected 23#undef protected
24 24
25#include "qpedialog.h" 25#include "qpedialog.h"
26#include <qpe/qpeapplication.h> 26#include <qpe/qpeapplication.h>
27 27
28
29/**
30 * \brief This is the only c'tor.
31 *
32 * The parent of this Listener is the Dialog you pass. This means once
33 * the dialog is deleted this listener will be deleted too.
34 * This Listener listens on QPEApplication::appMessage signal and implements
35 * accept() and reject().
36 *
37 * \code
38 *QDialog *dialog = new YourDialog();
39 (void)new QPEDialogListener(dialog);
40 if( QPEApplication::execDialog(dialog) == QDialog::Accept ){
41 // do some stuff
42 }
43 delete dialog;
44
45 * \endcode
46 *
47 * @param di The dialog to handle
48 */
28QPEDialogListener::QPEDialogListener(QDialog *di ) : QObject(di) 49QPEDialogListener::QPEDialogListener(QDialog *di ) : QObject(di)
29{ 50{
30 dialog = di; 51 dialog = di;
31 connect(qApp, SIGNAL(appMessage(const QCString&, const QByteArray&)), 52 connect(qApp, SIGNAL(appMessage(const QCString&, const QByteArray&)),
32 this, SLOT(appMessage(const QCString&, const QByteArray&)) ); 53 this, SLOT(appMessage(const QCString&, const QByteArray&)) );
33} 54}
34 55
56
57/**
58 * d'tor
59 */
35QPEDialogListener::~QPEDialogListener() {} 60QPEDialogListener::~QPEDialogListener() {}
36 61
62/**
63 * \internal
64 */
37void QPEDialogListener::appMessage( const QCString &msg, const QByteArray & ) 65void QPEDialogListener::appMessage( const QCString &msg, const QByteArray & )
38{ 66{
39 if (!dialog) 67 if (!dialog)
40 return; 68 return;
41 if (msg == "accept()") { 69 if (msg == "accept()") {
42 dialog->accept(); 70 dialog->accept();
43 } else if (msg == "reject()") { 71 } else if (msg == "reject()") {
44 dialog->reject(); 72 dialog->reject();
45 } 73 }
46} 74}
diff --git a/library/qpedialog.h b/library/qpedialog.h
index ed77720..1e35efd 100644
--- a/library/qpedialog.h
+++ b/library/qpedialog.h
@@ -3,42 +3,50 @@
3** 3**
4** This file is part of the Qtopia Environment. 4** This file is part of the Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20#ifndef __QPE_DIALOG_H__ 20#ifndef __QPE_DIALOG_H__
21#define __QPE_DIALOG_H__ 21#define __QPE_DIALOG_H__
22 22
23#include <qobject.h> 23#include <qobject.h>
24 24
25class QPEDialogListenerData; 25class QPEDialogListenerData;
26 26
27/**
28 * \brief Listen on QCOP messages to accept/reject a dialog.
29 *
30 * If you want your dialog to be acceptables/rejectable by QCOP
31 * You need to create a QPEDialogListener with your Dialog as Argument.
32 *
33 * This feature is at least use with the first use support of Opie
34 */
27class QPEDialogListener : public QObject 35class QPEDialogListener : public QObject
28{ 36{
29 Q_OBJECT 37 Q_OBJECT
30public: 38public:
31 QPEDialogListener(QDialog *di); 39 QPEDialogListener(QDialog *di);
32 ~QPEDialogListener(); 40 ~QPEDialogListener();
33 41
34private slots: 42private slots:
35 void appMessage( const QCString &msg, const QByteArray &data ); 43 void appMessage( const QCString &msg, const QByteArray &data );
36 44
37private: 45private:
38 46
39 QDialog *dialog; 47 QDialog *dialog;
40 QPEDialogListenerData *d; 48 QPEDialogListenerData *d;
41}; 49};
42 50
43#endif 51#endif
44 52