Need to enable/disable -/+ buttons when user manually enters value.

This commit is contained in:
craig.p.drummond@gmail.com
2012-10-12 12:17:59 +00:00
committed by craig.p.drummond@gmail.com
parent 6e10970251
commit dff41b2c5f
2 changed files with 9 additions and 4 deletions

View File

@@ -63,6 +63,7 @@ SpinBox::SpinBox(QWidget *p)
layout->addWidget(decButton);
layout->addWidget(incButton);
layout->addItem(new QSpacerItem(0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum));
connect(spin, SIGNAL(valueChanged(int)), SLOT(checkValue()));
connect(spin, SIGNAL(valueChanged(int)), SIGNAL(valueChanged(int)));
connect(decButton, SIGNAL(pressed()), SLOT(decPressed()));
connect(incButton, SIGNAL(pressed()), SLOT(incPressed()));
@@ -83,21 +84,24 @@ void SpinBox::setValue(int v)
{
spin->setValue(v);
if (GtkStyle::mimicWidgets()) {
decButton->setEnabled(spin->value()>spin->minimum());
incButton->setEnabled(spin->value()<spin->maximum());
checkValue();
}
}
void SpinBox::incPressed()
{
spin->setValue(spin->value()+spin->singleStep());
decButton->setEnabled(spin->value()>spin->minimum());
incButton->setEnabled(spin->value()<spin->maximum());
checkValue();
}
void SpinBox::decPressed()
{
spin->setValue(spin->value()-spin->singleStep());
checkValue();
}
void SpinBox::checkValue()
{
decButton->setEnabled(spin->value()>spin->minimum());
incButton->setEnabled(spin->value()<spin->maximum());
}