X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fchatlinemodelitem.h;h=d4979cdf1b55d75bde29175354301bae7e3f3dd8;hp=bc326689d65f5e8a4a04a8dc86219c5c32ed0b27;hb=86831c8857f0a729580cee547e10c9621d50c780;hpb=e2953de106e68e72486e294405f4bdcd33c60fba diff --git a/src/qtui/chatlinemodelitem.h b/src/qtui/chatlinemodelitem.h index bc326689..d4979cdf 100644 --- a/src/qtui/chatlinemodelitem.h +++ b/src/qtui/chatlinemodelitem.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-08 by the Quassel Project * + * Copyright (C) 2005-09 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -21,33 +21,29 @@ #ifndef CHATLINEMODELITEM_H_ #define CHATLINEMODELITEM_H_ -#include - -#include "chatlinemodel.h" -#include "uistyle.h" +#include "messagemodel.h" class ChatLineModelItemPrivate; class ChatLineModelItem : public MessageModelItem { public: ChatLineModelItem(const Message &); + ChatLineModelItem(const ChatLineModelItem &other); + ~ChatLineModelItem(); virtual QVariant data(int column, int role) const; - virtual inline bool setData(int column, const QVariant &value, int role) { Q_UNUSED(column); Q_UNUSED(value); Q_UNUSED(role); return false; } - -private: - void computeWrapList() const; - struct ChatLinePart { - QString plainText; - UiStyle::FormatList formatList; + /// Used to store information about words to be used for wrapping + struct Word { + quint16 start; + qreal endX; + qreal width; + qreal trailing; }; - ChatLinePart _timestamp, _sender, _contents; + typedef QVector WrapList; +private: ChatLineModelItemPrivate *_data; - - static unsigned char *TextBoundaryFinderBuffer; - static int TextBoundaryFinderBufferSize; }; #endif