QWidget *CustomWizardFieldPage::registerCheckBox(const QString &fieldName, const QString &fieldDescription, const CustomWizardField &field) { typedef CustomWizardField::ControlAttributeMap::const_iterator AttributeMapConstIt; TextFieldCheckBox *checkBox = new TextFieldCheckBox(fieldDescription); const bool defaultValue = field.controlAttributes.value(QLatin1String("defaultvalue")) == QLatin1String("true"); checkBox->setChecked(defaultValue); const AttributeMapConstIt trueTextIt = field.controlAttributes.constFind(QLatin1String("truevalue")); if (trueTextIt != field.controlAttributes.constEnd()) // Also set empty texts checkBox->setTrueText(trueTextIt.value()); const AttributeMapConstIt falseTextIt = field.controlAttributes.constFind(QLatin1String("falsevalue")); if (falseTextIt != field.controlAttributes.constEnd()) // Also set empty texts checkBox->setFalseText(falseTextIt.value()); registerField(fieldName, checkBox, "text", SIGNAL(textChanged(QString))); return checkBox; }
QWidget *CustomWizardFieldPage::registerCheckBox(const QString &fieldName, const QString &fieldDescription, const CustomWizardField &field) { typedef CustomWizardField::ControlAttributeMap::const_iterator AttributeMapConstIt; auto checkBox = new TextFieldCheckBox(fieldDescription); const bool defaultValue = field.controlAttributes.value(QLatin1String("defaultvalue")) == QLatin1String("true"); checkBox->setChecked(defaultValue); const AttributeMapConstIt trueTextIt = field.controlAttributes.constFind(QLatin1String("truevalue")); if (trueTextIt != field.controlAttributes.constEnd()) // Also set empty texts checkBox->setTrueText(trueTextIt.value()); const AttributeMapConstIt falseTextIt = field.controlAttributes.constFind(QLatin1String("falsevalue")); if (falseTextIt != field.controlAttributes.constEnd()) // Also set empty texts checkBox->setFalseText(falseTextIt.value()); registerField(fieldName, checkBox, "text", SIGNAL(textChanged(QString))); // Connect to completeChanged() for derived classes that reimplement isComplete() connect(checkBox, &TextFieldCheckBox::textChanged, this, &QWizardPage::completeChanged); return checkBox; }