code_production/cfg-tools/apps/scanner-check/CDlgMgr.h

77 lines
2.8 KiB
C++

#pragma once
#include "page.h"
// CDlgMgr 对话框
class CDlgMgr : public CDialogEx, public page_config
{
DECLARE_DYNAMIC(CDlgMgr)
public:
CDlgMgr(CWnd* pParent = nullptr); // 标准构造函数
virtual ~CDlgMgr();
// 对话框数据
#ifdef AFX_DESIGN_TIME
enum { IDD = IDD_MANAGER };
#endif
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
virtual BOOL OnInitDialog();
void reload(std::wstring& cont);
bool load_sane_config(std::wstring& jsn_txt);
DECLARE_MESSAGE_MAP()
known_file_util::IJsonW* sane_cfg_;
public:
CListCtrl list_;
afx_msg void OnBnClickedCheckReport();
afx_msg LRESULT OnDisableIPCtrl(WPARAM, LPARAM);
afx_msg void OnBnClickedButtonMaintain();
afx_msg void OnBnClickedButtonAdd();
afx_msg void OnCbnSelchangeComboItem();
afx_msg void OnNMDblclkList1(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnNMDblclkListParam(NMHDR* pNMHDR, LRESULT* pResult);
CComboBox combo_;
afx_msg void OnBnClickedButtonAddAll();
void init_test_items(known_file_util::IJsonW* json);
void add_param(CComboBox* param_ctrl, CComboBox* val_ctrl, CListCtrl* lst, UINT edit_id);
void add_param_from_config(CComboBox* param_ctrl, CComboBox* val_ctrl, UINT edit_id, known_file_util::IJsonW* sane, known_file_util::IJsonW* cfg, const wchar_t* key, void(CDlgMgr::* cb_change)(void), void(CDlgMgr::* add_func)(void));
void on_combo_param_changed(CComboBox* param_ctrl, CComboBox* val_ctrl, CListCtrl* lst, UINT edit_id);
static void notify_combo_param_changed(void* param);
void on_list_param_sel_changed(CComboBox* param_ctrl, CListCtrl* lst, int item, void(CDlgMgr::* cb_sel_change)(void));
bool remove_prompt(CListCtrl* lst, int item, int sub, const wchar_t* title, DWORD_PTR* data = NULL);
public:
virtual std::wstring export_config(bool* ok, bool used_in_code = false, int code_ver = 1) override;
CIPAddressCtrl ip_;
afx_msg void OnDropFiles(HDROP hDropInfo);
// afx_msg UINT OnGetDlgCode();
afx_msg void OnListPasteClipboard();
afx_msg void OnNMRClickList1(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnListClear();
afx_msg void OnBnClickedButtonAddParam();
CListCtrl lst_write_down_;
CListCtrl lst_param_;
afx_msg void OnBnClickedButtonClearAll();
CComboBox combo_param_;
CComboBox combo_param_val_;
afx_msg void OnCbnSelchangeComboParam();
afx_msg void OnLvnItemchangedListParam(NMHDR* pNMHDR, LRESULT* pResult);
bool lst_param_trigger_sel_chg_;
afx_msg void OnBnClickedButtonAddParam2();
afx_msg void OnBnClickedButtonAddParam3();
CComboBox combo_param2_;
CComboBox combo_param_val2_;
afx_msg void OnCbnSelchangeComboParam2();
afx_msg void OnNMClickListParamTest(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnNMDblclkListParamTest(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnNMClickList1(NMHDR* pNMHDR, LRESULT* pResult);
CComboBox combo_device_;
afx_msg void OnBnClickedButtonRefresh();
};