slider: start listening to mouse input only after positioning

This commit is contained in:
itsmattkc
2021-04-08 09:49:21 +10:00
parent 490e067911
commit 02b21a22aa
3 changed files with 11 additions and 9 deletions
+2
View File
@@ -396,6 +396,8 @@ void SliderBase::RepositionLadder()
drag_ladder_->move(ladder_x, ladder_y);
}
drag_ladder_->StartListeningToMouseInput();
}
}
+7 -7
View File
@@ -113,6 +113,11 @@ void SliderLadder::SetValue(const QString &s)
}
}
void SliderLadder::StartListeningToMouseInput()
{
drag_timer_.start();
}
void SliderLadder::mouseReleaseEvent(QMouseEvent *event)
{
Q_UNUSED(event)
@@ -120,13 +125,6 @@ void SliderLadder::mouseReleaseEvent(QMouseEvent *event)
this->close();
}
void SliderLadder::showEvent(QShowEvent *event)
{
QWidget::showEvent(event);
drag_timer_.start();
}
void SliderLadder::closeEvent(QCloseEvent *event)
{
Q_UNUSED(event)
@@ -134,6 +132,8 @@ void SliderLadder::closeEvent(QCloseEvent *event)
drag_timer_.stop();
emit Released();
QFrame::closeEvent(event);
}
void SliderLadder::TimerUpdate()
+2 -2
View File
@@ -70,11 +70,11 @@ public:
void SetValue(const QString& s);
void StartListeningToMouseInput();
protected:
virtual void mouseReleaseEvent(QMouseEvent *event) override;
virtual void showEvent(QShowEvent *event) override;
virtual void closeEvent(QCloseEvent* event) override;
signals: