X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fchatlinemodel.h;h=4f64efe1dac4e17fcb829f1684074c31f527c2ed;hp=11c9a076cb8afe8c6128eacaba4a6dd888fa31b9;hb=a19d4cb095e9711028c70f651012bb558e17a6c2;hpb=cc7f376eb105f7bf931fb7f96c9601a7b3f69511 diff --git a/src/qtui/chatlinemodel.h b/src/qtui/chatlinemodel.h index 11c9a076..4f64efe1 100644 --- a/src/qtui/chatlinemodel.h +++ b/src/qtui/chatlinemodel.h @@ -23,21 +23,34 @@ #include "messagemodel.h" -class ChatlineModel : public MessageModel { +class ChatLineModel : public MessageModel { Q_OBJECT - public: - enum ChatlineRole { - FormatRole = MessageModel::UserRole - }; +public: + enum ChatLineRole { + WrapListRole = MessageModel::UserRole + }; - ChatlineModel(QObject *parent = 0); - virtual ~ChatlineModel(); + ChatLineModel(QObject *parent = 0); - protected: - virtual MessageModelItem *createMessageModelItem(const Message &); + /// Used to store information about words to be used for wrapping + struct Word { + quint16 start; + qreal endX; + qreal width; + qreal trailing; + }; + typedef QVector WrapList; + +protected: + virtual MessageModelItem *createMessageModelItem(const Message &); }; +QDataStream &operator<<(QDataStream &out, const ChatLineModel::WrapList); +QDataStream &operator>>(QDataStream &in, ChatLineModel::WrapList &); + +Q_DECLARE_METATYPE(ChatLineModel::WrapList) + #endif