FIX: optimize the switching cancel

jira: [none]
Change-Id: I60f4e5bcbbe67e6c86793a651e8837a551a762a3
This commit is contained in:
xin.zhang 2025-03-11 10:02:22 +08:00 committed by lane.wei
parent 57245bd456
commit 27c6d46dc2
2 changed files with 12 additions and 3 deletions

View File

@ -35,7 +35,9 @@
#define HOLD_COUNT_MAX 3 #define HOLD_COUNT_MAX 3
#define HOLD_COUNT_CAMERA 6 #define HOLD_COUNT_CAMERA 6
#define HOLD_TIME_MAX 3 // 3 seconds #define HOLD_TIME_MAX 3 // 3 seconds
#define HOLD_TIME_SWITCHING 6 // 6 seconds
#define GET_VERSION_RETRYS 10 #define GET_VERSION_RETRYS 10
#define RETRY_INTERNAL 2000 #define RETRY_INTERNAL 2000

View File

@ -408,10 +408,17 @@ ExtruderSwithingStatus::ExtruderSwithingStatus(wxWindow *parent)
void ExtruderSwithingStatus::updateBy(MachineObject *obj) void ExtruderSwithingStatus::updateBy(MachineObject *obj)
{ {
m_obj = obj; m_obj = obj;
Show(m_obj != nullptr); if (!m_obj)
if (m_obj && (time(nullptr) - m_last_ctrl_time) > HOLD_TIME_MAX)
{ {
updateBy(obj->m_extder_data); Show(false);
}
else
{
/*do not display while command sended in a mean while*/
if ((time(nullptr) - m_last_ctrl_time) > HOLD_TIME_SWITCHING)
{
updateBy(obj->m_extder_data);
}
} }
} }