eismultiplexer-qt/channelwidget.h
2025-06-30 16:33:38 +02:00

43 lines
855 B
C++

#ifndef CHANNELWIDGET_H
#define CHANNELWIDGET_H
#include <QWidget>
#include <QCheckBox>
#include <QLabel>
#include <QHBoxLayout>
#include <eismultiplexer.h>
class ChannelWidget : public QWidget
{
Q_OBJECT
public:
explicit ChannelWidget(uint16_t deviceSerial, uint16_t channelNumber, struct eismultiplexer* multiplexer,
QWidget *parent = nullptr);
~ChannelWidget() override;
uint16_t getDeviceSerial() const;
uint16_t getChannelNumber() const;
bool isChecked() const;
signals:
void channelAboutToBeTurnedOn(uint16_t deviceSerial, uint16_t channelNumber);
private slots:
void onChannelToggled(bool checked);
private:
uint16_t deviceSerial;
uint16_t channelNumber;
struct eismultiplexer* multiplexer;
QCheckBox* checkbox;
QLabel* label;
};
#endif // CHANNELWIDGET_H