#include "SpinBox.h" #include #include "Layout.h" #include SpinBox::SpinBox(Layout* parent,int row, int col,QString name,QString suffix,int value,int min,int max,int step): FormLayout(parent,row,col,name,"SpinBox") { spinbox = new QSpinBox(); spinbox->setRange(min,max); spinbox->setSingleStep(step); spinbox->setValue(value); spinbox->setSuffix(suffix); spinbox_value=value; object_layout->addRow(name,spinbox); connect(spinbox,SIGNAL(valueChanged(int)),this, SLOT(valuechanged(int))); SetValue(QString::number(spinbox_value)); } SpinBox::~SpinBox() { delete spinbox; } void SpinBox::SetUptodate(void) { ui_to_var(); ui_to_xml(); visible_widget->setPalette(black_pal); } void SpinBox::ui_to_var(void) { spinbox_value=spinbox->value(); } void SpinBox::ui_to_xml(void) { SetValue(QString::number(spinbox->value())); } void SpinBox::Reset(void) { spinbox->setValue(spinbox_value); } void SpinBox::LoadEvent(QDomElement dom) { if(spinbox->isEnabled()==true) { spinbox->setValue((dom.attribute("value")).toInt()); } } void SpinBox::valuechanged(int value) { if(value!=spinbox_value) { visible_widget->setPalette(red_pal); } else { visible_widget->setPalette(black_pal); } }