mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-07-26 12:22:32 +00:00
Add handling for unknown filament IDs and improve filament type resolution
This commit is contained in:
@@ -3473,6 +3473,16 @@ void Sidebar::sync_ams_list(bool is_from_big_sync_btn)
|
||||
dlg.ShowModal();
|
||||
return;
|
||||
}
|
||||
// Replace unknown filament IDs with the resolved preset's filament_id
|
||||
auto &filaments = wxGetApp().preset_bundle->filaments;
|
||||
auto &filament_presets = wxGetApp().preset_bundle->filament_presets;
|
||||
for (size_t i = 0; i < list2.size() && i < filament_presets.size(); ++i) {
|
||||
if (list2[i] == UNKNOWN_FILAMENT_ID) {
|
||||
const Preset *resolved = filaments.find_preset(filament_presets[i]);
|
||||
if (resolved)
|
||||
list2[i] = resolved->filament_id;
|
||||
}
|
||||
}
|
||||
ams_filament_ids = boost::algorithm::join(list2, ",");
|
||||
wxGetApp().app_config ->set("ams_filament_ids", p->ams_list_device, ams_filament_ids);
|
||||
if (!unknowns.empty()) {
|
||||
|
||||
@@ -775,7 +775,7 @@ std::string MoonrakerPrinterAgent::map_filament_type_to_generic_id(const std::st
|
||||
if (upper == "SBS") return "OFLSBS99";
|
||||
|
||||
// Unknown material
|
||||
return "__unknown__";
|
||||
return UNKNOWN_FILAMENT_ID;
|
||||
}
|
||||
|
||||
int MoonrakerPrinterAgent::handle_request(const std::string& dev_id, const std::string& json_str)
|
||||
|
||||
Reference in New Issue
Block a user