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