-// Copyright (C) 2014-2017 CEA/DEN, EDF R&D
+// Copyright (C) 2014-2023 CEA, EDF
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
//
// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// See http://www.salome-platform.org/ or
-// email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
#include "ModuleBase_WidgetChoice.h"
#include <QWidget>
#include <QLayout>
#include <QLabel>
-#include <QComboBox>
#include <QButtonGroup>
#include <QGroupBox>
#include <QRadioButton>
const Config_WidgetAPI* theData)
: ModuleBase_ModelWidget(theParent, theData), myIsFirst(true)
{
- myHasValue = defaultValues.contains(myFeatureId);
+ myHasValue = defaultValues.contains(myFeatureId + attributeID());
if (myHasValue)
- myDefValue = defaultValues[myFeatureId];
+ myDefValue = defaultValues[myFeatureId + attributeID()];
else
myDefValue = 0;
myChoiceCtrl->setChoiceList(aChoiceList);
}
}
- if (aIntAttr->isInitialized())
+ if (aIntAttr->isInitialized()) {
myChoiceCtrl->setValue(aIntAttr->value());
+
+ myChoiceCtrl->blockSignals(isBlocked);
+ emit itemSelected(this, aIntAttr->value());
+ myDefValue = aIntAttr->value();
+ }
else {
bool aHasDefaultValue;
int aDefaultVal = QString::fromStdString(getDefaultValue()).toInt(&aHasDefaultValue);
- myChoiceCtrl->setValue(aHasDefaultValue ? aDefaultVal : 0);
+ int aVal = aHasDefaultValue ? aDefaultVal : 0;
+ myChoiceCtrl->setValue(aVal);
+
+ myChoiceCtrl->blockSignals(isBlocked);
+ emit itemSelected(this, aVal);
+ myDefValue = aVal;
}
- myChoiceCtrl->blockSignals(isBlocked);
- emit itemSelected(this, aIntAttr->value());
- myDefValue = aIntAttr->value();
myIsFirst = false;
}
return true;
void ModuleBase_WidgetChoice::onFeatureAccepted()
{
- defaultValues[myFeatureId] = myDefValue;
+ defaultValues[myFeatureId + attributeID()] = myDefValue;
}