X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fclient%2Fmessagemodel.h;h=f6e2538fced0ff04bccde66b701930b6277409a4;hb=e416a73af88ef581b262745feeea0add49779395;hp=afbe89f55db0152536c8fd70ff02e73f93aceee8;hpb=32b5e6447458a8e6e8074c40988b2d06f327094f;p=quassel.git diff --git a/src/client/messagemodel.h b/src/client/messagemodel.h index afbe89f5..f6e2538f 100644 --- a/src/client/messagemodel.h +++ b/src/client/messagemodel.h @@ -27,7 +27,7 @@ #include "message.h" #include "types.h" -class MessageItem; +class MessageModelItem; class MsgId; class MessageModel : public QAbstractItemModel { @@ -42,11 +42,12 @@ class MessageModel : public QAbstractItemModel { TimestampRole, DisplayRole, FormatRole, + ColumnTypeRole, UserRole }; enum ColumnType { - TimestampColumn, SenderColumn, TextColumn, UserColumnType + TimestampColumn, SenderColumn, ContentsColumn, UserColumnType }; MessageModel(QObject *parent); @@ -66,26 +67,26 @@ class MessageModel : public QAbstractItemModel { void insertMessages(const QList &); protected: - virtual MessageItem *createMessageItem(const Message &) = 0; + virtual MessageModelItem *createMessageModelItem(const Message &) = 0; private: - QList _messageList; + QList _messageList; int indexForId(MsgId); }; -class MessageItem { +class MessageModelItem { public: - //! Creates a MessageItem from a Message object. + //! Creates a MessageModelItem from a Message object. /** This baseclass implementation takes care of all Message data *except* the stylable strings. * Subclasses need to provide Qt::DisplayRole at least, which should describe the plaintext * strings without formattings (e.g. for searching purposes). */ - MessageItem(const Message &); - virtual ~MessageItem(); + MessageModelItem(const Message &); + virtual ~MessageModelItem(); virtual QVariant data(int column, int role) const; virtual bool setData(int column, const QVariant &value, int role) = 0;