You're right Chris. I just "winged it" on this one as evidenced by the values/_values typo.
Revised:
{
Q_OBJECT
public:
{
_values<<1.0<<5.0<<20.0<<35.0<<37.0<<39.0<<44.0<<50.0;
setRange(_values.first(),_values.last());
}
void stepBy(int steps)
{
_idx += steps;
if(_idx<0) _idx=0;
else if(_idx>=_values.count()) _idx=_values.count()-1;
setValue(_values.at(_idx));
}
private:
QList<double> _values;
int _idx;
};
class MySpinBox : public QDoubleSpinBox
{
Q_OBJECT
public:
explicit MySpinBox(QWidget *parent = 0) : QDoubleSpinBox(parent), _idx(0)
{
_values<<1.0<<5.0<<20.0<<35.0<<37.0<<39.0<<44.0<<50.0;
setRange(_values.first(),_values.last());
}
void stepBy(int steps)
{
_idx += steps;
if(_idx<0) _idx=0;
else if(_idx>=_values.count()) _idx=_values.count()-1;
setValue(_values.at(_idx));
}
private:
QList<double> _values;
int _idx;
};
To copy to clipboard, switch view to plain text mode
Bookmarks