X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_WidgetIntValue.cpp;h=b92d5863f3a3d71ac9ac852bf6afcbe7a8b0bce9;hb=aebde79eb2410f5e7699ee44254173b442727df7;hp=aab5d1dd9ee0746f6771bba57fbbeba0ef067923;hpb=3d063c74ca0ff72184f77d74df198c3bf0730aff;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_WidgetIntValue.cpp b/src/ModuleBase/ModuleBase_WidgetIntValue.cpp index aab5d1dd9..b92d5863f 100644 --- a/src/ModuleBase/ModuleBase_WidgetIntValue.cpp +++ b/src/ModuleBase/ModuleBase_WidgetIntValue.cpp @@ -1,12 +1,13 @@ // Copyright (C) 2014-20xx CEA/DEN, EDF R&D -// File: ModuleBase_Widgets.h +// File: ModuleBase_WidgetIntValue.cpp // Created: 04 June 2014 // Author: Vitaly Smetannikov #include #include #include +#include #include #include @@ -22,7 +23,6 @@ #include #include #include -#include #include @@ -48,7 +48,7 @@ ModuleBase_WidgetIntValue::ModuleBase_WidgetIntValue(QWidget* theParent, if (!aLabelIcon.isEmpty()) myLabel->setPixmap(QPixmap(aLabelIcon)); - mySpinBox = new QSpinBox(this); + mySpinBox = new ModuleBase_IntSpinBox(this); QString anObjName = QString::fromStdString(attributeID()); mySpinBox->setObjectName(anObjName); @@ -82,21 +82,21 @@ ModuleBase_WidgetIntValue::ModuleBase_WidgetIntValue(QWidget* theParent, QString aTTip = QString::fromStdString(theData->widgetTooltip()); mySpinBox->setToolTip(aTTip); + myLabel->setToolTip(aTTip); aControlLay->addRow(myLabel, mySpinBox); - connect(mySpinBox, SIGNAL(valueChanged(int)), this, SIGNAL(valuesChanged())); + connect(mySpinBox, SIGNAL(valueChanged(int)), this, SIGNAL(valuesModified())); } ModuleBase_WidgetIntValue::~ModuleBase_WidgetIntValue() { } -void ModuleBase_WidgetIntValue::reset() +bool ModuleBase_WidgetIntValue::resetCustom() { - if (isComputedDefault()) { - return; - //if (myFeature->compute(myAttributeID)) - // restoreValue(); + bool aDone = false; + if (!isUseReset() || isComputedDefault()) { + aDone = false; } else { bool isOk; int aDefValue = QString::fromStdString(getDefaultValue()).toInt(&isOk); @@ -107,8 +107,10 @@ void ModuleBase_WidgetIntValue::reset() mySpinBox->setValue(isOk ? aDefValue : 0); mySpinBox->blockSignals(isBlocked); storeValueCustom(); + aDone = true; } } + return aDone; } bool ModuleBase_WidgetIntValue::storeValueCustom() const @@ -121,7 +123,7 @@ bool ModuleBase_WidgetIntValue::storeValueCustom() const return true; } -bool ModuleBase_WidgetIntValue::restoreValue() +bool ModuleBase_WidgetIntValue::restoreValueCustom() { DataPtr aData = myFeature->data(); AttributeIntegerPtr aRef = aData->integer(attributeID()); @@ -137,3 +139,14 @@ QList ModuleBase_WidgetIntValue::getControls() const aList.append(mySpinBox); return aList; } + +bool ModuleBase_WidgetIntValue::processEnter() +{ + bool isModified = mySpinBox->isModified(); + if (isModified) { + emit valuesChanged(); + mySpinBox->clearModified(); + mySpinBox->selectAll(); + } + return isModified; +}