Splitted queue of chat messages in chat service into public and private queue.

Reworked the interface of the chat service. So full recomile is needed.
With disabled flags for private chat (RS_CHAT_OPEN_NEW and RS_CHAT_REOPEN), the incoming private chat messages are queued (only for the runtime) until the user shows the private chat dialog.
When a new chat message is available, the icon of the gpg and ssl contact changed in MessengerWindow and PeersDialog and a new tray icon is shown.
Fixed compiler warning.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3421 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
thunder2 2010-09-01 17:56:15 +00:00
parent 7dd99a0c35
commit 7f837e9778
17 changed files with 597 additions and 329 deletions

View file

@ -36,23 +36,14 @@ class PopupChatDialog : public QMainWindow
Q_OBJECT
public:
static PopupChatDialog *getPrivateChat(std::string id, std::string name, uint chatflags);
static PopupChatDialog *getPrivateChat(std::string id, uint chatflags);
static void cleanupChat();
static void chatFriend(std::string id);
static void updateAllAvatars();
static void privateChatChanged();
void updateChat();
void updatePeerAvatar(const std::string&);
void addChatMsg(ChatInfo *ci);
void loadEmoticons();
void loadEmoticons2();
void updateAvatar();
QString loadEmptyStyle();
QPixmap picture;
public slots:
/** Overloaded QWidget.show */
@ -84,9 +75,20 @@ protected:
~PopupChatDialog();
void closeEvent (QCloseEvent * event);
void showEvent (QShowEvent * event);
virtual void dragEnterEvent(QDragEnterEvent *event);
virtual void dropEvent(QDropEvent *event);
void insertChatMsgs();
void addChatMsg(std::string &id, std::wstring &msg);
void loadEmoticons();
void loadEmoticons2();
void updateAvatar();
QString loadEmptyStyle();
QPixmap picture;
private slots:
void addExtraFile();
@ -135,7 +137,9 @@ private:
QStringList history;
QString wholeChat;
QString fileName;
bool m_bInsertOnVisible;
/** Qt Designer generated object */
Ui::PopupChatDialog ui;