e7e173c71d93a31c16e012446a9fe69a47a0c3f8
[situare] / src / ui / messagedialog.h
1 /*
2    Situare - A location system for Facebook
3    Copyright (C) 2010  Ixonos Plc. Authors:
4
5       Jussi Laitinen - jussi.laitinen@ixonos.com
6
7    Situare is free software; you can redistribute it and/or
8    modify it under the terms of the GNU General Public License
9    version 2 as published by the Free Software Foundation.
10
11    Situare is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15
16    You should have received a copy of the GNU General Public License
17    along with Situare; if not, write to the Free Software
18    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,
19    USA.
20 */
21
22 #ifndef MESSAGEDIALOG_H
23 #define MESSAGEDIALOG_H
24
25 #include <QDialog>
26
27 class QDialogButtonBox;
28 class QLineEdit;
29
30 /**
31 * @brief Message dialog
32 *
33 * @author Jussi Laitinen
34 */
35 class MessageDialog : public QDialog
36 {
37     Q_OBJECT
38
39 public:
40     /**
41     * @brief Unit test class
42     */
43     friend class TestMessageDialog;
44
45     /**
46     * @brief Constructor
47     *
48     * @param id message receiver's ID
49     * @param receiver message receiver's name
50     * @param parent QWidget
51     */
52     MessageDialog(const QString &id, const QString &receiver, QWidget *parent = 0);
53
54 /*******************************************************************************
55  * MEMBER FUNCTIONS AND SLOTS
56  ******************************************************************************/
57     /**
58     * @brief Gets users input
59     *
60     * @returns users input as id and message text pair
61     */
62     QPair<QString, QString> input();
63
64 /*******************************************************************************
65  * DATA MEMBERS
66  ******************************************************************************/
67
68 private:
69     QLineEdit *m_messageField;      ///< Pointer to message field
70     QString m_id;                   ///< Receiver ID
71 };
72
73 #endif // MESSAGEDIALOG_H
74