Ask about clumping detection whenever the prime tower is disabled

The prompt that clumping detection needs a prime tower was nested inside
the smooth timelapse check, so disabling the tower with clumping
detection on and traditional timelapse gave no prompt; the problem only
surfaced as a warning after slicing. The prompt now appears whenever
clumping detection is on. The smooth timelapse prompt is unchanged, and
answering it with No still skips the clumping one.
This commit is contained in:
Ian Bassi
2026-10-14 10:30:48 -03:00
parent 721ec56f22
commit 6e7d5b0a9b
+11 -9
View File
@@ -2052,17 +2052,19 @@ void Tab::on_value_change(const std::string& opt_key, const boost::any& value)
}
}
}
if (!boost::any_cast<bool>(value) && timelapse_enabled) {
bool enable_wrapping = m_config->option<ConfigOptionBool>("enable_wrapping_detection")->value;
if (!boost::any_cast<bool>(value) && (timelapse_enabled || enable_wrapping)) {
bool set_enable_prime_tower = false;
MessageDialog dlg(wxGetApp().plater(), _L("A prime tower is required for smooth timelapse mode. There may be flaws on the model without a prime tower. Are you sure you want to disable the prime tower\?"),
_L("Warning"), wxICON_WARNING | wxYES | wxNO);
if (dlg.ShowModal() == wxID_NO) {
DynamicPrintConfig new_conf = *m_config;
new_conf.set_key_value("enable_prime_tower", new ConfigOptionBool(true));
m_config_manipulation.apply(m_config, &new_conf);
set_enable_prime_tower = true;
if (timelapse_enabled) {
MessageDialog dlg(wxGetApp().plater(), _L("A prime tower is required for smooth timelapse mode. There may be flaws on the model without a prime tower. Are you sure you want to disable the prime tower\?"),
_L("Warning"), wxICON_WARNING | wxYES | wxNO);
if (dlg.ShowModal() == wxID_NO) {
DynamicPrintConfig new_conf = *m_config;
new_conf.set_key_value("enable_prime_tower", new ConfigOptionBool(true));
m_config_manipulation.apply(m_config, &new_conf);
set_enable_prime_tower = true;
}
}
bool enable_wrapping = m_config->option<ConfigOptionBool>("enable_wrapping_detection")->value;
if (enable_wrapping && !set_enable_prime_tower) {
MessageDialog dlg(wxGetApp().plater(),
_L("A prime tower is required for clumping detection. There may be flaws on the model without prime tower. Are you sure you want to disable prime tower?"),