Newer
Older
ZXSSCJ / CounterAcq / CounterWindow.h
#ifndef COUNTERWINDOW_H
#define COUNTERWINDOW_H

#include <QWidget>
#include <QMessageBox>
#include <QSystemTrayIcon>
#include <QStandardItemModel>
#include <QVBoxLayout>

#include "common/utils/SettingConfig.h"
#include "common/HttpRequestController.h"
#include "common/HttpServer.h"
#include "CounterDevice.h"

namespace Ui {
class CounterWindow;
}

class CounterWindow : public QWidget
{
    Q_OBJECT

public:
    explicit CounterWindow(QWidget *parent = nullptr);
    ~CounterWindow();

public slots:
    void drawCounterDataOnPage(CounterDataDto * counterData);

private slots:
    void on_minButt_clicked();
    void onTrayIconActived(QSystemTrayIcon::ActivationReason reason);

private:
    int initHttpToken();
    int initDictDeviceTypes();
    QJsonObject initDeviceList();

    Ui::CounterWindow *ui;
    QSystemTrayIcon * trayIcon;

    HttpRequestController * httpReq;

    QList<CounterDevice *> deviceList;

    void generateWidgetForDevice();
};

#endif // COUNTERWINDOW_H