From ec3d5e8151cb49a14e8a0002f59430f12d80af16 Mon Sep 17 00:00:00 2001 From: "zhou.xu" Date: Thu, 10 Apr 2025 17:37:47 +0800 Subject: [PATCH] ENH: also load config when opening 3mf with higher version just give an hint to user jira: STUDIO-11475 Change-Id: Idc6241d876133e3ee5309d7f0113cf687a5316d6 --- src/libslic3r/Format/bbs_3mf.cpp | 4 ++-- src/libslic3r/PresetBundle.cpp | 4 ++-- src/slic3r/GUI/Plater.cpp | 16 ++++++++-------- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/libslic3r/Format/bbs_3mf.cpp b/src/libslic3r/Format/bbs_3mf.cpp index 3950a834e..7dea34b7d 100644 --- a/src/libslic3r/Format/bbs_3mf.cpp +++ b/src/libslic3r/Format/bbs_3mf.cpp @@ -1760,8 +1760,8 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result) if (m_bambuslicer_generator_version) { Semver app_version = *(Semver::parse(SLIC3R_VERSION)); Semver file_version = *m_bambuslicer_generator_version; - if (file_version.maj() > app_version.maj()) - dont_load_config = true; + /* if (file_version.maj() > app_version.maj()) + dont_load_config = true;*/ } else { m_bambuslicer_generator_version = Semver::parse("0.0.0.0"); diff --git a/src/libslic3r/PresetBundle.cpp b/src/libslic3r/PresetBundle.cpp index a14fba8b9..da551e14a 100644 --- a/src/libslic3r/PresetBundle.cpp +++ b/src/libslic3r/PresetBundle.cpp @@ -786,10 +786,10 @@ bool PresetBundle::import_json_presets(PresetsConfigSubstitutions & s boost::optional version = Semver::parse(version_str); if (!version) return false; Semver app_version = *(Semver::parse(SLIC3R_VERSION)); - if (version->maj() > app_version.maj()) { + /*if (version->maj() > app_version.maj()) { BOOST_LOG_TRIVIAL(warning) << __FUNCTION__ << " Preset incompatibla, not loading: " << name; return false; - } + }*/ PresetCollection *collection = nullptr; if (config.has("printer_settings_id")) diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index 764143550..c7be48ed4 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -5255,7 +5255,7 @@ std::vector Plater::priv::load_files(const std::vector& input_ } else if (load_config && (file_version.maj() > app_version.maj())) { // version mismatch, only load geometries - load_config = false; + //load_config = false; if (!load_model) { // only load config case, return directly show_info(q, _L("The Config can not be loaded."), _L("Load 3mf")); @@ -5264,20 +5264,20 @@ std::vector Plater::priv::load_files(const std::vector& input_ } load_old_project = true; // select view to 3D - q->select_view_3D("3D"); + //q->select_view_3D("3D"); // select plate 0 as default - q->select_plate(0); + //q->select_plate(0); if (load_type != LoadType::LoadGeometry) { if (en_3mf_file_type == En3mfType::From_BBS) show_info(q, _L("Due to the lower version of Bambu Studio, this 3mf file cannot be fully loaded. Please update Bambu Studio to the latest version"), _L("Load 3mf")); else show_info(q, _L("The 3mf is not from Bambu Lab, load geometry data only."), _L("Load 3mf")); } - for (ModelObject *model_object : model.objects) { - model_object->config.reset(); - // Is there any modifier or advanced config data? - for (ModelVolume *model_volume : model_object->volumes) model_volume->config.reset(); - } + //for (ModelObject *model_object : model.objects) { + // model_object->config.reset(); + // // Is there any modifier or advanced config data? + // for (ModelVolume *model_volume : model_object->volumes) model_volume->config.reset(); + //} } else if (load_config && (file_version > app_version)) { Semver cloud_ver;