diff options
author | hjk <hjk@qt.io> | 2023-05-12 08:38:01 +0200 |
---|---|---|
committer | hjk <hjk@qt.io> | 2023-05-12 16:17:49 +0000 |
commit | ab8f3d78ae6bfeaa0253cca9de35b206fa8e02de (patch) | |
tree | ef94358b376658f305bd0c02d4a77e512b8793ec | |
parent | c85b72000f2861247ba832b5a22cb3746bd709ca (diff) | |
download | qt-creator-ab8f3d78ae6bfeaa0253cca9de35b206fa8e02de.tar.gz |
Utils: Use QAbstractButton instead of QCheckBox in BoolAspect
Opens the path to use e.g. QRadioButton.
Change-Id: Idb1591c0a1486181b8aeb51edb93bc4bfecef834
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
-rw-r--r-- | src/libs/utils/aspects.cpp | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/src/libs/utils/aspects.cpp b/src/libs/utils/aspects.cpp index 8aa1f77bee..ae3841c647 100644 --- a/src/libs/utils/aspects.cpp +++ b/src/libs/utils/aspects.cpp @@ -585,7 +585,7 @@ class BoolAspectPrivate { public: BoolAspect::LabelPlacement m_labelPlacement = BoolAspect::LabelPlacement::AtCheckBox; - QPointer<QCheckBox> m_checkBox; // Owned by configuration widget + QPointer<QAbstractButton> m_button; // Owned by configuration widget QPointer<QGroupBox> m_groupBox; // For BoolAspects handling GroupBox check boxes }; @@ -1424,31 +1424,31 @@ BoolAspect::~BoolAspect() = default; */ void BoolAspect::addToLayout(Layouting::LayoutItem &parent) { - QTC_CHECK(!d->m_checkBox); - d->m_checkBox = createSubWidget<QCheckBox>(); + QTC_CHECK(!d->m_button); + d->m_button = createSubWidget<QCheckBox>(); switch (d->m_labelPlacement) { case LabelPlacement::AtCheckBoxWithoutDummyLabel: - d->m_checkBox->setText(labelText()); - parent.addItem(d->m_checkBox.data()); + d->m_button->setText(labelText()); + parent.addItem(d->m_button.data()); break; case LabelPlacement::AtCheckBox: { - d->m_checkBox->setText(labelText()); + d->m_button->setText(labelText()); // FIXME: //if (parent.isForm()) // parent.addItem(createSubWidget<QLabel>()); - parent.addItem(d->m_checkBox.data()); + parent.addItem(d->m_button.data()); break; } case LabelPlacement::InExtraLabel: - addLabeledItem(parent, d->m_checkBox); + addLabeledItem(parent, d->m_button); break; } - d->m_checkBox->setChecked(value()); + d->m_button->setChecked(value()); if (isAutoApply()) { - connect(d->m_checkBox.data(), &QAbstractButton::clicked, + connect(d->m_button.data(), &QAbstractButton::clicked, this, [this](bool val) { setValue(val); }); } - connect(d->m_checkBox.data(), &QAbstractButton::clicked, + connect(d->m_button.data(), &QAbstractButton::clicked, this, &BoolAspect::volatileValueChanged); } @@ -1486,8 +1486,8 @@ QAction *BoolAspect::action() QVariant BoolAspect::volatileValue() const { QTC_CHECK(!isAutoApply()); - if (d->m_checkBox) - return d->m_checkBox->isChecked(); + if (d->m_button) + return d->m_button->isChecked(); if (d->m_groupBox) return d->m_groupBox->isChecked(); QTC_CHECK(false); @@ -1497,8 +1497,8 @@ QVariant BoolAspect::volatileValue() const void BoolAspect::setVolatileValue(const QVariant &val) { QTC_CHECK(!isAutoApply()); - if (d->m_checkBox) - d->m_checkBox->setChecked(val.toBool()); + if (d->m_button) + d->m_button->setChecked(val.toBool()); else if (d->m_groupBox) d->m_groupBox->setChecked(val.toBool()); } @@ -1521,8 +1521,8 @@ bool BoolAspect::value() const void BoolAspect::setValue(bool value) { if (BaseAspect::setValueQuietly(value)) { - if (d->m_checkBox) - d->m_checkBox->setChecked(value); + if (d->m_button) + d->m_button->setChecked(value); //qDebug() << "SetValue: Changing" << labelText() << " to " << value; emit changed(); //QTC_CHECK(!labelText().isEmpty()); |