From 147b6beecb627dd476283befcc2fc5c3f4de377a Mon Sep 17 00:00:00 2001 From: "hu.wang" Date: Wed, 30 Aug 2023 15:35:06 +0800 Subject: [PATCH] FIX:fixed too many times requests for get_subtask JIRA:STUDIO-4283 Change-Id: Ic15c782b8304d5fefbc78cc76fb32fa5ccf9335b --- src/slic3r/GUI/StatusPanel.cpp | 4 +++- src/slic3r/GUI/StatusPanel.hpp | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/slic3r/GUI/StatusPanel.cpp b/src/slic3r/GUI/StatusPanel.cpp index 00bcae992..e59645a77 100644 --- a/src/slic3r/GUI/StatusPanel.cpp +++ b/src/slic3r/GUI/StatusPanel.cpp @@ -1786,6 +1786,7 @@ bool StatusPanel::is_task_changed(MachineObject* obj) last_subtask = obj->subtask_; last_profile_id = obj->profile_id_; last_task_id = obj->task_id_; + request_model_info_flag = false; return true; } return false; @@ -2631,9 +2632,10 @@ void StatusPanel::update_model_info() BBLSubTask* curr_task = obj->get_subtask(); if (curr_task) { BBLModelTask* curr_model_task = obj->get_modeltask(); - if (!curr_model_task) { + if (!curr_model_task && !request_model_info_flag) { curr_model_task = new BBLModelTask(); curr_model_task->task_id = curr_task->task_id; + request_model_info_flag = true; wxGetApp().getAgent()->get_subtask(curr_model_task, get_subtask_fn); } } diff --git a/src/slic3r/GUI/StatusPanel.hpp b/src/slic3r/GUI/StatusPanel.hpp index 9ef3f6b2d..ee99726a3 100644 --- a/src/slic3r/GUI/StatusPanel.hpp +++ b/src/slic3r/GUI/StatusPanel.hpp @@ -451,6 +451,7 @@ protected: bool bed_temp_input = false; bool nozzle_temp_input = false; bool cham_temp_input = false; + bool request_model_info_flag = false; int speed_lvl = 1; // 0 - 3 int speed_lvl_timeout {0}; boost::posix_time::ptime speed_dismiss_time;