From 60077e83e62648b20bdc36542ef20efdefadacd0 Mon Sep 17 00:00:00 2001 From: Kunlong Ma Date: Fri, 19 Apr 2024 17:03:54 +0800 Subject: [PATCH] FIX: Clicking to continue printing does not take effect in error code JIRA: STUDIO-6830 Detected an incomplete printing task error pop-up when power outage occurred. Clicking to continue printing did not take effect Change-Id: Ie85a1602093dabac861cd1f41ea21e1c312c83e9 --- src/slic3r/GUI/ReleaseNote.cpp | 44 ++++++++++++++-------------------- src/slic3r/GUI/StatusPanel.cpp | 8 ++----- 2 files changed, 20 insertions(+), 32 deletions(-) diff --git a/src/slic3r/GUI/ReleaseNote.cpp b/src/slic3r/GUI/ReleaseNote.cpp index 600498a9f..af7ec9a47 100644 --- a/src/slic3r/GUI/ReleaseNote.cpp +++ b/src/slic3r/GUI/ReleaseNote.cpp @@ -964,7 +964,6 @@ void PrintErrorDialog::update_text_image(wxString text, wxString image_url) m_staticText_release_note->SetMaxSize(wxSize(FromDIP(300), -1)); m_staticText_release_note->SetMinSize(wxSize(FromDIP(300), -1)); m_staticText_release_note->SetLabelText(text); - //m_staticText_release_note->SetForegroundColour(wxColour("#5C5C5C")); m_vebview_release_note->Layout(); auto text_size = m_staticText_release_note->GetBestSize(); @@ -1049,67 +1048,60 @@ void PrintErrorDialog::init_button_list() { init_button(RESUME_PRINTING, _L("Resume Printing")); m_button_list[RESUME_PRINTING]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { - wxCommandEvent evt(EVT_SECONDARY_CHECK_RETRY, GetId()); - e.SetEventObject(this); - GetEventHandler()->ProcessEvent(evt); - this->on_hide(); - }); + post_event(wxCommandEvent(EVT_SECONDARY_CHECK_RESUME)); + e.Skip(); + }); init_button(RESUME_PRINTING_DEFECTS, _L("Resume Printing(defects acceptable)")); m_button_list[RESUME_PRINTING_DEFECTS]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { - wxCommandEvent evt(EVT_SECONDARY_CHECK_RETRY, GetId()); - e.SetEventObject(this); - GetEventHandler()->ProcessEvent(evt); - this->on_hide(); - }); + post_event(wxCommandEvent(EVT_SECONDARY_CHECK_RESUME)); + e.Skip(); + }); init_button(RESUME_PRINTING_PROBELM_SOLVED, _L("Resume Printing(problem solved)")); m_button_list[RESUME_PRINTING_PROBELM_SOLVED]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { - //load filament and resume printing - wxCommandEvent evt(EVT_SECONDARY_CHECK_RETRY, GetId()); - e.SetEventObject(this); - GetEventHandler()->ProcessEvent(evt); - this->on_hide(); - }); + post_event(wxCommandEvent(EVT_SECONDARY_CHECK_RESUME)); + e.Skip(); + }); init_button(STOP_PRINTING, _L("Stop Printing")); m_button_list[STOP_PRINTING]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { post_event(wxCommandEvent(EVT_PRINT_ERROR_STOP)); e.Skip(); - }); + }); init_button(CHECK_ASSISTANT, _L("Check Assistant")); m_button_list[CHECK_ASSISTANT]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { post_event(wxCommandEvent(EVT_JUMP_TO_HMS)); this->on_hide(); - }); + }); init_button(FILAMENT_EXTRUDED, _L("Filament Extruded, Continue")); m_button_list[FILAMENT_EXTRUDED]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { post_event(wxCommandEvent(EVT_SECONDARY_CHECK_DONE)); e.Skip(); - }); + }); - init_button(RETRY_FILAMENT_EXTRUDED, _L("Not Extruded Yet,Retry")); + init_button(RETRY_FILAMENT_EXTRUDED, _L("Not Extruded Yet, Retry")); m_button_list[RETRY_FILAMENT_EXTRUDED]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { wxCommandEvent evt(EVT_SECONDARY_CHECK_RETRY, GetId()); e.SetEventObject(this); GetEventHandler()->ProcessEvent(evt); this->on_hide(); - }); + }); init_button(CONTINUE, _L("Finished, Continue")); m_button_list[CONTINUE]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { post_event(wxCommandEvent(EVT_SECONDARY_CHECK_DONE)); e.Skip(); - }); - + }); + init_button(LOAD_VIRTUAL_TRAY, _L("Load Filament")); m_button_list[LOAD_VIRTUAL_TRAY]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { post_event(wxCommandEvent(EVT_LOAD_VAMS_TRAY)); e.Skip(); - }); + }); init_button(OK_BUTTON, _L("OK")); m_button_list[OK_BUTTON]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { @@ -1117,7 +1109,7 @@ void PrintErrorDialog::init_button_list() { e.SetEventObject(this); GetEventHandler()->ProcessEvent(evt); this->on_hide(); - }); + }); init_button(FILAMENT_LOAD_RESUME, _L("Filament Loaded, Resume")); m_button_list[FILAMENT_LOAD_RESUME]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { diff --git a/src/slic3r/GUI/StatusPanel.cpp b/src/slic3r/GUI/StatusPanel.cpp index 3a75498a5..27eef0f28 100644 --- a/src/slic3r/GUI/StatusPanel.cpp +++ b/src/slic3r/GUI/StatusPanel.cpp @@ -2187,12 +2187,8 @@ void StatusPanel::update_error_message() used_button.emplace_back(PrintErrorDialog::PrintErrorButton::JUMP_TO_LIVEVIEW); if (!error_msg.IsEmpty()) { wxDateTime now = wxDateTime::Now(); - wxString show_time; -#if !BBL_RELEASE_TO_PUBLIC - show_time = now.Format("%Y-%m-%d %H:%M:%S"); -#else - show_time = now.Format("%H:%M:%S"); -#endif + wxString show_time = wxString::Format("%d%02d%02d", now.GetDay(), now.GetHour(), now.GetMinute()); + error_msg = wxString::Format("%s\n[%s %s]", error_msg, print_error_str, show_time);