From 2cb108fbf841a3fe5be317e8cbf3d863ff8ec6a2 Mon Sep 17 00:00:00 2001 From: Enrico Turri Date: Thu, 17 May 2018 12:56:14 +0200 Subject: [PATCH 1/3] Fix in File menu --- lib/Slic3r/GUI/MainFrame.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Slic3r/GUI/MainFrame.pm b/lib/Slic3r/GUI/MainFrame.pm index fbcd34a3f..a8de4a135 100644 --- a/lib/Slic3r/GUI/MainFrame.pm +++ b/lib/Slic3r/GUI/MainFrame.pm @@ -191,7 +191,7 @@ sub _init_menubar { # File menu my $fileMenu = Wx::Menu->new; { - wxTheApp->append_menu_item($fileMenu, L("Open STL/OBJ/AMF…\tCtrl+O"), L('Open a model'), sub { + wxTheApp->append_menu_item($fileMenu, L("Open STL/OBJ/AMF/3MF…\tCtrl+O"), L('Open a model'), sub { $self->{plater}->add if $self->{plater}; }, undef, undef); #'brick_add.png'); $self->_append_menu_item($fileMenu, L("&Load Config…\tCtrl+L"), L('Load exported configuration file'), sub { From 96c7c4a58b819b8cc0ca0dd1c9e00717a9b04e42 Mon Sep 17 00:00:00 2001 From: Vojtech Kral Date: Wed, 16 May 2018 19:41:35 +0200 Subject: [PATCH 2/3] PresetUpdater: Remove obsolete presets --- xs/src/slic3r/Utils/PresetUpdater.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/xs/src/slic3r/Utils/PresetUpdater.cpp b/xs/src/slic3r/Utils/PresetUpdater.cpp index fcbe20fb7..a5208e3c2 100644 --- a/xs/src/slic3r/Utils/PresetUpdater.cpp +++ b/xs/src/slic3r/Utils/PresetUpdater.cpp @@ -409,6 +409,17 @@ void PresetUpdater::priv::perform_updates(Updates &&updates, bool snapshot) cons for (const auto &preset : bundle.prints) { preset_remover(preset); } for (const auto &preset : bundle.filaments) { preset_remover(preset); } for (const auto &preset : bundle.printers) { preset_remover(preset); } + + // Also apply the `obsolete_presets` property, removing obsolete ini files + auto obsolete_remover = [](const char *subdir, const std::string &preset) { + auto path = fs::path(Slic3r::data_dir()) / subdir / preset; + path += ".ini"; + fs::remove(path); + }; + + for (const auto &name : bundle.obsolete_presets.prints) { obsolete_remover("print", name); } + for (const auto &name : bundle.obsolete_presets.filaments) { obsolete_remover("filament", name); } + for (const auto &name : bundle.obsolete_presets.printers) { obsolete_remover("printer", name); } } } } From 35bf4aee7df3baee5f64b769d58d20199bb5268a Mon Sep 17 00:00:00 2001 From: bubnikv Date: Thu, 17 May 2018 14:08:50 +0200 Subject: [PATCH 3/3] Fixed loading of configuraton values octoprint_host, support_material_threshold They were incorrectly handled by the handle_legacy() function, which has been ported from the upstream Slic3r without inspecting its content. --- xs/src/libslic3r/PrintConfig.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/xs/src/libslic3r/PrintConfig.cpp b/xs/src/libslic3r/PrintConfig.cpp index 697a6f0d4..dcfc3ffe7 100644 --- a/xs/src/libslic3r/PrintConfig.cpp +++ b/xs/src/libslic3r/PrintConfig.cpp @@ -1911,8 +1911,10 @@ void PrintConfigDef::handle_legacy(t_config_option_key &opt_key, std::string &va std::ostringstream oss; oss << "0x0," << p.value.x << "x0," << p.value.x << "x" << p.value.y << ",0x" << p.value.y; value = oss.str(); - } else if (opt_key == "octoprint_host" && !value.empty()) { - opt_key = "print_host"; +// Maybe one day we will rename octoprint_host to print_host as it has been done in the upstream Slic3r. +// Commenting this out fixes github issue #869 for now. +// } else if (opt_key == "octoprint_host" && !value.empty()) { +// opt_key = "print_host"; } else if ((opt_key == "perimeter_acceleration" && value == "25") || (opt_key == "infill_acceleration" && value == "50")) { /* For historical reasons, the world's full of configs having these very low values; @@ -1923,10 +1925,6 @@ void PrintConfigDef::handle_legacy(t_config_option_key &opt_key, std::string &va } else if (opt_key == "support_material_pattern" && value == "pillars") { // Slic3r PE does not support the pillars. They never worked well. value = "rectilinear"; - } else if (opt_key == "support_material_threshold" && value == "0") { - // 0 used to be automatic threshold, but we introduced percent values so let's - // transform it into the default value - value = "60%"; } // Ignore the following obsolete configuration keys: