blob: 7a837dc354f2b5bb5289541826dad767a69af451 [file] [log] [blame]
Zhenkai Zhu6d589aa2012-05-29 17:34:35 -07001#ifndef CHATDIALOG_H
2#define CHATDIALOG_H
Zhenkai Zhub45e38a2012-06-01 15:44:36 -07003#include <boost/function.hpp>
4#include <vector>
5#include "digesttreescene.h"
Zhenkai Zhu6d589aa2012-05-29 17:34:35 -07006#include "ui_chatdialog.h"
Zhenkai Zhu5a8d5aa2012-05-30 21:25:23 -07007#include "chatbuf.pb.h"
Zhenkai Zhu90ee76c2012-06-01 16:00:25 -07008#include <sync-app-socket.h>
Zhenkai Zhu6d589aa2012-05-29 17:34:35 -07009
10class ChatDialog : public QDialog, private Ui::ChatDialog
11{
12 Q_OBJECT
13
14public:
15 ChatDialog(QWidget *parent = 0);
Zhenkai Zhub6338822012-05-31 13:27:24 -070016 void appendMessage(const SyncDemo::ChatMessage &msg);
Zhenkai Zhu90ee76c2012-06-01 16:00:25 -070017 void processData(const std::vector<MissingDataInfo> &, SyncAppSocket *);
Zhenkai Zhub45e38a2012-06-01 15:44:36 -070018
19private:
20 void formChatMessage(const QString &text, SyncDemo::ChatMessage &msg);
Zhenkai Zhu5a8d5aa2012-05-30 21:25:23 -070021
22private slots:
23 void returnPressed();
Zhenkai Zhu5a8d5aa2012-05-30 21:25:23 -070024
25private:
26 QString m_nick;
27 QString m_chatroom;
Zhenkai Zhub45e38a2012-06-01 15:44:36 -070028 QString m_prefix;
29 Sync::SyncAppSocket *m_sock;
Zhenkai Zhu6d589aa2012-05-29 17:34:35 -070030};
31#endif