X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fchatitem.cpp;h=1e086059fd95c84d0c5d8c54e0062309b919d2d2;hb=a2bf6dec2ea5a72d15a3310f8a7abc11988228c4;hp=2e3e22d83c173c032dff470f5ca8e64cb5298a26;hpb=8699dd758516d0ded076811e8ea656adc95e69d0;p=quassel.git diff --git a/src/qtui/chatitem.cpp b/src/qtui/chatitem.cpp index 2e3e22d8..1e086059 100644 --- a/src/qtui/chatitem.cpp +++ b/src/qtui/chatitem.cpp @@ -27,8 +27,7 @@ #include "chatitem.h" -ChatItem::ChatItem(QGraphicsItem *parent) : QGraphicsItem(parent) { - _width = 0; +ChatItem::ChatItem(const QPersistentModelIndex &index_, QGraphicsItem *parent) : QGraphicsItem(parent), _index(index_) { //if(_wrapMode == WordWrap) { // setFlags(QGraphicsItem::ItemClipsToShape, true); //} @@ -38,6 +37,27 @@ ChatItem::~ChatItem() { } +QVariant ChatItem::data(int role) const { + if(!_index.isValid()) { + qWarning() << "ChatItem::data(): Model index is invalid!"; + return QVariant(); + } + return _index.data(role); +} + +QRectF ChatItem::boundingRect() const { + return QRectF(0, 0, 500,20); +} + +void ChatItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) { + Q_UNUSED(option); Q_UNUSED(widget); + + painter->drawRect(boundingRect()); + painter->drawText(boundingRect(), data(MessageModel::DisplayRole).toString()); +} + + +/* void ChatItem::setWidth(int w) { _width = w; layout(); @@ -91,7 +111,9 @@ void ChatItem::layout() { } _layout.endLayout(); update(); -} +} QDateTime _timestamp; + MsgId _msgId; + QRectF ChatItem::boundingRect() const { return _layout.boundingRect(); @@ -102,6 +124,7 @@ void ChatItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, _layout.draw(painter, QPointF(0, 0)); } +*/ /* void ChatItem::mouseMoveEvent ( QGraphicsSceneMouseEvent * event ) {