diff options
| author | Tobias Markmann <tm@ayena.de> | 2011-11-11 15:01:32 (GMT) |
|---|---|---|
| committer | Kevin Smith <git@kismith.co.uk> | 2011-11-28 16:44:22 (GMT) |
| commit | 86aad702d1f2e831c8e27bbe4ca1402626e4c542 (patch) | |
| tree | 3be5a8ed23aef3877c9b313d0ee0f58afb54f57a /Swift/QtUI/QtChatView.h | |
| parent | 81a7776d5ab523894a7c4745baee3988ad9f1ef9 (diff) | |
| download | swift-contrib-86aad702d1f2e831c8e27bbe4ca1402626e4c542.zip swift-contrib-86aad702d1f2e831c8e27bbe4ca1402626e4c542.tar.bz2 | |
Message Receipts (XEP-0184) support for 1-to-1 conversations (including 1-to-1 MUC).
Warn icon from already existing theme. Check icon from Wikipedia. See Swift/resources/icons/license_info.txt for details.
License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
Diffstat (limited to 'Swift/QtUI/QtChatView.h')
| -rw-r--r-- | Swift/QtUI/QtChatView.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Swift/QtUI/QtChatView.h b/Swift/QtUI/QtChatView.h index cf47029..0cc521a 100644 --- a/Swift/QtUI/QtChatView.h +++ b/Swift/QtUI/QtChatView.h @@ -3,70 +3,73 @@ * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ #ifndef SWIFT_QtChatView_H #define SWIFT_QtChatView_H #include <QString> #include <QWidget> #include <QList> #include <QWebElement> #include <boost/shared_ptr.hpp> #include "ChatSnippet.h" #include <Swift/Controllers/UIInterfaces/ChatWindow.h> class QWebPage; class QUrl; namespace Swift { class QtWebView; class QtChatTheme; class QtChatView : public QWidget { Q_OBJECT public: QtChatView(QtChatTheme* theme, QWidget* parent); void addMessage(boost::shared_ptr<ChatSnippet> snippet); void addLastSeenLine(); void replaceLastMessage(const QString& newMessage); void replaceLastMessage(const QString& newMessage, const QString& note); void replaceMessage(const QString& newMessage, const QString& id, const QDateTime& time); void rememberScrolledToBottom(); void setAckXML(const QString& id, const QString& xml); + void setReceiptXML(const QString& id, const QString& xml); + void displayReceiptInfo(const QString& id, bool showIt); + QString getLastSentMessage(); void addToJSEnvironment(const QString&, QObject*); void setFileTransferProgress(QString id, const int percentageDone); void setFileTransferStatus(QString id, const ChatWindow::FileTransferState state, const QString& msg); signals: void gotFocus(); void fontResized(int); public slots: void copySelectionToClipboard(); void scrollToBottom(); void handleLinkClicked(const QUrl&); void handleKeyPressEvent(QKeyEvent* event); void resetView(); void increaseFontSize(int numSteps = 1); void decreaseFontSize(); void resizeFont(int fontSizeSteps); private slots: void handleViewLoadFinished(bool); void handleFrameSizeChanged(); void handleClearRequested(); private: void headerEncode(); void messageEncode(); void addToDOM(boost::shared_ptr<ChatSnippet> snippet); QWebElement snippetToDOM(boost::shared_ptr<ChatSnippet> snippet); bool viewReady_; bool isAtBottom_; QtWebView* webView_; QWebPage* webPage_; int fontSizeSteps_; |
Swift