summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Smith <git@kismith.co.uk>2010-11-21 19:43:42 (GMT)
committerKevin Smith <git@kismith.co.uk>2010-11-21 19:51:36 (GMT)
commit90c44a10fec26d2a0935b2d62e82b6a5be028373 (patch)
tree43fec4088f5fe3a10320dc125206a3d48402b346 /Swift/QtUI/ChatSnippet.h
parent4bda0cd18e86f037c3f494f1ea7ba5efedaf5042 (diff)
downloadswift-90c44a10fec26d2a0935b2d62e82b6a5be028373.zip
swift-90c44a10fec26d2a0935b2d62e82b6a5be028373.tar.bz2
Clearing the chat window won't break continuation elements.
Resolves: #642 Resolves: #643 Release-Notes: Clearing the chat windows should now work correctly.
Diffstat (limited to 'Swift/QtUI/ChatSnippet.h')
-rw-r--r--Swift/QtUI/ChatSnippet.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/Swift/QtUI/ChatSnippet.h b/Swift/QtUI/ChatSnippet.h
index 9786518..f323295 100644
--- a/Swift/QtUI/ChatSnippet.h
+++ b/Swift/QtUI/ChatSnippet.h
@@ -6,6 +6,8 @@
#pragma once
+#include <boost/shared_ptr.hpp>
+
#include <QString>
#include <QDateTime>
#include "QtChatTheme.h"
@@ -13,12 +15,14 @@
namespace Swift {
class ChatSnippet {
public:
- ChatSnippet(bool appendToPrevious = false);
+ ChatSnippet(bool appendToPrevious);
virtual ~ChatSnippet();
virtual const QString& getContent() const = 0;
virtual QString getContinuationElementID() const { return ""; }
+ boost::shared_ptr<ChatSnippet> getContinuationFallbackSnippet() {return continuationFallback_;}
+
bool getAppendToPrevious() const {
return appendToPrevious_;
}
@@ -26,9 +30,13 @@ namespace Swift {
static QString escape(const QString&);
protected:
+ void setContinuationFallbackSnippet(boost::shared_ptr<ChatSnippet> continuationFallback) {
+ continuationFallback_ = continuationFallback;
+ }
static QString timeToEscapedString(const QDateTime& time);
private:
bool appendToPrevious_;
+ boost::shared_ptr<ChatSnippet> continuationFallback_;
};
}