mirror of
https://github.com/qTox/qTox.git
synced 2024-03-22 14:00:36 +08:00
closes tux3/qtox #1399
disabling scrolling on comboboxes in all settings forms
This commit is contained in:
parent
ac9b327fe7
commit
b60cfef749
|
@ -116,6 +116,11 @@ ProfileForm::ProfileForm(QWidget *parent) :
|
|||
|
||||
connect(core, &Core::usernameSet, this, [=](const QString& val) { bodyUI->userName->setText(val); });
|
||||
connect(core, &Core::statusMessageSet, this, [=](const QString& val) { bodyUI->statusMessage->setText(val); });
|
||||
|
||||
foreach(QComboBox *cb, findChildren<QComboBox*>() ) {
|
||||
cb->installEventFilter(this);
|
||||
cb->setFocusPolicy(Qt::StrongFocus);
|
||||
}
|
||||
}
|
||||
|
||||
ProfileForm::~ProfileForm()
|
||||
|
@ -369,3 +374,14 @@ void ProfileForm::showEvent(QShowEvent *event)
|
|||
refreshProfiles();
|
||||
QWidget::showEvent(event);
|
||||
}
|
||||
|
||||
bool ProfileForm::eventFilter(QObject *o, QEvent *e)
|
||||
{
|
||||
if ((e->type() == QEvent::Wheel) &&
|
||||
(qobject_cast<QComboBox*>(o) || qobject_cast<QAbstractSpinBox*>(o) ))
|
||||
{
|
||||
e->ignore();
|
||||
return true;
|
||||
}
|
||||
return QWidget::eventFilter(o, e);
|
||||
}
|
||||
|
|
|
@ -76,6 +76,7 @@ private slots:
|
|||
|
||||
protected:
|
||||
virtual void showEvent(QShowEvent *);
|
||||
bool eventFilter(QObject *o, QEvent *e);
|
||||
|
||||
private:
|
||||
void refreshProfiles();
|
||||
|
|
|
@ -42,6 +42,11 @@ AdvancedForm::AdvancedForm() :
|
|||
connect(bodyUI->cbMakeToxPortable, &QCheckBox::stateChanged, this, &AdvancedForm::onMakeToxPortableUpdated);
|
||||
connect(bodyUI->syncTypeComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(onDbSyncTypeUpdated()));
|
||||
connect(bodyUI->resetButton, SIGNAL(clicked()), this, SLOT(resetToDefault()));
|
||||
|
||||
foreach(QComboBox *cb, findChildren<QComboBox*>() ) {
|
||||
cb->installEventFilter(this);
|
||||
cb->setFocusPolicy(Qt::StrongFocus);
|
||||
}
|
||||
}
|
||||
|
||||
AdvancedForm::~AdvancedForm()
|
||||
|
@ -67,3 +72,14 @@ void AdvancedForm::resetToDefault()
|
|||
bodyUI->syncTypeComboBox->setCurrentIndex(index);
|
||||
onDbSyncTypeUpdated();
|
||||
}
|
||||
|
||||
bool AdvancedForm::eventFilter(QObject *o, QEvent *e)
|
||||
{
|
||||
if ((e->type() == QEvent::Wheel) &&
|
||||
(qobject_cast<QComboBox*>(o) || qobject_cast<QAbstractSpinBox*>(o) ))
|
||||
{
|
||||
e->ignore();
|
||||
return true;
|
||||
}
|
||||
return QWidget::eventFilter(o, e);
|
||||
}
|
||||
|
|
|
@ -31,6 +31,9 @@ class AdvancedForm : public GenericForm
|
|||
public:
|
||||
AdvancedForm();
|
||||
virtual ~AdvancedForm();
|
||||
|
||||
protected:
|
||||
bool eventFilter(QObject *o, QEvent *e);
|
||||
|
||||
private slots:
|
||||
void onMakeToxPortableUpdated();
|
||||
|
|
|
@ -52,6 +52,11 @@ AVForm::AVForm() :
|
|||
connect(bodyUI->filterAudio, SIGNAL(toggled(bool)), this, SLOT(onFilterAudioToggled(bool)));
|
||||
connect(bodyUI->rescanButton, &QPushButton::clicked, this, [=](){getAudioInDevices(); getAudioOutDevices();});
|
||||
bodyUI->playbackSlider->setValue(100);
|
||||
|
||||
foreach(QComboBox *cb, findChildren<QComboBox*>() ) {
|
||||
cb->installEventFilter(this);
|
||||
cb->setFocusPolicy(Qt::StrongFocus);
|
||||
}
|
||||
}
|
||||
|
||||
AVForm::~AVForm()
|
||||
|
@ -268,3 +273,14 @@ void AVForm::on_playbackSlider_valueChanged(int value)
|
|||
{
|
||||
Audio::getInstance().outputVolume = value / 100.0;
|
||||
}
|
||||
|
||||
bool AVForm::eventFilter(QObject *o, QEvent *e)
|
||||
{
|
||||
if ((e->type() == QEvent::Wheel) &&
|
||||
(qobject_cast<QComboBox*>(o) || qobject_cast<QAbstractSpinBox*>(o) ))
|
||||
{
|
||||
e->ignore();
|
||||
return true;
|
||||
}
|
||||
return QWidget::eventFilter(o, e);
|
||||
}
|
||||
|
|
|
@ -63,12 +63,12 @@ private slots:
|
|||
virtual void showEvent(QShowEvent*);
|
||||
|
||||
void on_HueSlider_valueChanged(int value);
|
||||
|
||||
void on_BrightnessSlider_valueChanged(int value);
|
||||
|
||||
void on_SaturationSlider_valueChanged(int value);
|
||||
|
||||
void on_ContrastSlider_valueChanged(int value);
|
||||
|
||||
protected:
|
||||
bool eventFilter(QObject *o, QEvent *e);
|
||||
|
||||
private:
|
||||
Ui::AVSettings *bodyUI;
|
||||
|
|
|
@ -156,12 +156,12 @@ GeneralForm::GeneralForm(SettingsWidget *myParent) :
|
|||
// scrolling event won't be transmitted to comboboxes or qspinboxes when scrolling
|
||||
// you can scroll through general settings without accidentially chaning theme/skin/icons etc.
|
||||
// @see GeneralForm::eventFilter(QObject *o, QEvent *e) at the bottom of this file for more
|
||||
Q_FOREACH(QComboBox *cb, findChildren<QComboBox*>() ) {
|
||||
foreach(QComboBox *cb, findChildren<QComboBox*>() ) {
|
||||
cb->installEventFilter(this);
|
||||
cb->setFocusPolicy(Qt::StrongFocus);
|
||||
}
|
||||
|
||||
Q_FOREACH(QSpinBox *sp, findChildren<QSpinBox*>() ) {
|
||||
foreach(QSpinBox *sp, findChildren<QSpinBox*>() ) {
|
||||
sp->installEventFilter(this);
|
||||
sp->setFocusPolicy(Qt::WheelFocus);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user