LAPTOP-SNT8I5JK\Boounion
2025-10-10 8cd1ad310c5e559435ff38e518b8fad89852b55f
SourceCode/Bond/Servo/CControlJobManagerDlg.h
@@ -1,6 +1,11 @@
#pragma once
#include "CCjPage1.h"
#include "CCjPage2.h"
#include "CCjPage3.h"
#include "ApredTreeCtrl2.h"
#define WM_AFTER_TVCHECK (WM_USER + 1000)
// CControlJobManagerDlg 对话框
@@ -11,12 +16,34 @@
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 UpControlJobId(SERVO::CControlJob* pControlJob);
   void InitData();
   void LoadState();
   void SaveState();
   int ShowPage(int index);
private:
   CCjPage1* m_pPage1;
   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
@@ -31,4 +58,12 @@
   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);
};