FIX:add line for ai define

jira:[STUDIO-13448]

Change-Id: Iceb022b80cc14f2ae1dbe29f464e2bfd7bad0df0
(cherry picked from commit 22818ed070be0a178af1ce8bb619a8d1983b8106)
This commit is contained in:
milk 2025-07-24 23:03:47 +08:00 committed by Noisyfox
parent 1b4bcfcba5
commit cae1fe4dd4
2 changed files with 74 additions and 58 deletions

View file

@ -250,11 +250,15 @@ void PrintOptionsDialog::update_options(MachineObject* obj_)
if (!obj_) return;
if (obj_->is_support_spaghetti_detection || obj_->is_support_purgechutepileup_detection || obj_->is_support_nozzleclumping_detection || obj_->is_support_airprinting_detection) {
ai_refine_panel->Show();
text_ai_detections->Show();
text_ai_detections_caption->Show();
m_line->Show();
} else {
ai_refine_panel->Hide();
text_ai_detections->Hide();
text_ai_detections_caption->Hide();
m_line->Hide();
}
if (obj_->GetConfig()->SupportAIMonitor() && !obj_->xcam_disable_ai_detection_display) {
@ -270,7 +274,7 @@ void PrintOptionsDialog::update_options(MachineObject* obj_)
text_ai_monitoring_caption->Hide();
ai_monitoring_level_list->Hide();
ai_monitoring_bottom_space->Show(false);
line1->Hide();
//line1->Hide();
}
//refine printer function options
@ -290,7 +294,7 @@ void PrintOptionsDialog::update_options(MachineObject* obj_)
text_spaghetti_detection_caption1->Hide();
spaghetti_detection_level_list->Hide();
spaghetti_bottom_space->Show(false);
line1->Hide();
//line1->Hide();
}
@ -309,7 +313,7 @@ void PrintOptionsDialog::update_options(MachineObject* obj_)
text_purgechutepileup_detection_caption1->Hide();
purgechutepileup_detection_level_list->Hide();
purgechutepileup_bottom_space->Show(false);
line1->Hide();
// line1->Hide();
}
@ -329,7 +333,7 @@ void PrintOptionsDialog::update_options(MachineObject* obj_)
text_nozzleclumping_detection_caption1->Hide();
nozzleclumping_detection_level_list->Hide();
nozzleclumping_bottom_space->Show(false);
line1->Hide();
// line1->Hide();
}
if (obj_->is_support_airprinting_detection) {
@ -346,7 +350,7 @@ void PrintOptionsDialog::update_options(MachineObject* obj_)
text_airprinting_detection_caption0->Hide();
text_airprinting_detection_caption1->Hide();
airprinting_detection_level_list->Hide();
line1->Hide();
// line1->Hide();
airprinting_bottom_space->Show(false);
}
@ -552,24 +556,28 @@ wxBoxSizer* PrintOptionsDialog::create_settings_group(wxWindow* parent)
//m_line->SetBackgroundColour(wxColour(166, 169, 170));
//sizer->Add(m_line, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(0));
ai_refine_panel = new wxPanel(parent);
wxBoxSizer *ai_refine_sizer = new wxBoxSizer(wxVERTICAL);
ai_refine_panel->SetBackgroundColour(*wxWHITE);
// ai detections
line_sizer = new wxBoxSizer(wxHORIZONTAL);
text_ai_detections = new Label(parent, _L("AI Detections"));
text_ai_detections = new Label(ai_refine_panel, _L("AI Detections"));
text_ai_detections->SetFont(Label::Body_14);
line_sizer->Add(FromDIP(5), 0, 0, 0);
line_sizer->Add(text_ai_detections, 0, wxLEFT | wxRIGHT | wxDOWN | wxALIGN_CENTER_VERTICAL, FromDIP(2));
sizer->Add(0, 0, 0, wxTOP, FromDIP(20));
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_refine_sizer->Add(0, 0, 0, wxTOP, FromDIP(20));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
line_sizer = new wxBoxSizer(wxHORIZONTAL);
text_ai_detections_caption = new Label(parent, _L("Printer will send assistant message or pause printing if any of the following problem is detected."));
text_ai_detections_caption = new Label(ai_refine_panel, _L("Printer will send assistant message or pause printing if any of the following problem is detected."));
text_ai_detections_caption->SetFont(Label::Body_12);
text_ai_detections_caption->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
text_ai_detections_caption->Wrap(FromDIP(400));
line_sizer->Add(FromDIP(5), 0, 0, 0);
line_sizer->Add(text_ai_detections_caption, 0,wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(2));
sizer->Add(line_sizer,0,wxEXPAND | wxLEFT | wxRIGHT,FromDIP(18));
ai_detections_bottom_space = sizer->Add(0, 0, 0, wxTOP, FromDIP(15));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_detections_bottom_space = ai_refine_sizer->Add(0, 0, 0, wxTOP, FromDIP(15));
// ai monitoring with levels
line_sizer = new wxBoxSizer(wxHORIZONTAL);
@ -603,30 +611,30 @@ wxBoxSizer* PrintOptionsDialog::create_settings_group(wxWindow* parent)
//spaghetti detection with levels
line_sizer = new wxBoxSizer(wxHORIZONTAL);
m_cb_spaghetti_detection = new CheckBox(parent);
text_spaghetti_detection = new Label(parent, _L("Spaghetti Detection"));
m_cb_spaghetti_detection = new CheckBox(ai_refine_panel);
text_spaghetti_detection = new Label(ai_refine_panel, _L("Spaghetti Detection"));
text_spaghetti_detection->SetFont(Label::Body_14);
line_sizer->Add(FromDIP(5), 0, 0, 0);
line_sizer->Add(m_cb_spaghetti_detection, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(2));
line_sizer->Add(text_spaghetti_detection, 1, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(2));
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
line_sizer = new wxBoxSizer(wxHORIZONTAL);
text_spaghetti_detection_caption0 = new Label(parent, _L("Detect spaghetti failure(scattered lose filament)."));
text_spaghetti_detection_caption0 = new Label(ai_refine_panel, _L("Detect spaghetti failure(scattered lose filament)."));
text_spaghetti_detection_caption0->SetFont(Label::Body_12);
text_spaghetti_detection_caption0->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
text_spaghetti_detection_caption0->Wrap(-1);
line_sizer->Add(FromDIP(30), 0, 0, 0);
line_sizer->Add(text_spaghetti_detection_caption0, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(5));
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
line_sizer = new wxBoxSizer(wxHORIZONTAL);
text_spaghetti_detection_caption1 = new Label(parent, _L("Pausing Sensitivity:"));
text_spaghetti_detection_caption1 = new Label(ai_refine_panel, _L("Pausing Sensitivity:"));
text_spaghetti_detection_caption1->SetFont(Label::Body_12);
text_spaghetti_detection_caption1->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
text_spaghetti_detection_caption1->Wrap(-1);
spaghetti_detection_level_list = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(100), -1), 0, NULL, wxCB_READONLY);
spaghetti_detection_level_list = new ComboBox(ai_refine_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(100), -1), 0, NULL, wxCB_READONLY);
for (auto i = AiMonitorSensitivityLevel::LOW; i < LEVELS_NUM; i = (AiMonitorSensitivityLevel) (i + 1)) {
wxString level_option = sensitivity_level_to_label_string(i);
spaghetti_detection_level_list->Append(level_option);
@ -638,39 +646,39 @@ wxBoxSizer* PrintOptionsDialog::create_settings_group(wxWindow* parent)
line_sizer->Add(FromDIP(30), 0, 0, 0);
line_sizer->Add(text_spaghetti_detection_caption1, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(5));
line_sizer->Add( spaghetti_detection_level_list, 0, wxEXPAND|wxALL, FromDIP(5) );
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
line1 = new StaticLine(parent, false);
/* line1 = new StaticLine(parent, false);
line1->SetLineColour(STATIC_BOX_LINE_COL);
sizer->Add(line1, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
spaghetti_bottom_space = sizer->Add(0, 0, 0, wxTOP, FromDIP(12));
sizer->Add(line1, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));*/
spaghetti_bottom_space = ai_refine_sizer->Add(0, 0, 0, wxTOP, FromDIP(12));
//purge chute pile-up detection
line_sizer = new wxBoxSizer(wxHORIZONTAL);
m_cb_purgechutepileup_detection = new CheckBox(parent);
text_purgechutepileup_detection = new Label(parent, _L("Purge Chute Pile-Up Detection"));
m_cb_purgechutepileup_detection = new CheckBox(ai_refine_panel);
text_purgechutepileup_detection = new Label(ai_refine_panel, _L("Purge Chute Pile-Up Detection"));
text_purgechutepileup_detection->SetFont(Label::Body_14);
line_sizer->Add(FromDIP(5), 0, 0, 0);
line_sizer->Add(m_cb_purgechutepileup_detection, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(2));
line_sizer->Add(text_purgechutepileup_detection, 1, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(2));
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
line_sizer = new wxBoxSizer(wxHORIZONTAL);
text_purgechutepileup_detection_caption0 = new Label(parent, _L("Monitor if the waste is piled up in the purge chute."));
text_purgechutepileup_detection_caption0 = new Label(ai_refine_panel, _L("Monitor if the waste is piled up in the purge chute."));
text_purgechutepileup_detection_caption0->SetFont(Label::Body_12);
text_purgechutepileup_detection_caption0->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
text_purgechutepileup_detection_caption0->Wrap(-1);
line_sizer->Add(FromDIP(30), 0, 0, 0);
line_sizer->Add(text_purgechutepileup_detection_caption0, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(5));
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
line_sizer = new wxBoxSizer(wxHORIZONTAL);
text_purgechutepileup_detection_caption1 = new Label(parent, _L("Pausing Sensitivity:"));
text_purgechutepileup_detection_caption1 = new Label(ai_refine_panel, _L("Pausing Sensitivity:"));
text_purgechutepileup_detection_caption1->SetFont(Label::Body_12);
text_purgechutepileup_detection_caption1->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
text_purgechutepileup_detection_caption1->Wrap(-1);
purgechutepileup_detection_level_list = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(100), -1), 0, NULL, wxCB_READONLY);
purgechutepileup_detection_level_list = new ComboBox(ai_refine_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(100), -1), 0, NULL, wxCB_READONLY);
for (auto i = AiMonitorSensitivityLevel::LOW; i < LEVELS_NUM; i = (AiMonitorSensitivityLevel) (i + 1)) {
wxString level_option = sensitivity_level_to_label_string(i);
purgechutepileup_detection_level_list->Append(level_option);
@ -680,37 +688,38 @@ wxBoxSizer* PrintOptionsDialog::create_settings_group(wxWindow* parent)
line_sizer->Add(FromDIP(30), 0, 0, 0);
line_sizer->Add(text_purgechutepileup_detection_caption1, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(5));
line_sizer->Add(purgechutepileup_detection_level_list, 0, wxEXPAND | wxALL, FromDIP(5));
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
purgechutepileup_bottom_space = sizer->Add(0, 0, 0, wxTOP, FromDIP(12));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
purgechutepileup_bottom_space = ai_refine_sizer->Add(0, 0, 0, wxTOP, FromDIP(12));
//nozzle clumping detection
line_sizer = new wxBoxSizer(wxHORIZONTAL);
m_cb_nozzleclumping_detection = new CheckBox(parent);
text_nozzleclumping_detection = new Label(parent, _L("Nozzle Clumping Detection"));
m_cb_nozzleclumping_detection = new CheckBox(ai_refine_panel);
text_nozzleclumping_detection = new Label(ai_refine_panel, _L("Nozzle Clumping Detection"));
text_nozzleclumping_detection->SetFont(Label::Body_14);
line_sizer->Add(FromDIP(5), 0, 0, 0);
line_sizer->Add(m_cb_nozzleclumping_detection, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(2));
line_sizer->Add(text_nozzleclumping_detection, 1, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(2));
/* sizer->Add(0, 0, 0, wxTOP, FromDIP(10));*/
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
line_sizer = new wxBoxSizer(wxHORIZONTAL);
text_nozzleclumping_detection_caption0 = new Label(parent, _L("Check if the nozzle is clumping by filaments or other foreign objects."));
text_nozzleclumping_detection_caption0 = new Label(ai_refine_panel, _L("Check if the nozzle is clumping by filaments or other foreign objects."));
text_nozzleclumping_detection_caption0->SetFont(Label::Body_12);
text_nozzleclumping_detection_caption0->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
text_nozzleclumping_detection_caption0->Wrap(-1);
line_sizer->Add(FromDIP(30), 0, 0, 0);
line_sizer->Add(text_nozzleclumping_detection_caption0, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(5));
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
line_sizer = new wxBoxSizer(wxHORIZONTAL);
text_nozzleclumping_detection_caption1 = new Label(parent, _L("Pausing Sensitivity:"));
text_nozzleclumping_detection_caption1 = new Label(ai_refine_panel, _L("Pausing Sensitivity:"));
text_nozzleclumping_detection_caption1->SetFont(Label::Body_12);
text_nozzleclumping_detection_caption1->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
text_nozzleclumping_detection_caption1->Wrap(-1);
nozzleclumping_detection_level_list = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(100), -1), 0, NULL, wxCB_READONLY);
nozzleclumping_detection_level_list = new ComboBox(ai_refine_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(100), -1), 0, NULL, wxCB_READONLY);
for (auto i = AiMonitorSensitivityLevel::LOW; i < LEVELS_NUM; i = (AiMonitorSensitivityLevel) (i + 1)) {
wxString level_option = sensitivity_level_to_label_string(i);
nozzleclumping_detection_level_list->Append(level_option);
@ -720,37 +729,37 @@ wxBoxSizer* PrintOptionsDialog::create_settings_group(wxWindow* parent)
line_sizer->Add(FromDIP(30), 0, 0, 0);
line_sizer->Add(text_nozzleclumping_detection_caption1, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(5));
line_sizer->Add(nozzleclumping_detection_level_list, 0, wxEXPAND | wxALL, FromDIP(5));
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
nozzleclumping_bottom_space = sizer->Add(0, 0, 0, wxTOP, FromDIP(12));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
nozzleclumping_bottom_space = ai_refine_sizer->Add(0, 0, 0, wxTOP, FromDIP(12));
//air printing detection
line_sizer = new wxBoxSizer(wxHORIZONTAL);
m_cb_airprinting_detection = new CheckBox(parent);
text_airprinting_detection = new Label(parent, _L("Air Printing Detection"));
m_cb_airprinting_detection = new CheckBox(ai_refine_panel);
text_airprinting_detection = new Label(ai_refine_panel, _L("Air Printing Detection"));
text_airprinting_detection->SetFont(Label::Body_14);
line_sizer->Add(FromDIP(5), 0, 0, 0);
line_sizer->Add(m_cb_airprinting_detection, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(2));
line_sizer->Add(text_airprinting_detection, 1, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(2));
/* sizer->Add(0, 0, 0, wxTOP, FromDIP(12));*/
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
line_sizer = new wxBoxSizer(wxHORIZONTAL);
text_airprinting_detection_caption0 = new Label(parent, _L("Detects air printing caused by nozzle clogging or filament grinding."));
text_airprinting_detection_caption0 = new Label(ai_refine_panel, _L("Detects air printing caused by nozzle clogging or filament grinding."));
text_airprinting_detection_caption0->SetFont(Label::Body_12);
text_airprinting_detection_caption0->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
text_airprinting_detection_caption0->Wrap(-1);
line_sizer->Add(FromDIP(30), 0, 0, 0);
line_sizer->Add(text_airprinting_detection_caption0, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(5));
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
line_sizer = new wxBoxSizer(wxHORIZONTAL);
text_airprinting_detection_caption1 = new Label(parent, _L("Pausing Sensitivity:"));
text_airprinting_detection_caption1 = new Label(ai_refine_panel, _L("Pausing Sensitivity:"));
text_airprinting_detection_caption1->SetFont(Label::Body_12);
text_airprinting_detection_caption1->SetForegroundColour(STATIC_TEXT_CAPTION_COL);
text_airprinting_detection_caption1->Wrap(-1);
airprinting_detection_level_list = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(100), -1), 0, NULL, wxCB_READONLY);
airprinting_detection_level_list = new ComboBox(ai_refine_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(100), -1), 0, NULL, wxCB_READONLY);
for (auto i = AiMonitorSensitivityLevel::LOW; i < LEVELS_NUM; i = (AiMonitorSensitivityLevel) (i + 1)) {
wxString level_option = sensitivity_level_to_label_string(i);
airprinting_detection_level_list->Append(level_option);
@ -760,12 +769,17 @@ wxBoxSizer* PrintOptionsDialog::create_settings_group(wxWindow* parent)
line_sizer->Add(FromDIP(30), 0, 0, 0);
line_sizer->Add(text_airprinting_detection_caption1, 0, wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(5));
line_sizer->Add(airprinting_detection_level_list, 0, wxEXPAND | wxALL, FromDIP(5));
sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
airprinting_bottom_space = sizer->Add(0, 0, 0, wxTOP, FromDIP(12));
ai_refine_sizer->Add(line_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
airprinting_bottom_space = ai_refine_sizer->Add(0, 0, 0, wxTOP, FromDIP(12));
//m_line = new wxPanel(parent, wxID_ANY, wxDefaultPosition, wxSize(-1, FromDIP(1)), wxTAB_TRAVERSAL);
//m_line->SetBackgroundColour(wxColour(166, 169, 170));
//sizer->Add(m_line, 0, wxEXPAND | wxALL, FromDIP(20));
ai_refine_panel->SetSizer(ai_refine_sizer);
sizer->Add(ai_refine_panel, 0, wxEXPAND | wxRIGHT, FromDIP(18));
// sizer->Add(line1, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(18));
m_line = new wxPanel(parent, wxID_ANY, wxDefaultPosition, wxSize(FromDIP(400), FromDIP(1)));
m_line->SetBackgroundColour(wxColour("#A6A9AA"));
sizer->Add(m_line, 0, wxLEFT | wxBOTTOM, FromDIP(20));
// detection of build plate position
line_sizer = new wxBoxSizer(wxHORIZONTAL);
@ -831,7 +845,7 @@ wxBoxSizer* PrintOptionsDialog::create_settings_group(wxWindow* parent)
line_sizer->Add(FromDIP(10), 0, 0, 0);
line4 = new StaticLine(parent, false);
line4->SetLineColour(wxColour(255,255,255));
line4->SetLineColour(wxColour("#FFFFFF"));
sizer->Add(line4, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(20));
line4->Hide();
sizer->Add(0, 0, 0, wxTOP, FromDIP(15));
@ -1068,7 +1082,7 @@ PrinterPartsDialog::PrinterPartsDialog(wxWindow* parent)
/*single nozzle*/
auto single_line = new wxPanel(single_panel, wxID_ANY, wxDefaultPosition, wxSize(-1, 1), wxTAB_TRAVERSAL);
single_line->SetBackgroundColour(wxColour(166, 169, 170));
single_line->SetBackgroundColour(wxColour("#A6A9AA"));
//nozzle type
wxBoxSizer* line_sizer_nozzle_type = new wxBoxSizer(wxHORIZONTAL);
@ -1124,7 +1138,7 @@ PrinterPartsDialog::PrinterPartsDialog(wxWindow* parent)
m_wiki_link = new Label(single_panel, _L("View wiki"));
m_wiki_link->SetFont(Label::Body_13);
m_wiki_link->SetForegroundColour(wxColour(0, 174, 66));
m_wiki_link->SetForegroundColour(wxColour("#00AE42"));
m_wiki_link->Bind(wxEVT_ENTER_WINDOW, [this](auto& e) { SetCursor(wxCURSOR_HAND); });
m_wiki_link->Bind(wxEVT_LEAVE_WINDOW, [this](auto& e) { SetCursor(wxCURSOR_ARROW); });
m_wiki_link->Bind(wxEVT_LEFT_DOWN, &PrinterPartsDialog::OnWikiClicked, this);
@ -1149,7 +1163,7 @@ PrinterPartsDialog::PrinterPartsDialog(wxWindow* parent)
/*multiple nozzle*/
auto multi_line = new wxPanel(multiple_panel, wxID_ANY, wxDefaultPosition, wxSize(-1, 1), wxTAB_TRAVERSAL);
multi_line->SetBackgroundColour(wxColour(166, 169, 170));
multi_line->SetBackgroundColour(wxColour("#A6A9AA"));
/*left*/
auto leftTitle = new Label(multiple_panel, _L("Left Nozzle"));
@ -1225,7 +1239,7 @@ PrinterPartsDialog::PrinterPartsDialog(wxWindow* parent)
multiple_wiki_link = new Label(multiple_panel, _L("View wiki"));
multiple_wiki_link->SetFont(Label::Body_13);
multiple_wiki_link->SetForegroundColour(wxColour(0, 174, 66));
multiple_wiki_link->SetForegroundColour(wxColour("#00AE42"));
multiple_wiki_link->Bind(wxEVT_ENTER_WINDOW, [this](auto& e) { SetCursor(wxCURSOR_HAND); });
multiple_wiki_link->Bind(wxEVT_LEAVE_WINDOW, [this](auto& e) { SetCursor(wxCURSOR_ARROW); });
multiple_wiki_link->Bind(wxEVT_LEFT_DOWN, &PrinterPartsDialog::OnWikiClicked, this);

View file

@ -87,7 +87,7 @@ protected:
Label* text_first_layer;
Label* text_ai_detections;
Label* text_ai_detections_caption;
wxPanel *ai_refine_panel;
wxSizerItem *ai_detections_bottom_space;
wxSizerItem *ai_monitoring_bottom_space;
wxSizerItem *spaghetti_bottom_space;
@ -136,6 +136,8 @@ protected:
StaticLine* line7;
SwitchBoard* open_door_switch_board;
wxBoxSizer* create_settings_group(wxWindow* parent);
wxPanel *m_line;
bool print_halt = false;