60 m_oldPos(QPoint(0,0)),
61 m_movableRegion(QRegion())
64 QPalette Pal(palette());
66 QColor color = m_qSettings.value(
"DataMarker/data_marker_color", QColor(93,177,47)).value<QColor>();
67 color.setAlpha(DATA_MARKER_OPACITY);
68 Pal.setColor(QPalette::Background, color);
70 setAutoFillBackground(
true);
79 m_movableRegion = rect;
85 void DataMarker::mousePressEvent(QMouseEvent *event)
87 if(event->buttons() == Qt::LeftButton)
88 m_oldPos = event->globalPos();
94 void DataMarker::mouseMoveEvent(QMouseEvent *event)
96 if(event->buttons() == Qt::LeftButton) {
97 const QPoint delta =
event->globalPos() - m_oldPos;
99 QRect newPosition(x()+delta.x(), y(),
100 this->geometry().width(), this->geometry().height());
103 if(m_movableRegion.contains(newPosition.bottomLeft()) && m_movableRegion.contains(newPosition.bottomRight())) {
104 move(x()+delta.x(), y());
105 m_oldPos =
event->globalPos();
108 if(event->windowPos().x() < m_movableRegion.boundingRect().left())
109 move(m_movableRegion.boundingRect().left(), y());
111 if(event->windowPos().x() > m_movableRegion.boundingRect().right())
112 move(m_movableRegion.boundingRect().right()-2, y());
123 void DataMarker::enterEvent(QEvent *event)
126 setCursor(QCursor(Qt::SizeHorCursor));
132 void DataMarker::moveEvent(QMoveEvent *event)
void setMovementBoundary(QRegion rect)
DataMarker(QWidget *parent=0)
Contains the declaration of the DataMarker class.