From 1e8e3473cb124f9e51dfc1ca35e5cb13b1668bdc Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期六, 10 五月 2025 10:46:19 +0800
Subject: [PATCH] 1.重命名类名称和文件名;

---
 SourceCode/Bond/Servo/CPageGraph1.cpp |   38 ++++++++++++++++++++++++++++++++++++--
 1 files changed, 36 insertions(+), 2 deletions(-)

diff --git a/SourceCode/Bond/Servo/CPageGraph1.cpp b/SourceCode/Bond/Servo/CPageGraph1.cpp
index 243dea1..6d3ac75 100644
--- a/SourceCode/Bond/Servo/CPageGraph1.cpp
+++ b/SourceCode/Bond/Servo/CPageGraph1.cpp
@@ -276,6 +276,11 @@
 	if (m_hbrBkgnd != nullptr) {
 		::DeleteObject(m_hbrBkgnd);
 	}
+
+	if (m_pObserver != nullptr) {
+		m_pObserver->unsubscribe();
+		m_pObserver = NULL;
+	}
 }
 
 void CPageGraph1::OnSize(UINT nType, int cx, int cy)
@@ -388,15 +393,44 @@
 	Invalidate();
 }
 
+void CPageGraph1::BindEquipmentToGraph()
+{
+	struct EquipmentBindInfo
+	{
+		int nEquipmentID;
+		int nIndicateID;
+	};
+
+	static const EquipmentBindInfo EQUIPMENT_BIND_LIST[] = {
+		{ EQ_ID_EFEM,           INDICATE_ROBOT_ARM1 },
+		{ EQ_ID_EFEM,           INDICATE_ROBOT_ARM2 },
+		{ EQ_ID_Bonder1,        INDICATE_BONDER1 },
+		{ EQ_ID_Bonder2,        INDICATE_BONDER2 },
+		{ EQ_ID_LOADPORT1,      INDICATE_LPORT1 },
+		{ EQ_ID_LOADPORT2,      INDICATE_LPORT2 },
+		{ EQ_ID_LOADPORT3,      INDICATE_LPORT3 },
+		{ EQ_ID_LOADPORT4,      INDICATE_LPORT4 },
+		{ EQ_ID_FLIPER,         INDICATE_FLIPER },
+		{ EQ_ID_VACUUMBAKE,     INDICATE_VACUUM_BAKE },
+		{ EQ_ID_ALIGNER,        INDICATE_ALIGNER },
+		{ EQ_ID_BAKE_COOLING,   INDICATE_BAKE_COOLING }
+	};
+
+	for (const auto& stBindInfo : EQUIPMENT_BIND_LIST)
+	{
+		SERVO::CEquipment* pEquipment = theApp.m_model.m_master.getEquipment(stBindInfo.nEquipmentID);
+		m_pGraph->SetIndicateBoxData(stBindInfo.nIndicateID, pEquipment);
+	}
+}
+
 void CPageGraph1::OnGraphItemClicked(NMHDR* pNMHDR, LRESULT* pResult)
 {
 	BYSERVOGRAPH_NMHDR* pGraphNmhdr = reinterpret_cast<BYSERVOGRAPH_NMHDR*>(pNMHDR);
 	CString s; s.Format(_T("OnGraphItemClicked %d"), pGraphNmhdr->dwData);
 	SERVO::CEquipment* pEquipment = (SERVO::CEquipment*)m_pGraph->GetIndicateBoxData(pGraphNmhdr->dwData);
 	if (pEquipment != nullptr) {
-		AfxMessageBox(pEquipment->getName().c_str());
+		theApp.m_model.notifyPtr(RX_CODE_SELECT_EQUIPMENT, pEquipment);
 	}
-
 
 	*pResult = 0;
 }

--
Gitblit v1.9.3