X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fcolumnhandleitem.cpp;h=cf0e5d7ccb2c63c56012eb53eb27f5234a160199;hp=c9e09ce0df58c678c212758f562a6e29e17bd100;hb=1a8f18df3db5cebd77fbba1c0dc726a4da2c1b72;hpb=effb14d51686baff7eded20c2b30f452b0c2ce6a diff --git a/src/qtui/columnhandleitem.cpp b/src/qtui/columnhandleitem.cpp index c9e09ce0..cf0e5d7c 100644 --- a/src/qtui/columnhandleitem.cpp +++ b/src/qtui/columnhandleitem.cpp @@ -18,12 +18,16 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ +#include "columnhandleitem.h" + +#include #include #include #include #include +#include -#include "columnhandleitem.h" +#include ColumnHandleItem::ColumnHandleItem(qreal w, QGraphicsItem *parent) : QGraphicsItem(parent), @@ -42,7 +46,7 @@ ColumnHandleItem::ColumnHandleItem(qreal w, QGraphicsItem *parent) } void ColumnHandleItem::setXPos(qreal xpos) { - setPos(xpos - width()/2, 0); + setPos(xpos, 0); } void ColumnHandleItem::setXLimits(qreal min, qreal max) { @@ -53,8 +57,8 @@ void ColumnHandleItem::setXLimits(qreal min, qreal max) { } void ColumnHandleItem::sceneRectChanged(const QRectF &rect) { - if(rect.height() != boundingRect().height()) - prepareGeometryChange(); + Q_UNUSED(rect) + prepareGeometryChange(); } void ColumnHandleItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event) { @@ -85,7 +89,7 @@ void ColumnHandleItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) { if(_moving) { _moving = false; setCursor(QCursor(Qt::OpenHandCursor)); - emit positionChanged(x() + width()/2); + emit positionChanged(x()); event->accept(); } else { event->ignore(); @@ -117,10 +121,13 @@ void ColumnHandleItem::paint(QPainter *painter, const QStyleOptionGraphicsItem * Q_UNUSED(option); Q_UNUSED(widget); - QLinearGradient gradient(0, 0, width(), 0); - gradient.setColorAt(0.25, Qt::transparent); - gradient.setColorAt(0.5, QColor(0, 0, 0, _hover * 200)); - gradient.setColorAt(0.75, Qt::transparent); + QLinearGradient gradient(boundingRect().topLeft(), boundingRect().topRight()); + 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(1, Qt::transparent); painter->fillRect(boundingRect(), gradient); }