ENH: update the functions

jira: [STUDIO-11664]
Change-Id: I3c2c23cb9f8db0b3fec848616bb1d434759fa1d8
This commit is contained in:
xin.zhang 2025-04-24 15:22:45 +08:00 committed by lane.wei
parent ecc35173c0
commit ff62a7fe61
4 changed files with 22 additions and 144 deletions

View File

@ -132,8 +132,6 @@ AddMachinePanel::~AddMachinePanel() {
update_hms_tag(); update_hms_tag();
e.Skip(); e.Skip();
}); });
Bind(EVT_JUMP_TO_HMS, &MonitorPanel::jump_to_HMS, this);
} }
MonitorPanel::~MonitorPanel() MonitorPanel::~MonitorPanel()

View File

@ -28,17 +28,13 @@ wxDEFINE_EVENT(EVT_SECONDARY_CHECK_CONFIRM, wxCommandEvent);
wxDEFINE_EVENT(EVT_SECONDARY_CHECK_CANCEL, wxCommandEvent); wxDEFINE_EVENT(EVT_SECONDARY_CHECK_CANCEL, wxCommandEvent);
wxDEFINE_EVENT(EVT_SECONDARY_CHECK_DONE, wxCommandEvent); wxDEFINE_EVENT(EVT_SECONDARY_CHECK_DONE, wxCommandEvent);
wxDEFINE_EVENT(EVT_SECONDARY_CHECK_RESUME, wxCommandEvent); wxDEFINE_EVENT(EVT_SECONDARY_CHECK_RESUME, wxCommandEvent);
wxDEFINE_EVENT(EVT_LOAD_VAMS_TRAY, wxCommandEvent);
wxDEFINE_EVENT(EVT_CHECKBOX_CHANGE, wxCommandEvent); wxDEFINE_EVENT(EVT_CHECKBOX_CHANGE, wxCommandEvent);
wxDEFINE_EVENT(EVT_ENTER_IP_ADDRESS, wxCommandEvent); wxDEFINE_EVENT(EVT_ENTER_IP_ADDRESS, wxCommandEvent);
wxDEFINE_EVENT(EVT_CLOSE_IPADDRESS_DLG, wxCommandEvent); wxDEFINE_EVENT(EVT_CLOSE_IPADDRESS_DLG, wxCommandEvent);
wxDEFINE_EVENT(EVT_CHECK_IP_ADDRESS_FAILED, wxCommandEvent); wxDEFINE_EVENT(EVT_CHECK_IP_ADDRESS_FAILED, wxCommandEvent);
wxDEFINE_EVENT(EVT_CHECK_IP_ADDRESS_LAYOUT, wxCommandEvent); wxDEFINE_EVENT(EVT_CHECK_IP_ADDRESS_LAYOUT, wxCommandEvent);
wxDEFINE_EVENT(EVT_SECONDARY_CHECK_RETRY, wxCommandEvent); wxDEFINE_EVENT(EVT_SECONDARY_CHECK_RETRY, wxCommandEvent);
wxDEFINE_EVENT(EVT_PRINT_ERROR_STOP, wxCommandEvent);
wxDEFINE_EVENT(EVT_UPDATE_NOZZLE, wxCommandEvent); wxDEFINE_EVENT(EVT_UPDATE_NOZZLE, wxCommandEvent);
wxDEFINE_EVENT(EVT_JUMP_TO_HMS, wxCommandEvent);
wxDEFINE_EVENT(EVT_JUMP_TO_LIVEVIEW, wxCommandEvent);
wxDEFINE_EVENT(EVT_UPDATE_TEXT_MSG, wxCommandEvent); wxDEFINE_EVENT(EVT_UPDATE_TEXT_MSG, wxCommandEvent);
wxDEFINE_EVENT(EVT_ERROR_DIALOG_BTN_CLICKED, wxCommandEvent); wxDEFINE_EVENT(EVT_ERROR_DIALOG_BTN_CLICKED, wxCommandEvent);
@ -1089,140 +1085,35 @@ void PrintErrorDialog::init_button(PrintErrorButton style,wxString buton_text)
print_error_button->SetCornerRadius(FromDIP(5)); print_error_button->SetCornerRadius(FromDIP(5));
print_error_button->Hide(); print_error_button->Hide();
m_button_list[style] = print_error_button; m_button_list[style] = print_error_button;
m_button_list[style]->Bind(wxEVT_LEFT_DOWN, [this, style](wxMouseEvent& e)
{
wxCommandEvent evt(EVT_ERROR_DIALOG_BTN_CLICKED);
evt.SetInt(style);
post_event(evt);
e.Skip();
});
} }
void PrintErrorDialog::init_button_list() void PrintErrorDialog::init_button_list()
{ {
init_button(RESUME_PRINTING, _L("Resume Printing")); init_button(RESUME_PRINTING, _L("Resume Printing"));
m_button_list[RESUME_PRINTING]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
post_event(wxCommandEvent(EVT_SECONDARY_CHECK_RESUME));
e.Skip();
});
init_button(RESUME_PRINTING_DEFECTS, _L("Resume Printing(defects acceptable)")); init_button(RESUME_PRINTING_DEFECTS, _L("Resume Printing(defects acceptable)"));
m_button_list[RESUME_PRINTING_DEFECTS]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
post_event(wxCommandEvent(EVT_SECONDARY_CHECK_RESUME));
e.Skip();
});
init_button(RESUME_PRINTING_PROBELM_SOLVED, _L("Resume Printing(problem solved)")); 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) { init_button(STOP_PRINTING, _L("Stop Printing"));// pop up recheck dialog?
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")); 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")); 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")); init_button(CONTINUE, _L("Finished, Continue"));
m_button_list[CONTINUE]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
wxCommandEvent evt(EVT_ERROR_DIALOG_BTN_CLICKED);
evt.SetInt(CONTINUE);
post_event(evt);
e.Skip();
});
init_button(LOAD_VIRTUAL_TRAY, _L("Load Filament")); 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")); init_button(OK_BUTTON, _L("OK"));
m_button_list[OK_BUTTON]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
wxCommandEvent evt(EVT_SECONDARY_CHECK_CONFIRM, GetId());
e.SetEventObject(this);
GetEventHandler()->ProcessEvent(evt);
this->on_hide();
});
init_button(FILAMENT_LOAD_RESUME, _L("Filament Loaded, Resume")); init_button(FILAMENT_LOAD_RESUME, _L("Filament Loaded, Resume"));
m_button_list[FILAMENT_LOAD_RESUME]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
post_event(wxCommandEvent(EVT_SECONDARY_CHECK_RESUME));
e.Skip();
});
init_button(JUMP_TO_LIVEVIEW, _L("View Liveview")); init_button(JUMP_TO_LIVEVIEW, _L("View Liveview"));
m_button_list[JUMP_TO_LIVEVIEW]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
post_event(wxCommandEvent(EVT_JUMP_TO_LIVEVIEW));
e.Skip();
});
init_button(NO_REMINDER_NEXT_TIME, _L("No Reminder Next Time")); init_button(NO_REMINDER_NEXT_TIME, _L("No Reminder Next Time"));
m_button_list[NO_REMINDER_NEXT_TIME]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
wxCommandEvent evt(EVT_ERROR_DIALOG_BTN_CLICKED);
evt.SetInt(NO_REMINDER_NEXT_TIME);
post_event(evt);
e.Skip();
});
init_button(IGNORE_NO_REMINDER_NEXT_TIME, _L("Ignore. Don't Remind Next Time")); init_button(IGNORE_NO_REMINDER_NEXT_TIME, _L("Ignore. Don't Remind Next Time"));
m_button_list[IGNORE_NO_REMINDER_NEXT_TIME]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) {
wxCommandEvent evt(EVT_ERROR_DIALOG_BTN_CLICKED);
evt.SetInt(IGNORE_NO_REMINDER_NEXT_TIME);
post_event(evt);
e.Skip();
});
init_button(IGNORE_RESUME, _L("Ignore this and Resume")); init_button(IGNORE_RESUME, _L("Ignore this and Resume"));
m_button_list[IGNORE_RESUME]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e)
{
wxCommandEvent evt(EVT_ERROR_DIALOG_BTN_CLICKED);
evt.SetInt(IGNORE_RESUME);
post_event(evt);
e.Skip();
});
init_button(PROBLEM_SOLVED_RESUME, _L("Problem Solved and Resume")); init_button(PROBLEM_SOLVED_RESUME, _L("Problem Solved and Resume"));
m_button_list[PROBLEM_SOLVED_RESUME]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e)
{
wxCommandEvent evt(EVT_ERROR_DIALOG_BTN_CLICKED);
evt.SetInt(PROBLEM_SOLVED_RESUME);
post_event(evt);
e.Skip();
});
init_button(STOP_BUZZER, _L("Stop Buzzer")); init_button(STOP_BUZZER, _L("Stop Buzzer"));
m_button_list[STOP_BUZZER]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e)
{
wxCommandEvent evt(EVT_ERROR_DIALOG_BTN_CLICKED);
evt.SetInt(STOP_BUZZER);
post_event(evt);
e.Skip();
});
init_button(RETRY_PROBLEM_SOLVED, _L("Retry (problem solved)")); init_button(RETRY_PROBLEM_SOLVED, _L("Retry (problem solved)"));
m_button_list[RETRY_PROBLEM_SOLVED]->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) {
wxCommandEvent evt(EVT_ERROR_DIALOG_BTN_CLICKED);
evt.SetInt(RETRY_PROBLEM_SOLVED);
post_event(evt);
e.Skip();
});
} }
PrintErrorDialog::~PrintErrorDialog() PrintErrorDialog::~PrintErrorDialog()

View File

@ -46,11 +46,7 @@ wxDECLARE_EVENT(EVT_SECONDARY_CHECK_CANCEL, wxCommandEvent);
wxDECLARE_EVENT(EVT_SECONDARY_CHECK_RETRY, wxCommandEvent); wxDECLARE_EVENT(EVT_SECONDARY_CHECK_RETRY, wxCommandEvent);
wxDECLARE_EVENT(EVT_SECONDARY_CHECK_DONE, wxCommandEvent); wxDECLARE_EVENT(EVT_SECONDARY_CHECK_DONE, wxCommandEvent);
wxDECLARE_EVENT(EVT_SECONDARY_CHECK_RESUME, wxCommandEvent); wxDECLARE_EVENT(EVT_SECONDARY_CHECK_RESUME, wxCommandEvent);
wxDECLARE_EVENT(EVT_PRINT_ERROR_STOP, wxCommandEvent);
wxDECLARE_EVENT(EVT_UPDATE_NOZZLE, wxCommandEvent); wxDECLARE_EVENT(EVT_UPDATE_NOZZLE, wxCommandEvent);
wxDECLARE_EVENT(EVT_LOAD_VAMS_TRAY, wxCommandEvent);
wxDECLARE_EVENT(EVT_JUMP_TO_HMS, wxCommandEvent);
wxDECLARE_EVENT(EVT_JUMP_TO_LIVEVIEW, wxCommandEvent);
wxDECLARE_EVENT(EVT_UPDATE_TEXT_MSG, wxCommandEvent); wxDECLARE_EVENT(EVT_UPDATE_TEXT_MSG, wxCommandEvent);
wxDECLARE_EVENT(EVT_ERROR_DIALOG_BTN_CLICKED, wxCommandEvent); wxDECLARE_EVENT(EVT_ERROR_DIALOG_BTN_CLICKED, wxCommandEvent);

View File

@ -2299,13 +2299,6 @@ StatusPanel::StatusPanel(wxWindow *parent, wxWindowID id, const wxPoint &pos, co
Bind(EVT_FAN_CHANGED, &StatusPanel::on_fan_changed, this); Bind(EVT_FAN_CHANGED, &StatusPanel::on_fan_changed, this);
Bind(EVT_SECONDARY_CHECK_DONE, &StatusPanel::on_print_error_done, this); Bind(EVT_SECONDARY_CHECK_DONE, &StatusPanel::on_print_error_done, this);
Bind(EVT_SECONDARY_CHECK_RESUME, &StatusPanel::on_subtask_pause_resume, this); Bind(EVT_SECONDARY_CHECK_RESUME, &StatusPanel::on_subtask_pause_resume, this);
Bind(EVT_PRINT_ERROR_STOP, &StatusPanel::on_subtask_abort, this);
Bind(EVT_LOAD_VAMS_TRAY, &StatusPanel::on_ams_load_vams, this);
Bind(EVT_JUMP_TO_LIVEVIEW, [this](wxCommandEvent& e) {
m_media_play_ctrl->jump_to_play();
if (m_print_error_dlg)
m_print_error_dlg->on_hide();
});
Bind(EVT_ERROR_DIALOG_BTN_CLICKED, &StatusPanel::on_print_error_dlg_btn_clicked, this); Bind(EVT_ERROR_DIALOG_BTN_CLICKED, &StatusPanel::on_print_error_dlg_btn_clicked, this);
m_switch_speed->Connect(wxEVT_LEFT_DOWN, wxCommandEventHandler(StatusPanel::on_switch_speed), NULL, this); m_switch_speed->Connect(wxEVT_LEFT_DOWN, wxCommandEventHandler(StatusPanel::on_switch_speed), NULL, this);
@ -2703,17 +2696,6 @@ void StatusPanel::show_error_message(MachineObject *obj, bool is_exist, wxString
m_print_error_dlg = new PrintErrorDialog(this->GetParent(), wxID_ANY, _L("Error")); m_print_error_dlg = new PrintErrorDialog(this->GetParent(), wxID_ANY, _L("Error"));
m_print_error_dlg->update_title_style(_L("Error"), used_button, this); m_print_error_dlg->update_title_style(_L("Error"), used_button, this);
m_print_error_dlg->update_text_image(msg, print_error_str, image_url); m_print_error_dlg->update_text_image(msg, print_error_str, image_url);
m_print_error_dlg->Bind(EVT_SECONDARY_CHECK_CONFIRM, [this, dev_id](wxCommandEvent &e) {
MachineObject* the_obj = wxGetApp().getDeviceManager()->get_my_machine(dev_id);
if (the_obj) { the_obj->command_clean_print_error(the_obj->subtask_id_, the_obj->print_error); }
});
m_print_error_dlg->Bind(EVT_SECONDARY_CHECK_RETRY, [this](wxCommandEvent& e) {
if (m_ams_control) {
m_ams_control->on_retry();
}
});
m_print_error_dlg->on_show(); m_print_error_dlg->on_show();
} }
else { else {
@ -4692,18 +4674,29 @@ void StatusPanel::on_print_error_dlg_btn_clicked(wxCommandEvent& event)
} }
case Slic3r::GUI::PrintErrorDialog::RETRY_FILAMENT_EXTRUDED: { case Slic3r::GUI::PrintErrorDialog::RETRY_FILAMENT_EXTRUDED: {
obj->command_ams_control("resume"); obj->command_ams_control("resume");
break; return;// do not hide the dialogs
} }
case Slic3r::GUI::PrintErrorDialog::CONTINUE: { case Slic3r::GUI::PrintErrorDialog::CONTINUE: {
obj->command_ams_control("resume"); obj->command_ams_control("resume");
break; break;
} }
case Slic3r::GUI::PrintErrorDialog::LOAD_VIRTUAL_TRAY: break;/*Unknown what it is*/ case Slic3r::GUI::PrintErrorDialog::LOAD_VIRTUAL_TRAY: {
case Slic3r::GUI::PrintErrorDialog::OK_BUTTON: break;/*do nothing*/ m_ams_control->SwitchAms(std::to_string(VIRTUAL_TRAY_MAIN_ID));
on_ams_load_curr();
break;/*AP, unknown what it is*/
}
case Slic3r::GUI::PrintErrorDialog::OK_BUTTON: {
obj->command_clean_print_error(obj->subtask_id_, obj->print_error);
break;/*do nothing*/
}
case Slic3r::GUI::PrintErrorDialog::FILAMENT_LOAD_RESUME: { case Slic3r::GUI::PrintErrorDialog::FILAMENT_LOAD_RESUME: {
obj->command_hms_resume(std::to_string(before_error_code), obj->job_id_); obj->command_hms_resume(std::to_string(before_error_code), obj->job_id_);
break; break;
} }
case Slic3r::GUI::PrintErrorDialog::JUMP_TO_LIVEVIEW: {
m_media_play_ctrl->jump_to_play();
break;
}
case Slic3r::GUI::PrintErrorDialog::NO_REMINDER_NEXT_TIME: { case Slic3r::GUI::PrintErrorDialog::NO_REMINDER_NEXT_TIME: {
obj->command_hms_idle_ignore(std::to_string(before_error_code), 0); /*the type is 0, supported by AP*/ obj->command_hms_idle_ignore(std::to_string(before_error_code), 0); /*the type is 0, supported by AP*/
break; break;