#ifndef SWIFTEN_CHATWINDOW_H #define SWIFTEN_CHATWINDOW_H #include #include #include #include #include "Swiften/Base/String.h" #include "Swiften/Elements/SecurityLabel.h" namespace Swift { class TreeWidget; class ChatWindow { public: virtual ~ChatWindow() {}; virtual void addMessage(const String& message, const String& senderName, bool senderIsSelf, const boost::optional& label) = 0; virtual void addSystemMessage(const String& message) = 0; virtual void addErrorMessage(const String& message) = 0; virtual void show() = 0; virtual void setAvailableSecurityLabels(const std::vector& labels) = 0; virtual void setSecurityLabelsEnabled(bool enabled) = 0; virtual void setUnreadMessageCount(int count) = 0; virtual void convertToMUC() = 0; virtual TreeWidget *getTreeWidget() = 0; virtual void setSecurityLabelsError() = 0; virtual SecurityLabel getSelectedSecurityLabel() = 0; boost::signal onClosed; boost::signal onAllMessagesRead; boost::signal onSendMessageRequest; }; } #endif