#ifndef CONTROLBRIGHTNESSAUTOWIDGET_H
#define CONTROLBRIGHTNESSAUTOWIDGET_H

#include <QWidget>
#include <QButtonGroup>
#include <wDevicesManager/ledcard.h>
#include <communication/hpptclient.h>
#include <LoUIClass/loemptydialog.h>
namespace Ui {
class ControlBrightnessAutoWidget;
}

class ControlBrightnessAutoWidget : public QWidget
{
    Q_OBJECT

public:
    explicit ControlBrightnessAutoWidget(QWidget *parent = nullptr,QList<LedCard *> *list=nullptr);
    ~ControlBrightnessAutoWidget();
protected slots:
    void DeletePostingDlg();
     void OnClickSet();
     void OnClickSetMin();
     void OnClickUpload();
     void OnAutoReadbackMin();
     void OnAutoReadback();
     void OnAutoReadbackTab();
     void OnCurSensorTypeAndValue();
     void refreshLable();

private:
    Ui::ControlBrightnessAutoWidget *ui;
    QButtonGroup *m_buttonGroup=nullptr;
    QString strSensorType="";

//类似的控制操作信号和槽函数和变量定义
signals:
    void sigAuto(bool);
    void sigSend(QJsonObject &,QString);
protected slots:
    void OnProHttpResponse(QString url, QString postMD5, QByteArray data);
    void OnProHttpResponseAll(QString url, QString postMD5, QByteArray data);
    void onSelectedDeviceList(QList<LedCard*> *);
    void onReadbackAllThisPage();
    void OnControlTypeSwitchIndexChanged(int index);
private:
    QList<LedCard *> *m_pLedlist=nullptr;
    LedCard   *m_pLedCard = nullptr;
    LedCard   *m_oldLedlist = nullptr;
    HpptClient *pHpptClient = nullptr;
    HpptClient *pHpptClientAll = nullptr;
    QString m_strUrl="";
    LoEmptyDialog * m_PostingDlg=nullptr;
    QTimer *m_pGetAskTimer=nullptr;
    bool m_bSelected=false;
};

#endif // CONTROLBRIGHTNESSAUTOWIDGET_H
