From e15e0d2f9305e71cd160f1ddceab93c7889eab20 Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期四, 05 六月 2025 17:37:33 +0800
Subject: [PATCH] 1. 解决自定义按钮资源泄露问题 2. 增加Slot点击回调和鼠标悬停/点击高亮效果
---
SourceCode/Bond/Servo/CGlass.cpp | 30 ++++++++++++++++++++++++++++++
1 files changed, 30 insertions(+), 0 deletions(-)
diff --git a/SourceCode/Bond/Servo/CGlass.cpp b/SourceCode/Bond/Servo/CGlass.cpp
index 77e292f..029f39f 100644
--- a/SourceCode/Bond/Servo/CGlass.cpp
+++ b/SourceCode/Bond/Servo/CGlass.cpp
@@ -84,6 +84,20 @@
return m_pPath;
}
+ CPath* CGlass::getPathWithSiteId(unsigned int nSiteId)
+ {
+ CPath* pTemp = m_pPath;
+ while (pTemp != nullptr) {
+ if (pTemp->getSiteID() == nSiteId) {
+ return pTemp;
+ }
+
+ pTemp = pTemp->getNext();
+ }
+
+ return nullptr;
+ }
+
void CGlass::addPath(unsigned int nSiteId)
{
CPath* pPath = new CPath(nSiteId);
@@ -182,4 +196,20 @@
{
return m_strBuddyId;
}
+
+ void CGlass::processEnd(unsigned int nSiteId)
+ {
+ CPath* pPath = getPathWithSiteID(nSiteId);
+ if (pPath != nullptr) {
+ pPath->processEnd();
+ }
+ }
+
+ BOOL CGlass::isProcessed(unsigned int nSiteId)
+ {
+ CPath* pPath = getPathWithSiteID(nSiteId);
+ if (pPath == nullptr) return FALSE;
+
+ return pPath->isProcessEnd();
+ }
}
--
Gitblit v1.9.3