#pragma once
|
#include "CCjPage1.h"
|
#include "CCjPage2.h"
|
#include "CCjPage3.h"
|
#include "ApredTreeCtrl2.h"
|
|
|
#define WM_AFTER_TVCHECK (WM_USER + 1000)
|
|
// CControlJobManagerDlg 对话框
|
|
class CControlJobManagerDlg : public CDialogEx
|
{
|
DECLARE_DYNAMIC(CControlJobManagerDlg)
|
|
public:
|
CControlJobManagerDlg(CWnd* pParent = nullptr); // 标准构造函数
|
virtual ~CControlJobManagerDlg();
|
static void FreeState();
|
|
private:
|
void Resize();
|
void UpdateCtrlState();
|
void UpdateControlJob();
|
bool AddPorcessJob(SERVO::CProcessJob* pj);
|
bool RemovePorcessJob(SERVO::CProcessJob* pj);
|
void UpProcessJobId(PJWarp* pjWarp);
|
void InitData();
|
void LoadState();
|
void SaveState();
|
int ShowPage(int index);
|
|
private:
|
std::vector<CCjPageBase*> m_pages;
|
SERVO::CControlJob* m_pControlJob;
|
std::vector<PJWarp> m_pjWarps;
|
CApredTreeCtrl2 m_tree;
|
|
public:
|
struct State {
|
SERVO::CControlJob* pControlJob = nullptr;
|
std::vector<PJWarp> pjWarps;
|
};
|
static bool m_bHasState;
|
static State m_state;
|
|
// 对话框数据
|
#ifdef AFX_DESIGN_TIME
|
enum { IDD = IDD_DIALOG_CONTROL_JOB_MANAGER };
|
#endif
|
|
protected:
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
|
|
DECLARE_MESSAGE_MAP()
|
public:
|
virtual BOOL OnInitDialog();
|
afx_msg void OnSize(UINT nType, int cx, int cy);
|
afx_msg void OnGetMinMaxInfo(MINMAXINFO* lpMMI);
|
afx_msg void OnTvnItemChangedTree(NMHDR* pNMHDR, LRESULT* pResult);
|
afx_msg void OnDestroy();
|
afx_msg void OnBnClickedButtonApply();
|
afx_msg void OnTvnSelchangingTree1(NMHDR* pNMHDR, LRESULT* pResult);
|
afx_msg void OnBnClickedButtonBathCompletion();
|
afx_msg void OnTreeClick(NMHDR* pNMHDR, LRESULT* pResult);
|
afx_msg void OnTreeKeyDown(NMHDR* pNMHDR, LRESULT* pResult);
|
afx_msg LRESULT OnAfterTvCheck(WPARAM wParam, LPARAM lParam);
|
};
|