Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 22 additions & 1 deletion localization/i18n/zh_CN/Snapmaker_Orca_zh_CN.po
Original file line number Diff line number Diff line change
Expand Up @@ -15348,4 +15348,25 @@ msgid "Other Colors"
msgstr "其他颜色"

msgid "Multiple Color"
msgstr "多色"
msgstr "多色"

msgid "High temperature:"
msgstr "高温耗材:"

msgid "Low temperature:"
msgstr "低温耗材:"

msgid "The following plates contain mixed high and low temperature materials:"
msgstr "以下盘存在高温与低温耗材混用:"

msgid "unknown"
msgstr "未知"

msgid "does not exist."
msgstr "不存在。"

msgid ""
"To continue printing, enable \"Allow mixed printing of high and low "
"temperature materials\" in Preferences."
msgstr ""
"如需继续打印,请在「偏好设置」中开启「允许高低温耗材混打」。"
2 changes: 1 addition & 1 deletion src/Snapmaker_Orca.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5028,7 +5028,7 @@ int CLI::run(int argc, char **argv)
case STRING_EXCEPT_FILAMENT_NOT_MATCH_BED_TYPE:
validate_error = CLI_FILAMENT_NOT_MATCH_BED_TYPE;
break;
case STRING_EXCEPT_FILAMENTS_DIFFERENT_TEMP:
case STRING_EXCEPT_FILAMENTS_MIXING_TEMP:
validate_error = CLI_FILAMENTS_DIFFERENT_TEMP;
break;
case STRING_EXCEPT_OBJECT_COLLISION_IN_SEQ_PRINT:
Expand Down
8 changes: 8 additions & 0 deletions src/libslic3r/GCodeReader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,14 @@ template<typename ParseLineCallback, typename LineEndCallback>
bool GCodeReader::parse_file_raw_internal(const std::string &filename, ParseLineCallback parse_line_callback, LineEndCallback line_end_callback)
{
FilePtr in{ boost::nowide::fopen(filename.c_str(), "rb") };
if (in.f == nullptr) {
// fopen failed — file missing, inaccessible, or path invalid.
// Returning false here prevents ::fread(buffer.data(), 1, ..., NULL)
// below, which would otherwise trigger a CRT invalid-parameter crash.
BOOST_LOG_TRIVIAL(error) << "GCodeReader::parse_file_raw_internal: "
<< "failed to open file '" << filename << "'";
return false;
}

// Read the input stream 64kB at a time, extract lines and process them.
std::vector<char> buffer(65536 * 10, 0);
Expand Down
2 changes: 1 addition & 1 deletion src/libslic3r/PrintBase.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ namespace Slic3r {
enum StringExceptionType {
STRING_EXCEPT_NOT_DEFINED = 0,
STRING_EXCEPT_FILAMENT_NOT_MATCH_BED_TYPE = 1,
STRING_EXCEPT_FILAMENTS_DIFFERENT_TEMP = 2,
STRING_EXCEPT_FILAMENTS_MIXING_TEMP = 2,
STRING_EXCEPT_OBJECT_COLLISION_IN_SEQ_PRINT = 3,
STRING_EXCEPT_OBJECT_COLLISION_IN_LAYER_PRINT = 4,
STRING_EXCEPT_LAYER_HEIGHT_EXCEEDS_LIMIT = 5,
Expand Down
3 changes: 2 additions & 1 deletion src/slic3r/GUI/GLCanvas3D.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7922,7 +7922,8 @@ void GLCanvas3D::_render_imgui_select_plate_toolbar()
m_sel_plate_toolbar.m_items[i]->slice_state = IMToolbarItem::SliceState::SLICE_FAILED;
}
else {
if (!plate_list.get_plate(i)->can_slice())
if (!plate_list.get_plate(i)->can_slice() ||
wxGetApp().plater()->is_plate_blocked_by_filament_temp_mixing(i))
m_sel_plate_toolbar.m_items[i]->slice_state = IMToolbarItem::SliceState::SLICE_FAILED;
else {
if (plate_list.get_plate(i)->get_slicing_percent() < 0.0f)
Expand Down
Loading
Loading