using a shared buffer for QTextBoundaryFinder
[quassel.git] / src / qtui / chatlinemodelitem.h
index 4d5469e..a2ef9b9 100644 (file)
 #ifndef CHATLINEMODELITEM_H_
 #define CHATLINEMODELITEM_H_
 
-#include "messagemodel.h"
+#include <QVector>
+
+#include "chatlinemodel.h"
 #include "uistyle.h"
 
-class ChatlineModelItem : public MessageModelItem {
+class ChatLineModelItem : public MessageModelItem {
+public:
+  ChatLineModelItem(const Message &);
 
-  public:
-    ChatlineModelItem(const Message &);
-    //virtual ~ChatlineModelItem() {};
+  virtual QVariant data(int column, int role) const;
+  virtual inline bool setData(int column, const QVariant &value, int role) { return false; }
 
-    virtual QVariant data(int column, int role) const;
-    virtual bool setData(int column, const QVariant &value, int role);
+private:
+  void computeWrapList();
 
-  private:
-    struct ChatlinePart {
-      QString plainText;
-      UiStyle::FormatList formatList;
+  struct ChatLinePart {
+    QString plainText;
+    UiStyle::FormatList formatList;
+  };
+  ChatLinePart _timestamp, _sender, _contents;
 
-    };
+  ChatLineModel::WrapList _wrapList;
 
-    ChatlinePart _timestamp, _sender, _contents;
+  static unsigned char *TextBoundaryFinderBuffer;
+  static int TextBoundaryFinderBufferSize;
 };
 
 #endif