blob: 848e07f03c6090c06d1126d1bcc1f9b3774925f4 [file] [log] [blame]
Yingdi Yu348f5ea2014-03-01 14:47:25 -08001/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil -*- */
2/*
3 * Copyright (c) 2013, Regents of the University of California
4 * Yingdi Yu
5 *
6 * BSD license, See the LICENSE file for more information
7 *
8 * Author: Yingdi Yu <yingdi@cs.ucla.edu>
9 */
10
Yingdi Yu0b0a7362014-08-05 16:31:30 -070011#ifndef CHRONOS_INVITE_LIST_DIALOG_HPP
12#define CHRONOS_INVITE_LIST_DIALOG_HPP
Yingdi Yu348f5ea2014-03-01 14:47:25 -080013
14#include <QDialog>
15#include <QStringListModel>
16
17#ifndef Q_MOC_RUN
18#endif
19
20namespace Ui {
21class InviteListDialog;
22}
23
Yingdi Yu0b0a7362014-08-05 16:31:30 -070024namespace chronos {
25
Yingdi Yu348f5ea2014-03-01 14:47:25 -080026class InviteListDialog : public QDialog
27{
28 Q_OBJECT
29
30public:
31 explicit
Yingdi Yu0b0a7362014-08-05 16:31:30 -070032 InviteListDialog(QWidget* parent = 0);
Yingdi Yufa0b6a02014-04-30 14:26:42 -070033
Yingdi Yu348f5ea2014-03-01 14:47:25 -080034 ~InviteListDialog();
35
36 void
37 setInviteLabel(std::string label);
Yingdi Yufa0b6a02014-04-30 14:26:42 -070038
Yingdi Yu348f5ea2014-03-01 14:47:25 -080039signals:
40 void
41 sendInvitation(const QString&);
42
43public slots:
44 void
45 onContactAliasListReady(const QStringList& aliasList);
46
47 void
48 onContactIdListReady(const QStringList& idList);
49
50private slots:
Yingdi Yufa0b6a02014-04-30 14:26:42 -070051 void
Yingdi Yu348f5ea2014-03-01 14:47:25 -080052 onInviteClicked();
53
54 void
55 onCancelClicked();
56
57private:
Yingdi Yu0b0a7362014-08-05 16:31:30 -070058 Ui::InviteListDialog* ui;
Yingdi Yu348f5ea2014-03-01 14:47:25 -080059 QStringListModel* m_contactListModel;
60 QStringList m_contactAliasList;
61 QStringList m_contactIdList;
62};
63
Yingdi Yu0b0a7362014-08-05 16:31:30 -070064} // namespace chronos
65
66#endif // CHRONOS_INVITE_LIST_DIALOG_HPP