Files
esa-remote-lite/PanelsPanel.h

28 lines
613 B
C++

#pragma once
#include <QColor>
#include <QMap>
#include <QWidget>
class QLabel;
class PanelsPanel : public QWidget
{
Q_OBJECT
public:
explicit PanelsPanel(QWidget *parent = nullptr);
void setRnpCount(int count);
void setPanelColor(int index, const QColor &color);
void impactPanel(int index, int power);
void reset();
protected:
void paintEvent(QPaintEvent *event) override;
private:
int m_count = 0;
QMap<int,QColor> m_colors;
QMap<int,int> m_hits; // panel index → impact power (active for 3 s)
QLabel *m_statusLabel = nullptr;
};