update();
}
+bool ChatScene::event(QEvent *e) {
+ if(e->type() == QEvent::ApplicationPaletteChange) {
+ _firstColHandle->setColor(QApplication::palette().windowText().color());
+ _secondColHandle->setColor(QApplication::palette().windowText().color());
+ }
+ return QGraphicsScene::event(e);
+}
+
void ChatScene::loadWebPreview(ChatItem *parentItem, const QString &url, const QRectF &urlRect) {
#ifndef HAVE_WEBKIT
Q_UNUSED(parentItem)
inline CutoffMode senderCutoffMode() const { return _cutoffMode; }
inline void setSenderCutoffMode(CutoffMode mode) { _cutoffMode = mode; }
-public slots:
+ virtual bool event(QEvent *e);
+
+ public slots:
void updateForViewport(qreal width, qreal height);
void setWidth(qreal width);
_moving(false),
_minXPos(0),
_maxXPos(0),
- _timeLine(150)
+ _timeLine(350),
+ _rulerColor(QApplication::palette().windowText().color())
{
+ _timeLine.setUpdateInterval(20);
+
setAcceptsHoverEvents(true);
setZValue(10);
setCursor(QCursor(Qt::OpenHandCursor));
Q_UNUSED(widget);
QLinearGradient gradient(boundingRect().topLeft(), boundingRect().topRight());
- QColor rulerColor = QApplication::palette().windowText().color();
- rulerColor.setAlphaF(_hover);
+ QColor _rulerColor = QApplication::palette().windowText().color();
+ _rulerColor.setAlphaF(_hover);
gradient.setColorAt(0, Qt::transparent);
- gradient.setColorAt(0.4, rulerColor);
- gradient.setColorAt(0.6, rulerColor);
+ gradient.setColorAt(0.4, _rulerColor);
+ gradient.setColorAt(0.6, _rulerColor);
gradient.setColorAt(1, Qt::transparent);
painter->fillRect(boundingRect(), gradient);
}
public slots:
void sceneRectChanged(const QRectF &);
+ inline void setColor(const QColor &color) { _rulerColor = color; }
protected:
void hoverEnterEvent(QGraphicsSceneHoverEvent *event);
bool _moving;
qreal _minXPos, _maxXPos;
QTimeLine _timeLine;
+ QColor _rulerColor;
};
#endif