UI: Ignore wheelEvent for properties

Ignore wheelEvent using subclass
slider,spinbox,combobox with eventhandlers:
wheelEvent - ignore if widget is not focused,
leaveEvent - clear focus when mouse leaves event.

Use these new subclass widgets in properties
to ignore wheelEvent when scrolling.
This commit is contained in:
akapar
2019-04-06 20:56:52 -04:00
parent a345b50966
commit 9249403c96
12 changed files with 149 additions and 10 deletions

19
UI/slider-ignorewheel.cpp Normal file
View File

@@ -0,0 +1,19 @@
#include "slider-ignorewheel.hpp"
SliderIgnoreScroll::SliderIgnoreScroll(QWidget *parent) : QSlider(parent)
{
setFocusPolicy(Qt::StrongFocus);
}
void SliderIgnoreScroll::wheelEvent(QWheelEvent * event)
{
if (!hasFocus())
event->ignore();
else
QSlider::wheelEvent(event);
}
void SliderIgnoreScroll::leaveEvent(QEvent * event)
{
clearFocus();
}