Added a PixmapSlider class and changed Slider to inherit from it.
PixmapSlider is a subclass of QAbstractSlider. It is independent of Skin.cpp. Slider is now only a wrapper to update the QPixmaps on a skin change. removed a workaround from equalizerwidget, that was necessary for the previous implementation. 2-3 one line fixes I don't remember
This commit is contained in:
parent
88b8ab8683
commit
6e7e2c2184
10 changed files with 311 additions and 280 deletions
|
@ -32,14 +32,16 @@ EqualizerSlider::EqualizerSlider (QWidget *parent, uint pix_min, uint pix_max,
|
|||
pix_off, min, max)
|
||||
{
|
||||
m_id = id;
|
||||
connect ( this, SIGNAL (valueChanged (int)),
|
||||
this, SLOT (on_self_value_changed (int)) );
|
||||
connect ( this, SIGNAL (sliderMoved (int)),
|
||||
this, SLOT (on_self_slider_moved (int)) );
|
||||
setInvertedAppearance (true);
|
||||
setOrientation (Qt::Vertical);
|
||||
}
|
||||
|
||||
void
|
||||
EqualizerSlider::on_self_value_changed (int value)
|
||||
EqualizerSlider::on_self_slider_moved (int value)
|
||||
{
|
||||
emit numberedValueChanged (value, m_id);
|
||||
emit numberedSliderMoved (value, m_id);
|
||||
}
|
||||
|
||||
|
||||
|
@ -82,7 +84,9 @@ EqualizerWidget::EqualizerWidget (QWidget *parent) : QWidget (parent)
|
|||
Skin::EQ_WIN_BAR_BTN_0, Skin::EQ_WIN_BAR_BTN_1,
|
||||
-20, 20);
|
||||
m_preamp->move(21, 38);
|
||||
connect (m_preamp, SIGNAL (valueChanged (int)),
|
||||
m_preamp->setOrientation (Qt::Vertical);
|
||||
m_preamp->setInvertedAppearance (true);
|
||||
connect (m_preamp, SIGNAL (sliderMoved (int)),
|
||||
this, SLOT (updateServerPreamp (int)));
|
||||
|
||||
for (int i=0; i < 10; i++) {
|
||||
|
@ -91,7 +95,7 @@ EqualizerWidget::EqualizerWidget (QWidget *parent) : QWidget (parent)
|
|||
Skin::EQ_WIN_BAR_BTN_0,
|
||||
Skin::EQ_WIN_BAR_BTN_1, -20, 20, i);
|
||||
m_bands[i]->move(78+i*18, 38);
|
||||
connect (m_bands[i], SIGNAL (numberedValueChanged (int, int)),
|
||||
connect (m_bands[i], SIGNAL (numberedSliderMoved (int, int)),
|
||||
this, SLOT (updateServerBands (int, int)));
|
||||
}
|
||||
|
||||
|
@ -175,14 +179,12 @@ EqualizerWidget::serverConfigChanged (QString key, QString value)
|
|||
}
|
||||
if (key == "equalizer.preamp") {
|
||||
// FIXME: value can be of type floas
|
||||
// '-20' should not be necessary. seems to be a bug in slider
|
||||
m_preamp->setValue (value.toInt () -20);
|
||||
m_preamp->setValue (value.toInt ());
|
||||
}
|
||||
if (key.startsWith ("equalizer.legacy")) {
|
||||
int i = key.right (1).toInt ();
|
||||
// FIXME: value can be float
|
||||
// '-20' should not be necessary. seems to be a bug in slider
|
||||
m_bands[i]->setValue (value.toInt () -20 );
|
||||
m_bands[i]->setValue (value.toInt ());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue