Fix position slider offset problem
This commit is contained in:
parent
8c151d1358
commit
3f1d05fc08
1 changed files with 8 additions and 5 deletions
|
@ -32,6 +32,9 @@ BarButton::getPos (void)
|
|||
void
|
||||
BarButton::mousePressEvent (QMouseEvent *event)
|
||||
{
|
||||
QPoint p (event->pos ());
|
||||
|
||||
m_diffx = p.x();
|
||||
m_moving = true;
|
||||
}
|
||||
|
||||
|
@ -53,7 +56,7 @@ BarButton::mouseMoveEvent (QMouseEvent *event)
|
|||
/** @todo this could be cleaned up */
|
||||
if (m_slider->getVertical ()) {
|
||||
int npos = pos().x() + p.x() - m_diffx;
|
||||
if (npos >= 0 && npos + rect().width() <= m_slider->rect().width()) {
|
||||
if (npos >= 0 && (npos + rect().width()) <= m_slider->rect().width()) {
|
||||
move (npos, 0);
|
||||
} else if (npos < 0) {
|
||||
move (0, 0);
|
||||
|
@ -62,7 +65,7 @@ BarButton::mouseMoveEvent (QMouseEvent *event)
|
|||
}
|
||||
} else {
|
||||
int npos = pos().y() + p.y() - m_diffy;
|
||||
if (npos >= 0 && npos + rect().height() <= m_slider->rect().height()) {
|
||||
if (npos >= 0 && (npos + rect().height()) <= m_slider->rect().height()) {
|
||||
move (npos, 0);
|
||||
} else if (npos < 0) {
|
||||
move (0, 0);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue