g1g2hardwarechecker/G1G2HardwareCheckerDlg.h

98 lines
2.6 KiB
C++

/*
* @Descripttion:
* @version:
* @Author: pengming
* @Date: 2023-10-23 16:34:58
* @LastEditors: pengming
*/
// G1G2HardwareCheckerDlg.h: 头文件
//
#pragma once
#include "ScannerManager.h"
#include <vector>
#include "defines.h"
#include "taskinfo.h"
// CG1G2HardwareCheckerDlg 对话框
class CG1G2HardwareCheckerDlg : public CDialogEx
{
// 构造
public:
CG1G2HardwareCheckerDlg(CWnd* pParent = nullptr); // 标准构造函数
// 对话框数据
#ifdef AFX_DESIGN_TIME
enum { IDD = IDD_G1G2HARDWARECHECKER_DIALOG };
#endif
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
// 实现
protected:
HICON m_hIcon;
// 生成的消息映射函数
virtual BOOL OnInitDialog();
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
DECLARE_MESSAGE_MAP()
private:
void SetBtnBgClr(CMFCButton* btn,BTNStatus status);
void UpdateUI();
static int OnScannerEvent(DevEvent dev, int evt, int status, int data_type, int data_len, void* data, void* user);
void on_scanner_evt(DevEvent dev, int evt, int status, int data_type, int data_len, void* data);
void update_task_info(TASKID ID);
void draw_picture(CString path);
private:
std::shared_ptr<ScannerManager> m_scn_manager;
CComboBox m_dev_cmbx;
CMFCButton m_btn_refresh_devs;
CMFCButton m_btn_reboot;
CMFCButton m_btn_poweroff;
CMFCButton m_btn_check_recovery;
CMFCButton m_btn_check_power;
CMFCButton m_btn_ckeck_reset;
CMFCButton m_btn_check_powersupply;
CMFCButton m_btn_check_led;
CMFCButton m_btn_check_uart;
CMFCButton m_btn_check_switchs;
CMFCButton m_btn_check_imgs;
CMFCButton m_btn_check_hw_capacity;
CMFCButton m_btn_check_display;
CEdit m_showinfo;
CFont m_tile_font;
CFont m_info_font;
TASKID m_task_id;
std::vector<TaskInfo> m_task_infos;
bool m_bupdate_img;
CString m_img_path;
std::mutex m_callback_mut;
public:
afx_msg void OnBnClickedBtnReboot();
afx_msg void OnBnClickedBtnPoweroff();
//afx_msg void OnBnClickedBtnRefreshDevices();
afx_msg void OnBnClickedBtnchkRecovery();
afx_msg void OnBnClickedBtnchkPower();
afx_msg void OnBnClickedBtnchkReset();
afx_msg void OnBnClickedBtnchkPowersupply();
afx_msg void OnBnClickedBtnchkLed();
afx_msg void OnBnClickedBtnchkUart();
afx_msg void OnBnClickedBtnchkSwitch();
afx_msg void OnBnClickedBtnchkImage();
afx_msg void OnBnClickedBtnchkCapacity();
afx_msg void OnBnClickedBtnCheck();
afx_msg void OnBnClickedBtnPass();
afx_msg void OnBnClickedBtnNg();
afx_msg void OnBnClickedOk();
afx_msg void OnCbxdevselect();
afx_msg void OnStnDblclickPicShow();
afx_msg void OnBnClickedBtnchkFinish();
afx_msg void OnBnClickedBtnchkDisplay();
afx_msg void OnBnClickedBtnOpenfloder();
};