mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-09-06 00:41:56 -06:00
WIP Refactoring of exceptions:
1) All slicer's exceptions are now derived from Slic3r::Exception. 2) New exceptions are defined for slicing errors. 3) Exceptions are propagated to the Plater to show. It remains to modify the slicing back-end to throw the new SlicingError exceptions instead of std::runtime_error and to show the other exceptions by a message dialog instead of a notification.
This commit is contained in:
parent
6ac1935932
commit
067cde85f1
59 changed files with 356 additions and 249 deletions
|
@ -298,7 +298,7 @@ void Serial::set_baud_rate(unsigned baud_rate)
|
|||
|
||||
auto handle_errno = [](int retval) {
|
||||
if (retval != 0) {
|
||||
throw std::runtime_error(
|
||||
throw Slic3r::RuntimeError(
|
||||
(boost::format("Could not set baud rate: %1%") % strerror(errno)).str()
|
||||
);
|
||||
}
|
||||
|
@ -346,7 +346,7 @@ void Serial::set_baud_rate(unsigned baud_rate)
|
|||
handle_errno(::cfsetspeed(&ios, baud_rate));
|
||||
handle_errno(::tcsetattr(handle, TCSAFLUSH, &ios));
|
||||
#else
|
||||
throw std::runtime_error("Custom baud rates are not currently supported on this OS");
|
||||
throw Slic3r::RuntimeError("Custom baud rates are not currently supported on this OS");
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
@ -358,7 +358,7 @@ void Serial::set_DTR(bool on)
|
|||
auto handle = native_handle();
|
||||
#if defined(_WIN32) && !defined(__SYMBIAN32__)
|
||||
if (! EscapeCommFunction(handle, on ? SETDTR : CLRDTR)) {
|
||||
throw std::runtime_error("Could not set serial port DTR");
|
||||
throw Slic3r::RuntimeError("Could not set serial port DTR");
|
||||
}
|
||||
#else
|
||||
int status;
|
||||
|
@ -369,7 +369,7 @@ void Serial::set_DTR(bool on)
|
|||
}
|
||||
}
|
||||
|
||||
throw std::runtime_error(
|
||||
throw Slic3r::RuntimeError(
|
||||
(boost::format("Could not set serial port DTR: %1%") % strerror(errno)).str()
|
||||
);
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue