Replaced some of Slic3r::RuntimeError exceptions with Slic3r::SlicingError.

Only Slic3r::SlicingError are now displayed by a notification, other
exceptions are shown by a pop-up dialog.
This commit is contained in:
Vojtech Bubnik 2020-09-14 18:01:25 +02:00
parent 067cde85f1
commit 1eadb6a1a9
5 changed files with 16 additions and 10 deletions

View file

@ -3524,8 +3524,15 @@ void Plater::priv::on_process_completed(SlicingProcessCompletedEvent &evt)
if (evt.error()) {
std::string message = evt.format_error_message();
//FIXME show a messagebox if evt.critical_error().
notification_manager->push_slicing_error_notification(message, *q->get_current_canvas3D());
if (evt.critical_error()) {
if (q->m_tracking_popup_menu)
// We don't want to pop-up a message box when tracking a pop-up menu.
// We postpone the error message instead.
q->m_tracking_popup_menu_error_message = message;
else
show_error(q, message);
} else
notification_manager->push_slicing_error_notification(message, *q->get_current_canvas3D());
this->statusbar()->set_status_text(from_u8(message));
const wxString invalid_str = _L("Invalid data");
for (auto btn : { ActionButtonType::abReslice, ActionButtonType::abSendGCode, ActionButtonType::abExport })