Qt: Fix toggle button not updating

This commit is contained in:
Stenzek
2025-09-19 01:18:31 +10:00
parent a90184a658
commit fb318ca4b0
2 changed files with 9 additions and 0 deletions

View File

@@ -22,6 +22,11 @@ ToggleButton::ToggleButton(QWidget* parent) : QAbstractButton(parent), m_offset_
ToggleButton::~ToggleButton() = default;
Qt::CheckState ToggleButton::checkState() const
{
return isChecked() ? Qt::Checked : Qt::Unchecked;
}
QSize ToggleButton::sizeHint() const
{
return QSize(50, 25);
@@ -117,6 +122,7 @@ void ToggleButton::leaveEvent(QEvent* event)
void ToggleButton::checkStateSet()
{
QAbstractButton::checkStateSet();
emit checkStateChanged(checkState());
animateToggle(isChecked());
}
@@ -131,6 +137,7 @@ void ToggleButton::animateToggle(bool checked)
void ToggleButton::nextCheckState()
{
QAbstractButton::nextCheckState();
emit checkStateChanged(checkState());
animateToggle(isChecked());
update();
}

View File

@@ -15,6 +15,8 @@ public:
explicit ToggleButton(QWidget* parent = nullptr);
~ToggleButton() override;
Qt::CheckState checkState() const;
QSize sizeHint() const override;
Q_SIGNALS: