summaryrefslogtreecommitdiff
Side-by-side diff
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
@@ -1,46 +1,74 @@
/**********************************************************************
** Copyright (C) 2000-2002 Trolltech AS. All rights reserved.
**
** This file is part of the Qtopia Environment.
**
** This file may be distributed and/or modified under the terms of the
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
** packaging of this file.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
** See http://www.trolltech.com/gpl/ for GPL licensing information.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
#define protected public
#include <qdialog.h>
#undef protected
#include "qpedialog.h"
#include <qpe/qpeapplication.h>
+
+/**
+ * \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.
+ * This Listener listens on QPEApplication::appMessage signal and implements
+ * accept() and reject().
+ *
+ * \code
+ * QDialog *dialog = new YourDialog();
+ (void)new QPEDialogListener(dialog);
+ if( QPEApplication::execDialog(dialog) == QDialog::Accept ){
+ // do some stuff
+ }
+ delete dialog;
+
+ * \endcode
+ *
+ * @param di The dialog to handle
+ */
QPEDialogListener::QPEDialogListener(QDialog *di ) : QObject(di)
{
dialog = di;
connect(qApp, SIGNAL(appMessage(const QCString&, const QByteArray&)),
this, SLOT(appMessage(const QCString&, const QByteArray&)) );
}
+
+/**
+ * d'tor
+ */
QPEDialogListener::~QPEDialogListener() {}
+/**
+ * \internal
+ */
void QPEDialogListener::appMessage( const QCString &msg, const QByteArray & )
{
if (!dialog)
return;
if (msg == "accept()") {
dialog->accept();
} else if (msg == "reject()") {
dialog->reject();
}
}
diff --git a/library/qpedialog.h b/library/qpedialog.h
index ed77720..1e35efd 100644
--- a/library/qpedialog.h
+++ b/library/qpedialog.h
@@ -1,44 +1,52 @@
/**********************************************************************
** Copyright (C) 2000-2002 Trolltech AS. All rights reserved.
**
** This file is part of the Qtopia Environment.
**
** This file may be distributed and/or modified under the terms of the
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
** packaging of this file.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
** See http://www.trolltech.com/gpl/ for GPL licensing information.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
#ifndef __QPE_DIALOG_H__
#define __QPE_DIALOG_H__
#include <qobject.h>
class QPEDialogListenerData;
+/**
+ * \brief Listen on QCOP messages to accept/reject a dialog.
+ *
+ * If you want your dialog to be acceptables/rejectable by QCOP
+ * You need to create a QPEDialogListener with your Dialog as Argument.
+ *
+ * This feature is at least use with the first use support of Opie
+ */
class QPEDialogListener : public QObject
{
Q_OBJECT
public:
QPEDialogListener(QDialog *di);
~QPEDialogListener();
private slots:
void appMessage( const QCString &msg, const QByteArray &data );
private:
QDialog *dialog;
QPEDialogListenerData *d;
};
#endif