Fix for #8542 - MMU - Allow user to choose initial extruder but then also change extruder at layer height

1. Fix for detection of the DoubleSlicer mode => An extruder for the Height Range modifiers have to be ignored, if it's default.
2. OSX only: Extruder selection wasn't editable for Height Range modifiers
This commit is contained in:
YuSanka 2022-08-22 10:17:20 +02:00
parent 3b1f1d9444
commit 39788066e2
2 changed files with 3 additions and 1 deletions

View File

@ -976,7 +976,7 @@ void ObjectList::show_context_menu(const bool evt_context_menu)
void ObjectList::extruder_editing() void ObjectList::extruder_editing()
{ {
wxDataViewItem item = GetSelection(); wxDataViewItem item = GetSelection();
if (!item || !(m_objects_model->GetItemType(item) & (itVolume | itObject))) if (!item || !(m_objects_model->GetItemType(item) & (itVolume | itObject | itLayer)))
return; return;
wxRect rect = this->GetItemRect(item, GetColumn(colExtruder)); wxRect rect = this->GetItemRect(item, GetColumn(colExtruder));
@ -1001,6 +1001,7 @@ void ObjectList::extruder_editing()
m_extruder_editor->Hide(); m_extruder_editor->Hide();
update_extruder_in_config(item); update_extruder_in_config(item);
Refresh();
}; };
// to avoid event propagation to other sidebar items // to avoid event propagation to other sidebar items

View File

@ -804,6 +804,7 @@ void Preview::update_layers_slider_mode()
for (const auto& range : object->layer_config_ranges) for (const auto& range : object->layer_config_ranges)
if (range.second.has("extruder") && if (range.second.has("extruder") &&
range.second.option("extruder")->getInt() != 0 && // extruder isn't default
range.second.option("extruder")->getInt() != extruder) range.second.option("extruder")->getInt() != extruder)
return false; return false;
} }