Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/prusa3d/PrusaSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuSanka <yusanka@gmail.com>2021-12-07 16:40:39 +0300
committerYuSanka <yusanka@gmail.com>2021-12-07 16:40:52 +0300
commit1ff7214532a19ea844355b6e1ff1c76b2bc6fbe1 (patch)
tree61b668abc369c5a89aad7061d8b85872dc2ff0a9 /src/slic3r/GUI
parent89eabec582605c8ca38ca9c4c5df77d8ee2abf95 (diff)
Fix for endless loop dialog - see https://github.com/prusa3d/PrusaSlicer/issues/7419#issuecomment-986325432
When part's configuration is updated => Don't call config_manipulation.update_print_fff_config() separately for applied object's config and then applied own config. Configuration have to be applied from object config and its config. And than call config_manipulation.update_print_fff_config(). + Redundant call of the update_config_values() is deleted from DeleteButton event. All checks are made during update_settings_list().
Diffstat (limited to 'src/slic3r/GUI')
-rw-r--r--src/slic3r/GUI/GUI_ObjectSettings.cpp15
1 files changed, 5 insertions, 10 deletions
diff --git a/src/slic3r/GUI/GUI_ObjectSettings.cpp b/src/slic3r/GUI/GUI_ObjectSettings.cpp
index c92ddd3b5..c9a7cd330 100644
--- a/src/slic3r/GUI/GUI_ObjectSettings.cpp
+++ b/src/slic3r/GUI/GUI_ObjectSettings.cpp
@@ -110,12 +110,6 @@ bool ObjectSettings::update_settings_list()
update_settings_list();
m_parent->Layout();
});
-
- /* Check overriden options list after deleting.
- * Some options couldn't be deleted because of another one.
- * Like, we couldn't delete fill pattern, if fill density is set to 100%
- */
- update_config_values(config);
});
return btn;
};
@@ -227,11 +221,12 @@ void ObjectSettings::update_config_values(ModelConfig* config)
update_config_values(config);
if (is_added) {
- wxTheApp->CallAfter([this]() {
+// #ysFIXME - Delete after testing! Very likely this CallAfret is no needed
+// wxTheApp->CallAfter([this]() {
wxWindowUpdateLocker noUpdates(m_parent);
update_settings_list();
m_parent->Layout();
- });
+// });
}
};
@@ -253,9 +248,9 @@ void ObjectSettings::update_config_values(ModelConfig* config)
{
const int obj_idx = objects_model->GetObjectIdByItem(item);
assert(obj_idx >= 0);
+ // for object's part first of all update konfiguration from object
main_config.apply(wxGetApp().model().objects[obj_idx]->config.get(), true);
- printer_technology == ptFFF ? config_manipulation.update_print_fff_config(&main_config) :
- config_manipulation.update_print_sla_config(&main_config) ;
+ // and then from its own config
}
main_config.apply(config->get(), true);