From 21407e7ee3acce124d761fb562aee9f31033d42a Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期三, 04 六月 2025 12:01:21 +0800
Subject: [PATCH] Merge branch 'clh'

---
 SourceCode/Bond/Servo/ServoGraph.cpp |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 48 insertions(+), 0 deletions(-)

diff --git a/SourceCode/Bond/Servo/ServoGraph.cpp b/SourceCode/Bond/Servo/ServoGraph.cpp
index 3e815c8..8e037e1 100644
--- a/SourceCode/Bond/Servo/ServoGraph.cpp
+++ b/SourceCode/Bond/Servo/ServoGraph.cpp
@@ -125,6 +125,9 @@
 	case WM_LBUTTONDOWN:
 		return pServoGraph->OnLButtonDown(wParam, lParam);
 
+	case WM_SIZE:
+		return pServoGraph->OnSize(wParam, lParam);
+
 	case WM_GETDLGCODE:
 		return DLGC_WANTALLKEYS;
 
@@ -271,6 +274,14 @@
 
 
 	return ::DefWindowProc(m_hWnd, WM_LBUTTONDOWN, wParam, lParam);
+}
+
+/*
+ *  WM_SIZE
+ */
+LRESULT CServoGraph::OnSize(WPARAM wParam, LPARAM lParam)
+{
+	return ::DefWindowProc(m_hWnd, WM_SIZE, wParam, lParam);
 }
 
 ///////////////////////////////
@@ -634,6 +645,25 @@
 	}
 }
 
+void CServoGraph::UpdateIndicateBox1Colors(int id, COLORREF newBackgroundColor, COLORREF newFrameColor1, COLORREF newFrameColor2)
+{
+	INDICATEBOX* pIndicateBox = GetIndicateBox(id);
+	if (pIndicateBox != nullptr) {
+		pIndicateBox->box1BackgroundColor = newBackgroundColor;
+		pIndicateBox->box1FrameColor[0] = newFrameColor1;
+		pIndicateBox->box1FrameColor[1] = newFrameColor2;
+	}
+}
+
+void CServoGraph::UpdateIndicateBox2Colors(int id, COLORREF newBackgroundColor, COLORREF newFrameColor)
+{
+	INDICATEBOX* pIndicateBox = GetIndicateBox(id);
+	if (pIndicateBox != nullptr) {
+		pIndicateBox->box2BackgroundColor = newBackgroundColor;
+		pIndicateBox->box2FrameColor = newFrameColor;
+	}
+}
+
 void CServoGraph::DrawImage(HDC hMemDC, IMAGE& item)
 {
 	// 载入BMP
@@ -674,4 +704,22 @@
 		graphics.DrawImage(&bitmap, item.x, item.y);
 		graphics.ResetTransform();
 	}
+}
+
+void CServoGraph::SetIndicateBoxData(int id, void* pData)
+{
+	INDICATEBOX* pib = GetIndicateBox(id);
+	if (pib != nullptr) {
+		pib->m_pData = pData;
+	}
+}
+
+void* CServoGraph::GetIndicateBoxData(int id)
+{
+	INDICATEBOX* pib = GetIndicateBox(id);
+	if (pib != nullptr) {
+		return pib->m_pData;
+	}
+
+	return nullptr;
 }
\ No newline at end of file

--
Gitblit v1.9.3