: QFrame(parent),
offset(0),
dragStartX(0),
+ textWidth(0),
dragMode(false)
{
+ setToolTip(tr("Drag to scroll the topic!"));
+ setCursor(Qt::OpenHandCursor);
}
void TopicLabel::paintEvent(QPaintEvent *event) {
painter.drawText(drawRect, Qt::AlignLeft|Qt::AlignVCenter, textPart, &brect);
drawRect.setLeft(brect.right());
}
+ textWidth = brect.right();
#endif
}
// setFixedHeight(height);
#endif
// show topic in tooltip
- setToolTip(_text);
}
return;
event->accept();
- offset = event->pos().x() - dragStartX;
+ int newOffset = event->pos().x() - dragStartX;
+ if(newOffset > 0)
+ offset = 0;
+ else if(width() < textWidth || offset < newOffset)
+ offset = newOffset;
+// qDebug() << offset << (width() - textWidth) << width() << textWidth;
+// if(offset < width() - textWidth)
+// offset = width() - textWidth;
update();
}
event->accept();
dragMode = true;
dragStartX = event->pos().x() - offset;
+ setCursor(Qt::ClosedHandCursor);
}
void TopicLabel::mouseReleaseEvent(QMouseEvent *event) {
offset = 0;
update();
}
+ setCursor(Qt::OpenHandCursor);
}
void TopicLabel::mouseDoubleClickEvent(QMouseEvent *event) {