X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fcolumnhandleitem.h;h=9cc131b2996b4e319f25d35f5f02350f7de23343;hp=f9d1f7ada0026cce541c46e1b7173a8ccc1ee997;hb=62192fb6cd9cc211b5b9fe844c9b4c2f98f923cc;hpb=0072d69c3387cad4e393968647e0f2894aed6877 diff --git a/src/qtui/columnhandleitem.h b/src/qtui/columnhandleitem.h index f9d1f7ad..9cc131b2 100644 --- a/src/qtui/columnhandleitem.h +++ b/src/qtui/columnhandleitem.h @@ -33,14 +33,19 @@ public: ColumnHandleItem(qreal width, QGraphicsItem *parent = 0); inline qreal width() const { return _width; } - inline QRectF boundingRect() const { return QRectF(0, 0, _width, scene()->height()); } + inline QRectF boundingRect() const { return _boundingRect; } + inline qreal sceneLeft() const { return _sceneLeft; } + inline qreal sceneRight() const { return _sceneRight; } + void setXPos(qreal xpos); void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0); - void sceneRectChanged(const QRectF &); void setXLimits(qreal min, qreal max); +public slots: + void sceneRectChanged(const QRectF &); + protected: void hoverEnterEvent(QGraphicsSceneHoverEvent *event); void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); @@ -48,11 +53,16 @@ protected: void mousePressEvent(QGraphicsSceneMouseEvent *event); void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); +signals: + void positionChanged(qreal x); + private slots: void hoverChanged(qreal value); private: qreal _width; + qreal _sceneLeft, _sceneRight; + QRectF _boundingRect; qreal _hover; bool _moving; qreal _minXPos, _maxXPos;