shared/idian: Make checked status of collapsible rows public
This commit is contained in:
committed by
Ryan Foster
parent
22ce393680
commit
a9a506e984
@@ -179,11 +179,17 @@ public:
|
|||||||
void setCheckable(bool check);
|
void setCheckable(bool check);
|
||||||
bool isCheckable() { return checkable; }
|
bool isCheckable() { return checkable; }
|
||||||
|
|
||||||
|
void setChecked(bool checked);
|
||||||
|
bool isChecked() { return toggleSwitch->isChecked(); };
|
||||||
|
|
||||||
virtual void setTitle(const QString &title) override;
|
virtual void setTitle(const QString &title) override;
|
||||||
virtual void setDescription(const QString &description) override;
|
virtual void setDescription(const QString &description) override;
|
||||||
|
|
||||||
void addRow(GenericRow *actionRow);
|
void addRow(GenericRow *actionRow);
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void toggled(bool checked);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void toggleVisibility();
|
void toggleVisibility();
|
||||||
|
|
||||||
|
|||||||
@@ -300,7 +300,6 @@ CollapsibleRow::CollapsibleRow(QWidget *parent) : GenericRow(parent)
|
|||||||
actionRow->setFocusProxy(expandButton);
|
actionRow->setFocusProxy(expandButton);
|
||||||
|
|
||||||
connect(expandButton, &QAbstractButton::clicked, this, &CollapsibleRow::toggleVisibility);
|
connect(expandButton, &QAbstractButton::clicked, this, &CollapsibleRow::toggleVisibility);
|
||||||
|
|
||||||
connect(actionRow, &Row::clicked, expandButton, &QAbstractButton::click);
|
connect(actionRow, &Row::clicked, expandButton, &QAbstractButton::click);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -316,6 +315,7 @@ void CollapsibleRow::setCheckable(bool check)
|
|||||||
|
|
||||||
actionRow->setSuffix(toggleSwitch, false);
|
actionRow->setSuffix(toggleSwitch, false);
|
||||||
connect(toggleSwitch, &ToggleSwitch::toggled, propertyList, &PropertiesList::setEnabled);
|
connect(toggleSwitch, &ToggleSwitch::toggled, propertyList, &PropertiesList::setEnabled);
|
||||||
|
connect(toggleSwitch, &ToggleSwitch::toggled, this, &CollapsibleRow::toggled);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!checkable && toggleSwitch) {
|
if (!checkable && toggleSwitch) {
|
||||||
@@ -326,6 +326,15 @@ void CollapsibleRow::setCheckable(bool check)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CollapsibleRow::setChecked(bool checked)
|
||||||
|
{
|
||||||
|
if (!isCheckable()) {
|
||||||
|
throw std::logic_error("Called setChecked on a non-checkable row.");
|
||||||
|
}
|
||||||
|
|
||||||
|
toggleSwitch->setChecked(checked);
|
||||||
|
}
|
||||||
|
|
||||||
void CollapsibleRow::setTitle(const QString &name)
|
void CollapsibleRow::setTitle(const QString &name)
|
||||||
{
|
{
|
||||||
actionRow->setTitle(name);
|
actionRow->setTitle(name);
|
||||||
|
|||||||
Reference in New Issue
Block a user