diff --git a/src/libslic3r/GCode/ToolOrdering.cpp b/src/libslic3r/GCode/ToolOrdering.cpp index c64324b47..8c5c0d550 100644 --- a/src/libslic3r/GCode/ToolOrdering.cpp +++ b/src/libslic3r/GCode/ToolOrdering.cpp @@ -1149,7 +1149,7 @@ void ToolOrdering::reorder_extruders_for_minimum_flush_volume(bool reorder_first if (nozzle_nums > 1 && !check_tpu_group(used_filaments, filament_maps, print_config)) { int master_extruder_id = print_config->master_extruder_id.value - 1; // to 0 based - std::string nozzle_name = master_extruder_id == 0 ? L("left") : L("right"); + std::string nozzle_name = master_extruder_id == 0 ? _L("left") : _L("right"); std::string exception_str = _L("TPU is incompatible with AMS and must be printed seperately in the ") + nozzle_name + _L(" nozzle.\nPlease adjust the filament group accordingly."); throw Slic3r::RuntimeError(exception_str); } diff --git a/src/slic3r/GUI/GLCanvas3D.cpp b/src/slic3r/GUI/GLCanvas3D.cpp index 13748374b..3501ec9ec 100644 --- a/src/slic3r/GUI/GLCanvas3D.cpp +++ b/src/slic3r/GUI/GLCanvas3D.cpp @@ -37,6 +37,7 @@ #include "NotificationManager.hpp" #include "format.hpp" #include "DailyTips.hpp" +#include "FilamentMapDialog.hpp" #if ENABLE_RETINA_GL #include "slic3r/Utils/RetinaHelper.hpp" @@ -10779,16 +10780,15 @@ void GLCanvas3D::_set_warning_notification(EWarning warning, bool state) } } if (warning == EWarning::FilamentPrintableError) { - if (state) - notification_manager.push_slicing_customize_error_notification(NotificationType::BBLFilamentPrintableError, NotificationLevel::ErrorNotificationLevel, text, _u8L("Click Wiki for help."), - [](wxEvtHandler*) { - std::string language = wxGetApp().app_config->get("language"); - wxString region = L"en"; - if (language.find("zh") == 0) - region = L"zh"; - wxGetApp().open_browser_with_warning_dialog(wxString::Format(L"https://wiki.bambulab.com/%s/filament-acc/filament/h2d-filament-config-limit", region)); - return false; - }); + if (state){ + auto callback = [](wxEvtHandler*) { + auto plater = wxGetApp().plater(); + auto partplate = plater->get_partplate_list().get_curr_plate(); + try_pop_up_before_slice(false, plater, partplate, true); // ignore the return value + return false; + }; + notification_manager.push_slicing_customize_error_notification(NotificationType::BBLFilamentPrintableError, NotificationLevel::ErrorNotificationLevel, text, _u8L("Click here to regroup"), callback); + } else notification_manager.close_slicing_customize_error_notification(NotificationType::BBLFilamentPrintableError, NotificationLevel::ErrorNotificationLevel); }