LAPTOP-SNT8I5JK\Boounion
2025-02-21 f2ec2ff2640e8f02507e6fa44cd1ba1487a303ea
SourceCode/Bond/Servo/ServoDlg.h
@@ -5,7 +5,13 @@
#pragma once
#include "ServoGraph.h"
#include "BlButton.h"
#include "LogDlg.h"
#include "TerminalDisplayDlg.h"
enum DeviceStatus {
   ONLINE,       // 在线
   OFFLINE,      // 离线
};
// CServoDlg 对话框
class CServoDlg : public CDialogEx
@@ -15,9 +21,23 @@
   CServoDlg(CWnd* pParent = NULL);   // 标准构造函数
public:
   void ShowTerminalText(const char* pszText, unsigned int duration = -1);
private:
   void InitRxWindows();
   void Resize();
   void UpdateLogBtn();
   void UpdateRobotPosition(float percentage);
   void RotateRobot(float angleInDegrees);
   void UpdateDeviceStatus(int id, DeviceStatus status);
private:
   IObserver* m_pObserver;
   BOOL m_bShowLogWnd;
   CLogDlg* m_pLogDlg;
   CTerminalDisplayDlg* m_pTerminalDisplayDlg;
// 对话框数据
@@ -30,7 +50,7 @@
private:
   BOOL m_bShowLogWnd;
   BOOL m_bIsRobotMoving;
// 实现
protected:
@@ -54,4 +74,20 @@
   afx_msg void OnDestroy();
   afx_msg void OnBnClickedButtonLog();
   afx_msg void OnSize(UINT nType, int cx, int cy);
   afx_msg void OnClose();
   afx_msg LRESULT OnLogDlgHide(WPARAM wParam, LPARAM lParam);
   afx_msg void OnMoving(UINT fwSide, LPRECT pRect);
   afx_msg void OnMove(int x, int y);
   afx_msg void OnInitMenuPopup(CMenu* pPopupMenu, UINT nIndex, BOOL bSysMenu);
   afx_msg void OnMenuFileSettings();
   afx_msg void OnUpdateMenuFileSettings(CCmdUI* pCmdUI);
   afx_msg void OnMenuFileSecsTest();
   afx_msg void OnUpdateMenuFileSecsTest(CCmdUI* pCmdUI);
   afx_msg void OnMenuWndLog();
   afx_msg void OnUpdateMenuWndLog(CCmdUI* pCmdUI);
   afx_msg void OnMenuFileExit();
   afx_msg void OnUpdateMenuFileExit(CCmdUI* pCmdUI);
   afx_msg void OnMenuHelpAbout();
   afx_msg void OnTimer(UINT_PTR nIDEvent);
   afx_msg BOOL OnEraseBkgnd(CDC* pDC);
};