new message line no longer grows with the item height
authorMarcus Eggenberger <egs@quassel-irc.org>
Tue, 30 Sep 2008 12:25:40 +0000 (14:25 +0200)
committerMarcus Eggenberger <egs@quassel-irc.org>
Tue, 30 Sep 2008 12:25:40 +0000 (14:25 +0200)
src/client/messagemodel.cpp
src/qtui/chatitem.h
src/qtui/chatline.cpp

index 7633f82..41701c3 100644 (file)
@@ -37,7 +37,6 @@ MessageModel::MessageModel(QObject *parent)
   _nextDayChange.setTimeSpec(Qt::UTC);
   _nextDayChange.setTime_t(((now.toTime_t() / 86400) + 1) * 86400);
   _nextDayChange.setTimeSpec(Qt::LocalTime);
-  qDebug() << _nextDayChange;
   _dayChangeTimer.setInterval(QDateTime::currentDateTime().secsTo(_nextDayChange) * 1000);
   _dayChangeTimer.start();
   connect(&_dayChangeTimer, SIGNAL(timeout()), this, SLOT(changeOfDay()));
index c2cb4ee..b8b6e14 100644 (file)
@@ -146,6 +146,7 @@ public:
   ContentsChatItem(const qreal &width, const QPointF &pos, QGraphicsItem *parent);
 
   inline ChatLineModel::ColumnType column() const { return ChatLineModel::ContentsColumn; }
+  inline QFontMetricsF *fontMetrics() const { return _fontMetrics; }
 
 protected:
   virtual void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
@@ -177,7 +178,6 @@ private:
   friend class ChatLine;
   friend struct ContentsChatItemPrivate;
 
-  inline QFontMetricsF *fontMetrics() const { return _fontMetrics; }
   QFontMetricsF *_fontMetrics;
 };
 
index 14c782f..00220bb 100644 (file)
@@ -152,7 +152,7 @@ void ChatLine::paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
       BufferId bufferId = model_->data(prevRowIdx, MessageModel::BufferIdRole).value<BufferId>();
       if(msgId == Client::networkModel()->lastSeenMsgId(bufferId) && chatScene()->isSingleBufferScene()) {
        QtUiStyleSettings s("Colors");
-       QLinearGradient gradient(0, 0, 0, height());
+       QLinearGradient gradient(0, 0, 0, contentsItem().fontMetrics()->lineSpacing());
        gradient.setColorAt(0, s.value("newMsgMarkerFG", QColor(Qt::red)).value<QColor>());
        gradient.setColorAt(0.1, Qt::transparent);
        painter->fillRect(boundingRect(), gradient);