Move leds to custom led class

This commit is contained in:
2026-02-01 19:01:19 +01:00
parent 7a8398c743
commit f238594e5d
8 changed files with 61 additions and 15 deletions
+33
View File
@@ -0,0 +1,33 @@
#include "led.h"
Led::Led(QWidget* parrent)
: QPushButton(parrent)
{
set_read_only(this, true);
}
Led::Led(const QString &text, QWidget *parent)
{
set_read_only(this, true);
}
Led::Led(const QIcon& icon, const QString &text, QWidget *parent)
{
set_read_only(this, true);
}
Led::~Led()
{
}
bool Led::is_read_only(QWidget* widget)
{
return widget->testAttribute(Qt::WA_TransparentForMouseEvents) || (widget->focusPolicy() == Qt::NoFocus);
}
void Led::set_read_only(QWidget* widget, bool read_only)
{
widget->setAttribute(Qt::WA_TransparentForMouseEvents, read_only);
widget->setFocusPolicy(read_only ? Qt::NoFocus : Qt::StrongFocus);
}