X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fchatitem.cpp;h=7c0cc9a6a375e7345260c524f012a4126fd4a573;hp=2e3e22d83c173c032dff470f5ca8e64cb5298a26;hb=0b9f74984780aacbe85ca04c44ec6304c86557c2;hpb=8699dd758516d0ded076811e8ea656adc95e69d0 diff --git a/src/qtui/chatitem.cpp b/src/qtui/chatitem.cpp index 2e3e22d8..7c0cc9a6 100644 --- a/src/qtui/chatitem.cpp +++ b/src/qtui/chatitem.cpp @@ -27,17 +27,38 @@ #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); //} + } 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(); @@ -58,7 +79,7 @@ QString ChatItem::text() const { void ChatItem::setText(const UiStyle::StyledText &text) { _layout.setText(text.text); - _layout.setAdditionalFormats(text.formats); + _layout.setAdditionalFormats(text.formatList); layout(); } @@ -91,7 +112,9 @@ void ChatItem::layout() { } _layout.endLayout(); update(); -} +} QDateTime _timestamp; + MsgId _msgId; + QRectF ChatItem::boundingRect() const { return _layout.boundingRect(); @@ -102,6 +125,7 @@ void ChatItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, _layout.draw(painter, QPointF(0, 0)); } +*/ /* void ChatItem::mouseMoveEvent ( QGraphicsSceneMouseEvent * event ) {